{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_h3ncykz5c8eh","handle":"keel-mcp-ingress","url":"https://wellknown.network/agents/keel-mcp-ingress","links":{"self":"https://wellknown.network/agents/keel-mcp-ingress/record.json","html":"https://wellknown.network/agents/keel-mcp-ingress","markdown":"https://wellknown.network/agents/keel-mcp-ingress/record.md","api":"https://wellknown.network/api/v1/agents/keel-mcp-ingress","status":"https://wellknown.network/api/v1/agents/keel-mcp-ingress/status","claim":"https://wellknown.network/agents/keel-mcp-ingress/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/keel-mcp-ingress/claim.json","badge":"https://wellknown.network/agents/keel-mcp-ingress/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/keel-mcp-ingress/history","tools":"https://wellknown.network/api/v1/agents/keel-mcp-ingress/tools"},"ard":{"identifier":"urn:air::server:keel-mcp-ingress","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"keel-mcp-ingress","summary":"Thin MCP stdio protocol ingress into Keel managed MCP execution","description":"# Keel MCP ingress\n\n`keel-mcp-ingress` exposes operator-enrolled, schema-verified managed MCP tools\nover standard MCP stdio. It delegates every call to the Keel managed-MCP API.\nListing a tool grants no authority.\n\n## Prerequisites\n\nUse a Keel project with the required plan, active policies, and upstream MCP\nservers enrolled by the Keel operator. Server registration and discovery alone\ndo not confer trust. Custom/unmapped servers are not exposed by this initial\ncatalog. Initial catalog reads are bounded to 100 enabled servers and 1000\naccepted tool contracts per project; larger catalogs return a clear refusal\nrather than silently dropping tools. Use managed MCP directly for larger catalogs.\nStarter cannot positively authorize arbitrary non-payment MCP calls. With no\nenrolled, verified servers, `tools/list` returns an empty catalog.\n\nObtain a live agent-bound Client key: an owner creates an Admin key; the Admin\ncreates an AgentPrincipal (`POST /v1/principals`) and a Client key bound to its\n`agent_principal_id` (`POST /v1/api-keys`). Keep the Admin/owner and upstream\ncredentials outside the agent. An ordinary project Runtime/service key has no\nagent binding and cannot use this execution path. Upstream secrets stay in Keel.\nBecause the requester is the agent, the project owner can approve its REVIEW\nrequests; a request sent with a key the owner holds cannot be self-approved.\n\n## Installation\n\nRequires Python 3.11 or newer.\n\n```sh\npython3 -m venv .venv\n.venv/bin/python -m pip install keel-mcp-ingress==0.1.1\n```\n\nConfigure any MCP stdio client (including Claude-compatible clients):\n\n```json\n{\n  \"mcpServers\": {\n    \"keel\": {\n      \"command\": \"/absolute/path/to/.venv/bin/keel-mcp\",\n      \"env\": {\n        \"KEEL_BASE_URL\": \"https://api.keelapi.com\",\n        \"KEEL_API_KEY\": \"YOUR_AGENT_BOUND_CLIENT_KEY\",\n        \"KEEL_PROJECT_ID\": \"YOUR_PROJECT_ID\"\n      }\n    }\n  }\n}\n```\n\nHTTPS is required; HTTP is accepted only for an isolated loopback runtime.\nProject identity is checked …","publisher":null,"homepage":null,"repository":null,"version":"0.1.1","license":null,"protocols":["mcp"],"tags":["mcp"],"pricing":null,"endpoints":[{"url":"pypi:keel-mcp-ingress","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.secrets","name":"Secrets Management","confidence":0.848,"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":"keel-mcp-ingress","registry":"pypi","observedAt":"2026-11-05T21:26:46.812Z","publishedAt":"2026-10-19T20:07:44.169208Z","latestVersion":"0.1.1"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"keel-mcp-ingress","url":"https://pypi.org/project/keel-mcp-ingress/","firstSeenAt":"2026-10-18T16:29:11.548Z","fetchedAt":"2026-11-05T21:26:01.731Z","normalizedAt":"2026-11-05T21:26:01.731Z"}]},"firstSeenAt":"2026-10-18T16:29:11.548Z","updatedAt":"2026-11-05T21:26:46.812Z"}