{
  "data": {
    "a": {
      "slug": "gemini-exchange",
      "name": "Gemini Exchange API",
      "vendor": "Gemini Trust Company, LLC",
      "vendorUrl": "https://developer.gemini.com",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Gemini's exchange API for spot, margin, perpetuals, prediction markets and staking, through REST, WebSocket and FIX, with API key roles or OAuth, plus an official MCP server and SDKs from its developer-platform repository.",
      "url": "https://www.anchorterminal.com/tools/gemini-exchange",
      "markdownUrl": "https://www.anchorterminal.com/tools/gemini-exchange.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/gemini-exchange.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/gemini-exchange.json",
      "dns": "gemini-exchange.grade.anchorterminal.com",
      "repo": "https://github.com/gemini/developer-platform",
      "license": "Proprietary hosted API under Gemini's user agreement. The developer-platform repository (MCP server, TypeScript and Go SDKs, samples and skills) is Apache-2.0",
      "transports": [
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@gemini-markets/sdk"
        }
      ],
      "auth": "mixed",
      "authNotes": "API key and secret made at exchange.gemini.com/settings/api after a browser signup with identity checks, sent as X-GEMINI-APIKEY, X-GEMINI-PAYLOAD (base64 JSON with a nonce) and X-GEMINI-SIGNATURE (HMAC-SHA384). Keys carry one role, Trader by default, Fund Manager for withdrawals and transfers, Auditor read-only, Administrator for master keys only, and a `master-` key reaches subaccounts. A key can require a heartbeat that cancels its session's orders after 30 seconds of silence. OAuth 2.0 (authorisation code, PKCE S256 for public clients, 24-hour access tokens, single-use refresh tokens, RFC 7009 revocation) is open in the sandbox at once and reviewed by Gemini before production. No IP allow-list was found in the docs (https://developer.gemini.com/roles, https://developer.gemini.com/authentication/api-key, https://developer.gemini.com/authentication/oauth, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API itself costs nothing. Trades pay the API fee schedule, effective 1 September 2026, 0.600% maker and 1.200% taker at the base tier (under $10,000 of 30-day volume), falling to 0.000% maker and 0.020% taker above $250M. Stablecoin pairs 0.00% maker and 0.01% taker. Derivatives from 0.02% maker and 0.07% taker, charged in GUSD. Liquidations 0.5%. The sandbox at api.sandbox.gemini.com credits each new account with test funds and needs no card (https://www.gemini.com/fees/api-fee-schedule, https://developer.gemini.com/get-started/sandbox, checked 2026-11-03).",
      "priceSummary": "0.6% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, llms.txt, agents.md, the OpenAPI catalogue or the fee schedule (checked 2026-11-03). Trading fees are taken from the account; onboarding is a browser signup.",
        "endpoints": []
      },
      "toolCount": 87,
      "popularity": {
        "githubStars": 8,
        "npmWeekly": 99,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://developer.gemini.com",
      "llmsTxt": "https://developer.gemini.com/llms.txt",
      "openapi": "https://developer.gemini.com/specs/openapi/rest.yaml",
      "capabilities": [
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.derivatives",
        "exchange.balances",
        "exchange.transfers",
        "exchange.staking",
        "market.crypto"
      ],
      "tags": [
        "official",
        "hosted",
        "api-key",
        "oauth",
        "mcp",
        "llms-txt",
        "openapi",
        "sandbox",
        "status-page",
        "bug-bounty",
        "typescript",
        "go",
        "usage-priced"
      ],
      "lastRelease": "2026-10-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 74.6,
        "grade": "BB",
        "agentReady": true,
        "rank": 70,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 1,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 79,
          "maintenance": 88,
          "payments": 40,
          "reliability": 73,
          "schema": 88,
          "security": 78,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Gemini publishes an OpenAPI and AsyncAPI contract, API key roles that keep withdrawals off a trading key, a funded sandbox, and an official MCP server whose tools carry read-only and destructive annotations and a confirm gate. Client order ids are not checked for duplicates, there is no SLA, and UK, EEA and Australian accounts closed in April 2026.",
        "bestFor": "An agent trading spot, perpetuals or prediction markets for a US customer with a role-limited key and a sandbox to rehearse on.",
        "strengths": [
          "Key roles enforce least privilege, since Trader cannot withdraw, Fund Manager cannot trade, Auditor is read-only, and a 403 `MissingRole` names the role an endpoint needs",
          "Official MCP server with readOnlyHint and destructiveHint on every tool, a `confirm: true` gate on funds-moving tools, untrusted-output framing and redaction of free-text fields",
          "OpenAPI 3 and AsyncAPI files, llms.txt, llms-full.txt, agents.md, an agent card and an error-codes page with 53 named reasons",
          "A sandbox with the same REST, WebSocket and FIX surfaces, test balances on signup and a documented 2FA bypass for automated tests",
          "Fee schedule published per tier without login, and a Statuspage feed with component-level incidents"
        ],
        "weaknesses": [
          "Client order ids are only recommended to be unique and no duplicate rejection is documented, so a retried order can execute twice",
          "No Retry-After, backoff guidance or SLA; 429 continues until the rate drops, and the upcoming-changes page reads \"TBD\"",
          "The MCP server lists 87 tools with no toolset or read-only subset switch, which costs context on every session",
          "The hosted MCP address in the repository's plugin manifest is on no docs page and gave no complete answer to a GET",
          "Accounts in the United Kingdom, the EEA and Australia closed on 6 April 2026, and the availability page still lists those countries"
        ],
        "agentNotes": [
          "Create a Trader key for order flow and a separate Fund Manager key only if withdrawals are in scope; never combine them, and keep the secret out of prompts and logs",
          "Set a `client_order_id` per order and look it up with `get_order_status` before resending after a timeout, because Gemini does not reject duplicates",
          "Start on api.sandbox.gemini.com with the same code; sandbox apps register at once, production OAuth apps wait for Gemini's review",
          "Stay under 1 public and 5 private requests a second; a 429 keeps answering 429 until the rate falls, with no Retry-After to read",
          "Check the person's country against the availability page first; UK, EEA and Australian accounts were closed on 6 April 2026"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 74.6
          }
        ],
        "editorialScores": {
          "ergonomics": 79,
          "maintenance": 88,
          "payments": 40,
          "reliability": 73,
          "schema": 88,
          "security": 78,
          "transparency": 54
        },
        "provenanceScore": 95,
        "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 @gemini-markets/sdk",
        "http": "curl https://api.gemini.com/v1/pubticker/btcusd",
        "claudeCode": "claude mcp add gemini -s user -e GEMINI_API_KEY=your_key -e GEMINI_API_SECRET=your_secret -- node /absolute/path/to/mcp-server/dist/index.js",
        "config": {
          "mcpServers": {
            "gemini": {
              "args": [
                "/absolute/path/to/mcp-server/dist/index.js"
              ],
              "command": "node",
              "env": {
                "GEMINI_ACCOUNT": "primary",
                "GEMINI_API_KEY": "your_api_key_here",
                "GEMINI_API_SECRET": "your_api_secret_here",
                "GEMINI_WS_URL": "wss://ws.gemini.com"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/exchange.market-data",
        "tool": "https://letme.dev/gemini-exchange"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Spot maker fee, base tier (under $10,000 of 30-day volume)",
          "unit": "pct",
          "usd": 0.6,
          "note": "API fee schedule effective 1 September 2026"
        },
        {
          "item": "Spot taker fee, base tier",
          "unit": "pct",
          "usd": 1.2,
          "note": "falls to 0.02% above $250M of 30-day volume"
        },
        {
          "item": "Derivatives taker fee, base tier",
          "unit": "pct",
          "usd": 0.07,
          "note": "maker 0.02%, charged in GUSD"
        }
      ],
      "provenance": {
        "legalEntity": "Gemini Trust Company, LLC",
        "domain": "gemini.com",
        "domainRegistered": "1994-02-14",
        "endpointOnVendorDomain": true,
        "terms": "https://www.gemini.com/legal/user-agreement",
        "privacy": "https://www.gemini.com/legal/privacy-policy",
        "statusPage": "https://status.gemini.com",
        "changelog": "https://developer.gemini.com/changelog/revision-history",
        "securityTxt": "valid",
        "checked": "2026-11-03",
        "notes": [
          "The user agreement page of 19 February 2026 names Gemini Trust Company, LLC and Gemini Moonbase, LLC by state of residence; the privacy policy of 11 May 2026 lists the affiliates by region. The SEC's submissions record names the parent Gemini Space Station, Inc., Nasdaq GEMI.",
          "RDAP gives gemini.com a registration date of 14 February 1994.",
          "https://www.gemini.com/.well-known/security.txt is a PGP-signed file with Contact psirt@gemini.com, a bug bounty policy with payouts from $150 to $20,000 and a sandbox-only scope, but no Expires line.",
          "www.gemini.com/robots.txt allows the pages read and sets Crawl-delay 600; developer.gemini.com and status.gemini.com allow all (the status site disallows /api/ and /embed/, so the history feed was read, not the incidents API). support.gemini.com answered 403 to an article fetch.",
          "status.gemini.com is a Statuspage site with an Atom history feed."
        ],
        "score": 95
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/gemini-exchange.json",
      "live": {
        "slug": "gemini-exchange",
        "vendorStatus": {
          "page": "https://status.gemini.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-04T20:05:13.096728861Z"
        },
        "securityTxt": {
          "url": "https://gemini.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-11-04T15:53:25.749980755Z"
        },
        "updatedAt": "2026-11-04T20:05:13.096728861Z"
      }
    },
    "answer": "Gemini Exchange API scores 74.6 (BB) on agent readiness against MEXC API's 56.3 (C), and leads in every scored category.",
    "b": {
      "slug": "mexc",
      "name": "MEXC API",
      "vendor": "MEXC (Comoros) Ltd",
      "vendorUrl": "https://www.mexc.com/mexc-api",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "MEXC's spot and futures API gives programmatic access to market data, orders, balances, transfers and withdrawals over REST and WebSocket, with an official command-line tool that also runs as a local MCP server for AI agents.",
      "url": "https://www.anchorterminal.com/tools/mexc",
      "markdownUrl": "https://www.anchorterminal.com/tools/mexc.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mexc.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mexc.json",
      "dns": "mexc.grade.anchorterminal.com",
      "repo": "https://github.com/mexcdevelop",
      "transports": [
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@mexc-ai/cli"
        }
      ],
      "auth": "api-key",
      "authNotes": "API keys made at mexc.com/user/openapi after a browser sign-up; the futures API also needs identity verification. The key goes in the X-MEXC-APIKEY header and signed endpoints carry an HMAC SHA256 signature with a timestamp and a recvWindow of up to 60 seconds. Permissions are granular (SPOT_ACCOUNT_READ, SPOT_DEAL_WRITE, SPOT_WITHDRAW_WRITE, SPOT_TRANSFER_WRITE and the futures equivalents), a key can be limited to chosen trading pairs and linked to up to 10 IP addresses, and a key with no linked IP is valid for 90 days and can be renewed for 90 more from 5 days before expiry. Up to 30 keys per account (https://www.mexc.com/api-docs/spot-v3/introduction, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "Trading fees per fill. MEXC's own fee guide of 20 October 2026 gives spot 0 per cent maker and 0.05 per cent taker (0.04 per cent with MX deduction), futures from 0 per cent maker and 0.02 per cent taker on BTCUSDT to 0.01 and 0.04 per cent on standard contracts, and a separate API futures schedule of 0.06 per cent maker and 0.08 per cent taker since 1 June 2026. Zero-fee campaigns and MX discounts don't apply to API trading. The fee page itself is drawn by script. Market data needs no key (https://www.mexc.com/learn/article/17827791510370, checked 2026-11-03).",
      "priceSummary": "0.05% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the CLI docs, llms.txt or the terms (checked 2026-11-03). Fees are taken from each fill.",
        "endpoints": []
      },
      "toolCount": 299,
      "popularity": {
        "githubStars": 315,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://www.mexc.com/api-docs/spot-v3/introduction",
      "llmsTxt": "https://www.mexc.com/llms.txt",
      "capabilities": [
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.derivatives",
        "exchange.balances",
        "exchange.transfers",
        "market.crypto"
      ],
      "tags": [
        "hosted",
        "api-key",
        "closed-source",
        "usage-priced",
        "mcp",
        "cli",
        "agent-skills",
        "read-only-mode",
        "llms-txt",
        "python",
        "java",
        "go",
        "no-status-page"
      ],
      "lastRelease": "2026-10-23",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 56.3,
        "grade": "C",
        "agentReady": false,
        "rank": 791,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 13,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 75,
          "payments": 31,
          "reliability": 43,
          "schema": 64,
          "security": 65,
          "transparency": 58
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "MEXC publishes granular key permissions, per-pair key limits, weighted rate limits with Retry-After and a dated changelog, and its official CLI runs a read-only-capable MCP server with confirmation before any fund movement. There is no sandbox or status page, API futures orders pay a higher fee schedule, and the user agreement excludes the US, UK, EU members and others.",
        "bestFor": "Spot and futures for agents in served countries that want a vendor-built MCP server with read-only and confirmation modes.",
        "strengths": [
          "Granular key permissions (account read, trade, withdraw, transfer), per-pair restriction, up to 10 linked IPs and a 90-day expiry for unbound keys",
          "An official MCP mode in the `@mexc-ai/cli` tool with `--read-only`, a read-only market subset of 22 tools and a confirmation step before orders and transfers",
          "Rate limits published as weight buckets per IP and UID, with Retry-After on 429 and 418",
          "A dated changelog of 72 spot and 26 futures entries, the newest 23 October 2026",
          "Fees published on MEXC's own pages, with the API futures schedule stated separately"
        ],
        "weaknesses": [
          "No sandbox or testnet; only an order-validation endpoint",
          "No status page, incident history or SLA",
          "The MCP server is local only, not in the official MCP registry, and the CLI is UNLICENSED with no public source",
          "API futures orders pay 0.06 per cent maker and 0.08 per cent taker, and zero-fee campaigns exclude API trading",
          "The user agreement bars users in the United States, the United Kingdom, Mainland China, Singapore, Hong Kong, Canada, France and other jurisdictions"
        ],
        "agentNotes": [
          "Use a key limited to SPOT_ACCOUNT_READ and SPOT_DEAL_WRITE, the pairs you trade and your IP addresses; keys without a linked IP expire after 90 days",
          "Start the MCP server as `mexc mcp spot --read-only` unless the task trades, and never pass `--yes`; orders and transfers wait for the person's confirmation",
          "Call POST /api/v3/order/test before a live order, since there is no sandbox",
          "On 429 or 418 wait for Retry-After; order placement and cancellation share 12 requests a second per UID, and repeated breaches ban the IP for up to 3 days",
          "Treat a 5xx on an order as unknown, not failed, and query the order before retrying; set newClientOrderId so the order can be found"
        ],
        "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": 56.3
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 75,
          "payments": 31,
          "reliability": 43,
          "schema": 64,
          "security": 65,
          "transparency": 38
        },
        "provenanceScore": 78,
        "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 @mexc-ai/cli",
        "http": "curl 'https://api.mexc.com/api/v3/ticker/price?symbol=BTCUSDT'",
        "config": {
          "mcpServers": {
            "mexc-spot": {
              "args": [
                "mcp",
                "spot",
                "--read-only"
              ],
              "command": "mexc"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/exchange.market-data",
        "tool": "https://letme.dev/mexc"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Spot taker fee",
          "unit": "pct",
          "usd": 0.05,
          "note": "maker 0 per cent; 0.04 per cent with MX deduction, not for API trading"
        },
        {
          "item": "API futures taker fee",
          "unit": "pct",
          "usd": 0.08,
          "note": "maker 0.06 per cent, since 1 June 2026, outside the Innovation Zone"
        }
      ],
      "provenance": {
        "legalEntity": "MEXC (Comoros) Ltd",
        "domain": "mexc.com",
        "domainRegistered": "2000-02-27",
        "endpointOnVendorDomain": true,
        "terms": "https://www.mexc.com/terms",
        "privacy": "https://www.mexc.com/privacypolicy",
        "statusPage": "",
        "changelog": "https://www.mexc.com/api-docs/spot-v3/change-log",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "MEXC (Comoros) Ltd is named in the user agreement, last updated 13 October 2026, with a registered address in Mutsamudu, Anjouan. The privacy policy, last updated 1 June 2026, names no entity.",
          "RDAP gives mexc.com a registration date of 27 February 2000; the exchange says it began in 2018, so the domain predates it.",
          "www.mexc.com/robots.txt allows the root and disallows /user/, /orders/ and some locale paths; it lists llms.txt as a sitemap. mexcdevelop.github.io has no robots.txt.",
          "https://www.mexc.com/.well-known/security.txt answered 404. status.mexc.com does not resolve; no status page was found.",
          "The fee page at mexc.com/fee is drawn by script; the fee figures come from MEXC's own fee guide and a 2024 announcement."
        ],
        "score": 78
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mexc.json",
      "live": {
        "slug": "mexc",
        "securityTxt": {
          "url": "https://mexc.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:54:36.213483882Z"
        },
        "updatedAt": "2026-11-04T15:54:36.213483882Z"
      }
    },
    "edges": [
      {
        "by": 30,
        "category": "reliability",
        "leads": "gemini-exchange",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the hosted lines on the REST API at api.gemini.com. status.gemini.com is a Statuspage site with component history (20). Its Atom feed for 10 September to 3 November 2026 holds 25 entries, mostly scheduled trading and FIX upgrades of 15 to 60 minutes with possible order timeouts, single-network deposit delays, and incorrect perpetual index prices for about 3.5 hours on 15 and 16 October; a 3-hour scheduled eOTC window was planned and outside the core API. Minor only (20). Rate limits with numbers, 120 a minute public and 600 private plus per-endpoint limits (15). 429 is documented but with no Retry-After or backoff guidance, and client order ids are recommended without duplicate rejection, so retries are not safe by contract; the heartbeat cancel is a safety net rather than idempotency (8 of 15). No SLA found (0). Generally available (10). 20 + 20 + 15 + 8 + 0 + 10 = 73.",
          "b": "Read with the hosted lines. No status page found; status.mexc.com does not resolve and llms.txt points to a maintenance-updates feed (0). No readable incident history (5). Rate limits documented with numbers, 300 weight per 10 seconds per IP, 500 per UID, 12 order requests a second per UID, 100 WebSocket messages a second (15). 429 and 418 carry Retry-After with ban lengths stated, a 5xx is to be treated as unknown rather than failed, an order-test endpoint exists, and newClientOrderId is optional with no idempotency promise (13 of 15). No SLA found (0). Spot and futures are generally available, futures order placement having reopened on 31 March 2026 after being closed since July 2022 (10). 0 + 5 + 15 + 13 + 0 + 10 = 43."
        },
        "scores": {
          "a": 73,
          "b": 43
        }
      },
      {
        "by": 24,
        "category": "schema",
        "leads": "gemini-exchange",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI 3 for REST (specs/openapi/rest.yaml), AsyncAPI for WebSocket, a prediction-markets OpenAPI file and a specs/index.json catalogue; the MCP server's tools take zod schemas published as JSON Schema (25). llms.txt, llms-full.txt, agents.md, an agent card and an agent skills index (10). Endpoint pages state purpose, the Build an agent guide says what to establish before acting and when to stop, and MCP tool descriptions tell the model when to confirm; the docs don't say when not to use an endpoint (15 of 20). Typed inputs with enums for order types, options and sessions, required fields marked, decimals as strings since 7 July 2026 (12 of 15). Examples throughout, samples in three languages, and an error-codes page with 53 named reasons and their HTTP statuses (14 of 15). A revision history dated from 2015 to 28 October 2026 and versioned paths (v1, v2), but the upcoming-changes page reads \"TBD\" (12 of 15). 25 + 10 + 15 + 12 + 14 + 12 = 88.",
          "b": "No OpenAPI found; a Postman collection and the CLI's 25 capability reference files are the nearest machine-readable contract (5 of 25). llms.txt on mexc.com, written for assistants and pointing at the API docs and legal pages (7 of 10). Per-endpoint pages with purpose, parameters and permissions, without when-not-to-use guidance (13 of 20). Typed parameters with enums for order types, statuses and intervals (11 of 15). Examples on each endpoint and a separate error-code page with numeric codes and messages (13 of 15). Versioned API (v3) with a dated changelog of 72 entries to 23 October 2026 (15). 5 + 7 + 13 + 11 + 13 + 15 = 64."
        },
        "scores": {
          "a": 88,
          "b": 64
        }
      },
      {
        "by": 17,
        "category": "transparency",
        "leads": "gemini-exchange",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "The editorial half. A closed service under a user agreement that names its entities by state, with the MCP server and SDKs open under Apache-2.0 (18 of 30). The privacy policy of 11 May 2026 names entities and processing countries, ties retention to need without numbers and names provider categories only, with no DPA or subprocessor list found (16 of 30). The revision history records removals and type changes with dates, but the upcoming-changes page is \"TBD\" and no notice period is stated (8 of 20). Processing countries are named (US, Ireland, UK, Malta, Singapore, Australia) and providers by category, with no named subprocessors (12 of 20). 18 + 16 + 8 + 12 = 54.",
          "b": "The editorial half. A closed service with a dated user agreement naming MEXC (Comoros) Ltd; the CLI is UNLICENSED on npm (15 of 30). The privacy policy names no entity, states no retention periods and relies on standard contractual clauses for transfers (10 of 30). The changelog flags endpoints as \"will be discontinued soon\" without dates and the futures log records removals (8 of 20). Third parties are named by category only, with no subprocessor list or data locations (5 of 20). 15 + 10 + 8 + 5 = 38."
        },
        "scores": {
          "a": 75,
          "b": 58
        }
      },
      {
        "by": 15,
        "category": "ergonomics",
        "leads": "gemini-exchange",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Graded on the REST API, with the MCP server noted. Order book depth, trade and candle counts can be limited and symbols filtered; the MCP server lists 87 tools with no toolset or read-only subset switch, so a session that loads it pays for all of them (18 of 25). Timestamps, `limit_trades`, `since` and per-symbol filters on history, pagination on prediction-market lists (16 of 20). Errors carry a reason and message an agent can branch on, such as InsufficientFunds, MarketNotOpen and MissingRole, though some messages only say to retry later (16 of 20). client_order_id is echoed back but not checked for duplicates, cancel-all-session-orders and the heartbeat limit damage; the MCP server publishes readOnlyHint and destructiveHint on every tool and gates destructive ones on `confirm: true` (14 of 20). Few required parameters, sensible defaults, and official TypeScript and Go SDKs (15). 18 + 16 + 16 + 14 + 15 = 79.",
          "b": "Graded on the REST API with the CLI's MCP mode. Responses take limit parameters and the MCP read-only market subset is 22 tools, but a full spot MCP category lists 123 tools (15 of 25). startTime, endTime and limit on history, symbol filters on open orders (14 of 20). Numeric codes with messages, a 30035 order-limit code added 23 October 2026, 5xx guidance (14 of 20). newClientOrderId is optional with no idempotency guarantee; the CLI adds --dry-run and a confirmation step (10 of 20). Few required parameters; SDKs in five languages whose repository was last pushed in February 2024 (11 of 15). 15 + 14 + 14 + 10 + 11 = 64."
        },
        "scores": {
          "a": 79,
          "b": 64
        }
      },
      {
        "by": 13,
        "category": "security",
        "leads": "gemini-exchange",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Revocable API keys with one role each (Trader, Fund Manager, Auditor, Administrator), HMAC-SHA384 signing with a nonce, and OAuth 2.0 with scopes, PKCE S256, single-use refresh tokens and RFC 7009 revocation; no IP allow-list documented and no key expiry (28 of 30). Auditor is read-only, a Trader key cannot withdraw, approved withdrawal addresses are a Fund Manager action, and the MCP server refuses funds-moving tools without `confirm: true` (18 of 20). The MCP server wraps every response in untrusted-output markers, strips control and bidi characters and redacts memos, labels and agreement text; the REST docs say nothing on the subject (13 of 15). Order and transfer history are readable, but no per-key audit log or API access log was found (5 of 15). security.txt with a PGP contact and a bug bounty paying $150 to $20,000, scoped to the sandbox hosts; no certification was read and no public advisory process was found (14 of 20). 28 + 18 + 13 + 5 + 14 = 78.",
          "b": "Granular permissions (account read, trade, withdraw, transfer), per-pair restriction, up to 10 linked IPs, 90-day expiry without an IP, renewal and revocation in the account, 30 keys per account (26 of 30). A read-only MCP mode that hides write tools, a confirmation step before orders and transfers in the CLI and MCP, and --yes that agents are told not to add; nothing server-side confirms an API order (17 of 20). The API returns exchange data, and the CLI security page warns that agents may be led by web pages or files into unwanted actions (12 of 15). CLI confirmations are logged and reported to MEXC with no operator access described; an apiKeyInfo endpoint shows key settings (6 of 15). No security.txt, disclosure policy or bug bounty found; a proof-of-reserves page exists (4 of 20). 26 + 17 + 12 + 6 + 4 = 65."
        },
        "scores": {
          "a": 78,
          "b": 65
        }
      },
      {
        "by": 13,
        "category": "maintenance",
        "leads": "gemini-exchange",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a closed hosted service with an open repository. The revision history's latest entry is 28 October 2026 and the repository was pushed on 5 October (30). Thirteen dated entries between 2 September and 28 October 2026 (20). The nine open items on the repository are all pull requests with replies, Dependabot included, and the docs name trading@gemini.com for developer support; no public issue tracker was tested (15 of 25). Not in the official MCP registry, but current official SDKs, TypeScript 0.1.1 of 23 September and Go 0.1.0 of 29 August 2026 (15). CI workflows validate and publish both SDKs and the MCP server has tests; dependencies are current (8 of 10). 30 + 20 + 15 + 15 + 8 = 88.",
          "b": "Read as a closed service. Last dated change 23 October 2026 in both the spot and futures logs (30). Spot entries on 14 August, 24 August, 11 September and 23 October 2026, futures on 1 September, 11 September, 19 October and 23 October (20). An API support Telegram group, a ticket form and dated changelogs; GitHub issues not read (10 of 15). The official SDK repository was last pushed in February 2024 while the CLI is current (10 of 15). The CLI ships platform binaries with no dependencies and no public repository or CI; the SDK is stale (5 of 10). 30 + 20 + 10 + 10 + 5 = 75."
        },
        "scores": {
          "a": 88,
          "b": 75
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Gemini Trust Company, LLC",
        "b": "MEXC (Comoros) Ltd",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "stdio",
        "b": "stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or 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 Gemini's user agreement. The developer-platform repository (MCP server, TypeScript and Go SDKs, samples and skills) is Apache-2.0",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "87",
        "b": "299",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-28",
        "b": "2026-10-23",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "2026-10-13",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2026-06-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "8 stars, 99 npm/wk",
        "b": "315 stars",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Gemini Exchange API scores 74.6 (BB) on agent readiness against MEXC API's 56.3 (C), and leads in every scored category.",
        "question": "Which is better for AI agents, Gemini Exchange API or MEXC API?"
      },
      {
        "answer": "Gemini Exchange API takes an API key or an OAuth sign-in. MEXC API needs an API key.",
        "question": "Do Gemini Exchange API and MEXC API need an API key?"
      },
      {
        "answer": "Gemini Exchange API runs on your own machine, with no hosted endpoint listed. MEXC API runs on your own machine, with no hosted endpoint listed.",
        "question": "Can an agent call Gemini Exchange API and MEXC API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 73 against 43",
          "Schema \u0026 documentation, 88 against 64",
          "Agent ergonomics, 79 against 64",
          "Security \u0026 auth, 78 against 65",
          "Payments \u0026 pricing, 40 against 31",
          "Maintenance \u0026 community, 88 against 75",
          "Transparency \u0026 trust, 75 against 58"
        ],
        "also": [
          "Agent-ready, a grade of BB or better"
        ],
        "goodFor": "An agent trading spot, perpetuals or prediction markets for a US customer with a role-limited key and a sandbox to rehearse on.",
        "slug": "gemini-exchange",
        "watchFor": "Client order ids are only recommended to be unique and no duplicate rejection is documented, so a retried order can execute twice"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "Spot and futures for agents in served countries that want a vendor-built MCP server with read-only and confirmation modes.",
        "slug": "mexc",
        "watchFor": "No sandbox or testnet; only an order-validation endpoint"
      }
    ],
    "history": null,
    "job": {
      "capability": "exchange.market-data",
      "name": "Exchange market data"
    },
    "others": [
      {
        "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-mexc.json",
        "title": "Bitfinex API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-mexc"
      },
      {
        "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-mexc.json",
        "title": "Bitget vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-gemini-exchange.json",
        "title": "Bithumb Open API vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-mexc.json",
        "title": "Bithumb Open API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-gemini-exchange.json",
        "title": "Bitstamp API vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-mexc.json",
        "title": "Bitstamp API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-mexc"
      },
      {
        "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-mexc.json",
        "title": "Bybit vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-gemini-exchange.json",
        "title": "Crypto.com Exchange API vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-mexc.json",
        "title": "Crypto.com Exchange API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-gemini-exchange.json",
        "title": "Gate vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-mexc.json",
        "title": "Gate vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-htx.json",
        "title": "Gemini Exchange API vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-hyperliquid.json",
        "title": "Gemini Exchange API vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-kraken.json",
        "title": "Gemini Exchange API vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-kucoin.json",
        "title": "Gemini Exchange API vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-okx.json",
        "title": "Gemini Exchange API vs OKX API",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-uniswap.json",
        "title": "Gemini Exchange API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-upbit.json",
        "title": "Gemini Exchange API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/htx-vs-mexc.json",
        "title": "HTX trading API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/htx-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kucoin-vs-mexc.json",
        "title": "KuCoin vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/kucoin-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mexc-vs-okx.json",
        "title": "MEXC API vs OKX API",
        "url": "https://www.anchorterminal.com/compare/mexc-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mexc-vs-uniswap.json",
        "title": "MEXC API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/mexc-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mexc-vs-upbit.json",
        "title": "MEXC API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/mexc-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-gemini-exchange.json",
        "title": "Binance API vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-mexc.json",
        "title": "Binance API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-gemini-exchange.json",
        "title": "Coinbase Advanced Trade API vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-mexc.json",
        "title": "Coinbase Advanced Trade API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-gemini-exchange.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-mexc.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kraken-vs-mexc.json",
        "title": "Kraken API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/kraken-vs-mexc"
      },
      {
        "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-mexc.json",
        "title": "Deribit vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-gemini-exchange.json",
        "title": "dYdX vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-mexc.json",
        "title": "dYdX vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperliquid-vs-mexc.json",
        "title": "Hyperliquid vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/hyperliquid-vs-mexc"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 30,
        "edge": "gemini-exchange",
        "gemini-exchange": 73,
        "key": "reliability",
        "mexc": 43,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 24,
        "edge": "gemini-exchange",
        "gemini-exchange": 88,
        "key": "schema",
        "mexc": 64,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 15,
        "edge": "gemini-exchange",
        "gemini-exchange": 79,
        "key": "ergonomics",
        "mexc": 64,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 13,
        "edge": "gemini-exchange",
        "gemini-exchange": 78,
        "key": "security",
        "mexc": 65,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 9,
        "edge": "gemini-exchange",
        "gemini-exchange": 40,
        "key": "payments",
        "mexc": 31,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 13,
        "edge": "gemini-exchange",
        "gemini-exchange": 88,
        "key": "maintenance",
        "mexc": 75,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 17,
        "edge": "gemini-exchange",
        "gemini-exchange": 75,
        "key": "transparency",
        "mexc": 58,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Gemini Exchange API scores 74.6 (BB) on agent readiness against MEXC API's 56.3 (C), and leads in every scored category. Both do exchange market data.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "gemini-exchange": "Gemini publishes an OpenAPI and AsyncAPI contract, API key roles that keep withdrawals off a trading key, a funded sandbox, and an official MCP server whose tools carry read-only and destructive annotations and a confirm gate. Client order ids are not checked for duplicates, there is no SLA, and UK, EEA and Australian accounts closed in April 2026.",
      "mexc": "MEXC publishes granular key permissions, per-pair key limits, weighted rate limits with Retry-After and a dated changelog, and its official CLI runs a read-only-capable MCP server with confirmation before any fund movement. There is no sandbox or status page, API futures orders pay a higher fee schedule, and the user agreement excludes the US, UK, EU members and others."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/gemini-exchange-vs-mexc",
    "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-mexc.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/gemini-exchange-vs-mexc.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/gemini-exchange-vs-mexc.min.md"
  },
  "markdown": "Gemini Exchange API scores 74.6 (BB) on agent readiness against MEXC API's 56.3 (C), and leads in every scored category. Both do exchange market data.\n\n- Gemini Exchange API: grade BB, 74.6/100, rank #70 of 1349. Markdown https://www.anchorterminal.com/tools/gemini-exchange.md · JSON https://www.anchorterminal.com/api/v1/tools/gemini-exchange.json\n- MEXC API: grade C, 56.3/100, rank #791 of 1349. Markdown https://www.anchorterminal.com/tools/mexc.md · JSON https://www.anchorterminal.com/api/v1/tools/mexc.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### Gemini Exchange API (BB)\n\nGood for: An agent trading spot, perpetuals or prediction markets for a US customer with a role-limited key and a sandbox to rehearse on.\n\nAhead on:\n- Reliability, 73 against 43\n- Schema \u0026 documentation, 88 against 64\n- Agent ergonomics, 79 against 64\n- Security \u0026 auth, 78 against 65\n- Payments \u0026 pricing, 40 against 31\n- Maintenance \u0026 community, 88 against 75\n- Transparency \u0026 trust, 75 against 58\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n\nWatch for: Client order ids are only recommended to be unique and no duplicate rejection is documented, so a retried order can execute twice\n\n### MEXC API (C)\n\nGood for: Spot and futures for agents in served countries that want a vendor-built MCP server with read-only and confirmation modes.\n\nWatch for: No sandbox or testnet; only an order-validation endpoint\n\n\n## Why the edge\n\n### Reliability: Gemini Exchange API +30\n\n- Gemini Exchange API (73): Read with the hosted lines on the REST API at api.gemini.com. status.gemini.com is a Statuspage site with component history (20). Its Atom feed for 10 September to 3 November 2026 holds 25 entries, mostly scheduled trading and FIX upgrades of 15 to 60 minutes with possible order timeouts, single-network deposit delays, and incorrect perpetual index prices for about 3.5 hours on 15 and 16 October; a 3-hour scheduled eOTC window was planned and outside the core API. Minor only (20). Rate limits with numbers, 120 a minute public and 600 private plus per-endpoint limits (15). 429 is documented but with no Retry-After or backoff guidance, and client order ids are recommended without duplicate rejection, so retries are not safe by contract; the heartbeat cancel is a safety net rather than idempotency (8 of 15). No SLA found (0). Generally available (10). 20 + 20 + 15 + 8 + 0 + 10 = 73.\n- MEXC API (43): Read with the hosted lines. No status page found; status.mexc.com does not resolve and llms.txt points to a maintenance-updates feed (0). No readable incident history (5). Rate limits documented with numbers, 300 weight per 10 seconds per IP, 500 per UID, 12 order requests a second per UID, 100 WebSocket messages a second (15). 429 and 418 carry Retry-After with ban lengths stated, a 5xx is to be treated as unknown rather than failed, an order-test endpoint exists, and newClientOrderId is optional with no idempotency promise (13 of 15). No SLA found (0). Spot and futures are generally available, futures order placement having reopened on 31 March 2026 after being closed since July 2022 (10). 0 + 5 + 15 + 13 + 0 + 10 = 43.\n\n### Schema \u0026 documentation: Gemini Exchange API +24\n\n- Gemini Exchange API (88): OpenAPI 3 for REST (specs/openapi/rest.yaml), AsyncAPI for WebSocket, a prediction-markets OpenAPI file and a specs/index.json catalogue; the MCP server's tools take zod schemas published as JSON Schema (25). llms.txt, llms-full.txt, agents.md, an agent card and an agent skills index (10). Endpoint pages state purpose, the Build an agent guide says what to establish before acting and when to stop, and MCP tool descriptions tell the model when to confirm; the docs don't say when not to use an endpoint (15 of 20). Typed inputs with enums for order types, options and sessions, required fields marked, decimals as strings since 7 July 2026 (12 of 15). Examples throughout, samples in three languages, and an error-codes page with 53 named reasons and their HTTP statuses (14 of 15). A revision history dated from 2015 to 28 October 2026 and versioned paths (v1, v2), but the upcoming-changes page reads \"TBD\" (12 of 15). 25 + 10 + 15 + 12 + 14 + 12 = 88.\n- MEXC API (64): No OpenAPI found; a Postman collection and the CLI's 25 capability reference files are the nearest machine-readable contract (5 of 25). llms.txt on mexc.com, written for assistants and pointing at the API docs and legal pages (7 of 10). Per-endpoint pages with purpose, parameters and permissions, without when-not-to-use guidance (13 of 20). Typed parameters with enums for order types, statuses and intervals (11 of 15). Examples on each endpoint and a separate error-code page with numeric codes and messages (13 of 15). Versioned API (v3) with a dated changelog of 72 entries to 23 October 2026 (15). 5 + 7 + 13 + 11 + 13 + 15 = 64.\n\n### Transparency \u0026 trust: Gemini Exchange API +17\n\n- Gemini Exchange API (75): The editorial half. A closed service under a user agreement that names its entities by state, with the MCP server and SDKs open under Apache-2.0 (18 of 30). The privacy policy of 11 May 2026 names entities and processing countries, ties retention to need without numbers and names provider categories only, with no DPA or subprocessor list found (16 of 30). The revision history records removals and type changes with dates, but the upcoming-changes page is \"TBD\" and no notice period is stated (8 of 20). Processing countries are named (US, Ireland, UK, Malta, Singapore, Australia) and providers by category, with no named subprocessors (12 of 20). 18 + 16 + 8 + 12 = 54.\n- MEXC API (58): The editorial half. A closed service with a dated user agreement naming MEXC (Comoros) Ltd; the CLI is UNLICENSED on npm (15 of 30). The privacy policy names no entity, states no retention periods and relies on standard contractual clauses for transfers (10 of 30). The changelog flags endpoints as \"will be discontinued soon\" without dates and the futures log records removals (8 of 20). Third parties are named by category only, with no subprocessor list or data locations (5 of 20). 15 + 10 + 8 + 5 = 38.\n\n### Agent ergonomics: Gemini Exchange API +15\n\n- Gemini Exchange API (79): Graded on the REST API, with the MCP server noted. Order book depth, trade and candle counts can be limited and symbols filtered; the MCP server lists 87 tools with no toolset or read-only subset switch, so a session that loads it pays for all of them (18 of 25). Timestamps, `limit_trades`, `since` and per-symbol filters on history, pagination on prediction-market lists (16 of 20). Errors carry a reason and message an agent can branch on, such as InsufficientFunds, MarketNotOpen and MissingRole, though some messages only say to retry later (16 of 20). client_order_id is echoed back but not checked for duplicates, cancel-all-session-orders and the heartbeat limit damage; the MCP server publishes readOnlyHint and destructiveHint on every tool and gates destructive ones on `confirm: true` (14 of 20). Few required parameters, sensible defaults, and official TypeScript and Go SDKs (15). 18 + 16 + 16 + 14 + 15 = 79.\n- MEXC API (64): Graded on the REST API with the CLI's MCP mode. Responses take limit parameters and the MCP read-only market subset is 22 tools, but a full spot MCP category lists 123 tools (15 of 25). startTime, endTime and limit on history, symbol filters on open orders (14 of 20). Numeric codes with messages, a 30035 order-limit code added 23 October 2026, 5xx guidance (14 of 20). newClientOrderId is optional with no idempotency guarantee; the CLI adds --dry-run and a confirmation step (10 of 20). Few required parameters; SDKs in five languages whose repository was last pushed in February 2024 (11 of 15). 15 + 14 + 14 + 10 + 11 = 64.\n\n### Security \u0026 auth: Gemini Exchange API +13\n\n- Gemini Exchange API (78): Revocable API keys with one role each (Trader, Fund Manager, Auditor, Administrator), HMAC-SHA384 signing with a nonce, and OAuth 2.0 with scopes, PKCE S256, single-use refresh tokens and RFC 7009 revocation; no IP allow-list documented and no key expiry (28 of 30). Auditor is read-only, a Trader key cannot withdraw, approved withdrawal addresses are a Fund Manager action, and the MCP server refuses funds-moving tools without `confirm: true` (18 of 20). The MCP server wraps every response in untrusted-output markers, strips control and bidi characters and redacts memos, labels and agreement text; the REST docs say nothing on the subject (13 of 15). Order and transfer history are readable, but no per-key audit log or API access log was found (5 of 15). security.txt with a PGP contact and a bug bounty paying $150 to $20,000, scoped to the sandbox hosts; no certification was read and no public advisory process was found (14 of 20). 28 + 18 + 13 + 5 + 14 = 78.\n- MEXC API (65): Granular permissions (account read, trade, withdraw, transfer), per-pair restriction, up to 10 linked IPs, 90-day expiry without an IP, renewal and revocation in the account, 30 keys per account (26 of 30). A read-only MCP mode that hides write tools, a confirmation step before orders and transfers in the CLI and MCP, and --yes that agents are told not to add; nothing server-side confirms an API order (17 of 20). The API returns exchange data, and the CLI security page warns that agents may be led by web pages or files into unwanted actions (12 of 15). CLI confirmations are logged and reported to MEXC with no operator access described; an apiKeyInfo endpoint shows key settings (6 of 15). No security.txt, disclosure policy or bug bounty found; a proof-of-reserves page exists (4 of 20). 26 + 17 + 12 + 6 + 4 = 65.\n\n### Maintenance \u0026 community: Gemini Exchange API +13\n\n- Gemini Exchange API (88): Read as a closed hosted service with an open repository. The revision history's latest entry is 28 October 2026 and the repository was pushed on 5 October (30). Thirteen dated entries between 2 September and 28 October 2026 (20). The nine open items on the repository are all pull requests with replies, Dependabot included, and the docs name trading@gemini.com for developer support; no public issue tracker was tested (15 of 25). Not in the official MCP registry, but current official SDKs, TypeScript 0.1.1 of 23 September and Go 0.1.0 of 29 August 2026 (15). CI workflows validate and publish both SDKs and the MCP server has tests; dependencies are current (8 of 10). 30 + 20 + 15 + 15 + 8 = 88.\n- MEXC API (75): Read as a closed service. Last dated change 23 October 2026 in both the spot and futures logs (30). Spot entries on 14 August, 24 August, 11 September and 23 October 2026, futures on 1 September, 11 September, 19 October and 23 October (20). An API support Telegram group, a ticket form and dated changelogs; GitHub issues not read (10 of 15). The official SDK repository was last pushed in February 2024 while the CLI is current (10 of 15). The CLI ships platform binaries with no dependencies and no public repository or CI; the SDK is stale (5 of 10). 30 + 20 + 10 + 10 + 5 = 75.\n\n## Score by category\n\n| Category | Weight | Gemini Exchange API | MEXC API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 43 | Gemini Exchange API +30 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 64 | Gemini Exchange API +24 |\n| Agent ergonomics | 13% (16.2 this run) | 79 | 64 | Gemini Exchange API +15 |\n| Security \u0026 auth | 14% (17.5 this run) | 78 | 65 | Gemini Exchange API +13 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 31 | Gemini Exchange API +9 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 88 | 75 | Gemini Exchange API +13 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 75 | 58 | Gemini Exchange API +17 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **74.6 · BB** | **56.3 · C** | |\n\n## Facts side by side\n\n| Fact | Gemini Exchange API | MEXC API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Gemini Trust Company, LLC | MEXC (Comoros) Ltd |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | stdio | stdio |\n| Auth | OAuth or key | API key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary hosted API under Gemini's user agreement. The developer-platform repository (MCP server, TypeScript and Go SDKs, samples and skills) is Apache-2.0 | none |\n| Tools exposed | 87 | 299 |\n| Read-only variant documented | yes | yes |\n| llms.txt | yes | yes |\n| Last release | 2026-10-28 | 2026-10-23 |\n| Terms last updated | couldn't be read | 2026-10-13 |\n| Privacy policy last updated | no date given | 2026-06-01 |\n| Customer content may train models | yes | not found in the text |\n| Terms restrict automated access | couldn't be read | yes |\n| Terms restrict benchmarking | couldn't be read | not found in the text |\n| Terms or service can change without notice | couldn't be read | yes |\n| Arbitration or class-action waiver | couldn't be read | yes |\n| Popularity | 8 stars, 99 npm/wk | 315 stars |\n\n## Verdicts\n\n**Gemini Exchange API.** Gemini publishes an OpenAPI and AsyncAPI contract, API key roles that keep withdrawals off a trading key, a funded sandbox, and an official MCP server whose tools carry read-only and destructive annotations and a confirm gate. Client order ids are not checked for duplicates, there is no SLA, and UK, EEA and Australian accounts closed in April 2026.\n\n**MEXC API.** MEXC publishes granular key permissions, per-pair key limits, weighted rate limits with Retry-After and a dated changelog, and its official CLI runs a read-only-capable MCP server with confirmation before any fund movement. There is no sandbox or status page, API futures orders pay a higher fee schedule, and the user agreement excludes the US, UK, EU members and others.\n\n## Before you call either\n\n### Gemini Exchange API\n\n1. Create a Trader key for order flow and a separate Fund Manager key only if withdrawals are in scope; never combine them, and keep the secret out of prompts and logs\n2. Set a `client_order_id` per order and look it up with `get_order_status` before resending after a timeout, because Gemini does not reject duplicates\n3. Start on api.sandbox.gemini.com with the same code; sandbox apps register at once, production OAuth apps wait for Gemini's review\n4. Stay under 1 public and 5 private requests a second; a 429 keeps answering 429 until the rate falls, with no Retry-After to read\n5. Check the person's country against the availability page first; UK, EEA and Australian accounts were closed on 6 April 2026\n\n### MEXC API\n\n1. Use a key limited to SPOT_ACCOUNT_READ and SPOT_DEAL_WRITE, the pairs you trade and your IP addresses; keys without a linked IP expire after 90 days\n2. Start the MCP server as `mexc mcp spot --read-only` unless the task trades, and never pass `--yes`; orders and transfers wait for the person's confirmation\n3. Call POST /api/v3/order/test before a live order, since there is no sandbox\n4. On 429 or 418 wait for Retry-After; order placement and cancellation share 12 requests a second per UID, and repeated breaches ban the IP for up to 3 days\n5. Treat a 5xx on an order as unknown, not failed, and query the order before retrying; set newClientOrderId so the order can be found\n\n## Questions\n\n### Which is better for AI agents, Gemini Exchange API or MEXC API?\n\nGemini Exchange API scores 74.6 (BB) on agent readiness against MEXC API's 56.3 (C), and leads in every scored category.\n\n### Do Gemini Exchange API and MEXC API need an API key?\n\nGemini Exchange API takes an API key or an OAuth sign-in. MEXC API needs an API key.\n\n### Can an agent call Gemini Exchange API and MEXC API without installing anything?\n\nGemini Exchange API runs on your own machine, with no hosted endpoint listed. MEXC API 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/gemini-exchange-vs-mexc.json, and with the fewest tokens: https://www.anchorterminal.com/compare/gemini-exchange-vs-mexc.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"gemini-exchange\", \"b\": \"mexc\"}`. From a terminal: `anchor compare gemini-exchange mexc`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/gemini-exchange.json and https://www.anchorterminal.com/api/v1/tools/mexc.json\n\n## Other comparisons with Gemini Exchange API or MEXC API\n\n- [Bitfinex API vs Gemini Exchange API](https://www.anchorterminal.com/compare/bitfinex-vs-gemini-exchange.md)\n- [Bitfinex API vs MEXC API](https://www.anchorterminal.com/compare/bitfinex-vs-mexc.md)\n- [Bitget vs Gemini Exchange API](https://www.anchorterminal.com/compare/bitget-vs-gemini-exchange.md)\n- [Bitget vs MEXC API](https://www.anchorterminal.com/compare/bitget-vs-mexc.md)\n- [Bithumb Open API vs Gemini Exchange API](https://www.anchorterminal.com/compare/bithumb-vs-gemini-exchange.md)\n- [Bithumb Open API vs MEXC API](https://www.anchorterminal.com/compare/bithumb-vs-mexc.md)\n- [Bitstamp API vs Gemini Exchange API](https://www.anchorterminal.com/compare/bitstamp-vs-gemini-exchange.md)\n- [Bitstamp API vs MEXC API](https://www.anchorterminal.com/compare/bitstamp-vs-mexc.md)\n- [Bybit vs Gemini Exchange API](https://www.anchorterminal.com/compare/bybit-vs-gemini-exchange.md)\n- [Bybit vs MEXC API](https://www.anchorterminal.com/compare/bybit-vs-mexc.md)\n- [Crypto.com Exchange API vs Gemini Exchange API](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-gemini-exchange.md)\n- [Crypto.com Exchange API vs MEXC API](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-mexc.md)\n- [Gate vs Gemini Exchange API](https://www.anchorterminal.com/compare/gate-io-vs-gemini-exchange.md)\n- [Gate vs MEXC API](https://www.anchorterminal.com/compare/gate-io-vs-mexc.md)\n- [Gemini Exchange API vs HTX trading API](https://www.anchorterminal.com/compare/gemini-exchange-vs-htx.md)\n- [Gemini Exchange API vs Hyperliquid](https://www.anchorterminal.com/compare/gemini-exchange-vs-hyperliquid.md)\n- [Gemini Exchange API vs Kraken API](https://www.anchorterminal.com/compare/gemini-exchange-vs-kraken.md)\n- [Gemini Exchange API vs KuCoin](https://www.anchorterminal.com/compare/gemini-exchange-vs-kucoin.md)\n- [Gemini Exchange API vs OKX API](https://www.anchorterminal.com/compare/gemini-exchange-vs-okx.md)\n- [Gemini Exchange API vs Uniswap Trading API](https://www.anchorterminal.com/compare/gemini-exchange-vs-uniswap.md)\n- [Gemini Exchange API vs Upbit Open API](https://www.anchorterminal.com/compare/gemini-exchange-vs-upbit.md)\n- [HTX trading API vs MEXC API](https://www.anchorterminal.com/compare/htx-vs-mexc.md)\n- [KuCoin vs MEXC API](https://www.anchorterminal.com/compare/kucoin-vs-mexc.md)\n- [MEXC API vs OKX API](https://www.anchorterminal.com/compare/mexc-vs-okx.md)\n- [MEXC API vs Uniswap Trading API](https://www.anchorterminal.com/compare/mexc-vs-uniswap.md)\n- [MEXC API vs Upbit Open API](https://www.anchorterminal.com/compare/mexc-vs-upbit.md)\n- [Binance API vs Gemini Exchange API](https://www.anchorterminal.com/compare/binance-vs-gemini-exchange.md)\n- [Binance API vs MEXC API](https://www.anchorterminal.com/compare/binance-vs-mexc.md)\n- [Coinbase Advanced Trade API vs Gemini Exchange API](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-gemini-exchange.md)\n- [Coinbase Advanced Trade API vs MEXC API](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-mexc.md)\n- [Coinbase MCP server (Coinbase for Agents) vs Gemini Exchange API](https://www.anchorterminal.com/compare/coinbase-mcp-vs-gemini-exchange.md)\n- [Coinbase MCP server (Coinbase for Agents) vs MEXC API](https://www.anchorterminal.com/compare/coinbase-mcp-vs-mexc.md)\n- [Kraken API vs MEXC API](https://www.anchorterminal.com/compare/kraken-vs-mexc.md)\n- [Deribit vs Gemini Exchange API](https://www.anchorterminal.com/compare/deribit-vs-gemini-exchange.md)\n- [Deribit vs MEXC API](https://www.anchorterminal.com/compare/deribit-vs-mexc.md)\n- [dYdX vs Gemini Exchange API](https://www.anchorterminal.com/compare/dydx-vs-gemini-exchange.md)\n- [dYdX vs MEXC API](https://www.anchorterminal.com/compare/dydx-vs-mexc.md)\n- [Hyperliquid vs MEXC API](https://www.anchorterminal.com/compare/hyperliquid-vs-mexc.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": "Gemini Exchange API vs MEXC API",
        "url": ""
      }
    ],
    "description": "Gemini Exchange scores 74.6 (BB) to MEXC's 56.3 (C) for exchange market data. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Gemini Exchange API BB 74.6",
      "MEXC API C 56.3",
      "scores"
    ],
    "h1": "Gemini Exchange API vs MEXC API",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/gemini-exchange-vs-mexc",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Gemini Exchange vs MEXC for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-03",
    "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-mexc"
  },
  "tokens": {
    "markdown": 5300,
    "slim": 3080
  },
  "version": 1
}
