Skip to main content

Stratum MCP server for Claude Code — structured execution, typed contracts, postcondition enforcement

Project description

stratum-mcp

Stratum MCP server for Claude Code. Structured execution, typed contracts, postcondition enforcement — no sub-LLM calls.

Install

pip install stratum-mcp
stratum-mcp install

setup configures Claude Code in one command: writes .claude/mcp.json, appends the execution model block to CLAUDE.md, and installs nine skills to ~/.claude/skills/. Restart Claude Code and it's active.

Skills

Skill What it structures
/stratum-onboard Read a new codebase cold and write project-specific MEMORY.md — run once after setup
/stratum-plan Design a feature and present it for review — no implementation until approved
/stratum-feature Feature build: read existing patterns → design → implement → tests pass
/stratum-review Three-pass code review: security → logic → performance → consolidate
/stratum-debug Debug: read test → read code → check env → form hypotheses → confirm/rule out → fix
/stratum-refactor File split: analyze → design modules → plan extraction order → extract one at a time
/stratum-migrate Find bare LLM calls and rewrite as @infer + @contract
/stratum-test Write a test suite for existing untested code
/stratum-learn Review session transcripts — extract retry patterns, write conclusions to MEMORY.md

MCP Tools

Tool What it does
stratum_validate Validate a .stratum.yaml spec
stratum_plan Validate + create execution state + return first step
stratum_step_done Report a completed step; check postconditions; return next step or completion
stratum_audit Return per-step trace (attempts, duration) for any flow

Building on Stratum

Stratum exposes four stable integration points for apps and tooling:

1. MCP tools (Claude Code agents)

The primary control plane — stratum_plan, stratum_step_done, stratum_audit. Used by agents running inside Claude Code.

2. Query CLI (read-side, any process)

stratum-mcp query flows              # → JSON array of FlowSummary
stratum-mcp query flow <id>          # → JSON FlowState
stratum-mcp query gates              # → JSON array of pending gates

Exit 0, JSON to stdout. Use from shell scripts, background services, or UI backends.

3. Gate CLI (write-side, any process)

stratum-mcp gate approve <flow_id> <step_id> [--note "..."] [--resolved-by agent]
stratum-mcp gate reject  <flow_id> <step_id> [--note "..."]
stratum-mcp gate revise  <flow_id> <step_id> [--note "..."]

Exit codes: 0 success · 1 error (JSON on stdout) · 2 conflict (already resolved).

4. Storage schemas (contracts/)

Versioned JSON schemas for the flow state and audit record formats. Stable across internal refactors.

stratum-mcp/contracts/
  flow-state.v1.schema.json
  query-flows.v1.schema.json
  query-gates.v1.schema.json
  gate-mutation.v1.schema.json
  audit-record.v1.schema.json

How It Works

Claude writes .stratum.yaml specs internally — you never see them. You see plain English narration. The MCP server enforces postconditions on every step; if a step's output fails a check, Claude fixes it and retries before reporting success.

Full documentation: stratum-in-claude-code.md

Tutorial: claude-code-tutorial.md

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

stratum_mcp-0.2.0.tar.gz (103.2 kB view details)

Uploaded Source

Built Distribution

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

stratum_mcp-0.2.0-py3-none-any.whl (72.9 kB view details)

Uploaded Python 3

File details

Details for the file stratum_mcp-0.2.0.tar.gz.

File metadata

  • Download URL: stratum_mcp-0.2.0.tar.gz
  • Upload date:
  • Size: 103.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for stratum_mcp-0.2.0.tar.gz
Algorithm Hash digest
SHA256 79308c1d4a76df97626693eca774d49a84da2a6b8ba637298fe249821c47902e
MD5 c269949f69b8a26451026da46179dace
BLAKE2b-256 2ae054ccb14f2db6ca68844bdeb10695c5284751bdd96f5335323e652a6fb0a1

See more details on using hashes here.

File details

Details for the file stratum_mcp-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: stratum_mcp-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 72.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for stratum_mcp-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b222a19fae9c65af895d28c0c7b2df28fc3dd4d0a4cd9acbf9f82d8678e0e808
MD5 bb4b0e0015b8f281c806bcba631204df
BLAKE2b-256 aea3cd84ce402b5bcb31acfec9188311d877f051f44ac2cbeb3d6d083d7dd80a

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