{
  "data": {
    "a": {
      "slug": "dydx",
      "name": "dYdX",
      "vendor": "dYdX Trading Inc.",
      "vendorUrl": "https://www.dydx.xyz",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "dYdX is a perpetuals exchange on its own Cosmos chain. Agents read markets and accounts from the indexer REST and WebSocket API at indexer.dydx.trade and place orders as signed chain transactions through the official TypeScript, Python and Rust clients.",
      "url": "https://www.anchorterminal.com/tools/dydx",
      "markdownUrl": "https://www.anchorterminal.com/tools/dydx.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/dydx.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/dydx.json",
      "dns": "dydx.grade.anchorterminal.com",
      "repo": "https://github.com/dydxprotocol/v4-clients",
      "license": "The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@dydxprotocol/v4-client-js"
        },
        {
          "registry": "pypi",
          "name": "dydx-v4-client"
        }
      ],
      "auth": "mixed",
      "authNotes": "Indexer reads need no credential. Orders, cancels and transfers are chain messages signed with the account's key (a mnemonic or private key in the clients). Permissioned keys let an owner add an authenticator that lets another key act within limits, composed from SignatureVerification, MessageFilter (for example only /dydxprotocol.clob.MsgPlaceOrder), SubaccountFilter and ClobPairIdFilter under AllOf or AnyOf, and removed with remove_authenticator. The dydx.trade interface generates an API wallet with default permission to trade all cross-margin pairs and shows its private key once (https://docs.dydx.xyz/concepts/trading/authenticators, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The indexer and clients have no charge. Trading fees at the lowest tier (under $1 million of 30-day volume) are 5.0 bps taker and 1.0 bps maker, set by governance, uniform across markets, with gas on each transaction; fees flow to validators and stakers (https://docs.dydx.xyz/concepts/trading/rewards, checked 2026-11-03).",
      "priceSummary": "0.05% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or clients (checked 2026-11-03). Accounts are funded with USDC through Noble or an onboarding partner.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": 119,
        "npmWeekly": 86394,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://docs.dydx.xyz/",
      "llmsTxt": "https://docs.dydx.xyz/llms.txt",
      "capabilities": [
        "exchange.derivatives",
        "exchange.market-data",
        "exchange.balances",
        "exchange.transfers",
        "exchange.staking",
        "market.crypto",
        "wallet.onchain"
      ],
      "tags": [
        "official",
        "hosted",
        "open-source",
        "llms-txt",
        "typescript",
        "python",
        "rust",
        "sandbox",
        "usage-priced",
        "status-page",
        "bug-bounty",
        "no-key",
        "rest"
      ],
      "lastRelease": "2026-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.5,
        "grade": "B",
        "agentReady": false,
        "rank": 221,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 3,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 83,
          "payments": 60,
          "reliability": 83,
          "schema": 58,
          "security": 78,
          "transparency": 50
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "dYdX gives an agent keyless indexer reads, permissioned keys limited by message type, subaccount and market, a Statuspage with a clean 90 days, published fees and a testnet with a faucet. There is no official MCP server or OpenAPI file, orders are chain transactions signed by the clients, and no one entity operates the hosted endpoints.",
        "bestFor": "An agent trading perpetuals from its own Cosmos wallet or through a permissioned key on an owner's account, outside the US, Canada and UK.",
        "strengths": [
          "Permissioned keys limit a delegated key to chosen message types, subaccounts and markets, exclude withdrawals and transfers, and are removed with `remove_authenticator`",
          "status.dydx.trade lists Indexer, Chain, Order Gateway and Client Libraries components, with only maintenance windows and one partner deposit delay in the last 90 days",
          "Fees public at 5.0 bps taker and 1.0 bps maker at the lowest tier, with rate limits and block limits stated with numbers",
          "Official TypeScript, Python and Rust clients with CI and trusted publishing, and a testnet with a faucet",
          "A Cantina bug bounty up to $1,000,000 sponsored by dYdX Trading Inc. covering the protocol, indexer, web client and client SDKs"
        ],
        "weaknesses": [
          "No official MCP server; the one registry entry is a third party's analytics server",
          "No OpenAPI file for the indexer; error responses are described by HTTP status only, and chain rejections surface as transaction results",
          "No 429 handling or Retry-After documented for the indexer; permissioned keys cannot cap position or order size",
          "The hosted indexer and front end are run by unnamed third parties; dYdX Trading Inc. says it runs none of the components",
          "Restricted to persons outside the United States, Canada and the United Kingdom, with geo-blocking left to each integrator"
        ],
        "agentNotes": [
          "Ask the account owner for an authenticator limited to `/dydxprotocol.clob.MsgPlaceOrder` and `MsgCancelOrder` on one subaccount, and keep its private key out of prompts",
          "Set a unique 32-bit `clientId` on every order and look it up on `/v4/orders` after a timeout; short-term orders expire with `goodTilBlock` (at most 20 blocks ahead)",
          "Stay under 2 stateful orders a block and 20 per 100 blocks; failed placements count, so use short-term orders for active trading",
          "Enable permessage-deflate on the indexer WebSocket; since 26 October 2026 connections without compression may be refused with 426",
          "Check `/v4/geo` and the compliance screen before trading for a person, since the terms exclude the United States, Canada and the United Kingdom"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.5
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 83,
          "payments": 60,
          "reliability": 83,
          "schema": 58,
          "security": 78,
          "transparency": 50
        },
        "provenanceScore": 50,
        "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 @dydxprotocol/v4-client-js",
        "http": "curl https://indexer.dydx.trade/v4/orderbooks/perpetualMarket/ETH-USD"
      },
      "letme": {
        "capability": "https://letme.dev/exchange.derivatives",
        "tool": "https://letme.dev/dydx"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Taker fee, tier 1",
          "unit": "pct",
          "usd": 0.05,
          "note": "5.0 bps of notional; maker 1.0 bps"
        }
      ],
      "provenance": {
        "legalEntity": "dYdX Trading Inc.",
        "domain": "dydx.xyz",
        "domainRegistered": "",
        "endpointOnVendorDomain": false,
        "terms": "https://dydx.exchange/v4-terms",
        "privacy": "https://www.dydx.xyz/legal/privacy-policy",
        "statusPage": "https://status.dydx.trade",
        "changelog": "",
        "securityTxt": "unknown",
        "checked": "2026-11-03",
        "notes": [
          "dYdX Trading Inc. is the entity in the v4 Terms of Use (last updated 12 March 2026), the clients' licence and the Cantina bug bounty. dydx.xyz's terms and privacy policy (6 June 2025) name dYdX International Ltd, Cayman Islands, and its footer reads dYdX International Ltd.",
          "The indexer at indexer.dydx.trade is not on dydx.xyz and the docs say dYdX Trading Inc. runs none of the hosted components, so the endpoint is recorded as off the vendor's domain.",
          "RDAP for dydx.trade answered 404 at the Identity Digital and rdap.org services, so the domain age is unchecked; the vendor domain dydx.xyz was not queried.",
          "status.dydx.trade is an Atlassian Statuspage with five components and an RSS history; its robots.txt disallows /api/ and /embed/, so the history was read from /history.rss.",
          "https://dydx.trade/.well-known/security.txt answered the app's HTML page, so security.txt is unknown. No API changelog; protocol upgrades appear as status maintenance entries."
        ],
        "score": 50
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/dydx.json",
      "live": {
        "slug": "dydx",
        "vendorStatus": {
          "page": "https://status.dydx.trade",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-04T20:05:06.117120724Z"
        },
        "securityTxt": {
          "url": "https://dydx.xyz/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:54:03.349495473Z"
        },
        "updatedAt": "2026-11-04T20:05:06.117120724Z"
      }
    },
    "answer": "dYdX scores 69.5 (B) on agent readiness against Gate's 56.4 (C), and leads in 5 of 7 scored categories. Gate leads on schema \u0026 documentation.",
    "b": {
      "slug": "gate-io",
      "name": "Gate",
      "vendor": "Gate",
      "vendorUrl": "https://www.gate.com",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Gate is a centralised crypto exchange for spot, margin, futures, options, earn and tokenised stocks, reached through its REST and WebSocket API v4, official SDKs, a CLI, and hosted and local MCP servers under its Gate for AI programme.",
      "url": "https://www.anchorterminal.com/tools/gate-io",
      "markdownUrl": "https://www.anchorterminal.com/tools/gate-io.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/gate-io.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/gate-io.json",
      "dns": "gate-io.grade.anchorterminal.com",
      "repo": "https://github.com/gate/gate-mcp",
      "transports": [
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.gatemcp.ai/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "gate-mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "The API v4 takes an API key and secret minted on the APIv4 Keys page after a browser sign-up, signed per request with HMAC-SHA512 in the KEY, Timestamp and SIGN headers, with a 60 second timestamp window. Each key carries a permission per product group (spot and margin, perpetual, delivery, wallet, withdrawal and others) set to disabled, read-only or read-write, an IP allow-list of up to 20 addresses, and changes take up to 5 minutes. The hosted MCP trading endpoint uses Gate OAuth 2 at www.gate.com/apiw/v2/mcp/oauth with scopes base, read, asset, spot_trade, futures_trade, earn, cfd and stock, revocable on the API management page; the public market-data endpoints need no credential; the local `gate-mcp` package takes GATE_API_KEY and GATE_API_SECRET (https://www.gate.com/docs/developers/apiv4/en/, https://api.gatemcp.ai/.well-known/oauth-protected-resource/mcp/exchange and https://www.gate.com/docs/developers/agent/en/, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API and the MCP servers cost nothing; trades carry Gate's fees. The fee page shows its tier table only after login. Gate's help centre gives the VIP 0 spot taker rate as 0.1 per cent and its learn articles give 0.1 per cent maker and taker with GT payment lowering it to 0.09 per cent; VIP tiers run from 0 to 16. The VIP 0 futures rate was not readable (https://www.gate.com/help/trade/spot/41629 and https://www.gate.com/fee, checked 2026-11-03).",
      "priceSummary": "0.1% fee",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API v4 docs, the agent guide, the gate-mcp README or the fee pages (checked 2026-11-03).",
        "endpoints": []
      },
      "toolCount": 58,
      "popularity": {
        "githubStars": 44,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://www.gate.com/docs/developers/apiv4/en/",
      "registryName": "io.github.gateio-dev/gate-mcp",
      "capabilities": [
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.derivatives",
        "exchange.balances",
        "exchange.transfers",
        "exchange.staking",
        "market.crypto"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "api-key",
        "oauth",
        "usage-priced",
        "sandbox",
        "no-status-page",
        "mcp",
        "remote-mcp",
        "mcp-registry",
        "official",
        "read-only-mode",
        "agent-skills",
        "cli",
        "python",
        "typescript",
        "go",
        "java",
        "php",
        "dotnet"
      ],
      "lastRelease": "2026-11-02",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 56.4,
        "grade": "C",
        "agentReady": false,
        "rank": 786,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 12,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 77,
          "payments": 35,
          "reliability": 42,
          "schema": 70,
          "security": 60,
          "transparency": 49
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Gate runs official hosted MCP servers with keyless market data and OAuth-scoped trading, a local stdio server with a read-only switch, per-endpoint rate limits with headers and a futures testnet. There is no status page, SLA or OpenAPI file, the fee table needs a login, the MCP host is a separate domain, and the terms name no company.",
        "bestFor": "An agent trading spot, futures and earn products in a person's Gate account outside the 35 restricted locations, with a keyless MCP for research and an OAuth MCP or scoped key for trading.",
        "strengths": [
          "Hosted MCP at api.gatemcp.ai split by purpose, 58 market-data tools with no credential and trading tools behind Gate OAuth 2 with eight scopes, in the official MCP registry",
          "API keys with a disabled, read-only or read-write setting per product group, a withdrawal group of its own and an IP allow-list of up to 20 addresses",
          "Per-endpoint rate limits with X-Gate-RateLimit-Limit, X-Gate-RateLimit-Requests-Remain and X-Gate-RateLimit-Reset-Timestamp headers and a labelled error body",
          "Futures TestNet at api-testnet.gateapi.io with its own keys, and the complete REST and WebSocket docs downloadable as Markdown",
          "Official SDKs in Python, Java, PHP, Go, C#, Node.js and JavaScript, a CLI with JSON output, and 40 dated changelog entries in the last 90 days"
        ],
        "weaknesses": [
          "No status page, incident history or SLA; the terms give no uptime guarantee and cap liability at three months of fees",
          "The MCP endpoints live on gatemcp.ai, not gate.com, and the registry namespace is a GitHub organisation; the OAuth scopes in the metadata differ from the ones the docs describe",
          "The local MCP server sets no readOnlyHint or destructiveHint annotations, and the hosted server's annotations could not be read without a session",
          "The fee table loads only after login, and the docs disagree with themselves on keys per account (5 against 20) and tool counts",
          "Clause 1.3(h) of the user agreement bans automated activity through any channel Gate has not designated, and the agreement names no legal entity"
        ],
        "agentNotes": [
          "Start on https://api.gatemcp.ai/mcp for prices and order books with no credential; switch to /mcp/exchange only when the person has approved the OAuth grant with the narrowest scopes",
          "For a key-based route, create a key on a dedicated sub-account with read-only on every group but the one the task needs, withdrawal disabled and an IP allow-list; changes take up to 5 minutes",
          "Put a unique `text` value starting with t- on every spot order and reuse it on the retry; read the order back before placing again",
          "Read X-Gate-RateLimit-Requests-Remain and stop at zero; spot order placement is capped at 10 a second and withdrawals at 1 per 3 seconds",
          "Rehearse futures logic on api-testnet.gateapi.io with TestNet keys; there is no spot testnet"
        ],
        "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.4
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 77,
          "payments": 35,
          "reliability": 42,
          "schema": 70,
          "security": 60,
          "transparency": 37
        },
        "provenanceScore": 60,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npx -y gate-mcp",
        "http": "curl https://api.gateio.ws/api/v4/spot/tickers?currency_pair=BTC_USDT",
        "claudeCode": "claude mcp add gate-mcp --transport http https://api.gatemcp.ai/mcp",
        "config": {
          "mcpServers": {
            "gate-mcp": {
              "transport": "streamable-http",
              "url": "https://api.gatemcp.ai/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/exchange.market-data",
        "tool": "https://letme.dev/gate-io"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Spot trade, VIP 0 taker",
          "unit": "pct",
          "usd": 0.1,
          "note": "maker 0.1 per cent per Gate's learn articles; 0.09 per cent paid in GT"
        }
      ],
      "provenance": {
        "legalEntity": "",
        "domain": "gate.com",
        "domainRegistered": "1996-03-29",
        "endpointOnVendorDomain": true,
        "terms": "https://www.gate.com/user-agreement",
        "privacy": "https://www.gate.com/privacy-policy",
        "statusPage": "",
        "changelog": "https://www.gate.com/docs/developers/apiv4/en/",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "The user agreement (last updated 22 July 2026) and the privacy policy name only Gate, under the laws of the Republic of Panama with ICC arbitration; no company name or registration number appears. The about page names Gate Technology Ltd for the Malta licence only.",
          "www.gate.com/robots.txt allows the docs, help, legal and about paths and disallows /post/, search results, referral URLs and a list of internal API paths; nothing under those paths was fetched. The /about path answered 403 and /about-us loaded.",
          "RDAP gives gate.com a registration date of 29 March 1996 (Amazon Registrar); the exchange moved from gate.io to gate.com and traces its origin to 2013.",
          "https://www.gate.com/.well-known/security.txt answers 404. No status page found; status.gate.com does not resolve and the docs link none.",
          "The API endpoint api.gateio.ws is Gate's own; the MCP endpoints are on api.gatemcp.ai, a separate domain whose OAuth metadata points back to www.gate.com. The changelog is the versioned section of the API v4 docs page."
        ],
        "score": 60
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/gate-io.json",
      "live": {
        "slug": "gate-io",
        "probe": {
          "target": "https://api.gatemcp.ai/mcp",
          "method": "get",
          "lastAt": "2026-11-04T20:05:02.725528016Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 10308,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 10329,
          "p95ms24h": 10631,
          "samples24h": 48,
          "samples30d": 48,
          "days": [
            {
              "date": "2026-11-04",
              "probes": 48,
              "ok": 48
            }
          ]
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "io.github.gateio-dev/gate-mcp",
            "version": "1.0.0",
            "seenAt": "2026-11-04T17:11:44.552009456Z"
          }
        ],
        "securityTxt": {
          "url": "https://gate.com/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-11-04T15:53:27.737532632Z"
        },
        "updatedAt": "2026-11-04T20:05:02.725528016Z"
      }
    },
    "edges": [
      {
        "by": 41,
        "category": "reliability",
        "leads": "dydx",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the hosted lines on the indexer API and the chain endpoints the clients submit to. status.dydx.trade is an Atlassian Statuspage with Frontends, dYdX Chain, Indexer, Order Gateway and Client Libraries components and an RSS history (20). From 1 August to 3 November 2026 the feed has eight items, seven scheduled maintenance windows of 29 minutes to 2 hours (indexer on 9 September, 8 and 15 October, protocol v9.7 on 11 September and v9.8.0 on 12 October, WebSocket compression on 26 and 28 October) and one degraded instant-deposit path through an onboarding partner from 24 to 29 September, outside the trading API. Clean or trivial (30). Rate limits documented with numbers for the indexer, the block limits and the public nodes (15). No 429 shape or Retry-After for the indexer; short-term orders expire by `goodTilBlock` and client IDs let an agent find an order after a timeout (8 of 15). No SLA (0). Mainnet generally available; the Order Entry Gateway is marked testnet-only (10). 20 + 30 + 15 + 8 + 0 + 10 = 83.",
          "b": "Graded with the hosted lines on the API v4 at api.gateio.ws with the hosted MCP beside it. No status page found (status.gate.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 group with numbers and fill-ratio rules (15). Every response carries X-Gate-RateLimit-Limit, X-Gate-RateLimit-Requests-Remain and X-Gate-RateLimit-Reset-Timestamp, 429 answers with the label TOO_FAST, and spot orders take a user `text` identifier, but no retry or idempotency guidance is written down (12 of 15). No SLA (0). API v4 and the MCP endpoints are production surfaces (10). 42."
        },
        "scores": {
          "a": 83,
          "b": 42
        }
      },
      {
        "by": 25,
        "category": "payments",
        "leads": "dydx",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No machine payment protocol (0). Fees public per tier without login (20). Testnet with a faucet and no card anywhere (20). No signup; an agent with a funded wallet trades, subject to the geographic terms (20). Total 60.",
          "b": "No machine payment protocol (0). The fee page's table loads after login; help centre and learn articles give the VIP 0 spot rates (15 of 20). Market data over REST and the public MCP needs no account and no card (20). A person registers, verifies identity and mints the key or approves the grant in a browser (0). 35."
        },
        "scores": {
          "a": 60,
          "b": 35
        }
      },
      {
        "by": 18,
        "category": "security",
        "leads": "dydx",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Orders are signed by the account key or by a permissioned key the owner adds as an authenticator, limited by message type, subaccount and market with AllOf or AnyOf, and revoked by `remove_authenticator`; no shared secret and nothing in a URL (28 of 30). A key can be confined to placing and cancelling orders on one subaccount with withdrawals and transfers excluded, though not to a position or order size, and the interface's default API wallet trades all cross-margin pairs (16 of 20). The API returns no untrusted content (10). Every action is a chain transaction and the indexer lists fills, orders and transfers per subaccount, and authenticators can be listed; no per-key log (10 of 15). A Cantina bug bounty up to $1,000,000 sponsored by dYdX Trading Inc. over the protocol, indexer, web client and SDKs, an Informal Systems audit; no security.txt and no certification (14 of 20). Total 78.",
          "b": "Gate OAuth 2 for the hosted trading MCP with eight scopes per the protected-resource metadata and revocation on the API management page, and API keys with disabled, read-only or read-write per product group, a separate withdrawal group and an IP allow-list of 20 addresses (30). A read-only key and a GATE_READONLY switch exist, and the guide says fund-moving actions need the person's confirmation in the client, with no server-side cap documented (15 of 20). The news and info servers return third-party content with no guidance on treating it as untrusted (5 of 15). Key changes and OAuth grants are visible on the API management page; no per-call log found (5 of 15). No security.txt, no disclosure policy or bounty on a page we read, a proof-of-reserves repository (5 of 20). 60."
        },
        "scores": {
          "a": 78,
          "b": 60
        }
      },
      {
        "by": 12,
        "category": "schema",
        "leads": "gate-io",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "No OpenAPI file found for the indexer; the docs publish a types reference of about 200 pages (OrderSide, TimeInForce, OrderStatus and the rest) and the chain's protobuf messages are in the clients (8 of 25). llms.txt and Markdown docs (10). Endpoint pages describe each call and the guides say when to use short-term against long-term orders and the indexer against the node, but descriptions are short (12 of 20). Enums and types on every field in the reference, with pagination and cursor parameters typed (11 of 15). Examples in Python, TypeScript and Rust for each step; errors are described by HTTP status (400 malformed, 404 not found) with no code list (9 of 15). A /v4 path, protocol releases dated on the status page, deprecated rate-limit fields marked, but no API changelog (8 of 15). Total 58.",
          "b": "No public OpenAPI file was found, though the SDKs are generated and the MCP tools carry typed parameters per the tool reference; the hosted tools' JSON Schema could not be read without a session (12 of 25). The whole REST and WebSocket documentation is downloadable as Markdown and the agent guide is a plain page (10). The tool reference gives one line and the main parameters per tool, the API reference a description per endpoint, no when-not-to-use guidance (12 of 20). Required flags, enums for side, type and time_in_force (11 of 15). Examples per endpoint and a labelled error body with a fixed label list the docs tell you to branch on instead of messages (13 of 15). A versioned changelog, v4.106.177 on 2 November 2026 (12 of 15, since entries are terse). 70."
        },
        "scores": {
          "a": 58,
          "b": 70
        }
      },
      {
        "by": 6,
        "category": "maintenance",
        "leads": "dydx",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read on the clients and the chain. v4-clients was pushed on 29 October 2026 and protocol v9.8.0 shipped on 12 October (30). Protocol v9.7 on 11 September, v9.8.0 on 12 October, v4-client-js tags 3.5.0 and 3.6.0, three or more in 90 days (20). A Discord, a help centre and 36 open issues on v4-clients whose replies couldn't be read (12 of 25). Official SDKs current, the TypeScript client at 3.6.0 and the Python client at 1.1.6 from February 2026 (12 of 15). CI workflows for lint, test, publish and audit, with trusted publishing and provenance on npm (9 of 10). Total 83.",
          "b": "Read as a hosted service with open-source MCP packages. The API changelog's latest entry is 2 November 2026 and gate-skills was pushed 3 November (30). 40 dated changelog entries since 5 August 2026 (20). developer@gate.com, a help centre and issue trackers on gate-mcp and gate-skills, replies not checked (12 of 25). In the official MCP registry under io.github.gateio-dev, a GitHub namespace rather than gate.com, and official SDKs current (10 of 15). The local package has a publish workflow and no test workflow in CI, and its last tag is 16 April 2026 (5 of 10). 77."
        },
        "scores": {
          "a": 83,
          "b": 77
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "dYdX Trading Inc.",
        "b": "Gate",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.gatemcp.ai/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "0",
        "b": "58",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "io.github.gateio-dev/gate-mcp",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-29",
        "b": "2026-11-02",
        "name": "Last release"
      },
      {
        "a": "2026-03-12",
        "b": "2026-07-22",
        "name": "Terms last updated"
      },
      {
        "a": "2025-06-06",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "119 stars, 86k npm/wk",
        "b": "44 stars",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "dYdX scores 69.5 (B) on agent readiness against Gate's 56.4 (C), and leads in 5 of 7 scored categories. Gate leads on schema \u0026 documentation.",
        "question": "Which is better for AI agents, dYdX or Gate?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do dYdX and Gate need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for dYdX. Gate has a hosted endpoint at https://api.gatemcp.ai/mcp.",
        "question": "Can an agent call dYdX and Gate without installing anything?"
      },
      {
        "answer": "dYdX is open source (The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.). No open-source release is listed for Gate.",
        "question": "Are dYdX and Gate open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 83 against 42",
          "Security \u0026 auth, 78 against 60",
          "Payments \u0026 pricing, 60 against 35",
          "Maintenance \u0026 community, 83 against 77"
        ],
        "also": [
          "Open source"
        ],
        "goodFor": "An agent trading perpetuals from its own Cosmos wallet or through a permissioned key on an owner's account, outside the US, Canada and UK.",
        "slug": "dydx",
        "watchFor": "No official MCP server; the one registry entry is a third party's analytics server"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 70 against 58"
        ],
        "also": [
          "A hosted endpoint, with nothing to install",
          "Runs on your own machine"
        ],
        "goodFor": "An agent trading spot, futures and earn products in a person's Gate account outside the 35 restricted locations, with a keyless MCP for research and an OAuth MCP or scoped key for trading.",
        "slug": "gate-io",
        "watchFor": "No status page, incident history or SLA; the terms give no uptime guarantee and cap liability at three months of fees"
      }
    ],
    "history": null,
    "job": {
      "capability": "exchange.derivatives",
      "name": "Exchange derivatives"
    },
    "others": [
      {
        "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/bitget-vs-dydx.json",
        "title": "Bitget vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-gate-io.json",
        "title": "Bitget vs Gate",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-dydx.json",
        "title": "Bithumb Open API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-gate-io.json",
        "title": "Bithumb Open API vs Gate",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-dydx.json",
        "title": "Bitstamp API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-gate-io.json",
        "title": "Bitstamp API vs Gate",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-gate-io"
      },
      {
        "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/crypto-com-exchange-vs-dydx.json",
        "title": "Crypto.com Exchange API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-gate-io.json",
        "title": "Crypto.com Exchange API vs Gate",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-uniswap.json",
        "title": "dYdX vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-upbit.json",
        "title": "dYdX vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-upbit"
      },
      {
        "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-htx.json",
        "title": "Gate vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-hyperliquid.json",
        "title": "Gate vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-kraken.json",
        "title": "Gate vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-kucoin.json",
        "title": "Gate vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-kucoin"
      },
      {
        "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/gate-io-vs-okx.json",
        "title": "Gate vs OKX API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-uniswap.json",
        "title": "Gate vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-upbit.json",
        "title": "Gate vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-gate-io.json",
        "title": "Binance API vs Gate",
        "url": "https://www.anchorterminal.com/compare/binance-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-gate-io.json",
        "title": "Coinbase Advanced Trade API vs Gate",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-gate-io.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs Gate",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-dydx.json",
        "title": "Binance API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/binance-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-dydx.json",
        "title": "Coinbase Advanced Trade API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-dydx.json",
        "title": "Deribit vs dYdX",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-gate-io.json",
        "title": "Deribit vs Gate",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/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-htx.json",
        "title": "dYdX vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-hyperliquid.json",
        "title": "dYdX vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-kraken.json",
        "title": "dYdX vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-kucoin.json",
        "title": "dYdX vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-kucoin"
      },
      {
        "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/dydx-vs-okx.json",
        "title": "dYdX vs OKX API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-dydx.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs dYdX",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-dydx"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 41,
        "dydx": 83,
        "edge": "dydx",
        "gate-io": 42,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 12,
        "dydx": 58,
        "edge": "gate-io",
        "gate-io": 70,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 0,
        "dydx": 66,
        "edge": "",
        "gate-io": 66,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 18,
        "dydx": 78,
        "edge": "dydx",
        "gate-io": 60,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 25,
        "dydx": 60,
        "edge": "dydx",
        "gate-io": 35,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "dydx": 83,
        "edge": "dydx",
        "gate-io": 77,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 1,
        "dydx": 50,
        "edge": "dydx",
        "gate-io": 49,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "dYdX scores 69.5 (B) on agent readiness against Gate's 56.4 (C), and leads in 5 of 7 scored categories. Gate leads on schema \u0026 documentation. Both do exchange derivatives.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "dydx": "dYdX gives an agent keyless indexer reads, permissioned keys limited by message type, subaccount and market, a Statuspage with a clean 90 days, published fees and a testnet with a faucet. There is no official MCP server or OpenAPI file, orders are chain transactions signed by the clients, and no one entity operates the hosted endpoints.",
      "gate-io": "Gate runs official hosted MCP servers with keyless market data and OAuth-scoped trading, a local stdio server with a read-only switch, per-endpoint rate limits with headers and a futures testnet. There is no status page, SLA or OpenAPI file, the fee table needs a login, the MCP host is a separate domain, and the terms name no company."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/dydx-vs-gate-io",
    "json": "https://www.anchorterminal.com/compare/dydx-vs-gate-io.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/dydx-vs-gate-io.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/dydx-vs-gate-io.min.md"
  },
  "markdown": "dYdX scores 69.5 (B) on agent readiness against Gate's 56.4 (C), and leads in 5 of 7 scored categories. Gate leads on schema \u0026 documentation. Both do exchange derivatives.\n\n- dYdX: grade B, 69.5/100, rank #221 of 1349. Markdown https://www.anchorterminal.com/tools/dydx.md · JSON https://www.anchorterminal.com/api/v1/tools/dydx.json\n- Gate: grade C, 56.4/100, rank #786 of 1349. Markdown https://www.anchorterminal.com/tools/gate-io.md · JSON https://www.anchorterminal.com/api/v1/tools/gate-io.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### dYdX (B)\n\nGood for: An agent trading perpetuals from its own Cosmos wallet or through a permissioned key on an owner's account, outside the US, Canada and UK.\n\nAhead on:\n- Reliability, 83 against 42\n- Security \u0026 auth, 78 against 60\n- Payments \u0026 pricing, 60 against 35\n- Maintenance \u0026 community, 83 against 77\n\nAlso in its favour:\n- Open source\n\nWatch for: No official MCP server; the one registry entry is a third party's analytics server\n\n### Gate (C)\n\nGood for: An agent trading spot, futures and earn products in a person's Gate account outside the 35 restricted locations, with a keyless MCP for research and an OAuth MCP or scoped key for trading.\n\nAhead on:\n- Schema \u0026 documentation, 70 against 58\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n- Runs on your own machine\n\nWatch for: No status page, incident history or SLA; the terms give no uptime guarantee and cap liability at three months of fees\n\n\n## Why the edge\n\n### Reliability: dYdX +41\n\n- dYdX (83): Read with the hosted lines on the indexer API and the chain endpoints the clients submit to. status.dydx.trade is an Atlassian Statuspage with Frontends, dYdX Chain, Indexer, Order Gateway and Client Libraries components and an RSS history (20). From 1 August to 3 November 2026 the feed has eight items, seven scheduled maintenance windows of 29 minutes to 2 hours (indexer on 9 September, 8 and 15 October, protocol v9.7 on 11 September and v9.8.0 on 12 October, WebSocket compression on 26 and 28 October) and one degraded instant-deposit path through an onboarding partner from 24 to 29 September, outside the trading API. Clean or trivial (30). Rate limits documented with numbers for the indexer, the block limits and the public nodes (15). No 429 shape or Retry-After for the indexer; short-term orders expire by `goodTilBlock` and client IDs let an agent find an order after a timeout (8 of 15). No SLA (0). Mainnet generally available; the Order Entry Gateway is marked testnet-only (10). 20 + 30 + 15 + 8 + 0 + 10 = 83.\n- Gate (42): Graded with the hosted lines on the API v4 at api.gateio.ws with the hosted MCP beside it. No status page found (status.gate.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 group with numbers and fill-ratio rules (15). Every response carries X-Gate-RateLimit-Limit, X-Gate-RateLimit-Requests-Remain and X-Gate-RateLimit-Reset-Timestamp, 429 answers with the label TOO_FAST, and spot orders take a user `text` identifier, but no retry or idempotency guidance is written down (12 of 15). No SLA (0). API v4 and the MCP endpoints are production surfaces (10). 42.\n\n### Payments \u0026 pricing: dYdX +25\n\n- dYdX (60): No machine payment protocol (0). Fees public per tier without login (20). Testnet with a faucet and no card anywhere (20). No signup; an agent with a funded wallet trades, subject to the geographic terms (20). Total 60.\n- Gate (35): No machine payment protocol (0). The fee page's table loads after login; help centre and learn articles give the VIP 0 spot rates (15 of 20). Market data over REST and the public MCP needs no account and no card (20). A person registers, verifies identity and mints the key or approves the grant in a browser (0). 35.\n\n### Security \u0026 auth: dYdX +18\n\n- dYdX (78): Orders are signed by the account key or by a permissioned key the owner adds as an authenticator, limited by message type, subaccount and market with AllOf or AnyOf, and revoked by `remove_authenticator`; no shared secret and nothing in a URL (28 of 30). A key can be confined to placing and cancelling orders on one subaccount with withdrawals and transfers excluded, though not to a position or order size, and the interface's default API wallet trades all cross-margin pairs (16 of 20). The API returns no untrusted content (10). Every action is a chain transaction and the indexer lists fills, orders and transfers per subaccount, and authenticators can be listed; no per-key log (10 of 15). A Cantina bug bounty up to $1,000,000 sponsored by dYdX Trading Inc. over the protocol, indexer, web client and SDKs, an Informal Systems audit; no security.txt and no certification (14 of 20). Total 78.\n- Gate (60): Gate OAuth 2 for the hosted trading MCP with eight scopes per the protected-resource metadata and revocation on the API management page, and API keys with disabled, read-only or read-write per product group, a separate withdrawal group and an IP allow-list of 20 addresses (30). A read-only key and a GATE_READONLY switch exist, and the guide says fund-moving actions need the person's confirmation in the client, with no server-side cap documented (15 of 20). The news and info servers return third-party content with no guidance on treating it as untrusted (5 of 15). Key changes and OAuth grants are visible on the API management page; no per-call log found (5 of 15). No security.txt, no disclosure policy or bounty on a page we read, a proof-of-reserves repository (5 of 20). 60.\n\n### Schema \u0026 documentation: Gate +12\n\n- dYdX (58): No OpenAPI file found for the indexer; the docs publish a types reference of about 200 pages (OrderSide, TimeInForce, OrderStatus and the rest) and the chain's protobuf messages are in the clients (8 of 25). llms.txt and Markdown docs (10). Endpoint pages describe each call and the guides say when to use short-term against long-term orders and the indexer against the node, but descriptions are short (12 of 20). Enums and types on every field in the reference, with pagination and cursor parameters typed (11 of 15). Examples in Python, TypeScript and Rust for each step; errors are described by HTTP status (400 malformed, 404 not found) with no code list (9 of 15). A /v4 path, protocol releases dated on the status page, deprecated rate-limit fields marked, but no API changelog (8 of 15). Total 58.\n- Gate (70): No public OpenAPI file was found, though the SDKs are generated and the MCP tools carry typed parameters per the tool reference; the hosted tools' JSON Schema could not be read without a session (12 of 25). The whole REST and WebSocket documentation is downloadable as Markdown and the agent guide is a plain page (10). The tool reference gives one line and the main parameters per tool, the API reference a description per endpoint, no when-not-to-use guidance (12 of 20). Required flags, enums for side, type and time_in_force (11 of 15). Examples per endpoint and a labelled error body with a fixed label list the docs tell you to branch on instead of messages (13 of 15). A versioned changelog, v4.106.177 on 2 November 2026 (12 of 15, since entries are terse). 70.\n\n### Maintenance \u0026 community: dYdX +6\n\n- dYdX (83): Read on the clients and the chain. v4-clients was pushed on 29 October 2026 and protocol v9.8.0 shipped on 12 October (30). Protocol v9.7 on 11 September, v9.8.0 on 12 October, v4-client-js tags 3.5.0 and 3.6.0, three or more in 90 days (20). A Discord, a help centre and 36 open issues on v4-clients whose replies couldn't be read (12 of 25). Official SDKs current, the TypeScript client at 3.6.0 and the Python client at 1.1.6 from February 2026 (12 of 15). CI workflows for lint, test, publish and audit, with trusted publishing and provenance on npm (9 of 10). Total 83.\n- Gate (77): Read as a hosted service with open-source MCP packages. The API changelog's latest entry is 2 November 2026 and gate-skills was pushed 3 November (30). 40 dated changelog entries since 5 August 2026 (20). developer@gate.com, a help centre and issue trackers on gate-mcp and gate-skills, replies not checked (12 of 25). In the official MCP registry under io.github.gateio-dev, a GitHub namespace rather than gate.com, and official SDKs current (10 of 15). The local package has a publish workflow and no test workflow in CI, and its last tag is 16 April 2026 (5 of 10). 77.\n\n## Score by category\n\n| Category | Weight | dYdX | Gate | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 83 | 42 | dYdX +41 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 58 | 70 | Gate +12 |\n| Agent ergonomics | 13% (16.2 this run) | 66 | 66 | even |\n| Security \u0026 auth | 14% (17.5 this run) | 78 | 60 | dYdX +18 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 35 | dYdX +25 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 83 | 77 | dYdX +6 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 50 | 49 | dYdX +1 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **69.5 · B** | **56.4 · C** | |\n\n## Facts side by side\n\n| Fact | dYdX | Gate |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | dYdX Trading Inc. | Gate |\n| Hosted endpoint | no (local only) | `https://api.gatemcp.ai/mcp` |\n| Transports |  | Streamable HTTP, stdio |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc. | none |\n| Tools exposed | 0 | 58 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | no |\n| MCP registry | not listed | `io.github.gateio-dev/gate-mcp` |\n| Last release | 2026-10-29 | 2026-11-02 |\n| Terms last updated | 2026-03-12 | 2026-07-22 |\n| Privacy policy last updated | 2025-06-06 | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | yes | yes |\n| Arbitration or class-action waiver | yes | yes |\n| Popularity | 119 stars, 86k npm/wk | 44 stars |\n\n## Verdicts\n\n**dYdX.** dYdX gives an agent keyless indexer reads, permissioned keys limited by message type, subaccount and market, a Statuspage with a clean 90 days, published fees and a testnet with a faucet. There is no official MCP server or OpenAPI file, orders are chain transactions signed by the clients, and no one entity operates the hosted endpoints.\n\n**Gate.** Gate runs official hosted MCP servers with keyless market data and OAuth-scoped trading, a local stdio server with a read-only switch, per-endpoint rate limits with headers and a futures testnet. There is no status page, SLA or OpenAPI file, the fee table needs a login, the MCP host is a separate domain, and the terms name no company.\n\n## Before you call either\n\n### dYdX\n\n1. Ask the account owner for an authenticator limited to `/dydxprotocol.clob.MsgPlaceOrder` and `MsgCancelOrder` on one subaccount, and keep its private key out of prompts\n2. Set a unique 32-bit `clientId` on every order and look it up on `/v4/orders` after a timeout; short-term orders expire with `goodTilBlock` (at most 20 blocks ahead)\n3. Stay under 2 stateful orders a block and 20 per 100 blocks; failed placements count, so use short-term orders for active trading\n4. Enable permessage-deflate on the indexer WebSocket; since 26 October 2026 connections without compression may be refused with 426\n5. Check `/v4/geo` and the compliance screen before trading for a person, since the terms exclude the United States, Canada and the United Kingdom\n\n### Gate\n\n1. Start on https://api.gatemcp.ai/mcp for prices and order books with no credential; switch to /mcp/exchange only when the person has approved the OAuth grant with the narrowest scopes\n2. For a key-based route, create a key on a dedicated sub-account with read-only on every group but the one the task needs, withdrawal disabled and an IP allow-list; changes take up to 5 minutes\n3. Put a unique `text` value starting with t- on every spot order and reuse it on the retry; read the order back before placing again\n4. Read X-Gate-RateLimit-Requests-Remain and stop at zero; spot order placement is capped at 10 a second and withdrawals at 1 per 3 seconds\n5. Rehearse futures logic on api-testnet.gateapi.io with TestNet keys; there is no spot testnet\n\n## Questions\n\n### Which is better for AI agents, dYdX or Gate?\n\ndYdX scores 69.5 (B) on agent readiness against Gate's 56.4 (C), and leads in 5 of 7 scored categories. Gate leads on schema \u0026 documentation.\n\n### Do dYdX and Gate need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call dYdX and Gate without installing anything?\n\nNo hosted endpoint is listed for dYdX. Gate has a hosted endpoint at https://api.gatemcp.ai/mcp.\n\n### Are dYdX and Gate open source?\n\ndYdX is open source (The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.). No open-source release is listed for Gate.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/dydx-vs-gate-io.json, and with the fewest tokens: https://www.anchorterminal.com/compare/dydx-vs-gate-io.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"dydx\", \"b\": \"gate-io\"}`. From a terminal: `anchor compare dydx gate-io`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/dydx.json and https://www.anchorterminal.com/api/v1/tools/gate-io.json\n\n## Other comparisons with dYdX or Gate\n\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- [Bitget vs dYdX](https://www.anchorterminal.com/compare/bitget-vs-dydx.md)\n- [Bitget vs Gate](https://www.anchorterminal.com/compare/bitget-vs-gate-io.md)\n- [Bithumb Open API vs dYdX](https://www.anchorterminal.com/compare/bithumb-vs-dydx.md)\n- [Bithumb Open API vs Gate](https://www.anchorterminal.com/compare/bithumb-vs-gate-io.md)\n- [Bitstamp API vs dYdX](https://www.anchorterminal.com/compare/bitstamp-vs-dydx.md)\n- [Bitstamp API vs Gate](https://www.anchorterminal.com/compare/bitstamp-vs-gate-io.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- [Crypto.com Exchange API vs dYdX](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-dydx.md)\n- [Crypto.com Exchange API vs Gate](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-gate-io.md)\n- [dYdX vs Uniswap Trading API](https://www.anchorterminal.com/compare/dydx-vs-uniswap.md)\n- [dYdX vs Upbit Open API](https://www.anchorterminal.com/compare/dydx-vs-upbit.md)\n- [Gate vs Gemini Exchange API](https://www.anchorterminal.com/compare/gate-io-vs-gemini-exchange.md)\n- [Gate vs HTX trading API](https://www.anchorterminal.com/compare/gate-io-vs-htx.md)\n- [Gate vs Hyperliquid](https://www.anchorterminal.com/compare/gate-io-vs-hyperliquid.md)\n- [Gate vs Kraken API](https://www.anchorterminal.com/compare/gate-io-vs-kraken.md)\n- [Gate vs KuCoin](https://www.anchorterminal.com/compare/gate-io-vs-kucoin.md)\n- [Gate vs MEXC API](https://www.anchorterminal.com/compare/gate-io-vs-mexc.md)\n- [Gate vs OKX API](https://www.anchorterminal.com/compare/gate-io-vs-okx.md)\n- [Gate vs Uniswap Trading API](https://www.anchorterminal.com/compare/gate-io-vs-uniswap.md)\n- [Gate vs Upbit Open API](https://www.anchorterminal.com/compare/gate-io-vs-upbit.md)\n- [Binance API vs Gate](https://www.anchorterminal.com/compare/binance-vs-gate-io.md)\n- [Coinbase Advanced Trade API vs Gate](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-gate-io.md)\n- [Coinbase MCP server (Coinbase for Agents) vs Gate](https://www.anchorterminal.com/compare/coinbase-mcp-vs-gate-io.md)\n- [Binance API vs dYdX](https://www.anchorterminal.com/compare/binance-vs-dydx.md)\n- [Coinbase Advanced Trade API vs dYdX](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-dydx.md)\n- [Deribit vs dYdX](https://www.anchorterminal.com/compare/deribit-vs-dydx.md)\n- [Deribit vs Gate](https://www.anchorterminal.com/compare/deribit-vs-gate-io.md)\n- [dYdX vs Gemini Exchange API](https://www.anchorterminal.com/compare/dydx-vs-gemini-exchange.md)\n- [dYdX vs HTX trading API](https://www.anchorterminal.com/compare/dydx-vs-htx.md)\n- [dYdX vs Hyperliquid](https://www.anchorterminal.com/compare/dydx-vs-hyperliquid.md)\n- [dYdX vs Kraken API](https://www.anchorterminal.com/compare/dydx-vs-kraken.md)\n- [dYdX vs KuCoin](https://www.anchorterminal.com/compare/dydx-vs-kucoin.md)\n- [dYdX vs MEXC API](https://www.anchorterminal.com/compare/dydx-vs-mexc.md)\n- [dYdX vs OKX API](https://www.anchorterminal.com/compare/dydx-vs-okx.md)\n- [Coinbase MCP server (Coinbase for Agents) vs dYdX](https://www.anchorterminal.com/compare/coinbase-mcp-vs-dydx.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": "dYdX vs Gate",
        "url": ""
      }
    ],
    "description": "dYdX scores 69.5 (B) to Gate's 56.4 (C) for exchange derivatives. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "dYdX B 69.5",
      "Gate C 56.4",
      "scores"
    ],
    "h1": "dYdX vs Gate",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/dydx-vs-gate-io",
    "published": "2026-10-01",
    "section": "tools",
    "title": "dYdX vs Gate for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-03",
    "url": "https://www.anchorterminal.com/compare/dydx-vs-gate-io"
  },
  "tokens": {
    "markdown": 4600,
    "slim": 2430
  },
  "version": 1
}
