Yodmcp

io.github.ANAMIZEDPublished by GitHub account ANAMIZEDv0.5.0Updated Nov 3, 2026

Autonomous MCP Agent OS: multi-graph memory, Tasks, Skills, A2A, attestation, OpenTelemetry.

Overview

AI-generated overview

YodMCP is a local Python "agent operating system" MCP server offering multi-graph memory, durable tasks, skills, plan caching, attestation and audit tools.

What you can do
  • Write, read, delete and consolidate memory nodes, and inspect node/edge/entity counts
  • Create, fetch, list, update, cancel and count durable task handles
  • List Agent Skills and expose skill bodies and the agent card as MCP resources
  • Get, put and delete semantic plan-cache templates and read cache statistics
  • Inspect recent attestation claims and audit events, and discover available tools and skills
  • Echo a message as a liveness probe
When to use it
Useful when you want an assistant to keep persistent memory and task state across sessions, or to experiment with an agent kernel that bundles memory, tasks, skills, plan caching and provenance in one local server. It is aimed at engineers evaluating agent infrastructure rather than at everyday end-user tasks.
Requirements
Runs as a local stdio process installed from the source repository with Python 3.11 or 3.12 (pip install -e). Optional Docker for the multi-service compose setup. Configuration is via environment variables such as YODMCP_MEMORY_BACKEND, YODMCP_MEMORY_DB, YODMCP_ATTEST_MODE, YODMCP_PLAN, YODMCP_TENANT_ID and YODMCP_SKILLS_DIR; STRIPE_SECRET_KEY is optional and only needed for live checkout.
Before you install
Memory and task tools write, change and hard-delete stored data, so point the database path at a location you are willing to modify. The README advertises paid plans, Stripe checkout links and crypto wallet addresses for funding; do not let an assistant act on them without review. Setting STRIPE_SECRET_KEY gives the server a live payment credential. Attestation modes nitro/sgx fall back to simulated claims, and quotas are soft in-process meters, so do not treat them as production guarantees.

Installation

In SourceWeft

  1. Open Yodmcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

YodMCP — Agent Operating System

[CI] [Version] [YodMCP MCP server] [Python] [License] [MCP]

YodMCP is a production-oriented Agent Operating System kernel on MCP: multi-graph memory, Tasks, Skills, A2A, attestation (software / simulated TEE), OpenTelemetry, and plan-based monetization.

This README is written so a senior engineer with only this file + the source tree can install, deploy every surface, exercise features, and verify end-to-end.

FOUNDRY mapping

FOUNDRY (host-owned trust and memory for long-horizon agent swarms) separates untrusted proposal generation from host-owned verification + established-facts registry.

YodMCP is that registry in production: agents call memory_write; promotion to semantic memory is gated; the host owns the evaluator. Full note: docs/FOUNDRY.md.

First dollar

Meters first. Seat if the loop holds.

UnitStripex402
OpenGOS Search $0.40BuyGET /v1/search
OpenGOS Draft $2.50BuyGET /v1/draft
Agentic OS Cycle $0.75BuyGET /v1/cycle
YodMCP Pro $49/moSubscribeUSDC

x402 rail: x402-cloudflare-starter. Desk sync: https://anamized.grok.me

Package surfaces

| Surface | Command | Default | Purpose | |---------|---------|---------| | MCP | yodmcp | stdio | Local MCP clients (Cursor, Claude Desktop, etc.) | | MCP HTTP | yodmcp --http --port 8000 | :8000/mcp | Remote / Streamable HTTP MCP | | API | yodmcp-api --port 8080 | :8080 | REST health, memory, audit, skills, billing | | A2A | yodmcp-a2a --port 9000 | :9000 | Agent Card, message, tasks | | SDK | from yodmcp.sdk import YodClient | HTTP client | Thin client for the API | | Skills | skills:// + skills/*/SKILL.md | auto-loaded | Agent Skills as MCP resources | | Verify | pytest + scripts/verify_e2e.py | CI | Substrate + durable + TEE modes |

Requirements

  • Python 3.11 or 3.12 (3.10+ declared; CI covers 3.11/3.12)
  • Optional: Docker for multi-service compose

Install

bash
git clone https://github.com/ANAMIZED/YodMCP.gitcd YodMCPpython -m venv .venv && source .venv/bin/activate   # recommendedpip install -e ".[dev]"

Copy environment defaults:

bash
cp .env.example .env
VariableDefaultMeaning
YODMCP_MEMORY_BACKENDmemorymemory | sqlite | durable
YODMCP_MEMORY_DB./data/yodmcp_memory.dbSQLite path when durable
YODMCP_ATTEST_MODEsoftwaresoftware | simulated_tee | nitro | sgx
YODMCP_PLANfreefree | pro | enterprise
YODMCP_TENANT_IDdefaultSoft quota tenant key
YODMCP_SKILLS_DIR(auto)Override skills root
STRIPE_SECRET_KEYunsetEnables live Checkout Sessions

TEE honesty: nitro / sgx are provider hooks; without real TEE libraries they fall back to simulated claims. Prefer software or simulated_tee for local verify.

Quick start (local)

bash
# 1) MCP over stdio (attach from an MCP client)yodmcp
# 2) REST APIyodmcp-api --port 8080# curl http://127.0.0.1:8080/health
# 3) A2Ayodmcp-a2a --port 9000# curl http://127.0.0.1:9000/a2a/card

MCP client configuration (stdio)

Cursor — project .cursor/mcp.json or global MCP settings:

json
{  "mcpServers": {    "yodmcp": {      "command": "yodmcp",      "args": [],      "env": {        "YODMCP_MEMORY_BACKEND": "memory",        "YODMCP_PLAN": "free",        "YODMCP_ATTEST_MODE": "software"      }    }  }}

If yodmcp is not on PATH, use the module form:

json
{  "mcpServers": {    "yodmcp": {      "command": "python",      "args": ["-m", "yodmcp"],      "cwd": "/absolute/path/to/YodMCP",      "env": {        "PYTHONPATH": "src",        "YODMCP_MEMORY_BACKEND": "memory"      }    }  }}

Claude Desktop — same shape under mcpServers in claude_desktop_config.json.

Streamable HTTP MCP (remote clients that support URL transport):

bash
yodmcp --http --host 0.0.0.0 --port 8000# endpoint: http://127.0.0.1:8000/mcp

Docker

bash
docker compose up --build# API  :8080  A2A :9000  MCP HTTP :8000

Single API container:

bash
docker build -t yodmcp .docker run --rm -p 8080:8080 -e YODMCP_PLAN=free yodmcp

Verify end-to-end (no external accounts required)

bash
# Unit + integrationYODMCP_MEMORY_BACKEND=memory YODMCP_ATTEST_MODE=software \  PYTHONPATH=src pytest tests/ -v
# Durable SQLite + simulated TEEYODMCP_MEMORY_BACKEND=sqlite YODMCP_MEMORY_DB=/tmp/yodmcp.db \  YODMCP_ATTEST_MODE=simulated_tee \  PYTHONPATH=src pytest tests/ -v
# Exhaustive substrate scriptPYTHONPATH=src python scripts/verify_e2e.py

Expected: all tests green; script prints ALL E2E CHECKS PASSED.

API smoke (with yodmcp-api running):

bash
curl -s http://127.0.0.1:8080/healthcurl -s http://127.0.0.1:8080/api/skillscurl -s http://127.0.0.1:8080/api/billing/planscurl -s http://127.0.0.1:8080/api/billing/status

SDK:

bash
python examples/sdk_quickstart.py   # requires API on :8080

MCP tools (catalog)

ToolDescription
memory_writeInsert one memory node (facts/decisions). Not for plans (plan_cache_put).
memory_readRetrieve nodes by similarity or item_id. Not for plans (plan_cache_get).
memory_deleteHard-delete one node + incident edges. Idempotent if missing.
memory_consolidatePromote importance ≥ 0.8 into semantic summaries. Does not delete sources.
memory_statsNode/edge/entity counts. Not content (memory_read).
tasks_createCreate a durable pending task handle.
tasks_getFetch one handle by id.
tasks_listList recent handles, optional status filter.
tasks_updatePatch status/progress/result. Not cancel (tasks_cancel).
tasks_cancelMark a handle cancelled (kernel state only).
tasks_statsCounts by status. Not a listing (tasks_list).
skills_listList Agent Skills + skills:// URIs (bodies are resources).
a2a_cardA2A Agent Card JSON. Not the MCP catalog (discover_capabilities).
plan_cache_get / plan_cache_put / plan_cache_deleteSemantic plan templates. Not memory facts.
cache_statsIn-process cache entry/hit totals.
attestation_recentTRACE-style provenance claims. Not the audit trail (audit_recent).
audit_recentPolicy/tool Decision-System-of-Record events.
discover_capabilitiesList MCP tools + loaded skills.
echoLiveness probe (message echoed + version).

Resources:

  • skills://{name} — skill markdown body
  • yodmcp://agent-card — agent card JSON

Skills

Built-in skills are always registered. Disk skills under skills/*/SKILL.md are loaded automatically (override via YODMCP_SKILLS_DIR). Repo ships:

  • memory-hygiene, safe-tool-use, funding-usdc, repo-bootstrap
  • Plus built-in long-horizon-planning

Monetization

Plan$/moTool calls/dayDurableTEE
Free0500——
Pro4950kyessimulated
Enterprise499unlimitedyesNitro/SGX hooks
  • Soft quotas via tool gate; upgrade messaging on exhaustion
  • Live Stripe Checkout when STRIPE_SECRET_KEY is set; otherwise checkout returns status: payment_link

Non-custodial USDC (preferred for agents)

NetworkAddress
Base0xD3d0E9eDAe3Ac7bb199a8EAA761BdA423b878438
Ethereum0xD3d0E9eDAe3Ac7bb199a8EAA761BdA423b878438
SolanaETQwWf19axArsY493UfC6bxe2BmEzmzvCb58PPnC38A

Canonical: funding/addresses.json

Project layout

src/yodmcp/          # package (src-layout)  core/              # server, substrate, context  memory/            # in-memory + durable SQLite multi-graph  tools/             # MCP tool registration + gate  tasks/ skills/ cache/ security/ observability/ monetization/  api/ a2a/ sdk/skills/*/SKILL.md    # portable Agent Skills (loaded at runtime)scripts/verify_e2e.pytests/docs/ARCHITECTURE.mddocs/FOUNDRY.mddocs/TDQS.md

Known limitations (read before claiming production)

  1. Plan cache uses lightweight embeddings; default similarity threshold is 0.68 (not production vector search).
  2. TEE Nitro/SGX are hooks with simulated fallback unless you wire real providers.
  3. Frontend src/yodmcp/frontend/dashboard.py still uses legacy core.runtime and is not the primary control plane — use yodmcp-api + MCP tools.
  4. Quotas are soft (in-process meter); not a distributed billing ledger.
  5. Processes do not share in-memory state; use sqlite backend + shared volume for multi-process durability.

License

Apache-2.0 · CONTRIBUTING · CHANGELOG · ARCHITECTURE · FOUNDRY · TDQS · AGENTS.md

Source: README.md at commit 9215364

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.5.0LatestSep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.