{
  "markdown": "# umtri-mcp\n\nMCP server for [Umtri](https://umtri.io) — give your AI coding agent a persistent map of your\nproject's structure, dependencies, and bugs.\n\nYour agent re-derives your codebase from scratch every session. Umtri stores the structure once and\nhands it back through MCP: a tree of what the system is made of, the calls and dependencies between\nits parts, and the bugs eroding it. Ask \"what breaks if I change this?\" and get an answer traced\nthrough recorded connections rather than guessed from a grep.\n\n## Quick start\n\nThe fastest path is the hosted endpoint at `https://mcp.umtri.io` — nothing to install. Generate a\ntoken at [app.umtri.io](https://app.umtri.io) → Settings → API Tokens, then:\n\n```bash\nclaude mcp add --transport http umtri https://mcp.umtri.io \\\n  --header \"Authorization: Bearer umtri_pat_xxxxxxxxxxxxxxxx\"\n```\n\nAny MCP client that takes a config object uses the same shape:\n\n```json\n{\n  \"mcpServers\": {\n    \"umtri\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.umtri.io\",\n      \"headers\": { \"Authorization\": \"Bearer umtri_pat_xxxxxxxxxxxxxxxx\" }\n    }\n  }\n}\n```\n\n## Run it yourself (stdio)\n\nUse this package when you want to pin a version or point at a self-hosted API:\n\n```bash\nclaude mcp add umtri \\\n  -e UMTRI_API_TOKEN=umtri_pat_xxxxxxxxxxxxxxxx \\\n  --transport stdio \\\n  -- npx -y umtri-mcp\n```\n\n| Variable | Required | Default |\n| --- | --- | --- |\n| `UMTRI_API_TOKEN` | yes | — |\n| `UMTRI_API_BASE` | no | `https://api.umtri.io` |\n\nThe token is not validated at setup time, so a bad token connects but every call fails. If tools\nappear and then error, re-check the token and its scope — `read` tokens cannot call any write tool.\n\n## Tools\n\n**Read** — `get_graph`, `get_bug`, `get_impact`, `list_projects`, `list_bugs`, `list_seasons`,\n`list_events`\n\n**Write** — `create_project`, `create_node`, `update_node`, `delete_node`, `create_edge`,\n`delete_edge`, `create_api`, `update_api`, `delete_api`, `create_bug`, `update_bug`, `delete_bug`\n\n**Plan loop** — `commit_plan`, `record_commit`, `reopen_transplant`\n\n`get_graph` returns a slice, not a dump: scope by subtree (`rootId`), by layer (`maxType`), by role,\nor by season, and control description weight separately. A large tree stays cheap to read.\n\n## Resources\n\nSeven read-only documents the agent can pull for domain rules — the plant vocabulary\n(trunk/limb/twig/leaf/vein), what counts as a node and what does not, how seasons work, how plan\nnodes are meant to be realized, and how a ground behaves while transplanting.\n\n```\numtri://rules/vocabulary            umtri://rules/transplant\numtri://rules/vocabulary-detailed   umtri://rules/plan\numtri://rules/seasons-human-only    umtri://about/vision\numtri://rules/system-structure\n```\n\n## Links\n\n- Docs — <https://docs.umtri.io>\n- App — <https://app.umtri.io>\n- Site — <https://umtri.io>\n\n## License\n\nApache-2.0. See [LICENSE](./LICENSE).\n",
  "bytes": 2885,
  "sha": "7dd37a39906ef1398e46c38386dd8754923b6bf31371d9c8043343d3c6454f4c",
  "repo_slug": "bepuljang/umtri-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_umtri_umtri_85190d9a/readme"
}