{"_id":"@maxwellintl/x402-mcp","_rev":"2-402df4a8817cb8d9c1b42048fe807563","name":"@maxwellintl/x402-mcp","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@maxwellintl/x402-mcp","version":"0.1.0","keywords":["mcp","model-context-protocol","x402","ski","travel","public-records","usdc","base","solana"],"author":{"name":"Maxwell International","email":"accounts@maxwellinternational.ai"},"license":"SEE LICENSE IN LICENSE","_id":"@maxwellintl/x402-mcp@0.1.0","maintainers":[{"name":"maxwellintl","email":"accounts@maxwellinternational.ai"}],"homepage":"https://api.maxwellinternational.ai/llms.txt","bin":{"maxwell-x402-mcp":"dist/local/main.js"},"dist":{"shasum":"fd88187d1d2681744d5d326f61c1b36731cb7c5e","tarball":"https://registry.npmjs.org/@maxwellintl/x402-mcp/-/x402-mcp-0.1.0.tgz","fileCount":15,"integrity":"sha512-RvFR1ZZZJmf426TTQw2dTIjkIqSoDwBuouS3rY9r3kFRPGbHM50VLBu8GcB4tc+1c+1cZ1Poq/8jtL+818Q+BA==","signatures":[{"sig":"MEYCIQDCWVhmJREmMw1cb7Jn+3JP5ZAmChtGm1cD2VsMnSuqiwIhAMUCXBQB2Ts4oGGo4G1Vw0oBcDhvb4hZcMXHpkCBCIM6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76933},"main":"dist/core/index.js","type":"module","_from":"file:maxwellintl-x402-mcp-0.1.0.tgz","engines":{"node":">=20"},"mcpName":"ai.maxwellinternational/data","scripts":{"test":"node --test test/unit.test.mjs","build":"tsc -p tsconfig.json","test:live":"node test/live.mjs","start:remote":"node dist/remote/main.js"},"_npmUser":{"name":"maxwellintl","email":"accounts@maxwellinternational.ai"},"_resolved":"/tmp/npm-pub/maxwellintl-x402-mcp-0.1.0.tgz","_integrity":"sha512-RvFR1ZZZJmf426TTQw2dTIjkIqSoDwBuouS3rY9r3kFRPGbHM50VLBu8GcB4tc+1c+1cZ1Poq/8jtL+818Q+BA==","_npmVersion":"12.2.0","description":"MCP server for Maxwell International's pay-per-call x402 data API: ski and travel, public records, x402 tools. Pays with your own wallet, within budgets you set.","directories":{},"_nodeVersion":"22.23.3","dependencies":{"viem":"2.56.9","@x402/evm":"2.28.0","@x402/svm":"2.28.0","@x402/core":"2.28.0","@solana/kit":"5.5.1","@modelcontextprotocol/sdk":"1.31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@x402/mcp":"2.28.0","typescript":"^5.9.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/x402-mcp_0.1.0_1790832504171_0.347961578343422","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"_id":"@maxwellintl/x402-mcp@0.2.0","bin":{"maxwell-x402-mcp":"dist/local/main.js"},"dist":{"shasum":"6cbfb2af5b1757404987ea870f0870c25746e07e","tarball":"https://registry.npmjs.org/@maxwellintl/x402-mcp/-/x402-mcp-0.2.0.tgz","integrity":"sha512-kqCSrrNvZ31TZn21vEYMexxGcnlMgrCkS6yHNLP3mjSs3mC7S/oVZLZebfOUwDAp9tyXP+wcMrV8AAtPqjB8Rg==","fileCount":15,"unpackedSize":86165,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDQ/G9ijRmXfba+oozhy1YE03gfWmi043Dn80DMwn8vWgIhAIvsVYbSH9MmF2lN1fICfxMkN761pVoE/rX4Ucw2Q9yc"}]},"main":"dist/core/index.js","name":"@maxwellintl/x402-mcp","type":"module","author":{"name":"Maxwell International","email":"accounts@maxwellinternational.ai"},"engines":{"node":">=20"},"license":"SEE LICENSE IN LICENSE","mcpName":"ai.maxwellinternational/data","scripts":{"test":"node --test test/unit.test.mjs","build":"tsc -p tsconfig.json","test:live":"node test/live.mjs","start:remote":"node dist/remote/main.js"},"version":"0.2.0","_npmUser":{"name":"maxwellintl","email":"accounts@maxwellinternational.ai","approver":{"name":"maxwellintl","email":"accounts@maxwellinternational.ai"}},"homepage":"https://api.maxwellinternational.ai/llms.txt","keywords":["mcp","model-context-protocol","x402","ski","travel","public-records","usdc","base","solana","directory","local-business","first-party"],"_npmVersion":"12.2.0","description":"Maxwell Directory (x402 + MCP): local providers worldwide, plus travel and public data. Free search; paid answers via x402, from your own wallet within budgets you set.","directories":{},"maintainers":[{"name":"maxwellintl","email":"accounts@maxwellinternational.ai"}],"_nodeVersion":"22.23.3","dependencies":{"viem":"2.56.9","@x402/evm":"2.28.0","@x402/svm":"2.28.0","@x402/core":"2.28.0","@solana/kit":"5.5.1","@modelcontextprotocol/sdk":"1.31.0"},"publishConfig":{"access":"public"},"devDependencies":{"@x402/mcp":"2.28.0","typescript":"^5.9.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/x402-mcp_0.2.0_1790853408046_0.8435339692315753"},"_hasShrinkwrap":false}},"time":{"created":"2026-10-01T05:28:23.918Z","modified":"2026-10-01T11:16:48.243Z","0.1.0":"2026-10-01T05:28:24.291Z","0.2.0":"2026-10-01T11:16:48.129Z"},"author":{"name":"Maxwell International","email":"accounts@maxwellinternational.ai"},"license":"SEE LICENSE IN LICENSE","homepage":"https://api.maxwellinternational.ai/llms.txt","keywords":["mcp","model-context-protocol","x402","ski","travel","public-records","usdc","base","solana","directory","local-business","first-party"],"description":"Maxwell Directory (x402 + MCP): local providers worldwide, plus travel and public data. Free search; paid answers via x402, from your own wallet within budgets you set.","maintainers":[{"name":"maxwellintl","email":"accounts@maxwellinternational.ai"}],"readme":"# Maxwell Directory (x402 + MCP)\n\nAn MCP server for [Maxwell International's pay-per-call API](https://api.maxwellinternational.ai/catalog.json):\nski and travel data (lift-ticket prices, trip plans, restaurants and menus near resorts, US weather), public records\n(company registers, SEC filings, legislation, open data, sanctions, court opinions, patents, openFDA, CVEs, economic\nseries) and x402 tools (payment diagnosis, domain lookups, npm facts, token safety, maxwell-chat).\n\nFree tools (product search, price quotes, coverage, trip maps) cost nothing. Paid tools cost $0.002 to $1 per call,\npaid in USDC on Base or Solana from **your own wallet**, and only within the caps you set.\n\n## Use with Claude Desktop, Claude Code or Cursor\n\n```json\n{\n  \"mcpServers\": {\n    \"maxwell\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@maxwellintl/x402-mcp\"],\n      \"env\": {\n        \"MAXWELL_WALLET_KEY_FILE\": \"/path/to/base-wallet.key\",\n        \"MAXWELL_SOLANA_KEY_FILE\": \"/path/to/solana-wallet.json\",\n        \"MAXWELL_MAX_PER_CALL_USD\": \"0.05\",\n        \"MAXWELL_SESSION_BUDGET_USD\": \"1\",\n        \"MAXWELL_DAILY_BUDGET_USD\": \"2\"\n      }\n    }\n  }\n}\n```\n\nClaude Code: `claude mcp add maxwell -e MAXWELL_WALLET_KEY_FILE=/path/to/base-wallet.key -- npx -y @maxwellintl/x402-mcp`\n\nWithout a wallet the server still works: free tools answer, and paid tools return their exact price instead of buying.\n\n## Wallet safety\n\n- Use a **small, dedicated hot wallet** holding only a few dollars of USDC (on Base, Solana, or both). Never your main wallet.\n- Solana: you need USDC only, no SOL; the network fee is paid by the payment facilitator.\n- Put the key in a file (`chmod 600`) and point `MAXWELL_WALLET_KEY_FILE` at it. `MAXWELL_WALLET_KEY` works but puts\n  the key in your client's config file.\n- The key stays on your machine. It is never logged, printed or returned in tool output.\n\n## Settings\n\n| Variable | Default | Meaning |\n|----------|---------|---------|\n| `MAXWELL_WALLET_KEY_FILE` | none | File holding a Base (EVM) private key |\n| `MAXWELL_SOLANA_KEY_FILE` | none | File holding a Solana secret key (solana-keygen JSON array or base58 export) |\n| `MAXWELL_NETWORK` | `base` | Preferred network when both wallets are set (`base` or `solana`); the other is the fallback |\n| `MAXWELL_SOLANA_RPC_URL` | public RPC | Your own Solana RPC, if the public one rate-limits you |\n| `MAXWELL_MAX_PER_CALL_USD` | `0.05` | Calls above this need the user's OK. Clients that can ask the user (MCP elicitation) always ask; for others the call needs `confirm_over_cap: true` |\n| `MAXWELL_SESSION_BUDGET_USD` | `1` | Total per server run |\n| `MAXWELL_DAILY_BUDGET_USD` | `2` | Total per UTC day, saved in `~/.maxwell-x402-mcp/spend.json` |\n| `MAXWELL_DRY_RUN` | off | `1` = quote only, never pay |\n| `MAXWELL_TOOLSETS` | `all` | `directory` (first-party local providers worldwide), `travel`, `records`, `tools`, or a comma list |\n| `MAXWELL_API_BASE` | `https://api.maxwellinternational.ai` | API to use |\n\nNo single call is ever paid above $5, whatever the settings. If the spend file cannot be written (set `MAXWELL_STATE_DIR` to a writable folder), paid tools only quote. Several clients running the package on one machine share the daily cap.\n\n## How paying works\n\n1. The tool builds the API request and checks the required inputs (a call that would miss is refused before paying).\n2. The API's 402 quote gives the exact price. The budget caps are checked.\n3. The payment is signed with your wallet and sent **once**. A lost answer is never paid for again automatically.\n4. The result includes `payment` (price, transaction, what is left of your budgets). Calls the API does not charge\n   for (misses, refusals such as weather outside the US) come back with `charged: false` and cost nothing.\n\n## Remote endpoint\n\n`https://api.maxwellinternational.ai/mcp` (Streamable HTTP) serves the same tools to hosted agents. It holds no\nwallet: paid tools use the x402 MCP transport (payment requirements in the tool result, your client re-calls with\n`_meta[\"x402/payment\"]`). Clients without x402 support should use this package.\n\n## Development\n\n```\nnpm ci && npm run build\nnpm test                          # unit tests (no network)\nnode test/live.mjs local          # live checks through a real MCP client, no wallet\nnode test/live.mjs remote <url>   # same against a remote server\n```\n\n## License\n\nProprietary, all rights reserved (see LICENSE). You may run the unmodified package to buy from Maxwell\nInternational's API. Copying, modifying, redistributing, or reusing any part of it with other services is not\npermitted without written permission. Permissions: accounts@maxwellinternational.ai\n","readmeFilename":"README.md"}