Skip to main content

cockroachdb-mcp-server

PyPI Python License CI MCP Compatible

A Model Context Protocol (MCP) server implemented in Python using FastAPI and CockroachDB.


🧠 What This Is

cockroachdb-mcp-server is a production-grade, spec-aligned MCP server that:

  • Implements the Model Context Protocol
  • Uses CockroachDB as a resilient, SQL-compatible backend
  • Exposes full CRUD APIs for managing model contexts
  • Stores context definitions as JSONB, allowing arbitrary input/output schema
  • Works seamlessly with the cockroachdb-mcp-client CLI

✅ Feature Highlights

  • ✅ REST API for MCP context management (/contexts)
  • ✅ Schema bootstrapping via CLI flag or env var
  • ✅ CRDB URL auto-detection and dialect fix
  • ✅ ASCII banner and version info
  • ✅ Structured logging and configurable log level
  • ✅ Ready for /run, /deploy, /evaluate extensions

🚀 Quickstart

📦 Install from PyPI

pip install cockroachdb-mcp-server

🏃 Run with schema init

cockroachdb-mcp-server serve --init-schema --log-level INFO

Or:

export MCP_AUTO_INIT_SCHEMA=true
cockroachdb-mcp-server serve

Server runs at http://localhost:8081 by default


🔧 CLI Usage

cockroachdb-mcp-server serve --init-schema
cockroachdb-mcp-server serve --port 8081 --host 127.0.0.1 --reload
cockroachdb-mcp-server --version
cockroachdb-mcp-server --banner

🔐 Configuring the Database

✅ Set the CRDB_URL environment variable

export CRDB_URL="postgresql://root@localhost:26257/defaultdb?sslmode=disable"

Automatically rewritten to cockroachdb://... under the hood for compatibility.

Alternatively, set it directly:

export CRDB_URL="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"

✅ Both formats are supported.


🧪 API Endpoints

Method Path Description
POST /contexts Create a context
GET /contexts List all contexts
GET /contexts/{id} Get context by ID
PUT /contexts/{id} Update context
DELETE /contexts/{id} Delete context

📘 View full API reference →

📘 View hosted API Docs


🧱 Schema Auto-Bootstrap

Run this manually:

cockroachdb-mcp-server serve --init-schema

Or automatically with:

export MCP_AUTO_INIT_SCHEMA=true

The schema created is:

CREATE TABLE IF NOT EXISTS mcp_contexts (
  id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
  context_name STRING NOT NULL,
  context_version STRING NOT NULL,
  body JSONB NOT NULL,
  created_at TIMESTAMP DEFAULT now()
);

  • cockroachdb-mcp-client: CLI tool to manage MCP contexts, simulate LLM runs, export, and batch simulate across providers.

🙌 Contributions

This project is designed for internal and community use.

PRs welcome to extend functionality (auth, deployment support, /evaluate, telemetry, etc.).

Metadata

Release files for cockroachdb-mcp-server 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cockroachdb-mcp-server 0.2.2
File Size Uploaded Provenance
cockroachdb_mcp_server-0.2.2.tar.gz 10.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for cockroachdb-mcp-server 0.2.2
File Interpreter ABI Platform
cockroachdb_mcp_server-0.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 22.4 kB

Release files / cockroachdb_mcp_server-0.2.2.tar.gz

Download URL cockroachdb_mcp_server-0.2.2.tar.gz
Size 10.5 kB
Tags Source
SHA-256 checksum
How to use checksums
2b03687817660630437b0a32542b9ccbeead1fb13923ed2cd1dfcb87e26e149b
BLAKE2b-256 checksum
How to use checksums
6bf2815fce645144e5d8113d7c17237b72c4c2ec63e2498f0b9294f9c836fc19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.12

Release files / cockroachdb_mcp_server-0.2.2-py3-none-any.whl

Download URL cockroachdb_mcp_server-0.2.2-py3-none-any.whl
Size 11.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5cb959327e1c9c646e54430396625507fd7f2d8145fcf463ca4e73cdacdc0cdb
BLAKE2b-256 checksum
How to use checksums
fcbf4b350da57a1d4356ea57bc6c895969c7e3580d353254ea805b6b20e2237a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.12

Security for cockroachdb-mcp-server 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page