An MCP server for Manticore Search.
Project description
Manticore Search MCP Server
MCP server for Manticore Search — enables AI assistants to query and manage Manticore Search databases directly.
Quick Start
Installation
# Option 1: Install with uv (recommended, requires PyPI release)
uvx mcp-manticore
# Option 2: Install with pip
pip install mcp-manticore
# Option 3: Run from source (for local development)
uvx --from . mcp-manticore
# Or: uv run mcp-manticore
Note:
uvxruns the package directly without installation. First-time run may take a moment to download dependencies.- The package must be published to PyPI for
uvx mcp-manticoreto work.- For local development or testing unreleased versions, use
uvx --from . mcp-manticore
What It Does
Tools
| Tool | Description |
|---|---|
run_query |
Execute SQL queries (SELECT, SHOW, DESCRIBE, etc.) |
list_tables |
List all tables and indexes |
describe_table |
Get table schema |
list_documentation |
List available documentation files |
get_documentation |
Fetch specific documentation from Manticore manual |
Prompts
manticore_initial_prompt— Built-in prompt teaching LLMs about Manticore Search features (full-text operators, KNN vector search, fuzzy search, etc.)
Health Check
HTTP endpoint at /health for monitoring connectivity.
Configuration
Environment Variables
| Variable | Default | Description |
|---|---|---|
MANTICORE_HOST |
localhost |
Manticore server host |
MANTICORE_PORT |
9308 |
HTTP API port |
MANTICORE_USER |
— | Username (optional) |
MANTICORE_PASSWORD |
— | Password (optional) |
MANTICORE_CONNECT_TIMEOUT |
30 |
Connection timeout (seconds) |
MANTICORE_QUERY_TIMEOUT |
30 |
Query timeout (seconds) |
MANTICORE_ALLOW_WRITE_ACCESS |
false |
Enable write operations (INSERT, UPDATE, DELETE) |
MANTICORE_ALLOW_DROP |
false |
Enable destructive operations (DROP, TRUNCATE) |
GITHUB_TOKEN |
— | GitHub token for higher API rate limit |
Safety
By default, all write operations are blocked. To enable:
# Enable writes (INSERT, UPDATE, DELETE)
export MANTICORE_ALLOW_WRITE_ACCESS=true
# Enable destructive operations (DROP, TRUNCATE)
export MANTICORE_ALLOW_DROP=true
Connect to Your AI Assistant
Claude Code
Open terminal and run:
claude mcp add manticore -- uvx mcp-manticore
Or with environment variables:
claude mcp add manticore -- uvx mcp-manticore -- \
MANTICORE_HOST=localhost \
MANTICORE_PORT=9308
For full configuration, edit ~/.claude/mcp_settings.json:
{
"mcpServers": {
"manticore": {
"command": "uvx",
"args": ["mcp-manticore"],
"env": {
"MANTICORE_HOST": "localhost",
"MANTICORE_PORT": "9308"
}
}
}
}
Restart Claude Code or type /mcp restart to apply changes.
Cursor
Method 1: Via Settings UI
- Open Cursor → Settings → Tools & MCP
- Click "Add MCP Server"
- Enter name:
manticore - Command:
uvx mcp-manticore
Method 2: Via Config File
Global config (~/.cursor/mcp.json):
{
"mcpServers": {
"manticore": {
"command": "uvx",
"args": ["mcp-manticore"],
"env": {
"MANTICORE_HOST": "localhost",
"MANTICORE_PORT": "9308"
}
}
}
}
Project config (.cursor/mcp.json in your project):
{
"mcpServers": {
"manticore": {
"command": "uvx",
"args": ["mcp-manticore"]
}
}
}
Windsurf
Method 1: Via Cascade UI
- Open Windsurf → Cascade panel
- Click the MCPs icon (🔨) in the top-right
- Click "Add Server"
- Enter:
uvx mcp-manticore
Method 2: Via Config File
Edit ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"manticore": {
"command": "uvx",
"args": ["mcp-manticore"],
"env": {
"MANTICORE_HOST": "localhost",
"MANTICORE_PORT": "9308"
}
}
}
}
Or open directly in Windsurf: Cmd/Ctrl + Shift + P → "MCP Configuration Panel"
VS Code (with VSCode Copilot)
VS Code uses the same MCP configuration as Cursor. Edit ~/.cursor/mcp.json:
{
"mcpServers": {
"manticore": {
"command": "uvx",
"args": ["mcp-manticore"],
"env": {
"MANTICORE_HOST": "localhost",
"MANTICORE_PORT": "9308"
}
}
}
}
Claude Desktop (Legacy)
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%/Claude/claude_desktop_config.json (Windows):
{
"mcpServers": {
"manticore": {
"command": "uvx",
"args": ["mcp-manticore"],
"env": {
"MANTICORE_HOST": "localhost",
"MANTICORE_PORT": "9308"
}
}
}
}
HTTP Transport (Remote MCP)
By default, MCP uses stdio (local). For remote access:
export MANTICORE_MCP_SERVER_TRANSPORT=http
export MANTICORE_MCP_BIND_PORT=8000
export MANTICORE_MCP_AUTH_TOKEN="your-secure-token"
uvx mcp-manticore
Connect via URL:
{
"mcpServers": {
"manticore": {
"url": "http://localhost:8000/mcp",
"headers": {
"Authorization": "Bearer your-secure-token"
}
}
}
}
Troubleshooting
Install uv (required)
macOS / Linux:
# Via installer script (recommended)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Or via Homebrew
brew install uv
Windows:
# Via PowerShell
irm https://astral.sh/uv/install.ps1 | iex
# Or via winget
winget install astral-sh.uv
Verify installation:
uv --version
MCP server not connecting
- Verify Manticore is running:
curl http://localhost:9308/health - Check environment variables are set correctly
- For Claude Code: restart with
/mcp restart
Too many tools loaded
Some agents limit active MCP tools. Remove unused servers or use project-scoped configs.
Development
# Clone and setup
git clone https://github.com/manticoresoftware/mcp-manticore.git
cd mcp-manticore
# Install dependencies
uv sync
# Run locally
uv run mcp-manticore
# Run with custom config
MANTICORE_HOST=remote-server MANTICORE_PORT=9308 uv run mcp-manticore
# Run tests
uv run pytest
# Build package
uv build
# Publish to PyPI
uv publish
Architecture
| File | Purpose |
|---|---|
mcp_manticore/mcp_env.py |
Configuration management |
mcp_manticore/mcp_server.py |
MCP server implementation |
mcp_manticore/manticore_prompt.py |
LLM guidance/prompts |
mcp_manticore/docs_fetcher.py |
GitHub docs fetcher |
mcp_manticore/main.py |
CLI entry point |
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_manticore-0.1.2.tar.gz.
File metadata
- Download URL: mcp_manticore-0.1.2.tar.gz
- Upload date:
- Size: 26.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90bca9c06afdbed377a6ea78fe2f5dd3a8db82219efff4d4d849a15b9edf7c46
|
|
| MD5 |
1eb78cb5e34e2242f3da918caca98993
|
|
| BLAKE2b-256 |
80bdae1c481f2bcd8b052a247d9021be000b50e3d669335dc70c26460417846b
|
File details
Details for the file mcp_manticore-0.1.2-py3-none-any.whl.
File metadata
- Download URL: mcp_manticore-0.1.2-py3-none-any.whl
- Upload date:
- Size: 23.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ed5ef9c680dd84638f775f284bf423e344f3d8c3202542bd483801debd1b122e
|
|
| MD5 |
22aa2d5462f01cbedd87e969e09896fb
|
|
| BLAKE2b-256 |
d903949b0908c23cea0ce4dc36361b03b02762621c4caf6ea0247cbc75d71880
|