{
  "data": {
    "a": {
      "slug": "bitfinex",
      "name": "Bitfinex API",
      "vendor": "iFinex Inc.",
      "vendorUrl": "https://www.bitfinex.com",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Bitfinex's v2 API for spot, margin, derivatives and peer-to-peer funding, with balances, deposits and withdrawals, through REST and WebSocket with scoped API keys, paper-trading sub-accounts and official Node, Python, Go and Ruby clients.",
      "url": "https://www.anchorterminal.com/tools/bitfinex",
      "markdownUrl": "https://www.anchorterminal.com/tools/bitfinex.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bitfinex.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bitfinex.json",
      "dns": "bitfinex.grade.anchorterminal.com",
      "repo": "https://github.com/bitfinexcom/bitfinex-api-node",
      "license": "Proprietary 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.0",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "bitfinex-api-node"
        },
        {
          "registry": "pypi",
          "name": "bitfinex-api-py"
        }
      ],
      "auth": "api-key",
      "authNotes": "API key and secret made at setting.bitfinex.com/api after a browser signup, with 2FA and an email confirmation, shown once. Each key carries read and write permissions per scope (account, history, orders, positions, funding, settings, wallets, withdraw, ui_withdraw, bfxpay), readable back from `POST /v2/auth/r/permissions`, and keys are revoked from the same page; a strictly increasing nonce per key. Bitfinex's support article on keys says a key can be bound to up to 20 IP addresses, per the search result's text, since the article itself answered 403 (https://docs.bitfinex.com/docs/requirements-and-limitations, https://docs.bitfinex.com/reference/key-permissions, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API itself costs nothing. The fees page read on 3 November 2026 shows zero maker and zero taker fees for exchange, margin and derivatives order execution with no volume tiers, margin funding lender fees of 15% of interest (18% when the offer is hidden) with up to 5% off for LEO holders, a 5% takeover fee, free crypto deposits and bank wire 0.1% (minimum 60 for deposits, 100 for withdrawals, USD or EUR). Paper trading on a sub-account needs no money (https://www.bitfinex.com/fees, checked 2026-11-03).",
      "priceSummary": "0% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, llms.txt or fees page (checked 2026-11-03). Fees are taken from the account; onboarding is a browser signup.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 480,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://docs.bitfinex.com",
      "llmsTxt": "https://docs.bitfinex.com/llms.txt",
      "capabilities": [
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.derivatives",
        "exchange.balances",
        "exchange.transfers",
        "exchange.staking",
        "market.crypto"
      ],
      "tags": [
        "official",
        "hosted",
        "api-key",
        "llms-txt",
        "sandbox",
        "status-page",
        "javascript",
        "python",
        "go",
        "ruby",
        "usage-priced"
      ],
      "lastRelease": "2026-07-18",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 58.4,
        "grade": "C",
        "agentReady": false,
        "rank": 675,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 10,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 61,
          "maintenance": 41,
          "payments": 40,
          "reliability": 85,
          "schema": 48,
          "security": 62,
          "transparency": 49
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "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.",
        "bestFor": "An agent trading spot, margin or derivatives, or lending on the funding market, with scoped keys, official clients and paper trading.",
        "strengths": [
          "Per-scope read and write permissions on each key, including a separate `withdraw` scope, readable back from the permissions endpoint",
          "Paper trading on a sub-account against test symbols on the same production API, with no money at risk",
          "llms.txt with a Markdown twin of every docs page, and official Node, Python, Go and Ruby clients",
          "Rate limits, connection limits and the `ERR_RATE_LIMIT` response documented with numbers",
          "A Statuspage history going back to 2021 and a fees page without login"
        ],
        "weaknesses": [
          "No official MCP server, OpenAPI file or AsyncAPI file; the registry's Bitfinex servers are third parties proxying public market data",
          "Responses are positional arrays and authenticated errors answer 400 with an empty object, so an agent must map indexes and guess causes",
          "Rate limits of 10 to 90 requests a minute per IP with a 60-second block and no Retry-After",
          "The Exchange Terms, API Terms of Service, privacy statement and support articles could not be read, so the bot clauses, retention and restricted countries are unchecked",
          "The docs changelog stops at October 2024 and the v1 deprecation has no date"
        ],
        "agentNotes": [
          "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",
          "Use one key per client process, since each key keeps its own strictly increasing nonce and a reused nonce is rejected",
          "Rehearse on a paper-trading sub-account with the TEST symbols before touching real balances; the sub-account cannot be converted later",
          "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",
          "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"
        ],
        "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": 58.4
          }
        ],
        "editorialScores": {
          "ergonomics": 61,
          "maintenance": 41,
          "payments": 40,
          "reliability": 85,
          "schema": 48,
          "security": 62,
          "transparency": 13
        },
        "provenanceScore": 85,
        "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": "npm install bitfinex-api-node",
        "http": "curl https://api-pub.bitfinex.com/v2/ticker/tBTCUSD"
      },
      "letme": {
        "capability": "https://letme.dev/exchange.market-data",
        "tool": "https://letme.dev/bitfinex"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Exchange maker fee, as shown on 3 November 2026",
          "unit": "pct",
          "usd": 0,
          "note": "no tiers or date shown; reads as a promotion"
        },
        {
          "item": "Exchange taker fee, as shown on 3 November 2026",
          "unit": "pct",
          "usd": 0,
          "note": "no tiers or date shown; reads as a promotion"
        },
        {
          "item": "Margin funding lender fee on interest earned",
          "unit": "pct",
          "usd": 15,
          "note": "18% when the offer is hidden, up to 5% off for LEO holders"
        }
      ],
      "provenance": {
        "legalEntity": "iFinex Inc.",
        "domain": "bitfinex.com",
        "domainRegistered": "2012-10-11",
        "endpointOnVendorDomain": true,
        "terms": "https://www.bitfinex.com/legal/exchange/terms/",
        "privacy": "https://www.bitfinex.com/legal/privacy/",
        "statusPage": "https://bitfinex.statuspage.io",
        "changelog": "https://docs.bitfinex.com/docs/changelog",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "iFinex Inc. is named only in the copyright line of bitfinex.com; the Exchange Terms, API Terms of Service and privacy statement pages draw their text by script and loaded only navigation, so the contracting entity and its jurisdiction are unconfirmed.",
          "RDAP gives bitfinex.com a registration date of 11 October 2012.",
          "https://www.bitfinex.com/.well-known/security.txt returns 404.",
          "www.bitfinex.com/robots.txt allows the pages read; docs.bitfinex.com allows all and points to llms.txt; bitfinex.statuspage.io disallows /api/ and /embed/, so the history feed was read. support.bitfinex.com's robots.txt allows articles but the articles answered 403.",
          "The docs changelog's latest entry is 16 October 2024; the API clients carry the recent releases."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bitfinex.json",
      "live": {
        "slug": "bitfinex",
        "vendorStatus": {
          "page": "https://bitfinex.statuspage.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-04T20:38:42.97064144Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "bitfinexcom/bitfinex-api-node",
            "version": "4.0.15",
            "released": "2020-07-02",
            "seenAt": "2026-11-04T20:02:46.845797373Z"
          },
          {
            "registry": "npm",
            "name": "bitfinex-api-node",
            "version": "9.1.0",
            "seenAt": "2026-11-04T20:02:45.764784853Z"
          },
          {
            "registry": "pypi",
            "name": "bitfinex-api-py",
            "version": "4.0.0",
            "released": "2025-10-18",
            "seenAt": "2026-11-04T20:02:46.619664479Z"
          }
        ],
        "githubStars": 480,
        "npmWeekly": 6284,
        "pypiWeekly": 832,
        "securityTxt": {
          "url": "https://bitfinex.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:53:26.210646703Z"
        },
        "updatedAt": "2026-11-04T20:38:42.97064144Z"
      }
    },
    "answer": "Bitfinex API scores 58.4 (C) on agent readiness against Bybit's 57.3 (C), and leads in 2 of 7 scored categories. Bybit leads on schema \u0026 documentation, agent ergonomics and maintenance \u0026 community.",
    "b": {
      "slug": "bybit",
      "name": "Bybit",
      "vendor": "Bybit",
      "vendorUrl": "https://www.bybit.com",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Bybit is a centralised crypto exchange for spot, perpetual and futures contracts, options and earn products, reached through its V5 REST and WebSocket API, a FIX order-entry gateway and an official stdio MCP server published from its GitHub organisation.",
      "url": "https://www.anchorterminal.com/tools/bybit",
      "markdownUrl": "https://www.anchorterminal.com/tools/bybit.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bybit.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bybit.json",
      "dns": "bybit.grade.anchorterminal.com",
      "repo": "https://github.com/bybit-exchange/trading-mcp",
      "transports": [
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "bybit-official-trading-server"
        },
        {
          "registry": "pypi",
          "name": "pybit"
        }
      ],
      "auth": "api-key",
      "authNotes": "API key minted on the API management page after a browser sign-up and identity verification, signed per request with HMAC-SHA256 (system-generated secret) or RSA-SHA256 (self-generated key pair) in the X-BAPI-API-KEY, X-BAPI-TIMESTAMP, X-BAPI-SIGN and X-BAPI-RECV-WINDOW headers. Permissions are granted per group (ContractTrade, Spot, Wallet with a separate Withdraw value, Options, Derivatives, Exchange, Earn, Affiliate, BlockTrade) with a readOnly flag, and keys can be bound to IP addresses. A key with no IP binding expires 90 days after creation and can be extended on the management page with email and 2FA codes. Keys for testnet come from testnet.bybit.com and keys for demo trading from the production account in demo mode (https://bybit-exchange.github.io/docs/v5/user/apikey-info and https://bybit-exchange.github.io/docs/faq, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API and the MCP server cost nothing; trades carry Bybit's fees. At VIP 0 the spot fee is 0.1 per cent maker and taker, perpetual and futures contracts 0.02 per cent maker and 0.055 per cent taker, options 0.02 per cent maker and 0.03 per cent taker, with lower tiers by 30-day volume or asset balance and a note that rates vary by region. Fiat pairs, the Adventure Zone, xStocks and pre-market perpetuals have their own tables (https://www.bybit.com/en/help-center/article/Trading-Fee-Structure, last updated 2 September 2026, read 2026-11-03).",
      "priceSummary": "0.1% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the V5 docs, the MCP server's README or source, or the fee schedule (checked 2026-11-03). Trading fees are taken from the account balance.",
        "endpoints": []
      },
      "toolCount": 398,
      "popularity": {
        "githubStars": 43,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://bybit-exchange.github.io/docs/v5/intro",
      "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",
        "official",
        "python",
        "typescript",
        "go",
        "java",
        "dotnet"
      ],
      "lastRelease": "2026-10-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 57.3,
        "grade": "C",
        "agentReady": false,
        "rank": 712,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 11,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 66,
          "payments": 40,
          "reliability": 45,
          "schema": 73,
          "security": 60,
          "transparency": 51
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Bybit publishes per-endpoint rate limits, a demo environment, scoped keys with a read-only flag and IP binding, and an official stdio MCP server whose 398 tools carry read-only and destructive annotations. There is no status page, no OpenAPI file, no SLA, the MCP server has no toolsets, and the global terms and privacy pages are drawn by script.",
        "bestFor": "An agent trading spot, perpetuals, futures and options in a person's Bybit account outside the excluded jurisdictions, with a demo environment to rehearse on.",
        "strengths": [
          "Official MCP server from Bybit's GitHub organisation with 398 generated tools, each annotated readOnlyHint, destructiveHint and openWorldHint, and market data tools that need no key",
          "Rate limits published per endpoint and per UID with limit, remaining and reset headers on every response, and a documented 403 ban rule for the IP limit",
          "API keys scoped by product group with a read-only flag, a separate Withdraw permission, IP binding and a 90-day expiry for unbound keys",
          "Demo trading at api-demo.bybit.com with self-served demo funds, plus a testnet with its own keys",
          "VIP 0 fees published without login, 0.1 per cent spot and 0.02 per cent maker and 0.055 per cent taker on contracts"
        ],
        "weaknesses": [
          "No status page, incident history or SLA was found; the terms say the API is not guaranteed to be available",
          "No OpenAPI or llms.txt for the V5 API, and the MCP server exposes all 398 tools with no toolset, module or read-only switch",
          "Not in the official MCP registry; the hosted `bybit` entry there is a third party's server, not Bybit's",
          "The global terms, privacy policy and about pages on bybit.com render by script and were not read; the terms read are the UAE-regulated entity's PDF",
          "Changelog entries change response shapes and remove fields without a notice period, such as the Asset Overview restructure of 18 August 2026"
        ],
        "agentNotes": [
          "Create a key with only the permission groups the task needs, set readOnly for research keys, leave Withdraw off and bind an IP, or the key expires after 90 days",
          "Send a unique orderLinkId on every order and reuse it when amending or cancelling, since create-order is asynchronous and confirmed over WebSocket",
          "Read X-Bapi-Limit-Status before bursts and wait until X-Bapi-Limit-Reset-Timestamp on retCode 10006; on HTTP 403 stop all sessions for at least 10 minutes",
          "Test on api-demo.bybit.com with a demo key from the production account, not on testnet demo mode, which the docs call meaningless",
          "Run the MCP server with BYBIT_TESTNET=true first, and only in a client that shows a per-call approval, because the server has no read-only mode of its own"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 57.3
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 66,
          "payments": 40,
          "reliability": 45,
          "schema": 73,
          "security": 60,
          "transparency": 27
        },
        "provenanceScore": 75,
        "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": "npm install -g bybit-official-trading-server",
        "http": "curl https://api.bybit.com/v5/market/tickers?category=spot\u0026symbol=BTCUSDT",
        "claudeCode": "claude mcp add bybit -- npx -y bybit-official-trading-server@latest",
        "config": {
          "mcpServers": {
            "bybit": {
              "args": [
                "-y",
                "bybit-official-trading-server@latest"
              ],
              "command": "npx",
              "env": {
                "BYBIT_API_KEY": "YOUR_API_KEY",
                "BYBIT_API_SECRET": "YOUR_API_SECRET",
                "BYBIT_TESTNET": "true"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/exchange.market-data",
        "tool": "https://letme.dev/bybit"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Spot trade, VIP 0 maker or taker",
          "unit": "pct",
          "usd": 0.1,
          "note": "crypto-crypto pairs"
        },
        {
          "item": "Perpetual or futures trade, VIP 0 taker",
          "unit": "pct",
          "usd": 0.055,
          "note": "maker 0.02 per cent"
        },
        {
          "item": "Options trade, VIP 0 taker",
          "unit": "pct",
          "usd": 0.03,
          "note": "maker 0.02 per cent"
        }
      ],
      "provenance": {
        "legalEntity": "Bybit Virtual Asset Platform Operator L.L.C. S.P.C",
        "domain": "bybit.com",
        "domainRegistered": "1999-08-05",
        "endpointOnVendorDomain": true,
        "terms": "https://www.bybit.com/en/terms-service",
        "privacy": "https://www.bybit.com/en/privacy-policy",
        "statusPage": "",
        "changelog": "https://bybit-exchange.github.io/docs/changelog/v5",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "www.bybit.com answers WebFetch with a timeout; its robots.txt (read with curl) allows the help centre, legal and static paths and disallows query-string URLs and x-api endpoints. The terms and privacy pages render by script, so the terms read are the PDF at /common-static/compliance/legal/BYBIT/b2e1c94c53ee5e12e165919de919337e.pdf (Bybit Virtual Asset Platform Operator L.L.C. S.P.C, last updated 23 January 2026, English and Welsh law, SIAC arbitration). The privacy policy was not read.",
          "RDAP gives bybit.com a registration date of 5 August 1999 (CSC Corporate Domains), earlier than the company, so the domain was bought.",
          "https://www.bybit.com/.well-known/security.txt answers 404. bybit-exchange.github.io has no robots.txt and no security.txt.",
          "No status page found; status.bybit.com does not resolve, the docs link none, and a search found only third-party monitors.",
          "The V5 changelog is dated by day; the MCP server's versions are on npm. The P2P service terms on bybit.com name Bybit Technology Limited as the company."
        ],
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bybit.json",
      "live": {
        "slug": "bybit",
        "versions": [
          {
            "registry": "github",
            "name": "bybit-exchange/trading-mcp",
            "version": "2.1.26",
            "released": "2026-10-30",
            "seenAt": "2026-11-04T20:04:41.294958912Z"
          },
          {
            "registry": "npm",
            "name": "bybit-official-trading-server",
            "version": "2.1.26",
            "seenAt": "2026-11-04T20:04:40.287082189Z"
          },
          {
            "registry": "pypi",
            "name": "pybit",
            "version": "5.17.0",
            "released": "2026-07-14",
            "seenAt": "2026-11-04T20:04:41.10004853Z"
          }
        ],
        "githubStars": 43,
        "npmWeekly": 1294,
        "pypiWeekly": 97932,
        "securityTxt": {
          "url": "https://bybit.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:54:01.70982249Z"
        },
        "updatedAt": "2026-11-04T20:04:41.294958912Z"
      }
    },
    "edges": [
      {
        "by": 40,
        "category": "reliability",
        "leads": "bitfinex",
        "name": "Reliability",
        "reasons": {
          "a": "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.",
          "b": "Graded with the hosted lines on the V5 API at api.bybit.com. No status page found (status.bybit.com does not resolve, the docs link none), so 0 for the page and 5 for no readable history. Rate limits are published per endpoint and per UID with numbers, plus a 600 per 5 second IP limit (15). Every response carries X-Bapi-Limit, X-Bapi-Limit-Status and X-Bapi-Limit-Reset-Timestamp, retCode 10006 and HTTP 403 are documented with a wait rule, and orders take a unique orderLinkId that amend and cancel accept (15). No SLA (0). V5 is the current production API, not a beta (10). 45."
        },
        "scores": {
          "a": 85,
          "b": 45
        }
      },
      {
        "by": 25,
        "category": "schema",
        "leads": "bybit",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "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.",
          "b": "No OpenAPI or other machine-readable contract for the REST API; the MCP server's 398 tools have zod schemas turned into JSON Schema, so the contract exists for the MCP surface only (12 of 25). No llms.txt; the docs are a public Docusaurus repository (bybit-exchange/docs) whose MDX source an agent can read (5 of 10). The MCP tool descriptions state purpose, rules and an agent hint per tool, and the API reference gives one page per endpoint (15 of 20). Parameters are typed with enums such as category and orderType and required flags (12 of 15). Request and response examples on each endpoint page and an error code page of about 750 codes with text (14 of 15). A dated changelog with 24 entries in the last 90 days, versioned V3 to V5 (15). 73."
        },
        "scores": {
          "a": 48,
          "b": 73
        }
      },
      {
        "by": 25,
        "category": "maintenance",
        "leads": "bybit",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "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.",
          "b": "Read as a hosted service with an open-source MCP server. The MCP package shipped 2.1.26 on 30 October 2026 and the V5 changelog's latest entry is 29 October (30). 31 npm versions since 16 April 2026, 11 of them in the last 90 days, and 24 changelog entries in the same window (20). The trading-mcp repository has 4 open issues and 18 forks; whether issues get answers was not checked, and the API has no public forum we could read (10 of 25). Not in the official MCP registry (0). The package has four dependencies, no install scripts, a publish workflow and no test workflow (6 of 10). 66."
        },
        "scores": {
          "a": 41,
          "b": 66
        }
      },
      {
        "by": 5,
        "category": "ergonomics",
        "leads": "bybit",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "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.",
          "b": "Read for the API with the MCP server beside it. The MCP server has 398 tools in one list with no toolset, module or read-only switch (5 of 25, nothing added back). V5 reads take limit and cursor and category filters (15 of 20). retCode and retMsg on every response with a code list an agent can branch on, though create-order answers before the order is final and the docs say to confirm over WebSocket (14 of 20). orderLinkId makes order retries safe and every MCP tool carries readOnlyHint and destructiveHint (17 of 20). Five required fields on an order, official SDKs in Python, Go, Java and .NET (15). 66."
        },
        "scores": {
          "a": 61,
          "b": 66
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "iFinex Inc.",
        "b": "Bybit",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "stdio",
        "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": "Proprietary 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.0",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "398",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-07-18",
        "b": "2026-10-30",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "480 stars",
        "b": "43 stars",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Bitfinex API scores 58.4 (C) on agent readiness against Bybit's 57.3 (C), and leads in 2 of 7 scored categories. Bybit leads on schema \u0026 documentation, agent ergonomics and maintenance \u0026 community.",
        "question": "Which is better for AI agents, Bitfinex API or Bybit?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Bitfinex API and Bybit need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Bitfinex API. Bybit runs on your own machine, with no hosted endpoint listed.",
        "question": "Can an agent call Bitfinex API and Bybit without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 85 against 45"
        ],
        "also": null,
        "goodFor": "An agent trading spot, margin or derivatives, or lending on the funding market, with scoped keys, official clients and paper trading.",
        "slug": "bitfinex",
        "watchFor": "No official MCP server, OpenAPI file or AsyncAPI file; the registry's Bitfinex servers are third parties proxying public market data"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 73 against 48",
          "Agent ergonomics, 66 against 61",
          "Maintenance \u0026 community, 66 against 41"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "An agent trading spot, perpetuals, futures and options in a person's Bybit account outside the excluded jurisdictions, with a demo environment to rehearse on.",
        "slug": "bybit",
        "watchFor": "No status page, incident history or SLA was found; the terms say the API is not guaranteed to be available"
      }
    ],
    "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-bithumb.json",
        "title": "Bitfinex API vs Bithumb Open API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-bithumb"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-bitstamp.json",
        "title": "Bitfinex API vs Bitstamp API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-bitstamp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-coinbase-advanced-trade.json",
        "title": "Bitfinex API vs Coinbase Advanced Trade API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-coinbase-advanced-trade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-coinbase-mcp.json",
        "title": "Bitfinex API vs Coinbase MCP server (Coinbase for Agents)",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-coinbase-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-crypto-com-exchange.json",
        "title": "Bitfinex API vs Crypto.com Exchange API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-crypto-com-exchange"
      },
      {
        "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/bitfinex-vs-dydx.json",
        "title": "Bitfinex API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-gate-io.json",
        "title": "Bitfinex API vs Gate",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-gemini-exchange.json",
        "title": "Bitfinex API vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-htx.json",
        "title": "Bitfinex API vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-hyperliquid.json",
        "title": "Bitfinex API vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-kraken.json",
        "title": "Bitfinex API vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-kucoin.json",
        "title": "Bitfinex API vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-mexc.json",
        "title": "Bitfinex API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-okx.json",
        "title": "Bitfinex API vs OKX API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-uniswap.json",
        "title": "Bitfinex API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-upbit.json",
        "title": "Bitfinex API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-upbit"
      },
      {
        "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/bithumb-vs-bybit.json",
        "title": "Bithumb Open API vs Bybit",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-bybit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-bybit.json",
        "title": "Bitstamp API vs Bybit",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-bybit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-coinbase-advanced-trade.json",
        "title": "Bybit vs Coinbase Advanced Trade API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-coinbase-advanced-trade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-coinbase-mcp.json",
        "title": "Bybit vs Coinbase MCP server (Coinbase for Agents)",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-coinbase-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-crypto-com-exchange.json",
        "title": "Bybit vs Crypto.com Exchange API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-crypto-com-exchange"
      },
      {
        "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/bybit-vs-dydx.json",
        "title": "Bybit vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-gate-io.json",
        "title": "Bybit vs Gate",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-gemini-exchange.json",
        "title": "Bybit vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-htx.json",
        "title": "Bybit vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-hyperliquid.json",
        "title": "Bybit vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-kraken.json",
        "title": "Bybit vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-kucoin.json",
        "title": "Bybit vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-mexc.json",
        "title": "Bybit vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-okx.json",
        "title": "Bybit vs OKX API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-uniswap.json",
        "title": "Bybit vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-upbit.json",
        "title": "Bybit vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-bitfinex.json",
        "title": "Binance API vs Bitfinex API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-bitfinex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-bybit.json",
        "title": "Binance API vs Bybit",
        "url": "https://www.anchorterminal.com/compare/binance-vs-bybit"
      }
    ],
    "panel": null,
    "scores": [
      {
        "bitfinex": 85,
        "by": 40,
        "bybit": 45,
        "edge": "bitfinex",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "bitfinex": 48,
        "by": 25,
        "bybit": 73,
        "edge": "bybit",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "bitfinex": 61,
        "by": 5,
        "bybit": 66,
        "edge": "bybit",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "bitfinex": 62,
        "by": 2,
        "bybit": 60,
        "edge": "bitfinex",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "bitfinex": 40,
        "by": 0,
        "bybit": 40,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "bitfinex": 41,
        "by": 25,
        "bybit": 66,
        "edge": "bybit",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "bitfinex": 49,
        "by": 2,
        "bybit": 51,
        "edge": "bybit",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Bitfinex API scores 58.4 (C) on agent readiness against Bybit's 57.3 (C), and leads in 2 of 7 scored categories. Bybit leads on schema \u0026 documentation, agent ergonomics and maintenance \u0026 community. Both do exchange market data.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "bitfinex": "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.",
      "bybit": "Bybit publishes per-endpoint rate limits, a demo environment, scoped keys with a read-only flag and IP binding, and an official stdio MCP server whose 398 tools carry read-only and destructive annotations. There is no status page, no OpenAPI file, no SLA, the MCP server has no toolsets, and the global terms and privacy pages are drawn by script."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bitfinex-vs-bybit",
    "json": "https://www.anchorterminal.com/compare/bitfinex-vs-bybit.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bitfinex-vs-bybit.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/bitfinex-vs-bybit.min.md"
  },
  "markdown": "Bitfinex API scores 58.4 (C) on agent readiness against Bybit's 57.3 (C), and leads in 2 of 7 scored categories. Bybit leads on schema \u0026 documentation, agent ergonomics and maintenance \u0026 community. Both do exchange market data.\n\n- Bitfinex API: grade C, 58.4/100, rank #675 of 1349. Markdown https://www.anchorterminal.com/tools/bitfinex.md · JSON https://www.anchorterminal.com/api/v1/tools/bitfinex.json\n- Bybit: grade C, 57.3/100, rank #712 of 1349. Markdown https://www.anchorterminal.com/tools/bybit.md · JSON https://www.anchorterminal.com/api/v1/tools/bybit.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### Bitfinex API (C)\n\nGood for: An agent trading spot, margin or derivatives, or lending on the funding market, with scoped keys, official clients and paper trading.\n\nAhead on:\n- Reliability, 85 against 45\n\nWatch for: No official MCP server, OpenAPI file or AsyncAPI file; the registry's Bitfinex servers are third parties proxying public market data\n\n### Bybit (C)\n\nGood for: An agent trading spot, perpetuals, futures and options in a person's Bybit account outside the excluded jurisdictions, with a demo environment to rehearse on.\n\nAhead on:\n- Schema \u0026 documentation, 73 against 48\n- Agent ergonomics, 66 against 61\n- Maintenance \u0026 community, 66 against 41\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: No status page, incident history or SLA was found; the terms say the API is not guaranteed to be available\n\n\n## Why the edge\n\n### Reliability: Bitfinex API +40\n\n- 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.\n- Bybit (45): Graded with the hosted lines on the V5 API at api.bybit.com. No status page found (status.bybit.com does not resolve, the docs link none), so 0 for the page and 5 for no readable history. Rate limits are published per endpoint and per UID with numbers, plus a 600 per 5 second IP limit (15). Every response carries X-Bapi-Limit, X-Bapi-Limit-Status and X-Bapi-Limit-Reset-Timestamp, retCode 10006 and HTTP 403 are documented with a wait rule, and orders take a unique orderLinkId that amend and cancel accept (15). No SLA (0). V5 is the current production API, not a beta (10). 45.\n\n### Schema \u0026 documentation: Bybit +25\n\n- 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.\n- Bybit (73): No OpenAPI or other machine-readable contract for the REST API; the MCP server's 398 tools have zod schemas turned into JSON Schema, so the contract exists for the MCP surface only (12 of 25). No llms.txt; the docs are a public Docusaurus repository (bybit-exchange/docs) whose MDX source an agent can read (5 of 10). The MCP tool descriptions state purpose, rules and an agent hint per tool, and the API reference gives one page per endpoint (15 of 20). Parameters are typed with enums such as category and orderType and required flags (12 of 15). Request and response examples on each endpoint page and an error code page of about 750 codes with text (14 of 15). A dated changelog with 24 entries in the last 90 days, versioned V3 to V5 (15). 73.\n\n### Maintenance \u0026 community: Bybit +25\n\n- 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.\n- Bybit (66): Read as a hosted service with an open-source MCP server. The MCP package shipped 2.1.26 on 30 October 2026 and the V5 changelog's latest entry is 29 October (30). 31 npm versions since 16 April 2026, 11 of them in the last 90 days, and 24 changelog entries in the same window (20). The trading-mcp repository has 4 open issues and 18 forks; whether issues get answers was not checked, and the API has no public forum we could read (10 of 25). Not in the official MCP registry (0). The package has four dependencies, no install scripts, a publish workflow and no test workflow (6 of 10). 66.\n\n### Agent ergonomics: Bybit +5\n\n- 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.\n- Bybit (66): Read for the API with the MCP server beside it. The MCP server has 398 tools in one list with no toolset, module or read-only switch (5 of 25, nothing added back). V5 reads take limit and cursor and category filters (15 of 20). retCode and retMsg on every response with a code list an agent can branch on, though create-order answers before the order is final and the docs say to confirm over WebSocket (14 of 20). orderLinkId makes order retries safe and every MCP tool carries readOnlyHint and destructiveHint (17 of 20). Five required fields on an order, official SDKs in Python, Go, Java and .NET (15). 66.\n\n## Score by category\n\n| Category | Weight | Bitfinex API | Bybit | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 85 | 45 | Bitfinex API +40 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 48 | 73 | Bybit +25 |\n| Agent ergonomics | 13% (16.2 this run) | 61 | 66 | Bybit +5 |\n| Security \u0026 auth | 14% (17.5 this run) | 62 | 60 | Bitfinex API +2 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 40 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 41 | 66 | Bybit +25 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 49 | 51 | Bybit +2 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **58.4 · C** | **57.3 · C** | |\n\n## Facts side by side\n\n| Fact | Bitfinex API | Bybit |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | iFinex Inc. | Bybit |\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 | Proprietary 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.0 | none |\n| Tools exposed | none | 398 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | no |\n| Last release | 2026-07-18 | 2026-10-30 |\n| Terms last updated | couldn't be read | couldn't be read |\n| Privacy policy last updated | couldn't be read | couldn't be read |\n| Customer content may train models | couldn't be read | couldn't be read |\n| Terms restrict automated access | couldn't be read | couldn't be read |\n| Terms restrict benchmarking | couldn't be read | couldn't be read |\n| Terms or service can change without notice | couldn't be read | couldn't be read |\n| Arbitration or class-action waiver | couldn't be read | couldn't be read |\n| Popularity | 480 stars | 43 stars |\n\n## Verdicts\n\n**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.\n\n**Bybit.** Bybit publishes per-endpoint rate limits, a demo environment, scoped keys with a read-only flag and IP binding, and an official stdio MCP server whose 398 tools carry read-only and destructive annotations. There is no status page, no OpenAPI file, no SLA, the MCP server has no toolsets, and the global terms and privacy pages are drawn by script.\n\n## Before you call either\n\n### Bitfinex API\n\n1. 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\n2. Use one key per client process, since each key keeps its own strictly increasing nonce and a reused nonce is rejected\n3. Rehearse on a paper-trading sub-account with the TEST symbols before touching real balances; the sub-account cannot be converted later\n4. 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\n5. 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\n\n### Bybit\n\n1. Create a key with only the permission groups the task needs, set readOnly for research keys, leave Withdraw off and bind an IP, or the key expires after 90 days\n2. Send a unique orderLinkId on every order and reuse it when amending or cancelling, since create-order is asynchronous and confirmed over WebSocket\n3. Read X-Bapi-Limit-Status before bursts and wait until X-Bapi-Limit-Reset-Timestamp on retCode 10006; on HTTP 403 stop all sessions for at least 10 minutes\n4. Test on api-demo.bybit.com with a demo key from the production account, not on testnet demo mode, which the docs call meaningless\n5. Run the MCP server with BYBIT_TESTNET=true first, and only in a client that shows a per-call approval, because the server has no read-only mode of its own\n\n## Questions\n\n### Which is better for AI agents, Bitfinex API or Bybit?\n\nBitfinex API scores 58.4 (C) on agent readiness against Bybit's 57.3 (C), and leads in 2 of 7 scored categories. Bybit leads on schema \u0026 documentation, agent ergonomics and maintenance \u0026 community.\n\n### Do Bitfinex API and Bybit need an API key?\n\nBoth need an API key.\n\n### Can an agent call Bitfinex API and Bybit without installing anything?\n\nNo hosted endpoint is listed for Bitfinex API. Bybit runs on your own machine, with no hosted endpoint listed.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/bitfinex-vs-bybit.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bitfinex-vs-bybit.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"bitfinex\", \"b\": \"bybit\"}`. From a terminal: `anchor compare bitfinex bybit`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bitfinex.json and https://www.anchorterminal.com/api/v1/tools/bybit.json\n\n## Other comparisons with Bitfinex API or Bybit\n\n- [Bitfinex API vs Bitget](https://www.anchorterminal.com/compare/bitfinex-vs-bitget.md)\n- [Bitfinex API vs Bithumb Open API](https://www.anchorterminal.com/compare/bitfinex-vs-bithumb.md)\n- [Bitfinex API vs Bitstamp API](https://www.anchorterminal.com/compare/bitfinex-vs-bitstamp.md)\n- [Bitfinex API vs Coinbase Advanced Trade API](https://www.anchorterminal.com/compare/bitfinex-vs-coinbase-advanced-trade.md)\n- [Bitfinex API vs Coinbase MCP server (Coinbase for Agents)](https://www.anchorterminal.com/compare/bitfinex-vs-coinbase-mcp.md)\n- [Bitfinex API vs Crypto.com Exchange API](https://www.anchorterminal.com/compare/bitfinex-vs-crypto-com-exchange.md)\n- [Bitfinex API vs Deribit](https://www.anchorterminal.com/compare/bitfinex-vs-deribit.md)\n- [Bitfinex API vs dYdX](https://www.anchorterminal.com/compare/bitfinex-vs-dydx.md)\n- [Bitfinex API vs Gate](https://www.anchorterminal.com/compare/bitfinex-vs-gate-io.md)\n- [Bitfinex API vs Gemini Exchange API](https://www.anchorterminal.com/compare/bitfinex-vs-gemini-exchange.md)\n- [Bitfinex API vs HTX trading API](https://www.anchorterminal.com/compare/bitfinex-vs-htx.md)\n- [Bitfinex API vs Hyperliquid](https://www.anchorterminal.com/compare/bitfinex-vs-hyperliquid.md)\n- [Bitfinex API vs Kraken API](https://www.anchorterminal.com/compare/bitfinex-vs-kraken.md)\n- [Bitfinex API vs KuCoin](https://www.anchorterminal.com/compare/bitfinex-vs-kucoin.md)\n- [Bitfinex API vs MEXC API](https://www.anchorterminal.com/compare/bitfinex-vs-mexc.md)\n- [Bitfinex API vs OKX API](https://www.anchorterminal.com/compare/bitfinex-vs-okx.md)\n- [Bitfinex API vs Uniswap Trading API](https://www.anchorterminal.com/compare/bitfinex-vs-uniswap.md)\n- [Bitfinex API vs Upbit Open API](https://www.anchorterminal.com/compare/bitfinex-vs-upbit.md)\n- [Bitget vs Bybit](https://www.anchorterminal.com/compare/bitget-vs-bybit.md)\n- [Bithumb Open API vs Bybit](https://www.anchorterminal.com/compare/bithumb-vs-bybit.md)\n- [Bitstamp API vs Bybit](https://www.anchorterminal.com/compare/bitstamp-vs-bybit.md)\n- [Bybit vs Coinbase Advanced Trade API](https://www.anchorterminal.com/compare/bybit-vs-coinbase-advanced-trade.md)\n- [Bybit vs Coinbase MCP server (Coinbase for Agents)](https://www.anchorterminal.com/compare/bybit-vs-coinbase-mcp.md)\n- [Bybit vs Crypto.com Exchange API](https://www.anchorterminal.com/compare/bybit-vs-crypto-com-exchange.md)\n- [Bybit vs Deribit](https://www.anchorterminal.com/compare/bybit-vs-deribit.md)\n- [Bybit vs dYdX](https://www.anchorterminal.com/compare/bybit-vs-dydx.md)\n- [Bybit vs Gate](https://www.anchorterminal.com/compare/bybit-vs-gate-io.md)\n- [Bybit vs Gemini Exchange API](https://www.anchorterminal.com/compare/bybit-vs-gemini-exchange.md)\n- [Bybit vs HTX trading API](https://www.anchorterminal.com/compare/bybit-vs-htx.md)\n- [Bybit vs Hyperliquid](https://www.anchorterminal.com/compare/bybit-vs-hyperliquid.md)\n- [Bybit vs Kraken API](https://www.anchorterminal.com/compare/bybit-vs-kraken.md)\n- [Bybit vs KuCoin](https://www.anchorterminal.com/compare/bybit-vs-kucoin.md)\n- [Bybit vs MEXC API](https://www.anchorterminal.com/compare/bybit-vs-mexc.md)\n- [Bybit vs OKX API](https://www.anchorterminal.com/compare/bybit-vs-okx.md)\n- [Bybit vs Uniswap Trading API](https://www.anchorterminal.com/compare/bybit-vs-uniswap.md)\n- [Bybit vs Upbit Open API](https://www.anchorterminal.com/compare/bybit-vs-upbit.md)\n- [Binance API vs Bitfinex API](https://www.anchorterminal.com/compare/binance-vs-bitfinex.md)\n- [Binance API vs Bybit](https://www.anchorterminal.com/compare/binance-vs-bybit.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": "Bitfinex API vs Bybit",
        "url": ""
      }
    ],
    "description": "Bitfinex scores 58.4 (C) to Bybit's 57.3 (C) for exchange market data. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Bitfinex API C 58.4",
      "Bybit C 57.3",
      "scores"
    ],
    "h1": "Bitfinex API vs Bybit",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/bitfinex-vs-bybit",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Bitfinex vs Bybit for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-04",
    "url": "https://www.anchorterminal.com/compare/bitfinex-vs-bybit"
  },
  "tokens": {
    "markdown": 4300,
    "slim": 2030
  },
  "version": 1
}
