Mixpeek MCP Server
A lightweight, production-friendly Model Context Protocol (MCP) server for Mixpeek that:
- Auto-loads Mixpeek's OpenAPI spec and exposes endpoints as MCP tools
- Supports local and hosted use (bring-your-own API key)
- Injects
AuthorizationandX-Namespaceheaders - Includes rate limits, timeouts, and redacted logs
- Ships with Docker and simple configuration
Quickstart
- Install
Python (PyPI):
# global (recommended)
pipx install mixpeek-mcp
# or in a venv
python -m venv .venv && source .venv/bin/activate
pip install mixpeek-mcp
npm (Node):
# run once
npx @mixpeek/mcp
# or install globally
npm i -g @mixpeek/mcp
Homebrew (macOS):
# tap and install (once the tap is live)
brew tap mixpeek/tap https://github.com/mixpeek/homebrew-tap
brew install mixpeek-mcp
# temporary local formula (dev/testing):
brew install --build-from-source Formula/mixpeek-mcp.rb
- Configure (env or your MCP client secret store)
cp env.sample .env
# edit as needed
Env vars:
MIXPEEK_API_KEY: Your Mixpeek API key (optional if endpoints don't require auth)MIXPEEK_API_BASE: Defaulthttps://api.mixpeek.comMIXPEEK_OPENAPI_URL: Defaults to<API_BASE>/openapi.json(or/docs/openapi.json)MIXPEEK_NAMESPACE: Optional namespace value to send viaX-NamespaceMCP_RATE_MAX_CALLS: Default20perMCP_RATE_PER_SECONDSMCP_RATE_PER_SECONDS: Default10MCP_CONNECT_TIMEOUT: Default5MCP_READ_TIMEOUT: Default30
- Run locally (stdio)
# PyPI
mixpeek-mcp
# from source
python server.py
# npm
mixpeek-mcp
Your MCP client (e.g., Claude Desktop) can attach to this server via stdio.
Docker
docker build -t mixpeek-mcp:latest .
docker run --rm -it \
-e MIXPEEK_API_KEY=sk_... \
-e MIXPEEK_NAMESPACE=your_namespace \
mixpeek-mcp:latest
Or pull and run (once published):
docker run --rm -it \
-e MIXPEEK_API_KEY=sk_... \
-e MIXPEEK_NAMESPACE=your_namespace \
ghcr.io/mixpeek/mcp:latest
Distribution
- npm:
@mixpeek/mcp→https://www.npmjs.com/package/@mixpeek/mcp - PyPI:
mixpeek-mcp→https://pypi.org/project/mixpeek-mcp/(publish pending) - Docker Hub:
mixpeek/mcp(pending push), GHCR:ghcr.io/mixpeek/mcp(pending push) - Homebrew:
mixpeek/tap/mixpeek-mcp(tap repo to be created)
Submit to Docker MCP Registry
We prepared registry.json compatible with the Official Docker MCP Registry. To submit:
- Fork the registry and create a new entry under the appropriate directory per their CONTRIBUTING guide.
- Include our
registry.json(update Docker image reference if you publish under a different org/tag). - Open a PR. Upon approval, it will appear in the MCP catalog and Docker Desktop's MCP Toolkit.
Configuration
Required for write-protected endpoints:
MIXPEEK_API_KEY:Authorization: Bearer <key>
Optional:
MIXPEEK_NAMESPACE: setsX-Namespacefor isolationMIXPEEK_API_BASE: defaults tohttps://api.mixpeek.com; testing:https://server-xb24.onrender.comMIXPEEK_OPENAPI_URL: defaults to<API_BASE>/openapi.json(or/docs/openapi.json)MCP_RATE_MAX_CALLS/MCP_RATE_PER_SECONDS: simple token bucketMCP_CONNECT_TIMEOUT/MCP_READ_TIMEOUT: request timeouts
How it works
- Loads OpenAPI spec and maps GET/POST JSON endpoints to tools using
operationId - Tool arguments accept top-level query parameters or a
query/bodyenvelope - Forwards requests to Mixpeek with configured headers
- Provides small allowlist (configurable) and redacts secrets in logs
Testing
Unit tests:
pip install -r requirements.txt
pytest -q
Live test (optional):
export LIVE_MIXPEEK_API_KEY=sk_...
export LIVE_MIXPEEK_OPENAPI_URL=https://server-xb24.onrender.com/docs/openapi.json
export LIVE_MIXPEEK_API_BASE=https://server-xb24.onrender.com
pytest -q tests/test_live_integration.py
Using with MCP clients
- This server uses MCP stdio transport and the official server interface, compatible with common MCP clients.
- Start the server, then point your MCP client to the stdio command (
mixpeek-mcp).
References
- Mixpeek docs:
https://docs.mixpeek.com/overview/introduction - Mixpeek OpenAPI:
https://api.mixpeek.com/docs/openapi.json - MCP overview:
https://modelcontextprotocol.io/docs/getting-started/intro
Notes
- For production hosting, front with HTTPS, add SSO/session issuance, per-tenant rate limits, and audit logs without bodies/headers. Keep local stdio as the default; hosted HTTP/SSE can be added later.
Metadata
Release files for mixpeek-mcp 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mixpeek_mcp-0.1.1.tar.gz | 9.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mixpeek_mcp-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.3 kB
Release files / mixpeek_mcp-0.1.1.tar.gz
| Download URL | mixpeek_mcp-0.1.1.tar.gz |
|---|---|
| Size | 9.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c2a506923a16197893e973c0ab1b25a449f5156bc51e75aa43692dd0b0642a20
|
|
BLAKE2b-256 checksum How to use checksums |
82db20634ec6126b334b70b9b168a980440a21f955e17901008c2d9aa32293e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Release files / mixpeek_mcp-0.1.1-py3-none-any.whl
| Download URL | mixpeek_mcp-0.1.1-py3-none-any.whl |
|---|---|
| Size | 7.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1521109fb58341941492d2f0a898add9b4f9ef205f857f6ea232e36c741d8de6
|
|
BLAKE2b-256 checksum How to use checksums |
89502a69cc73ee2456e0a332180b28ecece03a5f881315c51fd1bb01c5d2126b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|