MCP for agents
Local test-mode tools for app config, fixtures, delivery logs, and receiver checks.
Compatible with the closed-beta ATM app APIs and versioned ATM event headers. Check atm-api-version on every webhook or XRPC receiver event.
Scope
@atmosphere-money/mcp is a local MCP server for agent-assisted ATM integrations. It exposes docs discovery, fixtures, test events, delivery logs, and test-only checkout validation without live money-moving tools.
Install
npm install -D @atmosphere-money/mcp@betaView @atmosphere-money/mcp on npmx for README, changelog, package health, and source metadata.
Local config
For hosted ATM beta testing, use the published package through your MCP-capable agent or editor.
{
"mcpServers": {
"atm": {
"command": "npx",
"args": ["-y", "@atmosphere-money/mcp@beta"],
"env": {
"ATM_TEST_API_KEY": "<inject from your protected secret store>"
}
}
}
}For local ATM development, point the server at your local checkout origin. The default local app URL is http://localhost:3001. Local HTTP requires the explicit process-only opt-in shown below. ATM destinations are never accepted from MCP tool arguments.
{
"mcpServers": {
"atm": {
"command": "node",
"args": ["/path/to/atmosphere-money/packages/mcp/dist/stdio.js"],
"env": {
"ATM_BASE_URL": "http://localhost:3001",
"ATM_ALLOW_INSECURE_LOCAL_BASE_URL": "1",
"ATM_TEST_API_KEY": "<inject from your protected secret store>"
}
}
}
}The API-key strings above are placeholders. Inject the real test key through your MCP client or operating system’s protected environment support, keep local config uncommitted, and omit live keys from local/test MCP processes.
Tools
| get_integration_plan | Returns a safe ATM implementation plan for the app type, framework, and requested features. |
|---|---|
| fetch_atm_docs | Returns the most relevant docs links and guidance for a topic. |
| generate_webhook_fixture | Creates a test-only ATM webhook payload with the public fixture secret; credentials are not accepted. |
| generate_ticket_fixture | Creates test-only ticket fixtures such as tickets.issued and ticket.checked-in with the public fixture secret. |
| inspect_app_config | Reads app developer config without returning secrets. |
| send_test_webhook | Queues a test-mode app.webhook.test delivery to the configured webhook or XRPC receiver. |
| list_delivery_logs | Lists recent app delivery logs for the selected environment. |
| redrive_test_delivery | Redrives only test-mode deliveries by delivery id or status. |
| create_test_checkout | Calls strict payment initiation only with a caller-supplied test checkout envelope and service-auth JWT. |
Developer endpoints
The MCP server wraps documented developer endpoints. These are also useful for app setup scripts and CI checks when an agent is not available. Configure the MCP process with a restricted API key from Developer settings; webhook signing secrets are not accepted. Send every authenticated request directly to ATM core at https://checkout.atmosphere.money; the public marketing apex does not proxy API or XRPC credentials.
| GET /xrpc/money.atmosphere.app.getConfig | Read sanitized app config for test or live with app service-auth. |
|---|---|
| POST /xrpc/money.atmosphere.app.updateConfig | Update safe app-level config with app service-auth. Webhook secrets cannot mutate settings. |
| GET https://checkout.atmosphere.money/api/app/developer/config | Read sanitized app config with an environment API key carrying app.config.read. |
| POST https://checkout.atmosphere.money/api/app/developer/test-event | Queue an app.webhook.test event with a test key carrying webhook.test.write. Live sends are blocked. |
| GET https://checkout.atmosphere.money/api/webhooks/atm | List delivery logs with an environment API key carrying webhook.deliveries.read. |
| POST https://checkout.atmosphere.money/api/webhooks/atm | Redrive a delivery or status-filtered batch. MCP only calls this for test mode. |
| POST /xrpc/network.attested.payment.initiate | Start checkout with app service-auth. MCP refuses non-test checkout envelopes. |
Safety boundary
- Configure the MCP process with a restricted test API key; never pass API keys as tool arguments or place them in prompts.
- Fixture tools always use the public test fixture secret; never pass a webhook signing secret in a tool call.
- Keep API keys, webhook secrets, and service-auth JWTs in trusted server environments, not browser code.
- Use MCP for developer validation, not live payment operations.
- Use the ATM dashboard for live secret rotation, payout setup, refunds, product edits, and subscription changes.
- Fulfill app orders only from verified webhook or XRPC receiver events, not from MCP tool output alone.
- Do not paste live customer data, processor ids, ticket scan tokens, or secrets into prompts.
Remote MCP roadmap
The beta MCP server is local/test-mode first. Restricted API keys provide environment, permission, IP, rotation, and request-log controls for that local process. A hosted remote MCP still needs a separately reviewed user OAuth and approval model; a long-lived API key is not delegated agent authority. Until then, use local tools for developer validation and the dashboard for live business controls.