MCP quickstart

Connect Soren Pay as native tools in your favorite MCP-compatible agent.

Claude Desktop (stdio bridge)

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

claude_desktop_config.jsonjson
{
"mcpServers": {
  "soren-pay": {
    "command": "npx",
    "args": [
      "-y", "@sorenpay/mcp-bridge",
      "--api-key", "apk_…",
      "--base-url", "https://sorenpay.com"
    ]
  }
}
}

Restart Claude Desktop. The Soren Pay tools appear in the tool picker (get_treasury, list_cards, etc.).

Cursor / Windsurf (HTTP)

Modern Cursor and Windsurf support HTTP MCP servers natively. Add to Settings → MCP:

Cursor settingsjson
{
"mcp.servers": {
  "soren-pay": {
    "url": "https://sorenpay.com/api/mcp",
    "headers": {
      "Authorization": "Bearer apk_…"
    }
  }
}
}

Raw HTTP (debug)

List available tools:

tools/listbash
curl -X POST https://sorenpay.com/api/mcp \
-H "Authorization: Bearer apk_…" \
-H "Content-Type: application/json" \
-d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}'

Call a tool:

tools/call get_treasurybash
curl -X POST https://sorenpay.com/api/mcp \
-H "Authorization: Bearer apk_…" \
-H "Content-Type: application/json" \
-d '{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "get_treasury",
    "arguments": {}
  }
}'

Security

  • The apk_ key gives the agent everything the key's scopes allow. Use a read:*-only key for an agent that should only observe.
  • Write tools (deferred to v0.2) will be marked requires_confirmation: true so agent UIs prompt the user before invocation.
  • Every MCP call is logged in our standard request log (workspace + apk_ id + tool name) — visible in your Activity dashboard.
  • The MCP endpoint inherits the standard rate limit (100/min per apk_ by default).