Head to head · Exchange market data · October 2026 research run

Bitfinex API vs Bitget

Bitfinex API scores 58.4 (C) on agent readiness against Bitget's 53.9 (D), and leads in 1 of 7 scored categories. Bitget leads on schema & documentation, agent ergonomics, maintenance & community and transparency & trust. Both do exchange market data.

Best crypto exchange APIs and MCP servers for AI agents · All 210 exchanges comparisons

Which one, for what

Bitfinex API C

Best for An agent trading spot, margin or derivatives, or lending on the funding market, with scoped keys, official clients and paper trading.

Ahead on

  • Reliability, 85 against 40

Also in its favour

  • No incidents deducted, where Bitget loses 8 points for them

Watch for

No official MCP server, OpenAPI file or AsyncAPI file; the registry's Bitfinex servers are third parties proxying public market data

Bitget D

Best 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.

Ahead on

  • Schema & documentation, 74 against 48
  • Agent ergonomics, 83 against 61
  • Maintenance & community, 78 against 41
  • Transparency & trust, 65 against 49

Also in its favour

  • Runs on your own machine

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

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Reliability Bitfinex API +45

Bitfinex API 85

Read with the hosted lines on the v2 API at api.bitfinex.com. bitfinex.statuspage.io is a Statuspage site with history back to May 2021 (20). Its feed has no entry between 25 March 2026 and 3 November 2026, so the last 90 days are clean on the record; the feed logs platform-wide outages only (a 14-hour maintenance in March 2026, a 3-hour outage in August 2025), so smaller incidents may go unrecorded. Judgement call (30). Rate limits with numbers, 10 to 90 a minute per IP and the WebSocket connection limits (15). ERR_RATE_LIMIT and the 60-second block are documented, with no Retry-After; orders take a cid but no idempotency key or retry guidance was found (10 of 15). No SLA found (0). Generally available (10). 20 + 30 + 15 + 10 + 0 + 10 = 85.

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.

Maintenance & community Bitget +37

Bitfinex API 41

Read as a closed service with open clients. The last dated change we could read is bitfinex-api-node 9.1.0 on 18 July 2026, 108 days before the check; the docs changelog stops in October 2024 (10). Not three dated releases in the last 90 days (0). The bitfinexcom organisation pushes often (bfx-report on 3 November 2026) and the clients have issue trackers, but support articles answered 403 and no reply times were read (10 of 25). Official clients current in four languages, Node 9.1.0 of July 2026 and Python 4.0.0 of October 2025; not in the MCP registry (15). The Node client has a dependency history of security fixes (its last GitHub release notes name two) and no CI was read (6 of 10). 10 + 0 + 10 + 15 + 6 = 41.

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.

Schema & documentation Bitget +26

Bitfinex API 48

No OpenAPI or AsyncAPI file was found on docs.bitfinex.com, in llms.txt or in the client repositories (0). llms.txt and a .md twin of every docs page (10). Each reference page states the endpoint's purpose and fields, and the introduction says when to use api-pub against api, but nothing says when not to use an endpoint (14 of 20). Responses are positional arrays described in field tables, inputs are typed in prose with some enumerations (wallet names, order types) and required fields marked; the withdrawal CODE field is work in progress (7 of 15). Signed-request recipes in five languages, but authenticated errors are documented as 400 with an empty object and there is no error reference (9 of 15). Version v2 in the path and a dated changelog, whose last entry is October 2024 and whose v1 deprecation has no date (8 of 15). 0 + 10 + 14 + 7 + 9 + 8 = 48.

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.

Agent ergonomics Bitget +22

Bitfinex API 61

Graded on the REST API. Limits on trades, candles and book depth, and pub:list config endpoints keep responses small, but positional arrays make every field a lookup (14 of 25). start, end, limit and sort on history endpoints and per-symbol variants (16 of 20). ERR_RATE_LIMIT is actionable; authenticated 400s return {} and withdrawal status strings may change, so an agent cannot branch on causes (8 of 20). A client id on orders, order multi-op and cancel-multiple, but no idempotency key and no retry contract (8 of 20). Few required parameters and official clients in Node, Python, Go and Ruby (15). 14 + 16 + 8 + 8 + 15 = 61.

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.

Transparency & trust Bitget +16

Bitfinex API 49

The editorial half. A closed service whose Exchange Terms and API Terms of Service loaded only navigation, so the licence terms are unknown; the clients are MIT and Apache-2.0 (8 of 30). The privacy statement loaded only navigation, so retention and data handling are unchecked (0 of 30). The docs say v1 will be deprecated "at some point in the future" with no date, and the Python client's 4.0.0 removed endpoints with a release note (5 of 20). Subprocessors and data locations are in the unread privacy statement (0). 8 + 0 + 5 + 0 = 13.

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.

Score by category

CategoryWeight this runBitfinex APIBitgetEdge
Reliability16%208540Bitfinex API +45
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.24874Bitget +26
Agent ergonomics13%16.26183Bitget +22
Security & auth14%17.56262even
Payments & pricing10%12.54040even
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.84178Bitget +37
Transparency & trust7%8.84965Bitget +16
Negative events≤150-8
TotalC 58.4/100D 53.9/100

Facts side by side

FactBitfinex APIBitget
KindHTTP APIHTTP API
VendoriFinex Inc.BTG Technology Holdings Limited
Hosted endpointno (local only)no (local only)
Transportsstdio
AuthAPI keyAPI key
PricingPay per usePay per use
x402nono
LicenceProprietary hosted API under Bitfinex's API Terms of Service, which our reader couldn't load. The official client libraries (Node, Python, Go, Ruby) are MIT or Apache-2.0none
Tools exposednone14
Read-only variant documentednoyes
llms.txtyesno
MCP registrynot listedio.github.Bitget-AI/bitget-agent-mcp
Last release2026-07-182026-10-30
Terms last updatedcouldn't be read2026-10-20
Privacy policy last updatedcouldn't be read2025-12-05
Customer content may train modelscouldn't be readnot found in the text
Terms restrict automated accesscouldn't be readyes
Terms restrict benchmarkingcouldn't be readnot found in the text
Terms or service can change without noticecouldn't be readyes
Arbitration or class-action waivercouldn't be readyes
Popularity480 stars234 stars

Verdicts

Bitfinex API

Bitfinex gives an agent scoped keys with a separate withdraw permission, paper-trading sub-accounts on the production API, llms.txt and official clients in four languages. There is no official MCP server, responses are positional arrays with empty error bodies, rate limits run 10 to 90 a minute per IP, and the terms, API terms and privacy statement could not be read.

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.

Before you call either

Bitfinex API

  1. Mint a key with read on the scopes the task needs and write only on orders; never grant withdraw to a trading key, and bind the key to known IPs
  2. Use one key per client process, since each key keeps its own strictly increasing nonce and a reused nonce is rejected
  3. Rehearse on a paper-trading sub-account with the TEST symbols before touching real balances; the sub-account cannot be converted later
  4. Plan requests against the per-endpoint limit of 10 to 90 a minute per IP; ERR_RATE_LIMIT blocks the IP for 60 seconds with no Retry-After
  5. Map each response by position from the docs' field tables and set a cid on orders, because responses are arrays and a 400 carries no reason

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

Questions

Which is better for AI agents, Bitfinex API or Bitget?

Bitfinex API scores 58.4 (C) on agent readiness against Bitget's 53.9 (D), and leads in 1 of 7 scored categories. Bitget leads on schema & documentation, agent ergonomics, maintenance & community and transparency & trust.

Do Bitfinex API and Bitget need an API key?

Both need an API key.

Can an agent call Bitfinex API and Bitget without installing anything?

No hosted endpoint is listed for Bitfinex API. Bitget runs on your own machine, with no hosted endpoint listed.

Other comparisons with Bitfinex API or Bitget

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.