# Bitget vs Kraken API

> Kraken scores 71 (BB) to Bitget's 53.9 (D) for exchange market data. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/bitget-vs-kraken
- Markdown: https://www.anchorterminal.com/compare/bitget-vs-kraken.md (~4,000 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-04

Kraken API scores 71 (BB) on agent readiness against Bitget's 53.9 (D), and leads in 4 of 7 scored categories. Both do exchange market data.

- Bitget: grade D, 53.9/100, rank #824 of 1349. Markdown https://www.anchorterminal.com/tools/bitget.md · JSON https://www.anchorterminal.com/api/v1/tools/bitget.json
- Kraken API: grade BB, 71/100, rank #159 of 1349. Markdown https://www.anchorterminal.com/tools/kraken.md · JSON https://www.anchorterminal.com/api/v1/tools/kraken.json
- Best crypto exchange APIs and MCP servers for AI agents: https://www.anchorterminal.com/best/crypto-exchanges/index.md
- All 210 exchanges comparisons: https://www.anchorterminal.com/compare/crypto-exchanges/index.md

## Which one, for what

### Bitget (D)

Good for: An agent trading spot, futures and earn products in a person's Bitget account outside the prohibited list, with the smallest default MCP surface of the exchanges graded and a paper-trading switch.

Watch for: Hot and warm wallets lost about 388 million dollars on 24 September 2026 to forged withdrawal commands, and withdrawals were paused until 2 October

### Kraken API (BB)

Good for: An agent that trades spot, xStocks, forex or futures on a person's Kraken account from a local machine, with paper trading to test first and an approval gate on live orders.

Ahead on:
- Reliability, 67 against 40
- Schema & documentation, 80 against 74
- Security & auth, 80 against 62

Also in its favour:
- Agent-ready, a grade of BB or better
- Free to start without a card
- No incidents deducted, where Bitget loses 8 points for them

Watch for: No self-service spot sandbox; the spot UAT environment is on request through an account manager, and paper trading lives in the CLI


## Why the edge

### Reliability: Kraken API +27

- Bitget (40): Graded with the hosted lines on the UTA v3 API at api.bitget.com. No status page found (status.bitget.com does not resolve, the docs link none), so 0 for the page and 5 for no readable history; the September 2026 breach is in the deduction, not here. Rate limits are published as 6,000 per IP per minute and per-endpoint UID limits by VIP level (15). An x-mbx-used-remain-limit header is documented and the agent SDK backs off on 429, orders take a clientOid of up to 64 characters, but the breach error code and a Retry-After rule were not read (10 of 15). No SLA (0). UTA v3 is the production API (10). 40.
- Kraken API (67): Read with the hosted lines on the spot API. status.kraken.com is a Statuspage site with REST, WebSocket and FIX components (20). The incidents feed read covers 4 September to 3 November 2026. On 30 October spot and derivatives clients could not connect or submit orders across web, mobile, REST, WebSocket and FIX for 59 minutes 39 seconds, rated minor by Kraken; on 28 October some FIX clients were rejected on reconnection for 1 hour 59 minutes while other interfaces worked; the futures engine was degraded for 3 minutes on 13 October. A whole-exchange order outage 21 seconds short of an hour is read as one major (10 of 30). Numeric limits per key by tier and per pair for the matching engine (15). EAPI:Rate limit exceeded and EService:Throttled with a retry timestamp, a client order id and a validate flag on orders, but no Retry-After header (12 of 15). No SLA (0). Generally available (10). 20 + 10 + 15 + 12 + 0 + 10 = 67.

### Security & auth: Kraken API +18

- Bitget (62): API keys with read or read-and-write permission, a passphrase, HMAC-SHA256 or RSA signing, IP binding recommended, 50 keys per UID, revocation on the management page; no OAuth and no separate withdrawal scope in the docs read (22 of 30). --read-only strips write tools at start, --paper-trading routes to demo, and high-risk writes need `confirm: true` (18 of 20). Tools return the exchange's own data (10). Request and response hooks are forwarded as MCP log notifications; no per-call audit log on Bitget's side was found (6 of 15). security@bitget.com in the toolkit README, no security.txt, Mandiant and SlowMist reports on the September breach, a proof-of-reserves repository, no bounty page read (6 of 20). 62.
- Kraken API (80): Keys with nine named permissions, optional expiry, IP restriction and nonce window, plus an OAuth sign-in from the CLI (authorisation code with PKCE, public client) that mints a no-withdrawal key expiring within 90 days or a read-only key (30). Read-only and no-withdrawal keys, position limits and pair allowlists in account settings, and MCP approval prompts for 33 dangerous tools (18 of 20). The API returns no untrusted content; the CLI docs warn that the feedback tool uploads a local file without approval (10). Keys and their permissions are listed in settings and ledgers record activity, but no per-call log for the operator was found (6 of 15). A valid security.txt, a bug bounty policy page, SECURITY.md and a secure SDLC workflow in the CLI; certifications not read (16 of 20). 30 + 18 + 10 + 6 + 16 = 80.

### Schema & documentation: Kraken API +6

- Bitget (74): The agent SDK ships openapi.yaml with 109 typed UTA v3 operations from which the tools are generated, a machine-readable contract from the vendor's own organisation though not on the docs site (20 of 25). llms.txt in the SDK and MCP repositories; the docs site has none (6 of 10). Intent tools with a discover tool that explains each verb, action and its risk level, and the server's initialize instructions state surface, modules and read-only posture (15 of 20). Typed inputs with enums and required fields from the OpenAPI source (12 of 15). Examples in the quick start and READMEs, a REST error code page in the legacy docs that we did not read in full (9 of 15). Changelog by day with preview notices and effective dates (12 of 15). 74.
- Kraken API (80): No OpenAPI file was found for the REST API in the docs read; the CLI's agents/tool-catalog.json gives JSON Schema inputs for all 188 commands and the 152 MCP tools (15 of 25). The docs serve Markdown twins such as quickstart.md and the CLI ships llms.txt, AGENTS.md and CONTEXT.md (10). Endpoint pages and guides on order lifecycle, errors and rate limits say what each call does, with less on when not to use one (15 of 20). Enums for order types, time in force and flags, and enums and required fields in the tool catalogue (12 of 15). Python, Node.js and cURL examples, an errors guide and the CLI's error-catalog.json with retry guidance (13 of 15). A changelog of 120 dated entries with deprecations dated (15). 15 + 10 + 15 + 12 + 13 + 15 = 80.

## Score by category

| Category | Weight | Bitget | Kraken API | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 40 | 67 | Kraken API +27 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 74 | 80 | Kraken API +6 |
| Agent ergonomics | 13% (16.2 this run) | 83 | 79 | Bitget +4 |
| Security & auth | 14% (17.5 this run) | 62 | 80 | Kraken API +18 |
| Payments & pricing | 10% (12.5 this run) | 40 | 40 | even |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 78 | 81 | Kraken API +3 |
| Transparency & trust | 7% (8.8 this run) | 65 | 65 | even |
| Negative events | ≤15 | -8 | 0 | |
| **Total** | | **53.9 · D** | **71 · BB** | |

## Facts side by side

| Fact | Bitget | Kraken API |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | BTG Technology Holdings Limited | Payward, Inc. |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | stdio | stdio |
| Auth | API key | OAuth or key |
| Pricing | Pay per use | Pay per use |
| x402 | no | no |
| Licence | none | Proprietary hosted service under Kraken's Global Terms of Service (30 October 2026). kraken-cli, which carries the kraken-mcp server, is MIT |
| Tools exposed | 14 | 152 |
| Read-only variant documented | yes | yes |
| llms.txt | no | yes |
| MCP registry | `io.github.Bitget-AI/bitget-agent-mcp` | not listed |
| Last release | 2026-10-30 | 2026-10-29 |
| Terms last updated | 2026-10-20 | 2026-10-30 |
| Privacy policy last updated | 2025-12-05 | 2026-10-21 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | yes | yes |
| Terms restrict benchmarking | not found in the text | yes |
| Terms or service can change without notice | yes | yes |
| Arbitration or class-action waiver | yes | yes |
| Popularity | 234 stars | 795 stars |

## Verdicts

**Bitget.** Bitget's official MCP server keeps the default surface to 14 intent tools with discovery, read-only and paper-trading switches, dry runs and a confirmation gate on withdrawals, over an API with demo trading. A 388 million dollar wallet breach in September 2026 paused withdrawals for eight days, and there is no status page, SLA or readable fee table.

**Kraken API.** Kraken pairs a documented REST, WebSocket and FIX API with the open-source kraken-cli, whose kraken-mcp server gates 33 dangerous tools behind approval and signs in by OAuth with a no-withdrawal key. Spot has no self-service sandbox, no OpenAPI file was found, and a 59-minute connectivity outage hit every interface on 30 October 2026.

## Before you call either

### Bitget

1. Run `npx -y @bitget-ai/bitget-agent-mcp --read-only` for research and `--paper-trading` with a demo key before any live order; the two flags cannot be combined
2. Call discover({}) first, then the intent verbs; add `dryRun: true` to any write to preview it, and pass `confirm: true` only after the person has agreed to a withdraw or cancelAll
3. Send a unique clientOid of at most 64 characters on every order and reuse it on retry; orderId wins when both are sent
4. Stay under 10 requests a second per endpoint on a new account and 6,000 a minute per IP; the SDK retries on 429, so do not add a second retry loop
5. Bind the key to an IP and keep write permission off a research key; the docs read show no separate withdrawal scope

### Kraken API

1. Start kraken-mcp with -s market,paper,feedback or the default services; add trade only with a least-privilege key, and never pass --allow-dangerous on an agent that reads untrusted input
2. Ask the person to run kraken auth login in their own terminal; it needs a browser and saves a no-withdrawal key that expires in 90 days at most
3. Send a fresh --cl-ord-id on each order and run it with --validate first; after a network error look the order up before sending it again
4. Keep the nonce strictly increasing per key and stay under the tier's counter, since EAPI:Rate limit exceeded has no Retry-After header
5. Test strategies in a paper workspace, which fills at live prices with no account, before a live workspace

## Questions

### Which is better for AI agents, Bitget or Kraken API?

Kraken API scores 71 (BB) on agent readiness against Bitget's 53.9 (D), and leads in 4 of 7 scored categories.

### Do Bitget and Kraken API need an API key?

Bitget needs an API key. Kraken API takes an API key or an OAuth sign-in.

### Can an agent call Bitget and Kraken API without installing anything?

Bitget runs on your own machine, with no hosted endpoint listed. Kraken API runs on your own machine, with no hosted endpoint listed.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/bitget-vs-kraken.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bitget-vs-kraken.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "bitget", "b": "kraken"}`. From a terminal: `anchor compare bitget kraken`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bitget.json and https://www.anchorterminal.com/api/v1/tools/kraken.json

## Other comparisons with Bitget or Kraken API

- [Bitfinex API vs Bitget](https://www.anchorterminal.com/compare/bitfinex-vs-bitget.md)
- [Bitfinex API vs Kraken API](https://www.anchorterminal.com/compare/bitfinex-vs-kraken.md)
- [Bitget vs Bithumb Open API](https://www.anchorterminal.com/compare/bitget-vs-bithumb.md)
- [Bitget vs Bitstamp API](https://www.anchorterminal.com/compare/bitget-vs-bitstamp.md)
- [Bitget vs Bybit](https://www.anchorterminal.com/compare/bitget-vs-bybit.md)
- [Bitget vs Coinbase Advanced Trade API](https://www.anchorterminal.com/compare/bitget-vs-coinbase-advanced-trade.md)
- [Bitget vs Coinbase MCP server (Coinbase for Agents)](https://www.anchorterminal.com/compare/bitget-vs-coinbase-mcp.md)
- [Bitget vs Crypto.com Exchange API](https://www.anchorterminal.com/compare/bitget-vs-crypto-com-exchange.md)
- [Bitget vs Deribit](https://www.anchorterminal.com/compare/bitget-vs-deribit.md)
- [Bitget vs dYdX](https://www.anchorterminal.com/compare/bitget-vs-dydx.md)
- [Bitget vs Gate](https://www.anchorterminal.com/compare/bitget-vs-gate-io.md)
- [Bitget vs Gemini Exchange API](https://www.anchorterminal.com/compare/bitget-vs-gemini-exchange.md)
- [Bitget vs HTX trading API](https://www.anchorterminal.com/compare/bitget-vs-htx.md)
- [Bitget vs Hyperliquid](https://www.anchorterminal.com/compare/bitget-vs-hyperliquid.md)
- [Bitget vs KuCoin](https://www.anchorterminal.com/compare/bitget-vs-kucoin.md)
- [Bitget vs MEXC API](https://www.anchorterminal.com/compare/bitget-vs-mexc.md)
- [Bitget vs OKX API](https://www.anchorterminal.com/compare/bitget-vs-okx.md)
- [Bitget vs Uniswap Trading API](https://www.anchorterminal.com/compare/bitget-vs-uniswap.md)
- [Bitget vs Upbit Open API](https://www.anchorterminal.com/compare/bitget-vs-upbit.md)
- [Bithumb Open API vs Kraken API](https://www.anchorterminal.com/compare/bithumb-vs-kraken.md)
- [Bitstamp API vs Kraken API](https://www.anchorterminal.com/compare/bitstamp-vs-kraken.md)
- [Bybit vs Kraken API](https://www.anchorterminal.com/compare/bybit-vs-kraken.md)
- [Crypto.com Exchange API vs Kraken API](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-kraken.md)
- [Gate vs Kraken API](https://www.anchorterminal.com/compare/gate-io-vs-kraken.md)
- [Gemini Exchange API vs Kraken API](https://www.anchorterminal.com/compare/gemini-exchange-vs-kraken.md)
- [HTX trading API vs Kraken API](https://www.anchorterminal.com/compare/htx-vs-kraken.md)
- [Binance API vs Bitget](https://www.anchorterminal.com/compare/binance-vs-bitget.md)
- [Binance API vs Kraken API](https://www.anchorterminal.com/compare/binance-vs-kraken.md)
- [Coinbase Advanced Trade API vs Kraken API](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-kraken.md)
- [Coinbase MCP server (Coinbase for Agents) vs Kraken API](https://www.anchorterminal.com/compare/coinbase-mcp-vs-kraken.md)
- [Kraken API vs KuCoin](https://www.anchorterminal.com/compare/kraken-vs-kucoin.md)
- [Kraken API vs MEXC API](https://www.anchorterminal.com/compare/kraken-vs-mexc.md)
- [Kraken API vs OKX API](https://www.anchorterminal.com/compare/kraken-vs-okx.md)
- [Kraken API vs Uniswap Trading API](https://www.anchorterminal.com/compare/kraken-vs-uniswap.md)
- [Kraken API vs Upbit Open API](https://www.anchorterminal.com/compare/kraken-vs-upbit.md)
- [Deribit vs Kraken API](https://www.anchorterminal.com/compare/deribit-vs-kraken.md)
- [dYdX vs Kraken API](https://www.anchorterminal.com/compare/dydx-vs-kraken.md)
- [Hyperliquid vs Kraken API](https://www.anchorterminal.com/compare/hyperliquid-vs-kraken.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
