Skip to main content

MCP server for Stubborn — deterministic code context from SCIP symbol graphs

Project description

stubborn-mcp

MCP server for Stubborn — exposes get_context, list_symbols, and metrics to Cursor and other MCP clients.

Thin adapter over stubborn.api. All compile logic lives in stubborn-stub.

Part of the stubborn-ai program — see stubborn-hub.

Install

pip install stubborn-mcp

Requires a SCIP-derived symbols.db — build with the core compiler:

pip install stubborn-stub
stubborn index --scip index.scip --out metadata/symbols.db

Run

export STUBBORN_DB=/path/to/metadata/symbols.db
stubborn-mcp

Cursor configuration

.cursor/mcp.json:

{
  "mcpServers": {
    "stubborn": {
      "command": "stubborn-mcp",
      "env": {
        "STUBBORN_DB": "${workspaceFolder}/metadata/symbols.db"
      }
    }
  }
}

Module entry: python -m stubborn_mcp

Tools

Tool Purpose
get_context Prune + weave LLM context (java-stub or stubborn-dsl)
list_symbols Browse/search symbols by stable_id
metrics Compression KPI vs source tree

Full parameter reference: docs/MCP.md · stubborn MCP docs

Development

git clone https://github.com/stubborn-ai/stubborn-mcp.git
cd stubborn-mcp
pip install -e "../stubborn"
pip install -e ".[dev]"
pytest

License

MIT — see LICENSE.

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

stubborn_mcp-0.1.0b1.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

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

stubborn_mcp-0.1.0b1-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file stubborn_mcp-0.1.0b1.tar.gz.

File metadata

  • Download URL: stubborn_mcp-0.1.0b1.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for stubborn_mcp-0.1.0b1.tar.gz
Algorithm Hash digest
SHA256 63b59bd3e346ec00cd04695e6abca3037d2a9d5e36f5bb505ca25db55023fc60
MD5 2f5392788cbc751cca2f8c2bc456c9a7
BLAKE2b-256 91d0684e60f9b19c54300c20796dd106e375d68d70f683b66fd1937a1cd44f79

See more details on using hashes here.

File details

Details for the file stubborn_mcp-0.1.0b1-py3-none-any.whl.

File metadata

  • Download URL: stubborn_mcp-0.1.0b1-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for stubborn_mcp-0.1.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 d146fcefeb2da34d071b044d668fb709b48d54add0e1644d6ae2bff162dec335
MD5 d80ea2ef79f2d69d2c25eff883679c5a
BLAKE2b-256 ddde83ffb86a8f8fd12900e670ccf4f5982e7bba6ec2270e36308e692ae7ea1f

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