# AX Check: kraken.com
Checked 2026-09-29.

Kraken's quickstart and API docs are fast and complete for agents.
18 of 23 checks passed: install commands, code samples, MCP server, and SDK all work. No dedicated pricing page was found during checks.

## Onboarding needs a login

## Coding sessions
All three independent sessions completed and worked out Kraken's pricing without a dedicated pricing page, reporting free API access plus maker/taker trading fees around 0.25%/0.40% that scale with 30-day volume, while noting this relied on documented fee-tier assumptions rather than a single stated price.

### DeepSeek V4.1 Flash
[View public run](https://agents.withgauge.com/p/runs/e5cf01d4-8ebf-434a-85b0-1a94a59edd70) · [Read transcript](https://www.ax-check.com/kraken.com/sessions/deepseek.json)
Final output breaks down pricing (free public API, tiered maker/taker fees ~0.25%/0.40% by 30-day volume, Instant Buy premium, withdrawal fees) and flags the assumption caveat that AssetPairs.fees returned empty so rates are approximate/structural, to be confirmed on Kraken's fee page.
#### End-to-end onboarding
- **Onboarding needs a login**: The agent only ever hit Kraken's unauthenticated public REST endpoints (Time, Ticker, AssetPairs). It explicitly identified that authenticated endpoints (balances, orders, trades) require API keys, stated it did not have them, and stopped rather than obtaining credentials itself. No self-service credential acquisition or authenticated operation occurred.
  Event 44:

  ```text
  Authenticated endpoints (balances, orders, trades) are blocked without API keys. I don't have them and shouldn't be handed secrets casually.
  ```
  Event 42:

  ```text
  Kraken server time: Tue, 29 Sep 26 08:20:18 +0000
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No API key available for authenticated Kraken endpoints**: Trading/account features (balances, orders, trades) require HMAC-signed API keys. The agent had no credentials and could not self-provision them, so it correctly scoped the example to public-only endpoints. This is a normal credential/login limitation of the test environment, not a product defect.
  Event 44:

  ```text
  Authenticated endpoints (balances, orders, trades) are blocked without API keys. I don't have them and shouldn't be handed secrets casually.
  ```
- **Fee schedule field returns empty from public API**: The AssetPairs endpoint's 'fees' and 'fees_maker' fields, which historically exposed the maker/taker tier schedule, returned empty arrays for XBTUSD, forcing the agent to scrape the marketing fee-schedule page instead of getting authoritative numbers from the API itself. This is product (API) behavior rather than agent error.
  Event 26:

  ```text
  fees: []
  fees_maker: []
  ```
  Event 44:

  ```text
  the old `AssetPairs.fees` field that used to expose the tier schedule now returns `[]` for `XBTUSD`, so the schedule is no longer reliably available from that public endpoint
  ```

#### Suggested Changes
- **Restore or clearly deprecate the AssetPairs fees field**: On the /0/public/AssetPairs REST endpoint, the 'fees' and 'fees_maker' fields returned empty arrays instead of the maker/taker tier schedule. Either populate these fields with current tier data or mark them deprecated in the API reference so integrators are not required to scrape the marketing fee-schedule HTML page to get accurate pricing. Verify by calling AssetPairs?pair=XBTUSD and confirming 'fees' returns non-empty tier data matching the published schedule.
  Event 26:

  ```text
  fees: []
  fees_maker: []
  ```
- **Fix or redirect the broken get-asset-pairs docs URL**: A request to https://docs.kraken.com/api/docs/rest-api/get-asset-pairs returned a 404 during the session. Point this path to the correct AssetPairs reference page (or add a redirect) so developers following API doc links do not hit a dead page. Verify by curling the URL and confirming a 200 response with the AssetPairs documentation.
  Event 30:

  ```text
  == https://docs.kraken.com/api/docs/rest-api/get-asset-pairs
  404 115509
  ```

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/f3fadaf1-e813-47ae-bd1e-38d7175f8340) · [Read transcript](https://www.ax-check.com/kraken.com/sessions/kimi.json)
Final output states API access is free, gives maker/taker fee tiers (~0.25%/0.40%, decreasing with 30-day volume), and distinguishes public (no key) vs private (key + trading fees) workload assumptions.
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: The session used only Kraken's public, unauthenticated REST API (server time, ticker, OHLC). No API key was obtained or used, and no authenticated/private operation was ever attempted. The agent explicitly noted private endpoints would require an API key but did not pursue that path.
  Event 12:

  ```text
  // Simple Kraken public REST API example — no API key required.
  ```
  Event 18:

  ```text
  Public endpoints** (market data like the example above) need no API key at all — just rate limits (roughly 1 request/sec baseline).
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
None identified in this transcript.

#### Suggested Changes
None identified in this transcript.

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/0eaf270b-0a61-4316-a49d-9ace5b26684e) · [Read transcript](https://www.ax-check.com/kraken.com/sessions/qwen.json)
Final output and README.md state API access is free while trading fees are ~0.40% taker/0.25% maker at entry tier, explicitly flagging this is a default assumption (KRAKEN_TAKER_FEE/KRAKEN_MAKER_FEE overridable) since public fee schedule is no longer exposed and real tiers require keys.
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: The agent only used Kraken's unauthenticated public REST endpoints (Time, Ticker, AssetPairs). No API key/secret was obtained during the session — the private TradeVolume call and its signing code were written but never executed because KRAKEN_API_KEY/KRAKEN_API_SECRET were never set. The agent explicitly says these credentials must come from the human. No authenticated operation against the real product was demonstrated.
  Event 37:

  ```text
  (KRAKEN_API_KEY/KRAKEN_API_SECRET not set -> skipped your real fee tiers.)
  ```
  Event 43:

  ```text
  anything that touches funds will need you to supply scoped keys, and I'd want you to explicitly approve before I write order-placement code.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No self-service path to real API keys**: The private/authenticated Kraken endpoints (e.g. TradeVolume for real fee tiers) require account-scoped API keys that only a human can generate via the Kraken web UI (with 2FA/IP allowlisting). This is normal product behavior, not a defect — the agent correctly identified it as a session limitation and proceeded with public-only endpoints instead of stalling.
  Event 43:

  ```text
  anything that touches funds will need you to supply scoped keys, and I'd want you to explicitly approve before I write order-placement code.
  ```
  Event 27:

  ```text
  export KRAKEN_API_KEY=...      # Kraken -> Security -> API, enable "Query funds" + "Query open orders"
  ```

#### Suggested Changes
- **Restore the fee schedule to the public AssetPairs response**: The public /0/public/AssetPairs endpoint returns empty fees/fees_maker arrays, forcing developers to authenticate just to see the standard tiered fee schedule. Add the published maker/taker tier table back into the public AssetPairs (or a dedicated public fees endpoint) response. Verify by calling AssetPairs unauthenticated and confirming fees/fees_maker are populated instead of empty lists.
  Event 21:

  ```text
  "fees": [],
              "fees_maker": [],
  ```

### Task given to each agent
Help me build a simple example using Kraken. Tell me how pricing works, and briefly tell me whether this product will be easy for you to manage. Let me know if you get blocked. If this product has no developer workflow you can act on, say so plainly and stop. Stay light: use the hosted product through its SDK or API. Do not start local service stacks or wait for long-running commands; if the quickstart requires either, say so plainly and stop.

No product credentials were supplied and no purchases were authorized.

## Score: B · 81/100 (provisional)
Grades come from completed site checks. Coding sessions and skipped checks do not affect the score.

### Clarity
- **Failed** — Homepage answers Markdown requests

  ```text
  Homepage returned text/html for a text/markdown request; no Markdown representation offered.
  ```

- **Pass** — llms.txt provides an actionable documentation index

  ```text
  llms.txt lists Exchange, Institutional, Embed APIs, docs structure, CLI, MCP and Go SDK with install commands.
  ```

- **Pass** — llms.txt provides navigation guidance

  ```text
  llms.txt organizes docs by platform and gives docs-structure paths for guides and API references.
  ```

- **Pass** — llms.txt mentions offered API, MCP, and skills

  ```text
  llms.txt mentions REST/WebSocket/FIX APIs, built-in MCP server, and 50 agent skills.
  ```

- **Pass** — A compact guide representation exists

  ```text
  docs.kraken.com serves Markdown: quickstart.md and .md return text/markdown with full guide content.
  ```

- **Pass** — A focused guide is directly retrievable

  ```text
  Quickstart.md is directly retrievable as Markdown with concrete steps: API key, curl, order.
  ```

- **Pass** — Equivalent instructions fit a token budget

  ```text
  Markdown quickstart is 1387 tokens, well under 8000 and far below the HTML extraction.
  ```

- **Skipped** — Product-docs links survive format changes

  ```text
  Homepage Markdown unsupported, so link preservation across formats cannot be measured.
  ```

- **Pass** — The compact guide is independently actionable

  ```text
  Quickstart gives concrete steps: create account, generate API key, curl Time, sign Balance request, UAT sandbox.
  ```

- **Pass** — Install and next-step links resolve

  ```text
  Fetched quickstart, docs, MCP and skills pages all returned 200; demo-futures instruments link resolves.
  ```


### Onboarding
- **Pass** — Docs lead to a relevant quickstart

  ```text
  Docs quickstart walks from account creation to first programmatic trade with concrete steps.
  ```

- **Pass** — Installation commands are extractable

  ```text
  CLI install curl command and go get SDK install are extractable from docs.
  ```

- **Pass** — Code examples are available without interaction

  ```text
  Quickstart shows cURL and Python code inline without interaction.
  ```

- **Pass** — Prerequisites and auth boundaries are explicit

  ```text
  Quickstart states account verification, API key permissions, and where to obtain keys.
  ```


### Pricing
- **Skipped** — Pricing is readable without interaction

  ```text
  No Kraken pricing page fetched; only homepage and a foreign GitHub pricing page.
  ```

- **Skipped** — Prices are stated, not gated

  ```text
  No Kraken pricing page fetched; homepage shows market prices, not plan prices.
  ```

- **Skipped** — Pricing units and limits are explicit

  ```text
  No Kraken pricing page fetched, so units and limits cannot be judged.
  ```

- **Pass** — Agents identify pricing and its assumptions

  ```text
  3 of 3 sessions were judged on pricing; 0 fell short. DeepSeek V4.1 Flash: Final output breaks down pricing (free public API, tiered maker/taker fees ~0.25%/0.40% by 30-day volume, Instant Buy premium, withdrawal fees) and flags the assumption caveat that AssetPairs.fees returned empty so rates are approximate/structural, to be confirmed on Kraken's fee page. Kimi K3: Final output states API access is free, gives maker/taker fee tiers (~0.25%/0.40%, decreasing with 30-day volume), and distinguishes public (no key) vs private (key + trading fees) workload assumptions. Qwen 3.8 Max: Final output and README.md state API access is free while trading fees are ~0.40% taker/0.25% maker at entry tier, explicitly flagging this is a default assumption (KRAKEN_TAKER_FEE/KRAKEN_MAKER_FEE overridable) since public fee schedule is no longer exposed and real tiers require keys. This behavioural item does not affect the fast grade.
  ```


### Activation
- **Pass** — An API reference or OpenAPI spec is reachable

  ```text
  llms.txt and docs index list auto-generated OpenAPI REST API references for Spot and Derivatives.
  ```

- **Pass** — An MCP server is documented and well-formed

  ```text
  MCP server documented: kraken mcp stdio, client configs, service scoping, safety gates.
  ```

- **Pass** — A CLI install path is documented

  ```text
  CLI install documented via curl installer script; installer URL fetched successfully.
  ```

- **Pass** — SDK packages resolve on their registries

  ```text
  Official Go SDK install documented: go get github.com/krakenfx/api-go/v2.
  ```

- **Pass** — Agent skills are published

  ```text
  50+ agent skills published with SKILL.md packages and categorized INDEX.md.
  ```



[Full report data](https://www.ax-check.com/kraken.com/report.json)
