{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_n3cvs5zp347y","handle":"iowap-client-mcp","url":"https://wellknown.network/agents/iowap-client-mcp","links":{"self":"https://wellknown.network/agents/iowap-client-mcp/record.json","html":"https://wellknown.network/agents/iowap-client-mcp","markdown":"https://wellknown.network/agents/iowap-client-mcp/record.md","api":"https://wellknown.network/api/v1/agents/iowap-client-mcp","status":"https://wellknown.network/api/v1/agents/iowap-client-mcp/status","claim":"https://wellknown.network/agents/iowap-client-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/iowap-client-mcp/claim.json","badge":"https://wellknown.network/agents/iowap-client-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/iowap-client-mcp/history","tools":"https://wellknown.network/api/v1/agents/iowap-client-mcp/tools"},"ard":{"identifier":"urn:air::server:iowap-client-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"iowap-client-mcp","summary":"MCP stdio toolkit for IOWAP — curated agent tools over the IOWAP node CLI","description":"# iowap-client-mcp\n\nMCP toolkit for IOWAP: run a curated IOWAP toolset from any MCP-speaking agent —\nwithout teaching every agent the node CLI's pitfalls.\n\n## The problem\n\nIOWAP is a distributed capability mesh: the [relay](https://github.com/iowap-org/iowap-server)\nroutes tasks, [nodes](https://github.com/iowap-org/iowap-node) execute them.\nToday, an AI agent that wants to use IOWAP shells out to `node-cli --json`.\nThat works, but every agent has to relearn the same pitfalls itself: response\nenvelopes that must be unwrapped, node IDs vs. names, the global flag position,\nwhich commands are safe and which mutate the node. Knowledge ends up in one\nagent's skill file instead of in code.\n\n## The answer\n\n`iowap-mcp` is an MCP stdio server that wraps `node-cli` behind a small,\ncurated toolset:\n\n| Tool | Purpose |\n|------|---------|\n| `relay_status` | Relay health, queue depth, task counters |\n| `node_list` | Fleet overview (IDs, status, capabilities, load) |\n| `capabilities_list` | What the relay can do — including input schemas **and** the node IDs that own each capability |\n| `task_submit` | Submit a task against a capability (optional short wait) |\n| `task_result` | Poll a task result |\n| `artifact_download` | Fetch a task artifact to a local path |\n| `docs` | Read the live relay documentation |\n\nThe node CLI remains the source of truth for authentication and execution —\nthe server adds zero credential handling of its own. Destructive commands\n(register, update, daemon control, capability publishing) are deliberately not\nexposed.\n\n**Trust model:** whoever can launch `iowap-mcp` on the host acts with the\nhost's node identity — an MCP client spawning this server is a trusted\nexecutor. Environment filtering of the stdio subprocess is host behavior;\nthe package relies on the node's on-disk identity and enforces none of it\nitself.\n\n**Narrowable execution:** operators can restrict which capabilities\n`task_submit` may fire with `IOWAP_ALLOW_CAPS=cap.one,cap.two` (csv env,\nun…","publisher":null,"homepage":null,"repository":null,"version":"0.1.3","license":null,"protocols":["mcp"],"tags":["mcp"],"pricing":null,"endpoints":[{"url":"pypi:iowap-client-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","summary":"pypi","version":"pypi","description":"pypi"}},"derived":{"capabilities":[{"slug":"security.identity","name":"Identity & Access","confidence":0.871,"provenance":"derived"}],"categories":["security"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"iowap-client-mcp","registry":"pypi","observedAt":"2026-11-05T21:26:45.404Z","publishedAt":"2026-10-31T07:17:49.517939Z","latestVersion":"0.1.3"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"iowap-client-mcp","url":"https://pypi.org/project/iowap-client-mcp/","firstSeenAt":"2026-10-18T16:29:07.522Z","fetchedAt":"2026-11-05T21:25:54.326Z","normalizedAt":"2026-11-05T21:25:54.326Z"}]},"firstSeenAt":"2026-10-18T16:29:07.522Z","updatedAt":"2026-11-05T21:26:45.404Z"}