typesense_cloud_ get_ clusterRead one cluster's configuration, status and hostnames.
Search any collection, filter and facet the results, import documents and see which ones failed, change schemas, and shape results with synonyms, curation and presets, on Typesense Cloud or your own server.
PopMCPTypesense
Works with the collections you already have. It reads each schema for you, so a search does not fail for want of a field list, and it has tools for both current and older Typesense versions.
166 tools in the full catalog: 86 read and 80 write. 35 load by default, and the rest are found with tool search.
typesense_cloud_ get_ clusterRead one cluster's configuration, status and hostnames.
typesense_cloud_ list_ clustersList the clusters on the Typesense Cloud account with id, status, name, memory, regions and hostnames.
typesense_get_ metricsRead current CPU, memory, disk and network use on the server.
typesense_list_ curation_ setsList curation sets, the rules that pin or hide results for chosen queries, with their items.
typesense_list_ synonym_ setsList synonym sets with their items.
typesense_upsert_ curation_ setCreate a curation set, or replace all of its items.
typesense_upsert_ synonym_ setCreate a synonym set, or replace all of its items.
typesense_create_ analytics_ ruleCreate an analytics rule.
typesense_list_ analytics_ rulesList analytics rules, which turn searches and clicks into popular queries, no-hit queries, counters and logs.
typesense_delete_ documentPermanently delete one document by its id.
typesense_delete_ documents_ by_ filterPermanently delete every document matching query filter_by, such as status:=cancelled.
typesense_export_ documentsRead documents straight out of a collection, with no ranking, optionally filtered.
typesense_get_ documentRead one document by its id.
typesense_import_ documentsAdd or change many documents in one call.
typesense_index_ documentAdd one document, or change it with action=upsert (replaces the whole document), update (changes the given fields, must exist) or emplace (changes the given fields, creates when missing).
typesense_update_ documentChange some fields of one document and leave the others alone.
typesense_update_ documents_ by_ filterChange the same fields on every document matching a filter.
typesense_create_ collectionCreate a collection.
typesense_delete_ collectionPermanently delete a collection and all its documents.
typesense_describe_ collectionEverything needed to search one collection: its schema, which fields work in query_by, facet_by and sort_by, and a few sample documents.
typesense_get_ collectionRead one collection's schema: its fields with types and flags, num_documents, default_sorting_field and synonym_sets.
typesense_list_ collectionsList the collections on this Typesense server with name, num_documents and created_at.
typesense_overviewStart here.
typesense_update_ collectionChange a collection's schema without reindexing it yourself.
typesense_create_ api_ keyCreate an API key limited to named actions and collections, such as a search-only key for a website.
typesense_generate_ scoped_ search_ keyMake a scoped search key from a search-only key, with a filter or expiry users cannot change, such as one customer's documents only.
typesense_list_ api_ keysList API keys with id, description, actions, collections, expires_at and the first characters of the value.
typesense_list_ aliasesList aliases: each gives name and collection_name.
typesense_list_ presetsList search presets: saved sets of search parameters that a search names with its preset parameter.
typesense_list_ stopword_ setsList stopword sets.
typesense_upsert_ aliasCreate an alias, or point an existing one at another collection.
typesense_upsert_ presetCreate or replace a search preset.
typesense_upsert_ stopword_ setCreate or replace a stopword set: words a search should ignore.
typesense_multi_ searchRun several searches in one call, across one or more collections, and get a result for each in results.
typesense_search_ documentsSearch one collection.
typesense_cloud_ cancel_ cloning_ operationCancel a clone that has not started.
typesense_cloud_ cancel_ configuration_ changeCancel a configuration change that has not started.
typesense_cloud_ cancel_ restartCancel a rolling restart that has not started.
typesense_cloud_ create_ cloning_ operationCopy a cluster and its data into a new cluster, for example for staging.
typesense_cloud_ create_ clusterCreate a cluster on Typesense Cloud.
typesense_cloud_ create_ configuration_ changeSchedule a change to a cluster's size, version, availability or regions.
typesense_cloud_ create_ restartRestart Typesense on every node, one at a time, which applies changed server parameters.
typesense_cloud_ create_ server_ parameterSet a Typesense server parameter on a cluster.
typesense_cloud_ delete_ server_ parameterRemove a server parameter, going back to its default after the next restart.
typesense_cloud_ get_ cloning_ operationRead one clone and how far along it is.
typesense_cloud_ get_ configuration_ changeRead one configuration change and how far along it is.
typesense_cloud_ get_ restartRead one rolling restart.
typesense_cloud_ get_ server_ parameterRead one server parameter.
typesense_cloud_ list_ cloning_ operationsList a cluster's clones.
typesense_cloud_ list_ cluster_ optionsList the regions, memory, vCPU and disk options a cluster can use.
typesense_cloud_ list_ configuration_ changesList a cluster's configuration changes, past and pending.
typesense_cloud_ list_ restartsList a cluster's rolling restarts.
typesense_cloud_ list_ server_ parametersList the Typesense server parameters set on a cluster.
typesense_cloud_ terminate_ clusterPermanently terminate a cluster and all its data.
typesense_cloud_ update_ clusterRename a cluster or turn automatic capacity upgrades on or off.
typesense_cloud_ update_ server_ parameterChange a server parameter's value.
typesense_clear_ search_ cacheEmpty the search result cache on this node.
typesense_compact_ databaseCompact the on-disk database on this node to reclaim disk space.
typesense_get_ api_ statsRead recent requests per second and latency per endpoint.
typesense_get_ cluster_ statusRead this node's status within its cluster.
typesense_get_ debug_ infoRead the server's version and its state.
typesense_get_ healthCheck the server is up and ready.
typesense_get_ health_ with_ resource_ usageCheck health and include resource usage figures from the server.
typesense_get_ schema_ changesSee collection schema changes still in progress, with how many documents have been altered and validated so far.
typesense_reset_ cluster_ peersEmergency recovery for a cluster stuck without a leader: makes this node reset its list of peers.
typesense_set_ slow_ request_ logLog requests slower than this many milliseconds on the server.
typesense_take_ snapshotWrite a backup snapshot of this node to a folder on the server's own disk, for example query snapshot_path=/tmp/typesense-snapshot.
typesense_trigger_ leader_ electionStart a leader election from this node.
typesense_delete_ collection_ overrideDelete a curation rule (override) from a collection, on Typesense v29 and older.
typesense_delete_ collection_ synonymDelete a synonym from a collection, on Typesense v29 and older.
typesense_delete_ curation_ setDelete a curation set and all its items.
typesense_delete_ curation_ set_ itemDelete one item from a curation set.
typesense_delete_ synonym_ setDelete a synonym set and all its items.
typesense_delete_ synonym_ set_ itemDelete one item from a synonym set.
typesense_get_ collection_ overrideRead one curation rule (override) of a collection on Typesense v29 and older.
typesense_get_ collection_ synonymRead one synonym of a collection on Typesense v29 and older.
typesense_get_ curation_ setRead one curation set and its items.
typesense_get_ curation_ set_ itemRead one item of a curation set.
typesense_get_ synonym_ setRead one synonym set and its items.
typesense_get_ synonym_ set_ itemRead one item of a synonym set.
typesense_list_ collection_ overridesList a collection's curation rules (overrides) on Typesense v29 and older.
typesense_list_ collection_ synonymsList a collection's synonyms on Typesense v29 and older.
typesense_list_ curation_ set_ itemsList the items in one curation set.
typesense_list_ synonym_ set_ itemsList the items in one synonym set.
typesense_upsert_ collection_ overrideAdd or replace a curation rule (override) on a collection, on Typesense v29 and older.
typesense_upsert_ collection_ synonymAdd or replace a synonym on a collection, on Typesense v29 and older.
typesense_upsert_ curation_ set_ itemAdd or replace one item in a curation set.
typesense_upsert_ synonym_ set_ itemAdd or replace one item in a synonym set.
typesense_cloud_ accept_ synonym_ suggestionAccept a pending synonym suggestion, which changes live search results.
typesense_cloud_ delete_ analytics_ notificationStop emailed reports for an analytics rule.
typesense_cloud_ delete_ synonym_ suggestion_ settingsStop synonym suggestions and delete the stored key.
typesense_cloud_ dismiss_ synonym_ suggestionDismiss a pending synonym suggestion.
typesense_cloud_ get_ analytics_ notificationRead the report schedule of one analytics rule.
typesense_cloud_ get_ synonym_ suggestion_ settingsRead a cluster's weekly synonym suggestion settings.
typesense_cloud_ list_ analytics_ notificationsList the analytics rules that have emailed reports scheduled.
typesense_cloud_ list_ synonym_ suggestionsList synonym suggestions.
typesense_cloud_ run_ synonym_ suggestionsRun synonym suggestions now.
typesense_cloud_ set_ analytics_ notificationSchedule or replace emailed reports for an analytics rule.
typesense_cloud_ set_ synonym_ suggestion_ settingsSet up or replace weekly synonym suggestions.
typesense_create_ rate_ limit_ ruleAdd a rate limit rule.
typesense_delete_ active_ throttleLift a current limit or ban by its id from typesense_list_active_throttles.
typesense_delete_ analytics_ ruleDelete an analytics rule.
typesense_delete_ rate_ limit_ exceedClear one client's count of going over its limit.
typesense_delete_ rate_ limit_ ruleDelete a rate limit rule.
typesense_flush_ analyticsWrite the analytics held in memory to disk now, instead of waiting for the next scheduled flush.
typesense_get_ analytics_ ruleRead one analytics rule.
typesense_get_ analytics_ statusSee how many analytics events are waiting to be written.
typesense_get_ rate_ limit_ ruleRead one rate limit rule by its numeric id.
typesense_list_ active_ throttlesList the clients being limited or banned right now.
typesense_list_ analytics_ eventsRead one user's recent analytics events for a rule.
typesense_list_ rate_ limit_ exceedsSee how many times each client went over its limit.
typesense_list_ rate_ limit_ rulesList the rate limit rules set on this server.
typesense_send_ analytics_ eventRecord a click, conversion or visit against an analytics rule.
typesense_update_ rate_ limit_ ruleReplace a rate limit rule, with the same body as typesense_create_rate_limit_rule.
typesense_upsert_ analytics_ ruleUpdate an analytics rule, or create it under this name.
typesense_cloud_ get_ access_ logsRead each request's time, method, path, client IP and API key prefix.
typesense_cloud_ get_ api_ keys_ last_ usedSee when each API key was last used, to find ones safe to revoke.
typesense_cloud_ get_ cluster_ metricsRead per-node metrics for a cluster over a time window, such as memory, CPU and search rate.
typesense_cloud_ get_ search_ insightsRead a collection's top no-hit and popular queries, top facet values and field names.
typesense_cloud_ get_ slow_ requestsRead slow requests, including their search parameters.
typesense_cloud_ get_ top_ api_ keysSee which API keys make the most requests.
typesense_cloud_ get_ top_ ipsSee which client IPs make the most requests.
typesense_cloud_ get_ top_ pathsSee which request paths are used most.
typesense_cloud_ get_ billing_ summaryRead prepaid credit, spend by month, the upcoming invoice and the billing cycle.
typesense_cloud_ get_ invoiceRead one invoice with its line items, amounts in cents, and invoice_html_url to view it.
typesense_cloud_ list_ account_ usageList the invoiced node-hours and bandwidth behind the account's invoices.
typesense_cloud_ list_ cluster_ costsSee what each cluster cost per calendar month.
typesense_cloud_ list_ invoicesList invoices, with amounts in cents.
typesense_cloud_ list_ pricesList node-hour and bandwidth prices by region and configuration.
typesense_cloud_ update_ billing_ cycleSwitch the account between weekly and monthly billing.
typesense_cloud_ create_ cluster_ api_ keyCreate a cluster API key limited to named actions and collections.
typesense_cloud_ delete_ backupPermanently delete a backup.
typesense_cloud_ delete_ cluster_ api_ keyRevoke a cluster API key by its id from typesense_cloud_list_cluster_api_keys.
typesense_cloud_ get_ backup_ settingsRead a cluster's backup settings and their estimated cost.
typesense_cloud_ get_ ip_ allowlistRead which IPv4 addresses may reach a cluster.
typesense_cloud_ list_ backupsList a cluster's kept backups.
typesense_cloud_ list_ cluster_ api_ keysList a cluster's API keys with id, description, scope and the first characters of the value.
typesense_cloud_ restore_ backupRestore a backup, either onto a new cluster, which is billed, or onto the backed-up cluster, which replaces all its data.
typesense_cloud_ set_ backup_ settingsTurn backups on or off, or change their schedule, retention and regions.
typesense_cloud_ set_ ip_ allowlistReplace a cluster's whole IP allowlist.
typesense_create_ conversation_ modelAdd a conversation model so a search can answer in sentences with conversation=true.
typesense_create_ nl_ search_ modelAdd a natural language search model.
typesense_delete_ api_ keyRevoke an API key by its numeric id from typesense_list_api_keys.
typesense_delete_ conversation_ modelDelete a conversation model.
typesense_delete_ nl_ search_ modelDelete a natural language search model.
typesense_get_ api_ keyRead one API key's details by its numeric id from typesense_list_api_keys.
typesense_get_ conversation_ modelRead one conversation model.
typesense_get_ nl_ search_ modelRead one natural language search model.
typesense_list_ conversation_ modelsList conversation models, the language model settings used for answers from search results.
typesense_list_ nl_ search_ modelsList natural language search models, which turn a sentence into filters and sorts.
typesense_update_ conversation_ modelChange a conversation model.
typesense_update_ nl_ search_ modelChange a natural language search model.
typesense_delete_ aliasDelete an alias.
typesense_delete_ presetDelete a search preset.
typesense_delete_ stemming_ dictionaryDelete a custom stemming dictionary.
typesense_delete_ stopword_ setDelete a stopword set.
typesense_get_ aliasSee which collection an alias points at.
typesense_get_ presetRead one search preset.
typesense_get_ stemming_ dictionaryRead a stemming dictionary's word and root pairs.
typesense_get_ stopword_ setRead one stopword set.
typesense_import_ stemming_ dictionaryCreate or fill a custom stemming dictionary from word and root pairs.
typesense_list_ stemming_ dictionariesList custom stemming dictionaries by id.
typesense_delete_ personalization_ modelDelete a personalization model.
typesense_get_ personalization_ modelRead one personalization model.
typesense_list_ personalization_ modelsList uploaded personalization models.
typesense_cloud_ get_ accountWhich Typesense Cloud account the Cluster Management API key belongs to, and what it may do (capabilities).
Credentials off one Typesense screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.
On Typesense Cloud, open your cluster and press Generate API Keys to get its hostname and keys. Paste the hostname and the admin key here. On your own server, use its https address and the key it was started with. A Cluster Management API key is optional and adds clusters, backups and billing.
abc123.a1.typesense.net••••••••••••3f7a••••••••••••3f7aA search-only key can only search, whatever the AI asks. With an admin key, deleting a collection or documents is permanent and happens as soon as the AI calls it. Tick Typesense on the PopMCP consent screen only for clients that should change data. Teammates start on read-only.
Drop the PopMCP URL into Claude, ChatGPT, Claude Code, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Typesense credential never leaves the server.
app.popmcp.com/mcpAsk for something harmless before the agent changes anything. Writes run as soon as it calls them, so confirm it reads the right account first.
Which collections do I have, and how many documents are in each?
typesense_overviewok
Then just ask for the work
“Which collections do I have, and how many documents are in each?”
“Search products for trail shoes under 100, sorted by rating, and show how many there are per brand”
“Import these products and tell me exactly which ones failed and why”
“Make sneakers also find trainers, and pin product 422 to the top when someone searches for sneakers”
One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.
Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.
The same endpoint, registered in the browser. Nothing to install on the machine you are working from.
Register PopMCP as a custom connector, then let ChatGPT read and update the account.
Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.
Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.
Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.
FAQ
What teams ask before putting Typesense behind an AI client.
Your server's address and an API key. On Typesense Cloud, open your cluster and press Generate API Keys, then paste the hostname, which looks like abc123.a1.typesense.net, and the admin key. On your own server, use its https address and the key it was started with. PopMCP checks that the address is Typesense before it sends the key, and stores the key encrypted.
Yes, when the server can be reached from the internet over https. A custom port and a reverse proxy path both work. A server on plain http, on a private network or only on your own computer cannot be connected, because PopMCP refuses to send a key unprotected or to reach private addresses.
Yes. The AI can then search, but Typesense will refuse anything else, including listing your collections, so name the collection when you ask. If the key is limited to certain collections, name one of them under More options when you connect, because that is the only way to check such a key. You can also set the connection itself to read-only in PopMCP.
Current and older ones. Version 30 replaced per-collection synonyms and overrides with synonym sets and curation sets, and the server has tools for both. When one kind answers not found, the error names the tool for the other kind, and typesense_overview shows the version your server runs.
An import takes up to 10,000 documents in a call and reports exactly which ones failed and why, because Typesense answers with success even when some documents were rejected. An export stops after the number of documents you set, up to 1,000, and says when there are more. A full export of a big collection is better run from your own machine.
It adds Typesense Cloud's own management tools: clusters, resizing, restarts, backups, logs, metrics, search insights and billing. Create it in your Typesense Cloud account page, pick what it may do, and paste it under More options. You do not need it to search or change data, and self-hosted servers do not use it.
It can list keys, which shows only their first characters. It can create a key limited to named actions and collections, such as a search-only key for a website, and that answer holds the value once. It cannot create a key with the wildcard action, because that value would land in your chat: make admin keys in Typesense itself. Language model keys stored on Typesense are hidden from the AI too.
166. Thirty-five everyday tools load by default and the rest stay searchable, so your AI client is not crowded. They were checked against Typesense's official specifications and its server's own route table, and every endpoint is either covered or left out for a stated reason, such as internal routes or ones that would put an admin key in your chat.
No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.
Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.
Connect Typesense in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Typesense on the consent screen. The Typesense tools are then available in that session, and no Typesense credential is stored on your machine.
Loading 166 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 35-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.
A tool is something your AI calls, and there are 166 here. A trigger is an event PopMCP watches for on its own. Typesense has no triggers yet, so everything on this page happens when your AI calls a tool.
Launch a hosted MCP endpoint for Typesense, keep tool access under control, and start testing real workflow prompts right away.