Seamless integration with Weaviate vector databases for search and management.
Weaviate MCP Server
A Model Context Protocol (MCP) server that provides seamless integration with Weaviate vector databases. This server focuses on powerful search capabilities including semantic, keyword, and hybrid search, with plans to expand functionality in future releases.
Features
The Weaviate MCP Server currently provides 11 essential tools for interacting with your Weaviate instance:
Connection & Configuration
get_config- View current Weaviate configuration (with sensitive values masked)check_connection- Test connection to your Weaviate instance
Schema & Collection Management
list_collections- List all available collections in your databaseget_schema- Get detailed schema information for specific collections or all collectionsget_collection_objects- Retrieve objects from collections with pagination support
Search Capabilities (Primary Focus)
search- Simplified search interface using hybrid search by defaultsemantic_search- Vector similarity search using embeddings for semantic matchingkeyword_search- BM25-based keyword search for exact term matchinghybrid_search- Combined semantic and keyword search with configurable weighting
Multi-Tenancy Support
is_multi_tenancy_enabled- Check if a collection supports multi-tenancyget_tenant_list- List all tenants for a multi-tenant collection
Quick Start
The MCP server is designed to be used with MCP clients like Claude Desktop. It uses uvx for automatic installation and execution - no manual installation required.
Test the server directly:
uvx mcp-weaviate --help
Requirements
- Weaviate instance (local or cloud)
- API keys for embeddings:
- OpenAI API key (for OpenAI embeddings)
- Cohere API key (optional, for Cohere embeddings)
Configuration
MCP Settings Configuration
Add the Weaviate MCP server to your MCP settings file (typically claude_desktop_config.json or similar):
Local Weaviate Instance
{
"mcpServers": {
"mcp-weaviate": {
"command": "/path/to/uvx",
"args": [
"mcp-weaviate",
"--connection-type", "local",
"--host", "localhost",
"--port", "8080",
"--grpc-port", "50051",
"--openai-api-key", "YOUR_OPENAI_API_KEY"
]
}
}
}
Weaviate Cloud Services
{
"mcpServers": {
"mcp-weaviate": {
"command": "/path/to/uvx",
"args": [
"mcp-weaviate",
"--connection-type", "cloud",
"--cluster-url", "https://your-cluster.weaviate.network",
"--api-key", "YOUR_WEAVIATE_API_KEY",
"--openai-api-key", "YOUR_OPENAI_API_KEY"
]
}
}
}
Configuration Options
| Option | Description | Default | Environment Variable |
|---|---|---|---|
--transport |
Transport protocol: "stdio" or "streamable-http" | stdio | - |
--http-host |
Host for HTTP transport | 0.0.0.0 | - |
--http-port |
Port for HTTP transport | 8000 | - |
--connection-type |
Connection type: "local" or "cloud" | required | - |
--host |
Host for local Weaviate connection | required for local | - |
--port |
HTTP port for local Weaviate connection | required for local | - |
--grpc-port |
gRPC port for local Weaviate connection | required for local | - |
--cluster-url |
Weaviate Cloud Services URL | required for cloud | WEAVIATE_CLUSTER_URL |
--api-key |
API key for authentication | required for cloud | WEAVIATE_API_KEY |
--openai-api-key |
OpenAI API key for embeddings | - | OPENAI_API_KEY |
--cohere-api-key |
Cohere API key for embeddings | - | COHERE_API_KEY |
--timeout-init |
Initialization timeout (seconds) | 30 | - |
--timeout-query |
Query timeout (seconds) | 60 | - |
--timeout-insert |
Insert timeout (seconds) | 120 | - |
Remote Deployment
For deploying the MCP server remotely (e.g., on TrueFoundry, Kubernetes, etc.), use the streamable-http transport:
mcp-weaviate --transport streamable-http --http-port 8000 --connection-type cloud
This exposes the server on HTTP port 8000 with a /health endpoint for health checks.
Tool Reference
Search Tools
`search`
Simplified search interface using hybrid search with balanced defaults (alpha=0.3).
`semantic_search`
Vector similarity search using embeddings. Best for finding conceptually similar content.
`keyword_search`
BM25 keyword search for exact term matching. Best for finding specific terms or phrases.
`hybrid_search`
Combines semantic and keyword search using Reciprocal Rank Fusion (RRF).
alphaparameter controls the balance:- 1.0 = 100% semantic search
- 0.0 = 100% keyword search
- 0.5 = equal weight
- 0.3 = default (30% semantic, 70% keyword)
Collection Management
`get_collection_objects`
Retrieve objects from a collection with pagination
Tools (7)
searchSimplified search interface using hybrid search by default.semantic_searchVector similarity search using embeddings for semantic matching.keyword_searchBM25-based keyword search for exact term matching.hybrid_searchCombined semantic and keyword search with configurable weighting.list_collectionsList all available collections in your database.get_schemaGet detailed schema information for specific collections or all collections.get_collection_objectsRetrieve objects from collections with pagination support.Environment Variables
WEAVIATE_CLUSTER_URLWeaviate Cloud Services URLWEAVIATE_API_KEYAPI key for authenticationOPENAI_API_KEYOpenAI API key for embeddingsCOHERE_API_KEYCohere API key for embeddingsConfiguration
{"mcpServers": {"mcp-weaviate": {"command": "uvx", "args": ["mcp-weaviate", "--connection-type", "local", "--host", "localhost", "--port", "8080", "--grpc-port", "50051", "--openai-api-key", "YOUR_OPENAI_API_KEY"]}}}