Askell MCP server
MCP server for the Askell payment and subscription API (Bun + stdio)
1 stars355 downloads/wk
Reviews
Write oneNobody has reviewed Askell yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Askell tools (9, 1 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
askell_billing_run_triagewrite actionFetch a billing run by id with optional related contract context for failure analysis. Result is an error when the billing run fetch fails. A failed related contract stays in the payload and is listed in `failures`.
askell_callRead-only Askell API call (GET, HEAD) for any v1/v2 path. For POST/PUT/PATCH/DELETE use askell_mutate. Discover paths with askell_list_operations and askell_describe_operation first. Webhook hmac_secret is redacted in the response.
askell_contract_overviewFetch a v2 subscription contract and recent billing runs filtered by contract id. The contract payload includes `discount` (active coupon) when one is applied, `shipping_selection` when shipping was chosen at checkout, and `subscriber_page` (customer-facing management URL, read-only). Result is an error when the contract fetch fails. `failures` lists every call that failed.
askell_customer_overviewFetch a v1 customer and their v1 subscriptions in one call. Useful for support and billing investigations. Result is an error when the customer fetch fails; subscriptions are still included. `failures` lists every call that failed.
askell_describe_operationReturn full OpenAPI details for one operation: parameters, request body schema, auth requirements.
askell_list_operationsDiscover Askell v1 and v2 API operations from bundled OpenAPI specs. Returns operation ids usable with askell_describe_operation. NOTE: results are capped by `limit` (default 50) — always check `totalMatched` in the response, not just the length of `operations`, to know if more results exist.
askell_list_webhooksList Askell webhook endpoints configured for the account (management API only). hmac_secret is redacted in the tool output (`<redacted len=N>`); copy the real secret from the dashboard or a non-MCP API call.
askell_mutateMutating Askell API call (POST, PUT, PATCH, DELETE). Clients that declared form elicitation get a confirmation form; others rely on the client tool-approval UI. Use askell_call for GET. Discover paths with askell_list_operations and askell_describe_operation first. Webhook hmac_secret is redacted in the response (including POST /webhooks/ create).
askell_paginate_allFetch all pages from a paginated Askell list endpoint (v1/v2). Follows `next` links until exhausted or maxPages is reached. When the full payload exceeds responseMaxBytes, items are compacted (summary, then an index of id/dates/plan/customer) so rows are kept — dropping rows is last resort. Check meta.truncatedByMaxBytes, meta.compacted, and meta.compactedMode.
Public scan report
scanner v0.1.9 · 2026-09-25 · same rubric, same numbers if you re-run it
- Code scan18 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 0 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
What the publisher says
From the Askell repository's README, as published. We do not edit it. Read it on GitHub
askell-mcp
MCP server for the Askell payment and subscription API.
Connect it to Cursor, Claude Desktop, or any MCP client to discover Askell endpoints, inspect customers/contracts/billing, and call the API. Reads and writes are separate tools so clients can show their own approval UI on mutations.
Requirements
- An Askell account and secret API key (from the Askell dashboard)
- One of:
- Bun ≥ 1.4.0 (for bunx), or
- a prebuilt binary from Releases (no Bun needed)
Quick start
1. Get API keys
In the Askell dashboard, copy your private (secret) API key. Optionally also the public key (only needed for temporary payment-method / checkout status endpoints).
2. Add to your MCP client
Prefer two server entries if you have both production and sandbox keys. Tool names are the same on both; the client distinguishes them by the server key (askell-prod vs askell-sandbox). Each instance's instructions include the environment it is talking to.
Put keys in gitignored dotenv files, not in JSON. Copy .env.example:
- .env — production (ASKELL_ENV=production and that dashboard's keys)
- .env.sandbox — sandbox (ASKELL_ENV=sandbox and that dashboard's keys)
Bun does not auto-load .env.sandbox. --no-env-file stops the sandbox process from also reading a production .env that happens to sit in the cwd.
Cursor
Project file: .cursor/mcp.json. mcp.json.example is this shape. ${workspaceFolder} is the directory that contains that mcp.json (the repo root when the file is .cursor/mcp.json). In ~/.cursor/mcp.json, use an absolute envFile path.
With Bun:
{
"mcpServers": {
"askell-prod": {
"command": "bunx",
"args": ["--no-env-file", "x", "askell-mcp"],
"envFile": "${workspaceFolder}/.env"
},
"askell-sandbox": {
"command": "bunx",
"args": ["--no-env-file", "x", "askell-mcp"],
"envFile": "${workspaceFolder}/.env.sandbox"
}
}
}With a binary (download askell-mcp-- from Releases, then chmod +x). Same envFile; the binary reads the environment Cursor injects:
{
"mcpServers": {
"askell-prod": {
"command": "/absolute/path/to/askell-mcp-linux-x64",
"envFile": "${workspaceFolder}/.env"
}
}
}Reload the window after saving.
Claude Desktop
Config file:
- Linux: ~/.config/Claude/claudedesktopconfig.json
- macOS: ~/Library/Application Support/Claude/claudedesktopconfig.json
- Windows: %APPDATA%\Claude\claudedesktopconfig.json
No envFile field. The desktop process cwd is not your repo, so a relative .env path does not resolve. With Bun, pass an absolute --env-file:
{
"mcpServers": {
"askell-prod": {
"command": "bunx",
"args": ["--no-env-file", "--env-file=/absolute/path/.env", "x", "askell-mcp"]
},
"askell-sandbox": {
"command": "bunx",
"args": ["--no-env-file", "--env-file=/absolute/path/.env.sandbox", "x", "askell-mcp"]
}
}
}A binary has no --env-file. Put the keys in env (plaintext in that JSON file):
{
"mcpServers": {
"askell-prod": {
"command": "/absolute/path/to/askell-mcp-linux-x64",
"env": {
"ASKELL_ENV": "production",
"ASKELL_PRIVATE_API_KEY": "your_production_secret_api_key",
"ASKELL_PUBLIC_API_KEY": "your_production_public_api_key_optional"
}
}
}
}Quit Claude Desktop completely and reopen it. Saving the file is not enough.
Claude Code
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Install directly
Runs npx -y askell-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add askell-mcp -- npx -y askell-mcp
Askell: common questions
- Is Askell MCP server safe?
- Mostly: it is graded B (83/100). Read the Askell safety report
- How do I install Askell?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does Askell need an API key?
- Yes. The registry entry asks for
ASKELL_PRIVATE_API_KEY. - Is Askell maintained?
- The last commit was 2 days ago (2026-09-25). The latest release is v0.4.17.
- What can I use instead of Askell?
- Servers from other publishers that do the same job: Iugu MCP server, Yolfi Payments MCP server and three.ws Agent Payments MCP server. Compare all Askell alternatives.
Alternatives to Askell
Same job from other publishers: the closest match first, then the best rated.
- not reviewedGrowingB
- Yolfi Payments MCPLet AI agents add Yolfi crypto checkout, paylinks, webhooks, and status checks.not reviewedEstablishedA
- three.ws Agent PaymentsGoverned x402 payment sessions: pay any endpoint with budget, allowlist & per-tx caps, no key.not reviewedEstablishedB
- X402 ListFind and vet x402 payment APIs before your agent pays one: uptime, price, on-chain volume.not reviewedEstablishedA
- PayqrEuropean payment QR — SPAYD (CZ/SK) & EPC/GiroCode (SEPA), plus text/WiFi/vCard. Local, free.not reviewedGrowingA