Typesense MCP Server
The Typesense MCP Server is a tool for managing and interacting with a Typesense search engine server through a Model Context Protocol (MCP) interface. It provides:
Server Management: Check health status of the Typesense server and list all available collections.
Collection Management: Describe, export, create, delete, or truncate collections.
Document Operations: Create, upsert, index multiple, or delete individual documents, as well as import documents from CSV data.
Search Capabilities: Perform keyword searches with filtering, sorting, and pagination, and execute vector similarity searches for advanced querying.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Typesense MCP Serversearch for customer support articles about billing issues"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Typesense MCP Server
A Model Context Protocol (MCP) Server that interfaces with Typesense
Installation
Install uv
On Mac you can install it using homebrew
brew install uvClone the package
git clone git@github.com:avarant/typesense-mcp-server.git ~/typesense-mcp-serverAdd the server to your MCP client config. Most clients (Cursor at ~/.cursor/mcp.json, Claude Desktop at ~/Library/Application Support/Claude/claude_desktop_config.json, Windsurf, Zed, VS Code, etc.) accept the same mcpServers shape:
{
"mcpServers": {
"typesense": {
"command": "uv",
"args": ["--directory", "~/typesense-mcp-server", "run", "mcp", "run", "main.py"],
"env": {
"TYPESENSE_HOST": "",
"TYPESENSE_PORT": "",
"TYPESENSE_PROTOCOL": "",
"TYPESENSE_API_KEY": ""
}
}
}
}Refer to your client's MCP documentation for the exact config file location.
Related MCP server: SearXNG Model Context Protocol Server
Transports
The server supports three MCP transports. STDIO is the default and is what most desktop clients (Claude Desktop, Cursor, etc.) use. For remote clients or web UIs, you can run it as an HTTP server using either the legacy SSE transport or the newer Streamable HTTP transport.
STDIO (default)
TYPESENSE_API_KEY=xyz uv run python main.pyStreamable HTTP (recommended for web clients)
Single endpoint at /mcp. Works with browser-based clients like the llama.cpp web chat. Set MCP_TRANSPORT=streamable-http (or pass --http):
TYPESENSE_API_KEY=xyz \
MCP_TRANSPORT=streamable-http \
MCP_STATELESS_HTTP=true \
MCP_CORS_ORIGINS='*' \
uv run python main.pyStateless mode (
MCP_STATELESS_HTTP=true) is required for clients that don't keep an MCP session across requests.CORS must be enabled (
MCP_CORS_ORIGINS) for browser clients. Use a specific origin likehttp://localhost:8080in production rather than*.
SSE (legacy)
Two endpoints, GET /sse for the event stream and POST /messages/ for JSON-RPC. Set MCP_TRANSPORT=sse (or pass --sse):
TYPESENSE_API_KEY=xyz MCP_TRANSPORT=sse uv run python main.pyConfiguration
Env var | Default | Description |
|
|
|
|
| Bind address for HTTP transports |
|
| Bind port for HTTP transports |
|
| Stateless mode for HTTP transports (required for some web clients) |
| (empty) | Comma-separated allowed origins. Empty disables CORS. |
Available Tools
The Typesense MCP Server provides the following tools:
Server Management
check_typesense_health- Checks the health status of the configured Typesense serverlist_collections- Retrieves a list of all collections in the Typesense server
Collection Management
describe_collection- Retrieves the schema and metadata for a specific collectionexport_collection- Exports all documents from a specific collectioncreate_collection- Creates a new collection with the provided schemadelete_collection- Deletes a specific collectiontruncate_collection- Truncates a collection by deleting all documents but keeping the schema
Document Operations
create_document- Creates a single new document in a specific collectionupsert_document- Upserts (creates or updates) a single document in a specific collectionindex_multiple_documents- Indexes (creates, upserts, or updates) multiple documents in a batchdelete_document- Deletes a single document by its ID from a specific collectionimport_documents_from_csv- Imports documents from CSV data into a collection
Search Capabilities
search- Performs a keyword search on a specific collectionvector_search- Performs a vector similarity search on a specific collection
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/avarant/typesense-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server