MCP server for optional SSOT pull-worker control-plane coordination.
Project description
ssot-mcp
Optional MCP server for SSOT registry coordination and pull-worker campaigns.
ssot-mcp is the optional Model Context Protocol server for SSOT.
It lets MCP-capable clients coordinate registry mutations, pull-worker campaigns, leases, worker events, and campaign state through tools backed by ssot-core. The ordinary .ssot/registry.json, Python API, and ssot-cli workflows do not require this package.
What this package owns
- The
ssot-mcpconsole entry point - MCP tools, resources, and prompts for optional SSOT control-plane workflows
- Registry entity CRUD and linking tools for MCP clients
- Pull-worker campaign tools for claiming slices, renewing leases, completing slices, abandoning slices, and reading worker events
- In-process delegation to the live
ssotCLI parser for command coverage that is not yet exposed as a dedicated MCP tool
When to use this package
Use ssot-mcp when you want:
- a Codex or MCP client to mutate SSOT registry entities without hand-editing
.ssot/registry.json - workers to pull maturation slices from a shared SSOT registry
- durable worker events and campaign status exposed through MCP tools
- a repo-pinned MCP server for one repository
- an explicit repo-per-call MCP server for development and test harnesses
Use another package when you want:
- ssot-cli for complete command-line workflow coverage
- ssot-core for direct Python API access
- ssot-registry for the umbrella install bundle
- ssot-tui for terminal browsing
Install
python -m pip install ssot-mcp
python -m pip install "ssot-registry[mcp]"
python -m pip install "ssot-registry[all]"
For local development:
python -m pip install -e pkgs/ssot-mcp
This package depends on ssot-core and the official Python MCP runtime. Its SSOT dependency range tracks the current core release train with a compatible <0.3.0 bound.
Start the server
Run one pinned server per repository in normal use:
ssot-mcp --transport stdio --repo E:\swarmauri_github\ssot-registry
Run global development mode only when every tool and resource call must provide an explicit repo argument:
ssot-mcp --transport stdio --repo-mode explicit
See Codex MCP configuration for Codex config.toml examples.
Registry write authority
Workers and MCP clients should not hand-edit .ssot/registry.json. When a client needs SSOT entity changes, it asks ssot-mcp to perform the mutation through registry tools such as:
registry_entity_getregistry_entity_listregistry_entity_searchregistry_entity_upsertregistry_entity_deleteregistry_entity_linkregistry_entity_unlinkget_ssot_cli_surfacerun_ssot_cli
The structured entity tools use the same core registry mutation APIs as the CLI, validate before saving, and emit registry_updated events. run_ssot_cli delegates to the repo-local CLI parser in process and supports global flags, help/version requests, commands, subcommands, command flags, and subcommand flags as argv tokens.
Pull-worker campaign model
Workers pull work with claim_next_maturation_slice. Push notifications may wake, pause, refresh, or stop workers, but they do not assign feature or tier slices.
Useful tools include:
claim_next_maturation_sliceget_slice_contextcomplete_slicerenew_leaseabandon_sliceget_campaign_statusget_worker_eventsack_worker_eventsget_conflictsscaffold_target_claim_wiringrepair_blocked_transition
claim_next_maturation_slice accepts feature_ids, profile_ids, and boundary_ids. Unscoped campaigns consider 25 in-bounds active features by default, and operators can raise feature_limit explicitly for broader campaigns. Out-of-bounds features are filtered from assignment and campaign status output.
Auto-scaffolding is enabled by default so ssot-mcp attempts target-tier claim, test, and evidence scaffolding before returning a blocked result. When a claim response returns kind="blocked", it includes a top-level reason and structured problem_detail with recommended MCP tool calls.
Package relationships
- Package type: optional MCP server package
- Depends on: ssot-core and the official Python MCP runtime
- Optional via: ssot-registry extras
mcpandall - Related packages: ssot-cli, ssot-tui, ssot-conformance, ssot-contracts
If you need an MCP server for Codex or another MCP-capable client, install this package. If you only need local command-line registry operations, install ssot-cli.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ssot_mcp-0.1.1.tar.gz.
File metadata
- Download URL: ssot_mcp-0.1.1.tar.gz
- Upload date:
- Size: 11.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a2ae90921199be46b6f1bce27c0765a40dccca2639f1506613ecce65a1afaab
|
|
| MD5 |
8c918f29f259d3ca95cbc6125b4bb60e
|
|
| BLAKE2b-256 |
4926bbc20a203c372b3c86244405549b28a4ac1fc166437dd905de36b6114905
|
File details
Details for the file ssot_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: ssot_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
29a90e7b5a0e1371b4e4cc1bef9e50bde561cbe066a523e3d6877f2dd4cd5036
|
|
| MD5 |
38efe56e3dcc54797a4a3ab7f0ad4650
|
|
| BLAKE2b-256 |
7a6dbf493462a33a7682568e05b6c623d547e485a78b64f0f8d88a1d0a1e5bf8
|