Skip to main content

An MCP server for Manticore Search.

Project description

Manticore Search MCP Server

mcp-name: io.github.manticoresoftware/mcp-manticore

PyPI - Version uv

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:

  • uvx runs 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-manticore to 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

  1. Open Cursor → Settings → Tools & MCP
  2. Click "Add MCP Server"
  3. Enter name: manticore
  4. 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

  1. Open Windsurf → Cascade panel
  2. Click the MCPs icon (🔨) in the top-right
  3. Click "Add Server"
  4. 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

  1. Verify Manticore is running: curl http://localhost:9308/health
  2. Check environment variables are set correctly
  3. 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

Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_manticore-0.1.1.tar.gz (26.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_manticore-0.1.1-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file mcp_manticore-0.1.1.tar.gz.

File metadata

  • Download URL: mcp_manticore-0.1.1.tar.gz
  • Upload date:
  • Size: 26.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mcp_manticore-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5647d80027105f89d7f53c8e6fc71df762f0df48ecaa41ee98709ca1319f9ac4
MD5 6ee738049b411ebe127af26d45a9f5a6
BLAKE2b-256 ed912f62f7bcbbdba297cc52cdf5d5fad085d595088653250e41ea948b1aad45

See more details on using hashes here.

File details

Details for the file mcp_manticore-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: mcp_manticore-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 23.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mcp_manticore-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 93ecb279aba5158cddd7a6fb6007ad2045ec9cf2405e114a583e9e13aa77941d
MD5 0b1ccc2821e21cfedc3236fc36dd9f16
BLAKE2b-256 796e1955735c4ca80c82c7bef9cd52145943953775ba2d558d6d1bdda50e3057

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page