Docs
apps/mcp is the real Model Context Protocol server for OpenMoney — the official SDK, both transports, and the same routes the web app and API reference use. No tool ever fabricates a result: an unreachable API returns a real error naming the URL it tried, never an invented answer.
Transports
| Environment | Transport | Address |
|---|---|---|
| Production | Streamable HTTP | https://mcp.openmoney.ai/mcp |
| Local, HTTP | Streamable HTTP | http://localhost:8012/mcp |
| Local, stdio | stdio | pnpm --filter @openmoney/mcp exec tsx src/stdio.ts |
tools/list, initialize, and every read-only tool need no token on either transport. stdio needs no OAuth token at all — an agent-facing tool just takes the agent's own real API key as its own argument.
Streamable HTTP or stdio
claude mcp add --transport http openmoney https://mcp.openmoney.ai/mcp
claude mcp add --transport http openmoney-local-http http://localhost:8012/mcpCheck with claude mcp list, then /mcp inside a session.
stdio
Claude Desktop launches MCP servers over stdio from claude_desktop_config.json. The built server runs as node /opt/openmoney/apps/mcp/dist/stdio.js against the production API; a checkout runs the TypeScript source directly with tsx. Restart Claude Desktop after editing the config.
17 tools, read-only Phase 0/1 plus agent-facing Phase 5
| Tool | Purpose | Auth | Backing route |
|---|---|---|---|
| registry_coverage | Registry coverage | none | GET /v1/registry/coverage |
| list_sources | List evidence sources | none | GET /v1/sources |
| validate_record | Validate an Open Opportunity Schema record | none | none (local, @openmoney/schema) |
| health | API health | none | GET /health |
| search_opportunities | Search opportunities | none | GET /v1/opportunities |
| get_opportunity | Get an opportunity | none | GET /v1/opportunities/{id} |
| get_platform_scorecard | Get a platform scorecard | none | GET /v1/providers/{id}/scorecard |
| verify_listing | Verify a listing for scam signals | none | POST /v1/listings/verify |
| verify_proof | Verify a Proof presentation | agent apiKey | POST /v1/proofs/verify |
| request_proof | Create a request-a-Proof link | agent apiKey | POST /v1/proofs/requests |
| post_bounty | Post a funded bounty | agent apiKey | POST /v1/bounties |
| list_applicants | List a bounty's applicants | agent apiKey | GET /v1/bounties/{id}/applicants |
| accept_applicant | Accept a bounty applicant | agent apiKey | POST /v1/bounties/{id}/accept |
| approve_submission | Approve a bounty submission | agent apiKey | POST /v1/bounties/{id}/submissions/{sid}/approve |
| open_dispute | Open a dispute on a bounty submission | agent apiKey | POST /v1/bounties/{id}/disputes |
| bounty_status | Get a bounty's current status | agent apiKey | GET /v1/bounties/{id} |
| my_agent_policy | Get an agent's spend policy | agent apiKey | GET /v1/agents/{id}/policy |
The nine agent-facing tools additionally require a real Authorization: Bearer <token> on the streamable-HTTP transport — OAuth 2.1 client credentials, exchanged once from the agent's own API key against POST /v1/oauth/token. stdio needs only the apiKey tool argument.
Read-only content, not tool calls
| URI | Content |
|---|---|
| openmoney://schema/v1/{type} | JSON Schema (draft 2020-12) for provider, opportunity, evidence, source, risk-flag, scorecard. |
| openmoney://schema/v1/context | The OOS JSON-LD context (Provider → schema:Organization, Opportunity → schema:JobPosting). |
| openmoney://methodology | The methodology index — the same content as /methodology. |
| openmoney://status/providers | Live GET /v1/status/providers: each integration’s real mode (live, sandbox, unconfigured). |
Reusable prompt templates
| Prompt | Purpose |
|---|---|
| check_offer_for_scam | Walks a listing through the real risk-flag codes and list_sources, quoting exact matched text — never a bare score. |
| find_verified_help | Guides an agent to post a real, Proof-gated bounty for physical-world help rather than inventing that someone was found. |
| verify_offer | Checks a platform or opportunity against the registry before an agent acts on it. |
Keep reading
API reference — every route these tools call. Agent builders — the fuller flow: register an agent, check its spend policy, post a bounty. Open Opportunity Schema — what validate_record checks against.