{"_id":"@agentpay-run/mcp-server","_rev":"4-e4c0bc594ddfea27db589bcb521c323c","name":"@agentpay-run/mcp-server","dist-tags":{"latest":"0.2.1"},"versions":{"0.1.0":{"name":"@agentpay-run/mcp-server","version":"0.1.0","keywords":["agentpay","mcp","model-context-protocol","ai-agents","payments","spending-controls"],"license":"MIT","_id":"@agentpay-run/mcp-server@0.1.0","maintainers":[{"name":"agentpay-run","email":"sdeanesh@tepper.cmu.edu"}],"homepage":"https://agentpay.run","bugs":{"url":"https://github.com/sdeanesh-png/agentpay/issues"},"bin":{"agentpay-mcp":"dist/index.js"},"dist":{"shasum":"585603dcf64bf8eb6b3eb4b02f760f38111bc7b2","tarball":"https://registry.npmjs.org/@agentpay-run/mcp-server/-/mcp-server-0.1.0.tgz","fileCount":4,"integrity":"sha512-6wZTHQVFg4l4ggHMq9FGSIKwpfCe+QeCrUtAUnj4upFFRKGjiHnv24Gy7ScTr87rAF1hPo/5khEN7vlOYShj1A==","signatures":[{"sig":"MEUCIAqYC2/qgOnGvzRO5Wq1JkLP98yd/eAz2rMl81CchE3zAiEA5OHo/6ieJhR93TGcK24Psb/y6/TMFYHI8Pd6L7gVn4M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12902},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"a1974f590fa22a53925a5c3b4ddf2ca7d30c779a","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"agentpay-run","email":"sdeanesh@tepper.cmu.edu"},"repository":{"url":"git+https://github.com/sdeanesh-png/agentpay.git","type":"git","directory":"sdk/mcp"},"_npmVersion":"11.12.1","description":"Official MCP server for AgentPay. Lets agents charge vendors, check budgets, and inspect quota through any MCP-compatible client (Claude Desktop, Cursor, etc.).","directories":{},"_nodeVersion":"25.9.0","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.1.0_1778250790138_0.012350821405501922","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@agentpay-run/mcp-server","version":"0.2.0","keywords":["agentpay","mcp","model-context-protocol","ai-agents","payments","spending-controls"],"license":"MIT","_id":"@agentpay-run/mcp-server@0.2.0","maintainers":[{"name":"stevieds","email":"sdeanesh@tepper.cmu.edu"}],"homepage":"https://agentpay.run","bugs":{"url":"https://github.com/sdeanesh-png/agentpay/issues"},"bin":{"agentpay-mcp":"dist/index.js"},"dist":{"shasum":"e8e66fae138cae5f9494f68b4f74ddf762e14aa3","tarball":"https://registry.npmjs.org/@agentpay-run/mcp-server/-/mcp-server-0.2.0.tgz","fileCount":4,"integrity":"sha512-qgNITpWfoCIx/+qYJtSJJRQX6FMsctK0gWeW+omJ0vvWbgN79wq4QHXx4/9QRgrtzXXKZIU0Kskn6NuyPPG6GA==","signatures":[{"sig":"MEUCIQDfe322BnYz8IYnBSioyfTV/xodj/UkUuKcjFM2YIpPhgIgaWteiHY4UYqxFhB8FPL5kclyxjh96qpV8bO+w8Pz2yg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14909},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"747f29dcfa9933fcd5e6cb29622316f069efed51","mcpName":"io.github.sdeanesh-png/agentpay","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"stevieds","email":"sdeanesh@tepper.cmu.edu"},"repository":{"url":"git+https://github.com/sdeanesh-png/agentpay.git","type":"git","directory":"sdk/mcp"},"_npmVersion":"11.12.1","description":"Official MCP server for AgentPay. Lets agents charge vendors, check budgets, and inspect quota through any MCP-compatible client (Claude Desktop, Cursor, etc.).","directories":{},"_nodeVersion":"25.9.0","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.2.0_1778336237887_0.9574431136681334","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@agentpay-run/mcp-server","version":"0.2.1","mcpName":"io.github.sdeanesh-png/agentpay","description":"Official MCP server for AgentPay. Lets agents charge vendors, check budgets, and inspect quota through any MCP-compatible client (Claude Desktop, Cursor, etc.).","license":"MIT","type":"module","bin":{"agentpay-mcp":"dist/index.js"},"main":"./dist/index.js","keywords":["agentpay","mcp","model-context-protocol","ai-agents","payments","spending-controls"],"homepage":"https://agentpay.run","repository":{"type":"git","url":"git+https://github.com/sdeanesh-png/agentpay.git","directory":"sdk/mcp"},"scripts":{"build":"tsc","start":"node dist/index.js","dev":"tsc --watch"},"engines":{"node":">=18"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"devDependencies":{"typescript":"^5.4.0","@types/node":"^20.0.0"},"gitHead":"747f29dcfa9933fcd5e6cb29622316f069efed51","types":"./dist/index.d.ts","_id":"@agentpay-run/mcp-server@0.2.1","bugs":{"url":"https://github.com/sdeanesh-png/agentpay/issues"},"_nodeVersion":"25.9.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-VMXPGycBAGkeDOPipXi8fNU3gDE5nGS2NuSGMlnjHDTnbfp2IhqZobI10Hz2PWaoIa3dgTJzX3nr13uCYQQ7jQ==","shasum":"54825e4313213ed5497847ca182d12e283ddfc17","tarball":"https://registry.npmjs.org/@agentpay-run/mcp-server/-/mcp-server-0.2.1.tgz","fileCount":4,"unpackedSize":14909,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIG807ZOiiE2JeJEkFeHJz0eRWue6v1pEC9Mah0Gf4w7HAiEA0VaEhAb2BMDNRercNrM2M6G3U024+PyYzxvAm2zLftM="}]},"_npmUser":{"name":"stevieds","email":"sdeanesh@tepper.cmu.edu"},"directories":{},"maintainers":[{"name":"stevieds","email":"sdeanesh@tepper.cmu.edu"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-server_0.2.1_1778337779291_0.9404980782313683"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-08T14:33:10.062Z","modified":"2026-05-09T14:42:59.574Z","0.1.0":"2026-05-08T14:33:10.279Z","0.2.0":"2026-05-09T14:17:18.028Z","0.2.1":"2026-05-09T14:42:59.434Z"},"bugs":{"url":"https://github.com/sdeanesh-png/agentpay/issues"},"license":"MIT","homepage":"https://agentpay.run","keywords":["agentpay","mcp","model-context-protocol","ai-agents","payments","spending-controls"],"repository":{"type":"git","url":"git+https://github.com/sdeanesh-png/agentpay.git","directory":"sdk/mcp"},"description":"Official MCP server for AgentPay. Lets agents charge vendors, check budgets, and inspect quota through any MCP-compatible client (Claude Desktop, Cursor, etc.).","maintainers":[{"name":"stevieds","email":"sdeanesh@tepper.cmu.edu"}],"readme":"# @agentpay-run/mcp-server\n\nOfficial [MCP](https://modelcontextprotocol.io) server for [AgentPay](https://agentpay.run).\n\nLets agents running through any MCP-compatible client (Claude Desktop, Cursor, Continue, your own MCP host) charge vendors, check budgets, and inspect tier quota through your AgentPay wallet — with all of AgentPay's policy gates, anomaly detection, and audit logging in front.\n\n## Why\n\nThe state of the art for giving an agent a budget is \"share your Stripe key and pray.\" AgentPay puts a real spend-control layer between the agent and the payment rail. This MCP server exposes that layer as standard MCP tools so any agent can use it without a vendor-specific integration.\n\n## Tools exposed\n\n| Tool         | What it does                                                                                  |\n|--------------|-----------------------------------------------------------------------------------------------|\n| `charge`     | Charge a vendor. Returns approved/denied + which policy matched + remaining budget.           |\n| `get_wallet` | Read-only wallet snapshot: budget, spent, per-tx cap, vendor allowlist, active state.         |\n| `get_quota`  | Read-only tier + remaining quota: wallets, today's charges, audit retention.                  |\n\n## Install in Claude Desktop\n\n1. Get a wallet API key at [agentpay.run/dashboard](https://agentpay.run/dashboard) (use a `ap_test_...` key while you wire things up).\n2. Open `claude_desktop_config.json` (Claude Desktop → Settings → Developer → Edit Config).\n3. Add:\n\n```json\n{\n  \"mcpServers\": {\n    \"agentpay\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@agentpay-run/mcp-server\"],\n      \"env\": {\n        \"AGENTPAY_API_KEY\": \"ap_test_...\"\n      }\n    }\n  }\n}\n```\n\n4. Restart Claude Desktop. You'll see the `agentpay` server in the MCP indicator (bottom right of the chat).\n\n## Install in Cursor / other MCP hosts\n\nAnywhere that accepts an MCP server config, point it at `npx -y @agentpay-run/mcp-server` with the same `AGENTPAY_API_KEY` env var.\n\n## Usage\n\nOnce installed, just talk to your agent like you would otherwise:\n\n> \"Charge openai.com $12 against my dev wallet, then tell me what's left.\"\n\nThe agent picks `charge`, reads back the response, and decides what to do based on the policy verdict.\n\n## Configuration\n\n| Env var              | Required | Default                | Notes                                                                                |\n|----------------------|----------|------------------------|--------------------------------------------------------------------------------------|\n| `AGENTPAY_API_KEY`   | yes      | —                | Wallet API key. `ap_test_...` for development, `ap_live_...` for production wallets. |\n| `AGENTPAY_BASE_URL`  | no       | `https://agentpay.run` | Override for self-hosted or local dev (e.g. `http://localhost:3000`).                |\n\n## Local development\n\n```bash\ngit clone https://github.com/sdeanesh-png/agentpay\ncd agentpay/sdk/mcp\nnpm install\nnpm run build\nAGENTPAY_API_KEY=ap_test_... node dist/index.js\n```\n\nThe server speaks MCP over stdio. To smoke-test it manually, pipe a JSON-RPC `tools/list` request:\n\n```bash\necho '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/list\",\"params\":{}}'   | AGENTPAY_API_KEY=ap_test_dummy node dist/index.js\n```\n\n## Security\n\n- The wallet API key is the only secret. It's wallet-scoped — even if compromised, the blast radius is bounded by the policy you set on that wallet (per-tx cap, monthly budget, vendor allowlist).\n- The server is stateless. Every call re-queries AgentPay; nothing is cached locally.\n- For production, use `ap_live_...` keys with strict per-tx caps and a vendor allowlist. Treat them like API tokens: rotate via the dashboard if exposed.\n\n## License\n\nMIT.\n","readmeFilename":"README.md"}