{
  "data": {
    "a": {
      "slug": "bitget",
      "name": "Bitget",
      "vendor": "BTG Technology Holdings Limited",
      "vendorUrl": "https://www.bitget.com",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Bitget is a centralised crypto exchange for spot, margin, futures, earn and tokenised stocks, reached through its Unified Trading Account v3 REST and WebSocket API and an Agent Hub toolkit with a stdio MCP server, CLI and agent skills.",
      "url": "https://www.anchorterminal.com/tools/bitget",
      "markdownUrl": "https://www.anchorterminal.com/tools/bitget.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bitget.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bitget.json",
      "dns": "bitget.grade.anchorterminal.com",
      "repo": "https://github.com/Bitget-AI/agent-mcp",
      "transports": [
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@bitget-ai/bitget-agent-mcp"
        },
        {
          "registry": "npm",
          "name": "bitget-mcp-server"
        }
      ],
      "auth": "api-key",
      "authNotes": "API key, system-generated secret and user-set passphrase minted under API Key Management after a browser sign-up and identity verification, up to 50 keys per UID, each with read or read-and-write permission, signed per request with HMAC-SHA256 or RSA over timestamp, method, path and body in the ACCESS-KEY, ACCESS-SIGN, ACCESS-TIMESTAMP and ACCESS-PASSPHRASE headers. Binding an IP is recommended, not required. Sub-account keys carry trade or management permission, read-only or read-write, once the main account enables key management for them. Demo keys are minted in demo mode and sent with the paptrading header set to 1 (https://www.bitget.com/legacy-docs/uta/guide, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API and the Agent Hub packages cost nothing; trades carry Bitget's fees. Base rates are 0.1 per cent maker and taker on spot and 0.02 per cent maker and 0.06 per cent taker on futures before VIP tiers or the BGB discount, which applies to spot only at a rate the article says to read on the live schedule. The fee page draws its table by script (https://www.bitget.com/support/articles/12560603892734, 20 August 2026, checked 2026-11-03).",
      "priceSummary": "0.1% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the UTA docs, the Agent Hub READMEs, the SDK's openapi.yaml or the fee article (checked 2026-11-03).",
        "endpoints": []
      },
      "toolCount": 14,
      "popularity": {
        "githubStars": 234,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://www.bitget.com/api-doc/uta/intro",
      "registryName": "io.github.Bitget-AI/bitget-agent-mcp",
      "capabilities": [
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.derivatives",
        "exchange.balances",
        "exchange.transfers",
        "exchange.staking",
        "market.crypto"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "api-key",
        "usage-priced",
        "sandbox",
        "no-status-page",
        "mcp",
        "mcp-registry",
        "official",
        "read-only-mode",
        "agent-skills",
        "cli",
        "python",
        "typescript",
        "go",
        "java",
        "php"
      ],
      "lastRelease": "2026-10-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53.9,
        "grade": "D",
        "agentReady": false,
        "rank": 890,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 15,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 78,
          "payments": 40,
          "reliability": 40,
          "schema": 74,
          "security": 62,
          "transparency": 65
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": -8,
        "negativeNotes": [
          "Security incident of 24 September 2026. An attacker who had obtained high-level internal credentials through a vulnerability in a third-party security product injected forged withdrawal commands into Bitget's wallet back end and moved about 388 million dollars in 13 assets on 11 chains from hot and warm wallets. Withdrawals, fiat and C2C were paused from 24 September and restored in phases from 28 September to 2 October 2026; trading, deposits and the API kept running. Bitget says user balances were unaffected, the Protection Fund covered the loss and was topped above 300 million dollars, private keys and cold wallets were untouched, and Mandiant and SlowMist reports of 30 September agree with its account. A fixed, documented incident with a public root cause, so below the top of the range. Sources https://www.bitget.com/academy/12560603896113 (updated 20 October 2026) and https://www.bitget.com/support/articles/12560603896110 (26 September 2026), read 2026-11-03."
        ],
        "verdict": "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.",
        "bestFor": "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.",
        "strengths": [
          "Official stdio MCP server with 14 intent tools by default, progressive discovery, `--read-only`, `--paper-trading`, `dryRun: true` on writes and `confirm: true` required for withdrawals and cancel-all",
          "Demo trading on the production host with demo keys and a paptrading header, and a TypeScript agent SDK whose openapi.yaml types all 109 UTA v3 operations",
          "Terms name BTG Technology Holdings Limited with Hong Kong law, and the privacy notice gives retention periods of 7 and up to 10 years",
          "Changelog with 58 dated entries since 5 August 2026, including preview notices with demo and live dates for WebSocket changes",
          "Base fees public in a help article, 0.1 per cent spot and 0.02 per cent maker and 0.06 per cent taker on futures"
        ],
        "weaknesses": [
          "Hot and warm wallets lost about 388 million dollars on 24 September 2026 to forged withdrawal commands, and withdrawals were paused until 2 October",
          "No status page, incident history or SLA; the terms disclaim uninterrupted access",
          "Two official MCP servers coexist, the V2-based bitget-mcp-server on Bitget's own Agent Hub page and the v3 bitget-agent-mcp on GitHub and npm, with different tool counts",
          "The current api-doc site renders every page as the UTA overview for a reader without script; the legacy docs were used instead",
          "Keys have read or read-and-write only, with no separate withdrawal permission in the docs read, and IP binding is recommended rather than required"
        ],
        "agentNotes": [
          "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",
          "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",
          "Send a unique clientOid of at most 64 characters on every order and reuse it on retry; orderId wins when both are sent",
          "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",
          "Bind the key to an IP and keep write permission off a research key; the docs read show no separate withdrawal scope"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53.9
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 78,
          "payments": 40,
          "reliability": 40,
          "schema": 74,
          "security": 62,
          "transparency": 53
        },
        "provenanceScore": 76,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npx -y @bitget-ai/bitget-agent-mcp",
        "http": "curl https://api.bitget.com/api/v3/market/tickers?category=SPOT\u0026symbol=BTCUSDT",
        "claudeCode": "claude mcp add bitget -- npx -y @bitget-ai/bitget-agent-mcp --read-only",
        "config": {
          "mcpServers": {
            "bitget": {
              "args": [
                "-y",
                "@bitget-ai/bitget-agent-mcp",
                "--read-only"
              ],
              "command": "npx",
              "env": {
                "BITGET_API_KEY": "YOUR_API_KEY",
                "BITGET_PASSPHRASE": "YOUR_PASSPHRASE",
                "BITGET_SECRET_KEY": "YOUR_SECRET_KEY"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/exchange.market-data",
        "tool": "https://letme.dev/bitget"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Spot trade, base maker or taker",
          "unit": "pct",
          "usd": 0.1,
          "note": "before VIP tiers and the BGB discount"
        },
        {
          "item": "Futures trade, base taker",
          "unit": "pct",
          "usd": 0.06,
          "note": "maker 0.02 per cent"
        }
      ],
      "provenance": {
        "legalEntity": "BTG Technology Holdings Limited",
        "domain": "bitget.com",
        "domainRegistered": "2003-02-03",
        "endpointOnVendorDomain": true,
        "terms": "https://www.bitget.com/support/articles/360014944032-terms-of-use",
        "privacy": "https://www.bitget.com/support/articles/360015150651",
        "statusPage": "",
        "changelog": "https://www.bitget.com/legacy-docs/uta/changelog",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "Terms of Use last updated 20 October 2026 name BTG Technology Holdings Limited under Hong Kong law with HKIAC arbitration; the privacy notice (5 December 2025) names the same company as controller under the Seychelles Data Protection Act 2023 with BTGT Europe Limited, UAB as EEA representative. /user-agreement and /privacy-policy answer 404; the documents live in the support centre.",
          "www.bitget.com/robots.txt disallows internal, search, calendar, wiki and register paths; the api-doc, legacy-docs, support, academy, blog and activity-hub paths are allowed.",
          "RDAP gives bitget.com a registration date of 3 February 2003 (MarkMonitor), earlier than the exchange, so the domain was bought.",
          "https://www.bitget.com/.well-known/security.txt answers 404; the Agent Hub README gives security@bitget.com for reports. No status page found; status.bitget.com does not resolve and the docs link none.",
          "The current api-doc site answers every path with the UTA overview for a reader without script; the legacy docs at /legacy-docs/uta/ were read for the guide, rate limits and changelog."
        ],
        "score": 76
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bitget.json",
      "live": {
        "slug": "bitget",
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "io.github.Bitget-AI/bitget-agent-mcp",
            "version": "3.0.2",
            "seenAt": "2026-11-04T17:11:44.552009456Z"
          },
          {
            "registry": "npm",
            "name": "@bitget-ai/bitget-agent-mcp",
            "version": "3.3.1",
            "seenAt": "2026-11-04T20:02:49.846993208Z"
          },
          {
            "registry": "npm",
            "name": "bitget-mcp-server",
            "version": "1.1.0",
            "seenAt": "2026-11-04T20:02:50.714916236Z"
          }
        ],
        "githubStars": 1,
        "npmWeekly": 255,
        "securityTxt": {
          "url": "https://bitget.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:53:53.864777414Z"
        },
        "updatedAt": "2026-11-04T20:02:53.43909091Z"
      }
    },
    "answer": "Deribit scores 59 (C) on agent readiness against Bitget's 53.9 (D), and leads in 2 of 7 scored categories. Bitget leads on agent ergonomics, payments \u0026 pricing, maintenance \u0026 community and transparency \u0026 trust.",
    "b": {
      "slug": "deribit",
      "name": "Deribit",
      "vendor": "Deribit FZE",
      "vendorUrl": "https://www.deribit.com",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Deribit is a crypto options, futures and perpetuals exchange owned by Coinbase, with a JSON-RPC API over WebSocket and HTTP, a FIX API and a test environment at test.deribit.com.",
      "url": "https://www.anchorterminal.com/tools/deribit",
      "markdownUrl": "https://www.anchorterminal.com/tools/deribit.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/deribit.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/deribit.json",
      "dns": "deribit.grade.anchorterminal.com",
      "license": "Proprietary hosted exchange. The API is documented under the Deribit docs with an OpenAPI 3.0 file; no official client library is published",
      "transports": [],
      "packages": [],
      "auth": "api-key",
      "authNotes": "API keys are made in the account settings or with `private/create_api_key`, each with scopes `account`, `trade`, `wallet`, `block_trade` and `block_rfq` at `read`, `read_write` or `none`, plus `ip:ADDR` and `expires` limits. Tokens come from `public/auth` by `client_credentials` (key and secret), `client_signature` (HMAC-SHA256 over timestamp, nonce and data, so the secret never travels) or `refresh_token`. Self-generated Ed25519 or RSA keys let Deribit hold only the public half. The HTTP example passes `client_secret` in the query string (https://docs.deribit.com/articles/authentication, https://docs.deribit.com/articles/access-scope, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API has no charge of its own; trades pay maker and taker fees per instrument. The fee schedule is on support.deribit.com, which answered our reader with 403, so the lowest-tier rates are unchecked. Deribit's own posts of 14 October and 2 November 2026 give VIP4 to VIP7 taker fees of 1.75 to 1.40 bps on perpetuals and futures from 19 October 2026, and 0 bps maker fees on USDC-settled linear daily options from 5 November 2026 (https://insights.deribit.com/exchange-updates/new-fee-tier-on-perpetuals-and-futures/, checked 2026-11-03).",
      "priceSummary": "0.02% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI file or the articles index (checked 2026-11-03). Accounts are funded by crypto deposit after a browser signup.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://docs.deribit.com/",
      "llmsTxt": "https://docs.deribit.com/llms.txt",
      "openapi": "https://docs.deribit.com/specifications/deribit_openapi.json",
      "capabilities": [
        "exchange.derivatives",
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.balances",
        "exchange.transfers",
        "market.crypto"
      ],
      "tags": [
        "official",
        "hosted",
        "closed-source",
        "openapi",
        "llms-txt",
        "api-key",
        "sandbox",
        "usage-priced",
        "no-status-page",
        "bug-bounty",
        "rest"
      ],
      "lastRelease": "2026-10-13",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59,
        "grade": "C",
        "agentReady": false,
        "rank": 650,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 9,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 65,
          "payments": 25,
          "reliability": 45,
          "schema": 88,
          "security": 62,
          "transparency": 46
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Deribit's JSON-RPC API has scoped keys with IP and expiry limits, asymmetric signing, an OpenAPI file, numeric rate limits and a 64-entry changelog. There is no official MCP server or client library, the fee schedule, terms and privacy policy sit on a support site that refused our reader, and the status page did not resolve.",
        "bestFor": "An agent trading crypto options, dated futures and perpetuals for an institutional or retail Deribit account, and anyone migrated from Coinbase International Exchange.",
        "strengths": [
          "Keys carry `account`, `trade`, `wallet`, `block_trade` and `block_rfq` scopes at read, read_write or none, with `ip:ADDR` and `expires` limits, and Ed25519 or RSA keys keep the private half off Deribit",
          "OpenAPI 3.0 and AsyncAPI files, llms.txt indexes and Markdown twins for every reference page",
          "Credit-based rate limits with numbers, per sub-account, and an errors page of about 159 codes with retry guidance (10028 back off, 10040 retry, 13009 refresh)",
          "A separate test environment at test.deribit.com with the same API and its own accounts and keys",
          "A dated JSON-RPC changelog since 2020 and an upcoming docs branch that previews the next release"
        ],
        "weaknesses": [
          "No official MCP server, and the GitHub organisation has no public repositories, so no official SDK in any language",
          "The fee schedule, terms of service, privacy policy and restricted-jurisdictions list are on support.deribit.com, which answered 403, so the lowest-tier maker and taker fees are unchecked",
          "status.deribit.com did not resolve for our reader and Coinbase's status page has no Deribit component we could find, so the incident record is unchecked",
          "The HTTP authentication example sends `client_secret` in the query string",
          "Breaking changes such as the 15 September 2026 change to `user.changes` carry no notice period in the changelog"
        ],
        "agentNotes": [
          "Create the key with `trade:read_write` and `wallet:none`, an `ip:` limit and an `expires` value; keep `account:read` unless the task edits subaccounts",
          "Authenticate with `client_signature` or an Ed25519 key over WebSocket rather than `client_credentials` over HTTP, which puts the secret in the URL",
          "Watch the `limits` field of `private/get_account_summary` and back off on error 10028; a session that runs out of credits is closed and must reconnect",
          "Send a `nonce` with orders so a retry after a timeout does not place a second order, and treat `order_not_found` on cancel as a possible fill",
          "Develop against https://test.deribit.com/api/v2 first; production and test need separate accounts and keys"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 65,
          "payments": 25,
          "reliability": 45,
          "schema": 88,
          "security": 62,
          "transparency": 22
        },
        "provenanceScore": 69,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl 'https://test.deribit.com/api/v2/public/get_order_book?instrument_name=BTC-PERPETUAL\u0026depth=5'"
      },
      "letme": {
        "capability": "https://letme.dev/exchange.derivatives",
        "tool": "https://letme.dev/deribit"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Perpetual and futures taker fee, VIP4 tier",
          "unit": "pct",
          "usd": 0.0175,
          "note": "1.75 bps from 19 October 2026 per Deribit's post of 14 October 2026. Base-tier fees unchecked"
        }
      ],
      "provenance": {
        "legalEntity": "Deribit FZE",
        "domain": "deribit.com",
        "domainRegistered": "2014-01-15",
        "endpointOnVendorDomain": true,
        "terms": "https://support.deribit.com/hc/en-us/articles/25944532191645-Deribit-Exchange-Membership-Terms-Deribit-FZE",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://docs.deribit.com/changelogs/jsonrpc",
        "securityTxt": "unknown",
        "checked": "2026-11-03",
        "notes": [
          "Deribit FZE is on VARA's public register, licence VL/23/12/002, active, issued 1 November 2024. Deribit's own post of 29 November 2024 says institutional and qualified investors contract with Deribit FZE and retail clients with DRB Panama, a broker member.",
          "The terms URL comes from a search result title (Deribit Exchange Membership Terms, Deribit FZE, version 26 January 2026); support.deribit.com answered 403 to our reader, so the terms, the privacy policy and the fee and restricted-jurisdictions articles were not read.",
          "RDAP gives deribit.com a registration date of 15 January 2014, registrar MarkMonitor.",
          "status.deribit.com did not resolve on 3 November 2026 and Coinbase's status page showed no Deribit component or incident, so no status page is recorded.",
          "https://www.deribit.com/.well-known/security.txt answered an HTML page with only the site title, so security.txt is unknown. Deribit's bug bounty runs on HackerOne per the support article title and HackerOne's customer story; insights.deribit.com/bug-bounty answered 403.",
          "docs.deribit.com/robots.txt allows everything but /cdn-cgi/ and /_next/, with Content-Signal ai-input=yes. support.deribit.com's robots.txt allows article pages; the 403 is the site's answer, not a robots rule."
        ],
        "score": 69
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/deribit.json",
      "live": {
        "slug": "deribit",
        "securityTxt": {
          "url": "https://deribit.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:54:13.971728133Z"
        },
        "updatedAt": "2026-11-04T15:54:13.971728133Z"
      }
    },
    "edges": [
      {
        "by": 19,
        "category": "transparency",
        "leads": "bitget",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "The editorial half. A closed hosted service with clear terms naming BTG Technology Holdings Limited; the toolkit is MIT (15 of 30). The privacy notice names the controller and EEA representative, gives 7-year and up to 10-year retention for compliance and litigation, and names recipients by category only (18 of 30). Deprecations and parameter changes carry effective dates (delta mode deprecated 27 August, symbol and category required from 30 September, snapshot changes with demo and live dates) but no written policy (15 of 20). Recipients by category, transfers under Seychelles law with no locations or provider names (5 of 20). 53.",
          "b": "The editorial half. A closed service whose terms (Deribit FZE membership terms and DRB Panama Inc. terms) sit on a support site that answered 403, with the entity confirmed on VARA's register (12 of 30). The privacy policy was not read, and nothing in the docs states retention (0 of 30). The changelog marks deprecations and the upcoming docs branch previews the next release, but removals such as `public/get_index` on 25 November 2025 carry no notice period (10 of 20). No subprocessor or data-location statement found (0 of 20). Total 22."
        },
        "scores": {
          "a": 65,
          "b": 46
        }
      },
      {
        "by": 15,
        "category": "payments",
        "leads": "bitget",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No machine payment protocol (0). Base spot and futures rates are stated in a help article without login, the tier table draws by script (20). Market data needs no key, demo trading costs nothing and no card is asked for at sign-up (20). A person registers, verifies identity and mints the key in a browser (0). 40.",
          "b": "No machine payment protocol (0). The fee schedule is on support.deribit.com, which answered 403; Deribit's own posts give VIP4 to VIP7 taker fees and the 0 bps linear options maker fee, so partial prices are public but the lowest tier is unchecked (5 of 20). Public market data needs no key and the test environment is free, with no card anywhere (20). A person signs up in a browser with identity checks before any key exists (0). Total 25."
        },
        "scores": {
          "a": 40,
          "b": 25
        }
      },
      {
        "by": 14,
        "category": "schema",
        "leads": "deribit",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "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.",
          "b": "OpenAPI 3.0.0 for the whole JSON-RPC surface (Deribit API 2.1.1, about 1.4 million characters) plus AsyncAPI files for the WebSocket side (25). llms.txt with production and upcoming indexes, and a Markdown twin of every page (10). Each operation has a description such as \"Places a buy order for an instrument.\" with parameter notes, and the articles say when to use WebSocket subscriptions over polling, but the reference seldom says when not to use a method (13 of 20). Parameters are typed with enums (order `type` has eight values, `time_in_force` four) and required flags, with `amount` or `contracts` as a documented either-or (13 of 15). Every reference page carries an example request and response, and the errors page lists about 159 codes with retry guidance, though most operations document only a 200 response and the smaller error tables disagree with the full one on two codes (12 of 15). A versioned path (/api/v2), a production and an upcoming docs branch, and a dated changelog of 64 entries since 21 January 2020 (15). Total 88."
        },
        "scores": {
          "a": 74,
          "b": 88
        }
      },
      {
        "by": 13,
        "category": "maintenance",
        "leads": "bitget",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a hosted service with an open-source toolkit. The UTA changelog's latest launched entry is 30 October 2026 and a preview entry 3 November; the MCP package shipped 3.3.1 on 20 September and agent-skill was pushed 30 October (30). 58 dated changelog entries since 5 August 2026 and six MCP versions since June (20). Issue trackers on the Bitget-AI repositories (11 open on agent_hub) and a support centre; replies were not checked (10 of 25). In the official MCP registry under io.github.Bitget-AI, a GitHub namespace, with official SDKs in five languages (10 of 15). CI workflow with coverage, npm provenance attestations, two runtime dependencies, no install scripts (8 of 10). 78.",
          "b": "Read as a closed service. The JSON-RPC changelog's latest production entry is 13 October 2026 and an entry dated 5 November 2026 describes the next release; Deribit's posts of 14 October and 2 November 2026 change fees (30). Entries of 18 August, 15 September and 13 October 2026, three in 90 days (20). A public changelog and a support site; whether support answers wasn't tested and the support site refused our reader (10 of 15). No official SDK and no MCP registry entry (0). The OpenAPI and AsyncAPI files are maintained with the docs (5 of 10). Total 65."
        },
        "scores": {
          "a": 78,
          "b": 65
        }
      },
      {
        "by": 9,
        "category": "ergonomics",
        "leads": "bitget",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Read for the API with the MCP server as the agent route. 14 compact tools by default, module filters, a full surface on request and progressive discovery (25). Cursor pagination on CFD order history since 15 October 2026 and limit parameters on lists (15 of 20). Uniform ok or error result shape from the SDK with typed error classes and compact JSON in the text channel (13 of 20). clientOid on orders, `dryRun: true` on every write, `confirm: true` gating cancelAll and withdraw, annotations derived from risk level including readOnlyHint, destructiveHint and idempotentHint (18 of 20). Few required fields, official SDKs in five languages plus the TypeScript agent SDK and a CLI (12 of 15). 83.",
          "b": "An API, read for response sizing. `public/get_order_book` takes `depth`, `get_instruments` filters by currency and kind, and history methods take `count` and `offset`, though `get_instruments` returns every instrument for a currency and costs 10,000 credits (18 of 25). Count and offset pagination, time ranges on trade and transaction logs, and WebSocket channels with interval and depth options (16 of 20). Numeric error codes with short names, a `wait` value on some errors, and sample code that branches on them (18 of 20). A `nonce` on orders since May 2026 returns the existing order on retry, a `label` lets an agent find its own orders, and 10040 marks the calls safe to retry; no MCP annotations apply (16 of 20). Few required parameters and sensible defaults (limit and good_til_cancelled), but no official SDK in any language, so every caller signs and frames JSON-RPC itself (6 of 15). Total 74."
        },
        "scores": {
          "a": 83,
          "b": 74
        }
      },
      {
        "by": 5,
        "category": "reliability",
        "leads": "deribit",
        "name": "Reliability",
        "reasons": {
          "a": "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.",
          "b": "Read with the hosted lines on the JSON-RPC API. status.deribit.com did not resolve for our reader on 3 November 2026 and Coinbase's status page showed no Deribit component, so no status page is scored, with the unchecked line below (0). No readable history (5). Rate limits are documented with numbers, 50,000 credits per sub-account refilled at 10,000 a second, and matching-engine tiers of 5 to 30 requests a second by 7-day volume (15). Error 10028 ends the session and the errors page says to back off exponentially; 10040 means retry; the 6 May 2026 release added a `nonce` for idempotent orders (15). No SLA found (0). The API is generally available; only Starbase is limited to selected clients (10). 0 + 5 + 15 + 15 + 0 + 10 = 45."
        },
        "scores": {
          "a": 40,
          "b": 45
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "BTG Technology Holdings Limited",
        "b": "Deribit FZE",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "stdio",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Proprietary hosted exchange. The API is documented under the Deribit docs with an OpenAPI 3.0 file; no official client library is published",
        "name": "Licence"
      },
      {
        "a": "14",
        "b": "0",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "io.github.Bitget-AI/bitget-agent-mcp",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-30",
        "b": "2026-10-13",
        "name": "Last release"
      },
      {
        "a": "2026-10-20",
        "b": "2026-08-13",
        "name": "Terms last updated"
      },
      {
        "a": "2025-12-05",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "234 stars",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Deribit scores 59 (C) on agent readiness against Bitget's 53.9 (D), and leads in 2 of 7 scored categories. Bitget leads on agent ergonomics, payments \u0026 pricing, maintenance \u0026 community and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Bitget or Deribit?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Bitget and Deribit need an API key?"
      },
      {
        "answer": "Bitget runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Deribit.",
        "question": "Can an agent call Bitget and Deribit without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 83 against 74",
          "Payments \u0026 pricing, 40 against 25",
          "Maintenance \u0026 community, 78 against 65",
          "Transparency \u0026 trust, 65 against 46"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "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.",
        "slug": "bitget",
        "watchFor": "Hot and warm wallets lost about 388 million dollars on 24 September 2026 to forged withdrawal commands, and withdrawals were paused until 2 October"
      },
      {
        "aheadOn": [
          "Reliability, 45 against 40",
          "Schema \u0026 documentation, 88 against 74"
        ],
        "also": [
          "No incidents deducted, where Bitget loses 8 points for them"
        ],
        "goodFor": "An agent trading crypto options, dated futures and perpetuals for an institutional or retail Deribit account, and anyone migrated from Coinbase International Exchange.",
        "slug": "deribit",
        "watchFor": "No official MCP server, and the GitHub organisation has no public repositories, so no official SDK in any language"
      }
    ],
    "history": null,
    "job": {
      "capability": "exchange.market-data",
      "name": "Exchange market data"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-bitget.json",
        "title": "Bitfinex API vs Bitget",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-bitget"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-deribit.json",
        "title": "Bitfinex API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-bithumb.json",
        "title": "Bitget vs Bithumb Open API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-bithumb"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-bitstamp.json",
        "title": "Bitget vs Bitstamp API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-bitstamp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-bybit.json",
        "title": "Bitget vs Bybit",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-bybit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-coinbase-advanced-trade.json",
        "title": "Bitget vs Coinbase Advanced Trade API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-coinbase-advanced-trade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-coinbase-mcp.json",
        "title": "Bitget vs Coinbase MCP server (Coinbase for Agents)",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-coinbase-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-crypto-com-exchange.json",
        "title": "Bitget vs Crypto.com Exchange API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-crypto-com-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-dydx.json",
        "title": "Bitget vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-gate-io.json",
        "title": "Bitget vs Gate",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-gemini-exchange.json",
        "title": "Bitget vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-htx.json",
        "title": "Bitget vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-hyperliquid.json",
        "title": "Bitget vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-kraken.json",
        "title": "Bitget vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-kucoin.json",
        "title": "Bitget vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-mexc.json",
        "title": "Bitget vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-okx.json",
        "title": "Bitget vs OKX API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-uniswap.json",
        "title": "Bitget vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-upbit.json",
        "title": "Bitget vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-deribit.json",
        "title": "Bithumb Open API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-deribit.json",
        "title": "Bitstamp API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-deribit.json",
        "title": "Bybit vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-deribit.json",
        "title": "Crypto.com Exchange API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-upbit.json",
        "title": "Deribit vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-bitget.json",
        "title": "Binance API vs Bitget",
        "url": "https://www.anchorterminal.com/compare/binance-vs-bitget"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-deribit.json",
        "title": "Binance API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/binance-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-deribit.json",
        "title": "Coinbase Advanced Trade API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-deribit.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs Deribit",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-uniswap.json",
        "title": "Deribit vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-dydx.json",
        "title": "Deribit vs dYdX",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-gate-io.json",
        "title": "Deribit vs Gate",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-gemini-exchange.json",
        "title": "Deribit vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-htx.json",
        "title": "Deribit vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-hyperliquid.json",
        "title": "Deribit vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-kraken.json",
        "title": "Deribit vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-kucoin.json",
        "title": "Deribit vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-mexc.json",
        "title": "Deribit vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-okx.json",
        "title": "Deribit vs OKX API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-okx"
      }
    ],
    "panel": null,
    "scores": [
      {
        "bitget": 40,
        "by": 5,
        "deribit": 45,
        "edge": "deribit",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "bitget": 74,
        "by": 14,
        "deribit": 88,
        "edge": "deribit",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "bitget": 83,
        "by": 9,
        "deribit": 74,
        "edge": "bitget",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "bitget": 62,
        "by": 0,
        "deribit": 62,
        "edge": "",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "bitget": 40,
        "by": 15,
        "deribit": 25,
        "edge": "bitget",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "bitget": 78,
        "by": 13,
        "deribit": 65,
        "edge": "bitget",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "bitget": 65,
        "by": 19,
        "deribit": 46,
        "edge": "bitget",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Deribit scores 59 (C) on agent readiness against Bitget's 53.9 (D), and leads in 2 of 7 scored categories. Bitget leads on agent ergonomics, payments \u0026 pricing, maintenance \u0026 community and transparency \u0026 trust. Both do exchange market data.",
    "tasks": null,
    "tutorials": [],
    "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.",
      "deribit": "Deribit's JSON-RPC API has scoped keys with IP and expiry limits, asymmetric signing, an OpenAPI file, numeric rate limits and a 64-entry changelog. There is no official MCP server or client library, the fee schedule, terms and privacy policy sit on a support site that refused our reader, and the status page did not resolve."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bitget-vs-deribit",
    "json": "https://www.anchorterminal.com/compare/bitget-vs-deribit.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bitget-vs-deribit.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/bitget-vs-deribit.min.md"
  },
  "markdown": "Deribit scores 59 (C) on agent readiness against Bitget's 53.9 (D), and leads in 2 of 7 scored categories. Bitget leads on agent ergonomics, payments \u0026 pricing, maintenance \u0026 community and transparency \u0026 trust. Both do exchange market data.\n\n- Bitget: grade D, 53.9/100, rank #890 of 1349. Markdown https://www.anchorterminal.com/tools/bitget.md · JSON https://www.anchorterminal.com/api/v1/tools/bitget.json\n- Deribit: grade C, 59/100, rank #650 of 1349. Markdown https://www.anchorterminal.com/tools/deribit.md · JSON https://www.anchorterminal.com/api/v1/tools/deribit.json\n- Best crypto exchange APIs and MCP servers for AI agents: https://www.anchorterminal.com/best/crypto-exchanges/index.md\n- All 210 exchanges comparisons: https://www.anchorterminal.com/compare/crypto-exchanges/index.md\n\n## Which one, for what\n\n### Bitget (D)\n\nGood 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.\n\nAhead on:\n- Agent ergonomics, 83 against 74\n- Payments \u0026 pricing, 40 against 25\n- Maintenance \u0026 community, 78 against 65\n- Transparency \u0026 trust, 65 against 46\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch 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\n\n### Deribit (C)\n\nGood for: An agent trading crypto options, dated futures and perpetuals for an institutional or retail Deribit account, and anyone migrated from Coinbase International Exchange.\n\nAhead on:\n- Reliability, 45 against 40\n- Schema \u0026 documentation, 88 against 74\n\nAlso in its favour:\n- No incidents deducted, where Bitget loses 8 points for them\n\nWatch for: No official MCP server, and the GitHub organisation has no public repositories, so no official SDK in any language\n\n\n## Why the edge\n\n### Transparency \u0026 trust: Bitget +19\n\n- Bitget (65): The editorial half. A closed hosted service with clear terms naming BTG Technology Holdings Limited; the toolkit is MIT (15 of 30). The privacy notice names the controller and EEA representative, gives 7-year and up to 10-year retention for compliance and litigation, and names recipients by category only (18 of 30). Deprecations and parameter changes carry effective dates (delta mode deprecated 27 August, symbol and category required from 30 September, snapshot changes with demo and live dates) but no written policy (15 of 20). Recipients by category, transfers under Seychelles law with no locations or provider names (5 of 20). 53.\n- Deribit (46): The editorial half. A closed service whose terms (Deribit FZE membership terms and DRB Panama Inc. terms) sit on a support site that answered 403, with the entity confirmed on VARA's register (12 of 30). The privacy policy was not read, and nothing in the docs states retention (0 of 30). The changelog marks deprecations and the upcoming docs branch previews the next release, but removals such as `public/get_index` on 25 November 2025 carry no notice period (10 of 20). No subprocessor or data-location statement found (0 of 20). Total 22.\n\n### Payments \u0026 pricing: Bitget +15\n\n- Bitget (40): No machine payment protocol (0). Base spot and futures rates are stated in a help article without login, the tier table draws by script (20). Market data needs no key, demo trading costs nothing and no card is asked for at sign-up (20). A person registers, verifies identity and mints the key in a browser (0). 40.\n- Deribit (25): No machine payment protocol (0). The fee schedule is on support.deribit.com, which answered 403; Deribit's own posts give VIP4 to VIP7 taker fees and the 0 bps linear options maker fee, so partial prices are public but the lowest tier is unchecked (5 of 20). Public market data needs no key and the test environment is free, with no card anywhere (20). A person signs up in a browser with identity checks before any key exists (0). Total 25.\n\n### Schema \u0026 documentation: Deribit +14\n\n- 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.\n- Deribit (88): OpenAPI 3.0.0 for the whole JSON-RPC surface (Deribit API 2.1.1, about 1.4 million characters) plus AsyncAPI files for the WebSocket side (25). llms.txt with production and upcoming indexes, and a Markdown twin of every page (10). Each operation has a description such as \"Places a buy order for an instrument.\" with parameter notes, and the articles say when to use WebSocket subscriptions over polling, but the reference seldom says when not to use a method (13 of 20). Parameters are typed with enums (order `type` has eight values, `time_in_force` four) and required flags, with `amount` or `contracts` as a documented either-or (13 of 15). Every reference page carries an example request and response, and the errors page lists about 159 codes with retry guidance, though most operations document only a 200 response and the smaller error tables disagree with the full one on two codes (12 of 15). A versioned path (/api/v2), a production and an upcoming docs branch, and a dated changelog of 64 entries since 21 January 2020 (15). Total 88.\n\n### Maintenance \u0026 community: Bitget +13\n\n- Bitget (78): Read as a hosted service with an open-source toolkit. The UTA changelog's latest launched entry is 30 October 2026 and a preview entry 3 November; the MCP package shipped 3.3.1 on 20 September and agent-skill was pushed 30 October (30). 58 dated changelog entries since 5 August 2026 and six MCP versions since June (20). Issue trackers on the Bitget-AI repositories (11 open on agent_hub) and a support centre; replies were not checked (10 of 25). In the official MCP registry under io.github.Bitget-AI, a GitHub namespace, with official SDKs in five languages (10 of 15). CI workflow with coverage, npm provenance attestations, two runtime dependencies, no install scripts (8 of 10). 78.\n- Deribit (65): Read as a closed service. The JSON-RPC changelog's latest production entry is 13 October 2026 and an entry dated 5 November 2026 describes the next release; Deribit's posts of 14 October and 2 November 2026 change fees (30). Entries of 18 August, 15 September and 13 October 2026, three in 90 days (20). A public changelog and a support site; whether support answers wasn't tested and the support site refused our reader (10 of 15). No official SDK and no MCP registry entry (0). The OpenAPI and AsyncAPI files are maintained with the docs (5 of 10). Total 65.\n\n### Agent ergonomics: Bitget +9\n\n- Bitget (83): Read for the API with the MCP server as the agent route. 14 compact tools by default, module filters, a full surface on request and progressive discovery (25). Cursor pagination on CFD order history since 15 October 2026 and limit parameters on lists (15 of 20). Uniform ok or error result shape from the SDK with typed error classes and compact JSON in the text channel (13 of 20). clientOid on orders, `dryRun: true` on every write, `confirm: true` gating cancelAll and withdraw, annotations derived from risk level including readOnlyHint, destructiveHint and idempotentHint (18 of 20). Few required fields, official SDKs in five languages plus the TypeScript agent SDK and a CLI (12 of 15). 83.\n- Deribit (74): An API, read for response sizing. `public/get_order_book` takes `depth`, `get_instruments` filters by currency and kind, and history methods take `count` and `offset`, though `get_instruments` returns every instrument for a currency and costs 10,000 credits (18 of 25). Count and offset pagination, time ranges on trade and transaction logs, and WebSocket channels with interval and depth options (16 of 20). Numeric error codes with short names, a `wait` value on some errors, and sample code that branches on them (18 of 20). A `nonce` on orders since May 2026 returns the existing order on retry, a `label` lets an agent find its own orders, and 10040 marks the calls safe to retry; no MCP annotations apply (16 of 20). Few required parameters and sensible defaults (limit and good_til_cancelled), but no official SDK in any language, so every caller signs and frames JSON-RPC itself (6 of 15). Total 74.\n\n### Reliability: Deribit +5\n\n- 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.\n- Deribit (45): Read with the hosted lines on the JSON-RPC API. status.deribit.com did not resolve for our reader on 3 November 2026 and Coinbase's status page showed no Deribit component, so no status page is scored, with the unchecked line below (0). No readable history (5). Rate limits are documented with numbers, 50,000 credits per sub-account refilled at 10,000 a second, and matching-engine tiers of 5 to 30 requests a second by 7-day volume (15). Error 10028 ends the session and the errors page says to back off exponentially; 10040 means retry; the 6 May 2026 release added a `nonce` for idempotent orders (15). No SLA found (0). The API is generally available; only Starbase is limited to selected clients (10). 0 + 5 + 15 + 15 + 0 + 10 = 45.\n\n## Score by category\n\n| Category | Weight | Bitget | Deribit | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 40 | 45 | Deribit +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 74 | 88 | Deribit +14 |\n| Agent ergonomics | 13% (16.2 this run) | 83 | 74 | Bitget +9 |\n| Security \u0026 auth | 14% (17.5 this run) | 62 | 62 | even |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 25 | Bitget +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 78 | 65 | Bitget +13 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 65 | 46 | Bitget +19 |\n| Negative events | ≤15 | -8 | 0 | |\n| **Total** | | **53.9 · D** | **59 · C** | |\n\n## Facts side by side\n\n| Fact | Bitget | Deribit |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | BTG Technology Holdings Limited | Deribit FZE |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | stdio |  |\n| Auth | API key | API key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | none | Proprietary hosted exchange. The API is documented under the Deribit docs with an OpenAPI 3.0 file; no official client library is published |\n| Tools exposed | 14 | 0 |\n| Read-only variant documented | yes | no |\n| llms.txt | no | yes |\n| MCP registry | `io.github.Bitget-AI/bitget-agent-mcp` | not listed |\n| Last release | 2026-10-30 | 2026-10-13 |\n| Terms last updated | 2026-10-20 | 2026-08-13 |\n| Privacy policy last updated | 2025-12-05 | no document linked |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | yes |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | yes | not found in the text |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 234 stars | none |\n\n## Verdicts\n\n**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.\n\n**Deribit.** Deribit's JSON-RPC API has scoped keys with IP and expiry limits, asymmetric signing, an OpenAPI file, numeric rate limits and a 64-entry changelog. There is no official MCP server or client library, the fee schedule, terms and privacy policy sit on a support site that refused our reader, and the status page did not resolve.\n\n## Before you call either\n\n### Bitget\n\n1. 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\n2. 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\n3. Send a unique clientOid of at most 64 characters on every order and reuse it on retry; orderId wins when both are sent\n4. 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\n5. Bind the key to an IP and keep write permission off a research key; the docs read show no separate withdrawal scope\n\n### Deribit\n\n1. Create the key with `trade:read_write` and `wallet:none`, an `ip:` limit and an `expires` value; keep `account:read` unless the task edits subaccounts\n2. Authenticate with `client_signature` or an Ed25519 key over WebSocket rather than `client_credentials` over HTTP, which puts the secret in the URL\n3. Watch the `limits` field of `private/get_account_summary` and back off on error 10028; a session that runs out of credits is closed and must reconnect\n4. Send a `nonce` with orders so a retry after a timeout does not place a second order, and treat `order_not_found` on cancel as a possible fill\n5. Develop against https://test.deribit.com/api/v2 first; production and test need separate accounts and keys\n\n## Questions\n\n### Which is better for AI agents, Bitget or Deribit?\n\nDeribit scores 59 (C) on agent readiness against Bitget's 53.9 (D), and leads in 2 of 7 scored categories. Bitget leads on agent ergonomics, payments \u0026 pricing, maintenance \u0026 community and transparency \u0026 trust.\n\n### Do Bitget and Deribit need an API key?\n\nBoth need an API key.\n\n### Can an agent call Bitget and Deribit without installing anything?\n\nBitget runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Deribit.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/bitget-vs-deribit.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bitget-vs-deribit.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"bitget\", \"b\": \"deribit\"}`. From a terminal: `anchor compare bitget deribit`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bitget.json and https://www.anchorterminal.com/api/v1/tools/deribit.json\n\n## Other comparisons with Bitget or Deribit\n\n- [Bitfinex API vs Bitget](https://www.anchorterminal.com/compare/bitfinex-vs-bitget.md)\n- [Bitfinex API vs Deribit](https://www.anchorterminal.com/compare/bitfinex-vs-deribit.md)\n- [Bitget vs Bithumb Open API](https://www.anchorterminal.com/compare/bitget-vs-bithumb.md)\n- [Bitget vs Bitstamp API](https://www.anchorterminal.com/compare/bitget-vs-bitstamp.md)\n- [Bitget vs Bybit](https://www.anchorterminal.com/compare/bitget-vs-bybit.md)\n- [Bitget vs Coinbase Advanced Trade API](https://www.anchorterminal.com/compare/bitget-vs-coinbase-advanced-trade.md)\n- [Bitget vs Coinbase MCP server (Coinbase for Agents)](https://www.anchorterminal.com/compare/bitget-vs-coinbase-mcp.md)\n- [Bitget vs Crypto.com Exchange API](https://www.anchorterminal.com/compare/bitget-vs-crypto-com-exchange.md)\n- [Bitget vs dYdX](https://www.anchorterminal.com/compare/bitget-vs-dydx.md)\n- [Bitget vs Gate](https://www.anchorterminal.com/compare/bitget-vs-gate-io.md)\n- [Bitget vs Gemini Exchange API](https://www.anchorterminal.com/compare/bitget-vs-gemini-exchange.md)\n- [Bitget vs HTX trading API](https://www.anchorterminal.com/compare/bitget-vs-htx.md)\n- [Bitget vs Hyperliquid](https://www.anchorterminal.com/compare/bitget-vs-hyperliquid.md)\n- [Bitget vs Kraken API](https://www.anchorterminal.com/compare/bitget-vs-kraken.md)\n- [Bitget vs KuCoin](https://www.anchorterminal.com/compare/bitget-vs-kucoin.md)\n- [Bitget vs MEXC API](https://www.anchorterminal.com/compare/bitget-vs-mexc.md)\n- [Bitget vs OKX API](https://www.anchorterminal.com/compare/bitget-vs-okx.md)\n- [Bitget vs Uniswap Trading API](https://www.anchorterminal.com/compare/bitget-vs-uniswap.md)\n- [Bitget vs Upbit Open API](https://www.anchorterminal.com/compare/bitget-vs-upbit.md)\n- [Bithumb Open API vs Deribit](https://www.anchorterminal.com/compare/bithumb-vs-deribit.md)\n- [Bitstamp API vs Deribit](https://www.anchorterminal.com/compare/bitstamp-vs-deribit.md)\n- [Bybit vs Deribit](https://www.anchorterminal.com/compare/bybit-vs-deribit.md)\n- [Crypto.com Exchange API vs Deribit](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-deribit.md)\n- [Deribit vs Upbit Open API](https://www.anchorterminal.com/compare/deribit-vs-upbit.md)\n- [Binance API vs Bitget](https://www.anchorterminal.com/compare/binance-vs-bitget.md)\n- [Binance API vs Deribit](https://www.anchorterminal.com/compare/binance-vs-deribit.md)\n- [Coinbase Advanced Trade API vs Deribit](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-deribit.md)\n- [Coinbase MCP server (Coinbase for Agents) vs Deribit](https://www.anchorterminal.com/compare/coinbase-mcp-vs-deribit.md)\n- [Deribit vs Uniswap Trading API](https://www.anchorterminal.com/compare/deribit-vs-uniswap.md)\n- [Deribit vs dYdX](https://www.anchorterminal.com/compare/deribit-vs-dydx.md)\n- [Deribit vs Gate](https://www.anchorterminal.com/compare/deribit-vs-gate-io.md)\n- [Deribit vs Gemini Exchange API](https://www.anchorterminal.com/compare/deribit-vs-gemini-exchange.md)\n- [Deribit vs HTX trading API](https://www.anchorterminal.com/compare/deribit-vs-htx.md)\n- [Deribit vs Hyperliquid](https://www.anchorterminal.com/compare/deribit-vs-hyperliquid.md)\n- [Deribit vs Kraken API](https://www.anchorterminal.com/compare/deribit-vs-kraken.md)\n- [Deribit vs KuCoin](https://www.anchorterminal.com/compare/deribit-vs-kucoin.md)\n- [Deribit vs MEXC API](https://www.anchorterminal.com/compare/deribit-vs-mexc.md)\n- [Deribit vs OKX API](https://www.anchorterminal.com/compare/deribit-vs-okx.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Bitget vs Deribit",
        "url": ""
      }
    ],
    "description": "Deribit scores 59 (C) to Bitget's 53.9 (D) for exchange market data. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Bitget D 53.9",
      "Deribit C 59",
      "scores"
    ],
    "h1": "Bitget vs Deribit",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/bitget-vs-deribit",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Bitget vs Deribit for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-03",
    "url": "https://www.anchorterminal.com/compare/bitget-vs-deribit"
  },
  "tokens": {
    "markdown": 4950,
    "slim": 2780
  },
  "version": 1
}
