{
  "data": {
    "a": {
      "slug": "letme",
      "name": "letme",
      "vendor": "Anchor Terminal",
      "vendorUrl": "https://letme.dev",
      "kind": "http-api",
      "category": "aggregator",
      "summary": "letme (letme.dev) picks a tool for a job from Anchor Terminal's published grades by one published rule and says how to call it direct. Agents ask by job, capability or listing over HTTP or MCP, with no key.",
      "url": "https://www.anchorterminal.com/tools/letme",
      "markdownUrl": "https://www.anchorterminal.com/tools/letme.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/letme.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/letme.json",
      "dns": "letme.grade.anchorterminal.com",
      "license": "Closed source. The about page says the code is private and there's no public repository. Bugs go on Anchor Terminal's public issue tracker (https://www.anchorterminal.com/issues/), open since 20 October 2026. The directory data letme reads and hands out is CC BY 4.0.",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://letme.dev",
      "packages": [],
      "auth": "none",
      "authNotes": "Asking for a pick needs no key and no account. A self-issued letme key for calling through letme is specified on /letme/#key and not issued yet.",
      "pricing": "free",
      "pricingNotes": "Picking is free and needs no key. Calling through letme, at the vendor's own price with partner vendors paying 15 per cent of what they bill, comes later (https://www.anchorterminal.com/letme/#costs).",
      "priceSummary": "Free",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No payments yet. Top-ups by x402 are specified for when calling through letme opens (https://www.anchorterminal.com/letme/#pay).",
        "endpoints": []
      },
      "toolCount": 2,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-02"
      },
      "docsUrl": "https://www.anchorterminal.com/letme/",
      "llmsTxt": "https://letme.dev/llms.txt",
      "openapi": "https://letme.dev/openapi.json",
      "capabilities": [
        "agent.tools"
      ],
      "tags": [
        "hosted",
        "free",
        "no-signup",
        "mcp",
        "llms-txt",
        "uk"
      ],
      "lastRelease": "2026-10-22",
      "graded": true,
      "own": true,
      "disclosure": "letme is Anchor Terminal's own product, run by the same company and founder. Since 20 October 2026, at the founder's request, it's graded the same way as every listing, by the same published checklist with the same readings, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed. letme never picks itself. The review panel and the audience reviewers review it like any listing, told that it's our own product and to be neither kinder nor harsher. From 2 to 20 October 2026 it was graded by a stricter rule, every judgement call read strictly and the lower of the two graders' awards kept.",
      "anchor": {
        "graded": true,
        "score": 74.2,
        "grade": "BB",
        "agentReady": true,
        "rank": 78,
        "ranked": true,
        "rankOf": 1266,
        "categoryRank": 2,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 88,
          "maintenance": 58,
          "payments": 60,
          "reliability": 85,
          "schema": 88,
          "security": 57,
          "transparency": 81
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-23"
        },
        "negative": -1,
        "negativeNotes": [
          "Until 20 October 2026 the /letme/ page said the anchor CLI could be built from the site's source and that letme's signing code could be read there, while the about page said the code is private. A stale claim, 2 points. Fixed and documented in the changelog entry of 20 October 2026, and /letme/ read at 14:33 UTC on 23 October says the code is closed source and the CLI is downloaded from /dl/ with SHA-256 sums, so it decays to 1 point (https://www.anchorterminal.com/changelog/, https://www.anchorterminal.com/letme/)."
        ],
        "verdict": "letme answers a job, capability or listing with one pick from Anchor Terminal's ratings and how to call it direct, over HTTP or a two-tool MCP server, with no key and signed answers. Picking is all that's live. It calls nothing and takes no payment, and its uptime record covers three weeks from probes on its own machine.",
        "bestFor": "An agent that needs one tool for a job, chosen at run time by a published rule from Anchor Terminal's ratings, with the endpoint and connect snippet to call it direct, keyless over HTTP or MCP.",
        "disclosure": "letme is Anchor Terminal's own product, run by the same company and founder. Since 20 October 2026, at the founder's request, it's graded the same way as every listing, by the same published checklist with the same readings, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed. letme never picks itself. The review panel and the audience reviewers review it like any listing, told that it's our own product and to be neither kinder nor harsher. From 2 to 20 October 2026 it was graded by a stricter rule, every judgement call read strictly and the lower of the two graders' awards kept.",
        "strengths": [
          "No key, account or card for any pick, over HTTP GET, POST or the MCP endpoint at letme.dev/mcp.",
          "Two MCP tools in 2,647 bytes of tools/list, both annotated read-only, idempotent and not destructive.",
          "Every answer, errors included, carries an RFC 9421 Ed25519 signature checkable against the published key directory.",
          "Limits published as 20 requests a second per IP address with bursts of 40, then 429 with Retry-After.",
          "A 400 names the filter it can't read, and a filtered-out pick returns the nearest listing with the filter that ruled it out."
        ],
        "weaknesses": [
          "Picks only. Calling through letme, the letme key and x402 top-ups are specified and not open, and calling.open is false in every answer.",
          "The status record starts on 2 October 2026, its probes run on the same machine, and 15 of 22 days were partly watched.",
          "Closed source, with no public repository, no official SDK and no entry in the official MCP registry on 23 October 2026.",
          "Until 23 October 2026 the about page said nothing on the reading side was tracked, while the privacy policy keeps per-IP request records, letme queries included, for 90 days. It was corrected that day, after this check, and the score reflects the check until the next one.",
          "An unmatched job can return 404 with an empty suggestions list, and error codes are free strings with no published catalogue."
        ],
        "agentNotes": [
          "Call the pick's endpoint yourself with its connect snippet and auth notes. letme.dev forwards nothing, and a POST to any path but / and /mcp returns 405.",
          "After a failed call to the pick, ask again with not=\u003cslug\u003e to get the next listing by the same rule.",
          "On a job in words, check understood.confidence. At low or medium, ask again with a capability id from understood.others.",
          "Pass n=0, or ask for Markdown, when you need only the pick. The default answer with three alternatives runs to about 7 KB of JSON.",
          "On 429 or 503, wait the Retry-After seconds and retry once. Those two answers come from nginx and aren't signed."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.8,
        "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.2
          }
        ],
        "editorialScores": {
          "ergonomics": 88,
          "maintenance": 58,
          "payments": 60,
          "reliability": 85,
          "schema": 88,
          "security": 57,
          "transparency": 79
        },
        "provenanceScore": 83,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-23",
            "maintenance": "2026-10-23",
            "payments": "2026-10-23",
            "reliability": "2026-10-23",
            "schema": "2026-10-23",
            "security": "2026-10-23",
            "transparency": "2026-10-23"
          },
          "last": "2026-10-23",
          "lastMoved": "2026-10-27",
          "oldest": "2026-10-23",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -s https://letme.dev/web.search",
        "claudeCode": "claude mcp add --transport http letme https://letme.dev/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/agent.tools"
      },
      "area": "business",
      "provenance": {
        "legalEntity": "Long Lunch Labs Limited (company number 17523112, registered in England and Wales, incorporated 15 October 2026), trading as Anchor Terminal and letme",
        "domain": "letme.dev",
        "domainRegistered": "2026-09-30",
        "endpointOnVendorDomain": true,
        "terms": "https://www.anchorterminal.com/terms/",
        "privacy": "https://www.anchorterminal.com/privacy/",
        "statusPage": "https://www.anchorterminal.com/status/",
        "changelog": "https://www.anchorterminal.com/changelog/",
        "securityTxt": "valid",
        "checked": "2026-10-24",
        "notes": [
          "Run by Long Lunch Labs Limited, the company that runs this directory. Terms, privacy and trust (all 24 October 2026), the service level (20 October 2026) and the changelog are Anchor Terminal's own pages and name letme.dev.",
          "Long Lunch Labs Limited is active at Companies House (company number 17523112, private limited company, incorporated 15 October 2026, registered office 71-75 Shelton Street, Covent Garden, London WC2H 9JQ, checked 24 October 2026). The terms, privacy policy and trust page name it with its number and registered office from 24 October 2026. Until then they named Anchor Terminal Ltd and said the number would follow.",
          "letme.dev was registered through Cloudflare on 30 September 2026 and expires on 30 September 2027, per the registry's RDAP record re-read on 23 October 2026.",
          "Status page at anchorterminal.com/status/ since 2 October 2026, with a letme section, uptime by day and an outage list, from probes every five minutes on the same server. letme.dev/status reports the service's own state.",
          "letme.dev/.well-known/security.txt has Contact, Expires (2027-10-01), Preferred-Languages, Canonical and Policy lines, checked 2026-10-23. anchorterminal.com's has the same lines."
        ],
        "score": 83
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/letme.json",
      "live": {
        "slug": "letme",
        "probe": {
          "target": "https://letme.dev",
          "method": "get",
          "lastAt": "2026-11-02T15:06:46.451525129Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 16,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.97,
          "p50ms24h": 26,
          "p95ms24h": 197,
          "samples24h": 249,
          "samples30d": 7898,
          "days": [
            {
              "date": "2026-10-02",
              "probes": 100,
              "ok": 100
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 246
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 158,
              "ok": 158
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.anchorterminal.com/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-02T11:56:18.873540079Z"
        },
        "securityTxt": {
          "url": "https://letme.dev/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-10-01T00:00:00.000Z",
          "checkedAt": "2026-11-01T15:42:37.670033065Z"
        },
        "llmsTxt": {
          "url": "https://letme.dev/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-01T15:14:08.318728108Z"
        },
        "domain": {
          "domain": "letme.dev",
          "registered": "2026-09-30",
          "source": "https://pubapi.registry.google/rdap/domain/letme.dev",
          "checkedAt": "2026-11-01T14:13:51.263160322Z"
        },
        "pages": [
          {
            "url": "https://www.anchorterminal.com/changelog/",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-02T07:29:39.460586674Z",
            "changedAt": "2026-11-01T06:56:34.047434246Z",
            "fingerprint": "89bf35ec1b9f"
          },
          {
            "url": "https://www.anchorterminal.com/privacy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-02T07:29:41.533011444Z",
            "changedAt": "2026-11-02T07:29:41.533011444Z",
            "fingerprint": "d1d1e20d0eda"
          },
          {
            "url": "https://www.anchorterminal.com/about/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-20T00:09:02.216645518Z",
            "changedAt": "2026-10-20T00:09:02.216645518Z",
            "fingerprint": "05a7d6234d77"
          },
          {
            "url": "https://www.anchorterminal.com/terms/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-02T07:29:43.65006423Z",
            "changedAt": "2026-11-01T06:56:38.260194592Z",
            "fingerprint": "d6b47b86c575"
          }
        ],
        "updatedAt": "2026-11-02T15:06:46.451525129Z"
      }
    },
    "answer": "letme scores 74.2 (BB) on agent readiness against MCP Gateway's 71 (BB), and leads in 4 of 7 scored categories. MCP Gateway leads on security \u0026 auth and maintenance \u0026 community.",
    "b": {
      "slug": "mcp-gateway-parkkola",
      "name": "MCP Gateway",
      "vendor": "Mikko Parkkola",
      "vendorUrl": "https://github.com/MikkoParkkola/mcp-gateway",
      "kind": "mcp",
      "category": "aggregator",
      "summary": "MCP Gateway is a self-hosted Rust binary that runs on the user's machine in front of their own MCP servers and REST APIs, unlike hosted app catalogues, and gives the agent a few search and invoke meta-tools.",
      "url": "https://www.anchorterminal.com/tools/mcp-gateway-parkkola",
      "markdownUrl": "https://www.anchorterminal.com/tools/mcp-gateway-parkkola.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mcp-gateway-parkkola.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mcp-gateway-parkkola.json",
      "dns": "mcp-gateway-parkkola.grade.anchorterminal.com",
      "repo": "https://github.com/MikkoParkkola/mcp-gateway",
      "license": "PolyForm Noncommercial 1.0.0 (source-available, not OSI) for every first-party file from 4.0.0. Personal and noncommercial use is free; running it in or for a business needs a commercial licence at EUR 500 a month per named project through GitHub Sponsors. 3.0.0 to 3.2.1 shipped as MIT and stay MIT for those copies, and 3.3.x shipped a small MIT core under per-file headers",
      "transports": [
        "stdio",
        "streamable-http",
        "sse",
        "websocket"
      ],
      "packages": [
        {
          "registry": "cargo",
          "name": "mcp-gateway"
        },
        {
          "registry": "npm",
          "name": "@mikkoparkkola/mcp-gateway"
        },
        {
          "registry": "oci",
          "name": "ghcr.io/mikkoparkkola/mcp-gateway"
        }
      ],
      "auth": "mixed",
      "authNotes": "No account with anyone. Over stdio the client that spawns the process is the admin. Over HTTP (default 127.0.0.1:39400) authentication is off by default, every caller is then an anonymous non-admin, and the four server-management tools are refused. With `auth.enabled: true` the gateway takes bearer tokens, API keys, explicit admin keys, OIDC JWTs or mTLS, with per-key tool allow and deny lists and per-key rate limits. Backend credentials are held by the gateway (OS keychain or env files), and OAuth backends can get the verified end user's identity by signed assertion, token passthrough or RFC 8693 token exchange.",
      "pricing": "freemium",
      "pricingNotes": "Free for personal and noncommercial use, including running the whole gateway. Commercial use, including internal use at a company, needs a standard commercial licence at EUR 500 a month per named project, bought through GitHub Sponsors, with no support or SLA; custom terms by email. The Sponsors page lists the matching tier as $500 a month. No trial or evaluation period for companies is stated (https://github.com/MikkoParkkola/mcp-gateway/blob/main/COMMERCIAL.md, checked 2026-11-02).",
      "priceSummary": "$500 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "Local software. No x402, MPP or L402 in the README, llms.txt, COMMERCIAL.md or the source tree, read on 2026-11-02. The commercial licence is bought through GitHub Sponsors.",
        "endpoints": []
      },
      "toolCount": 11,
      "popularity": {
        "githubStars": 65,
        "npmWeekly": 49,
        "pypiWeekly": null,
        "asOf": "2026-11-02"
      },
      "docsUrl": "https://github.com/MikkoParkkola/mcp-gateway/blob/main/README.md",
      "llmsTxt": "https://raw.githubusercontent.com/MikkoParkkola/mcp-gateway/main/llms.txt",
      "registryName": "io.github.MikkoParkkola/mcp-gateway",
      "capabilities": [
        "agent.tools",
        "agent.mcp-client",
        "auth.audit"
      ],
      "tags": [
        "self-hosted",
        "local",
        "source-available",
        "noncommercial-licence",
        "freemium",
        "no-card",
        "mcp",
        "meta-tools",
        "mcp-registry",
        "rust",
        "cli",
        "docker",
        "oauth",
        "llms-txt"
      ],
      "lastRelease": "2026-10-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 71,
        "grade": "BB",
        "agentReady": true,
        "rank": 158,
        "ranked": true,
        "rankOf": 1266,
        "categoryRank": 3,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 77,
          "maintenance": 90,
          "payments": 30,
          "reliability": 87,
          "schema": 75,
          "security": 80,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-02"
        },
        "negative": -2,
        "negativeNotes": [
          "-2, 28 August 2026. GHSA-89h6-rm4x-9rw7 (high, CVSS 4.0 8.8). In 2.12.0 to 3.4.0 a web page could use DNS rebinding to reach a locally running gateway without credentials and call its admin tools and configured backends, with whatever secrets the gateway held. Fixed in 3.5.0 the same day, disclosed with credit to the reporters, and the 3.5.0 changelog lists the breaking change that closes it, so the lowest deduction. https://github.com/MikkoParkkola/mcp-gateway/security/advisories/GHSA-89h6-rm4x-9rw7"
        ],
        "verdict": "A local gateway that puts many MCP servers and REST APIs behind 9 to 17 typed, annotated meta-tools, with scoped keys, tool-poisoning scans, audit logs and CI on every change. Its own benchmark found no completed-task token saving, one person maintains it, and since 4.0.0 commercial use needs a EUR 500 a month licence.",
        "bestFor": "One person running many local and remote MCP servers who wants a single local entry with a small tool list, scoped keys and poisoning checks",
        "strengths": [
          "The agent sees 9 to 17 meta-tools, 11 in the default admin set, however many backends sit behind it; Code Mode cuts that to two",
          "Every meta-tool has a typed JSON Schema input and readOnlyHint or destructiveHint annotations, read from meta_mcp_tool_defs.rs",
          "Backend tool descriptions are scanned for poisoning patterns before the agent sees them, and pinned capability files fail closed when they change",
          "Per-key tool allow and deny lists, admin-only management tools, per-user OAuth isolation that fails closed, and an NDJSON audit trail",
          "Public CI on main (the last eight runs passed by 26 October 2026), cargo audit, Dependabot, and two advisories published with credit"
        ],
        "weaknesses": [
          "The project's own live run found the meta path used 1.2 to 16.1 per cent more input tokens and one extra turn on every task",
          "PolyForm Noncommercial since 4.0.0, so any company use needs a EUR 500 a month licence, with no stated evaluation period",
          "One maintainer; 2,224 of 3,186 commits are authored under an anonymous `x` identity between 29 August and 15 September 2026",
          "HTTP authentication is off by default, and a DNS-rebinding flaw gave web pages admin control of local gateways until 3.5.0",
          "The changelog has no 3.3.0 entry for the relicence, dates an unreleased 4.0.0, and the npm installer runs an unverified downloaded binary"
        ],
        "agentNotes": [
          "Call `gateway_search_tools` with a keyword first, then `gateway_invoke` with the returned `server` and `tool`; expect one extra turn per task.",
          "Pass backend arguments inside `arguments` as an object; the gateway does not check them against the backend schema before routing.",
          "Read `gateway_list_servers` for `circuit_breaker` and `status: disabled` before retrying a failing backend; a killed backend stays off until `gateway_revive_server`.",
          "Treat tool results as untrusted. The response scanner is pattern-based and doesn't make backend output safe to follow.",
          "Expect `gateway_kill_server`, `gateway_reload_config` and similar to be refused over HTTP unless the operator gave you an admin key."
        ],
        "metrics": {
          "kind": "local",
          "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": 71
          }
        ],
        "editorialScores": {
          "ergonomics": 77,
          "maintenance": 90,
          "payments": 30,
          "reliability": 87,
          "schema": 75,
          "security": 80,
          "transparency": 64
        },
        "provenanceScore": 55,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-02",
            "maintenance": "2026-11-02",
            "payments": "2026-11-02",
            "reliability": "2026-11-02",
            "schema": "2026-11-02",
            "security": "2026-11-02",
            "transparency": "2026-11-02"
          },
          "last": "2026-11-02",
          "oldest": "2026-11-02",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "brew install MikkoParkkola/tap/mcp-gateway \u0026\u0026 mcp-gateway setup wizard --configure-client \u0026\u0026 mcp-gateway serve   # or: cargo install mcp-gateway",
        "claudeCode": "claude mcp add gateway -- mcp-gateway serve --stdio",
        "config": {
          "mcpServers": {
            "gateway": {
              "type": "http",
              "url": "http://localhost:39400/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.tools",
        "tool": "https://letme.dev/mcp-gateway-parkkola"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Standard commercial licence",
          "unit": "month",
          "usd": 500,
          "note": "The GitHub Sponsors tier is shown as $500 a month; COMMERCIAL.md states EUR 500 a month per named project. Covers one organisation while sponsorship stays active, no support or SLA. Personal and noncommercial use is free"
        }
      ],
      "provenance": {
        "legalEntity": "No legal entity found. COMMERCIAL.md, CLA.md and AUTHORSHIP.md name Mikko Parkkola, Finland, as licensor and author",
        "domain": "github.com",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "https://github.com/MikkoParkkola/mcp-gateway/blob/main/COMMERCIAL.md",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/MikkoParkkola/mcp-gateway/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-11-02",
        "notes": [
          "No company, product domain or register entry. The licence files, COMMERCIAL.md and CLA.md name Mikko Parkkola as licensor; the crates.io owner, npm maintainer and registry namespace all point at the GitHub account MikkoParkkola. The PolyForm Noncommercial licence and COMMERCIAL.md stand in for terms.",
          "No privacy page. The software runs on the owner's machine; no telemetry or update check was found in the source. The default plugin marketplace URL, https://plugins.mcpgateway.io, is contacted only by `mcp-gateway plugin` commands and gave no DNS answer on 2 November 2026.",
          "SECURITY.md asks for GitHub private vulnerability reporting or email, with a 48-hour acknowledgement and a 7-day fix target for critical issues. No security.txt, as there is no product domain.",
          "Local software, so no status page. The changelog follows Keep a Changelog but has no 3.3.0 or 3.3.1 section, and dates 1.0.0 and 2.0.0 to January 2025 where the git tags say 25 January 2026.",
          "firstReleased is 25 January 2026, the v1.0.0 and v2.0.0 tags (Python 1.0.0, then the Rust rewrite the same day). The crate was first published on 30 January 2026 and the npm package on 21 May 2026."
        ],
        "score": 55
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mcp-gateway-parkkola.json"
    },
    "edges": [
      {
        "by": 32,
        "category": "maintenance",
        "leads": "mcp-gateway-parkkola",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a closed service, for both interfaces. Build 2026.10.22-0655 was live on 23 October in the answer headers, the OpenAPI file and MCP serverInfo, and the latest dated letme entries in the changelog are from 20 October 2026 (30). Dated letme entries on 1, 2, 5, 14, 15 and 20 October 2026 (20). A public changelog, contact by email and form, and a public issue tracker since 20 October 2026 that held no issues on 23 October, so there's no reply record to judge (8 of 15). Not in the official MCP registry, where searches for letme, anchorterminal and com.anchorterminal on 23 October found nothing of letme's, and no official SDK (0). No package, dependencies or CI can be seen from outside, since the code is closed. The changelog describes a test that keeps the documented limit and the nginx config the same (2 October) and deploys checked before they take requests (5 October), neither of which can be inspected, so nothing to score (0 of 10).",
          "b": "4.0.0-beta.3 on 6 October 2026, 27 days before the check, and commits on main to 26 October (30). 4.0.0-beta.1 and beta.2 on 25 September and beta.3 on 6 October, plus 3.5.1 on 4 September, inside 90 days (20). The newest outside issue (#3953, 19 October) got a maintainer reply the same day and a follow-up on 28 October, four issues are open, and outside pull requests from four contributors were merged, per AUTHORSHIP.md. Closed issues and pull requests couldn't be read (robots.txt), so not sampled further (17 of 25). In the official MCP registry as io.github.MikkoParkkola/mcp-gateway under a GitHub namespace, latest 3.5.1, the current stable release (15). Dependabot merges, cargo audit in CI and current tokio and jsonschema, less 2 because the npm wrapper installs a downloaded binary without checking its checksum (8 of 10). 30 + 20 + 17 + 15 + 8 = 90."
        },
        "scores": {
          "a": 58,
          "b": 90
        }
      },
      {
        "by": 30,
        "category": "payments",
        "leads": "letme",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "For both interfaces. No x402, MPP or L402 on any letme endpoint today. x402 top-ups are specified on /letme/ for when calling opens and earn nothing (0). Free, stated in llms.txt ('Nothing here is billed'), the terms and /letme/ (20). No card and no account (20). Keyless over HTTP and MCP, so an agent gets its first answer with no signup (20).",
          "b": "Self-hosted rule, scored on the paid option because any company use needs a commercial licence, as gaia and screenpipe (also noncommercial licences) were read. No payment protocol (0). The standard commercial licence is a public flat EUR 500 a month per named project through GitHub Sponsors, plan-only pricing (10). Personal and noncommercial use is free with no card or account, but there is no free route or stated evaluation period for a company (10 of 20). It installs from Homebrew, crates.io or ghcr.io with no sign-up, and an agent with a shell can run the setup wizard, but buying the licence takes a person on GitHub Sponsors, as screenpipe's did (10 of 20). 0 + 10 + 10 + 10 = 30."
        },
        "scores": {
          "a": 60,
          "b": 30
        }
      },
      {
        "by": 23,
        "category": "security",
        "leads": "mcp-gateway-parkkola",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "For both interfaces. No credential of any kind, so there's nothing to leak and nothing to scope, rotate or revoke, read as for other keyless services (20 of 30). Every MCP tool and every GET is a read, and nothing can spend money. The one write, POST /report, adds an unauthenticated outcome count to the public stats, limited only by the per-address rate limit, read as for a keyless service with one unauthenticated write (14 of 20). Answers carry Anchor Terminal's own directory records (endpoint, auth notes, connect snippets, agent notes), not content passed through from third parties, and every answer and the MCP instructions carry the CC BY credit rule addressed to the agent. No prompt-injection guidance found (10). No account, so no per-call view for an operator. Every answer we read, the 404 included, carried an RFC 9421 Ed25519 signature with the keys at /.well-known/http-message-signatures-directory, so a caller can keep a checkable record of its own calls, credited a little (3 of 15). security.txt on letme.dev and anchorterminal.com with Contact, Policy and Expires 2027-10-01 lines, acknowledgement within two working days and a published fix note per the about page, and good-faith reporting protected in the terms. No bug bounty, no SOC 2 or ISO 27001 (the trust page says so), and no advisories found (10 of 20).",
          "b": "Read with the API checklist, as the gateway is the security layer an operator puts in front of agents. Over HTTP, bearer tokens and API keys with per-key glob allow and deny lists, explicit admin keys, OIDC JWT and mTLS, with OAuth 2.1 to backends, per-issuer token storage and per-user isolation that fails closed. Authentication is off by default on the loopback HTTP port, where callers are anonymous non-admins, and a stdio caller is admin (24 of 30). Management tools need an admin credential since 3.5.0, per-key tool scopes give least privilege, and destructive meta-tools ask the human through elicitation, refused on the 2026-07-28 protocol when the client can't ask and allowed after a warning on older clients; the source calls the prompt a courtesy, with the admin requirement as the control (16 of 20). Backend tool descriptions are scanned for poisoning patterns before they reach the agent, capability files can be hash-pinned, and responses pass a pattern-based injection scanner and credential redactor (13 of 15). NDJSON audit log, per-key cost and usage accounting, Prometheus metrics and trace ids (13 of 15). SECURITY.md with private reporting, a 48-hour acknowledgement and a 7-day fix target; two advisories published with credit on 28 August 2026; cargo audit, secret scanning and cosign-signed images in CI; no bug bounty or security.txt, and the OWASP mapping is self-assessed (14 of 20). 24 + 16 + 13 + 13 + 14 = 80. The DNS-rebinding advisory is a negative event below."
        },
        "scores": {
          "a": 57,
          "b": 80
        }
      },
      {
        "by": 21,
        "category": "transparency",
        "leads": "letme",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "The editorial half, for the service as a whole. Closed source with no public repository (about page). The terms of 14 October 2026 cover letme.dev under the law of England and Wales, and the data letme hands out is CC BY 4.0, with the credit rule in every answer's `directory.credit` and in the terms. Read as a closed service with a plainly licensed data output (20 of 30). The privacy policy (17 October 2026) and the trust page (reviewed 15 October 2026) agree on 90-day request records for letme.dev, what each record holds, Global Privacy Control and Do Not Track stopping the record, no model training and hosting on the company's own servers in the United Kingdom. Two statements didn't agree with the privacy policy when this check was made. The about page said nothing on the reading side was tracked, and the trust page said there were no analytics (both corrected on 23 October 2026, after the check), while the privacy policy describes a per-IP record of each request kept 90 days (on letme.dev including what was asked and which listing was picked) and pages reporting searches, links followed, tabs, copies and time in view. No published DPA, available on request (24 of 30). The terms promise 90 days' notice before retiring anything in the API, and the service level of 20 October 2026 promises 90 days' notice before a breaking change to letme's API or MCP tools. No letme deprecation has been issued to show the policy in use, and while the service level says deprecations have always had 90 days' notice, the changelog of 19 October 2026 records an older review format refused on Anchor Terminal's API that day, a day after it was said to stay valid (15 of 20). Sub-processors are listed with what each sees (public blockchain nodes and Anthropic), and data is kept on the company's own servers in the United Kingdom (20).",
          "b": "PolyForm Noncommercial 1.0.0, source-available and not OSI, with affirmative SPDX headers on every first-party file and LICENSES.md, NOTICE.md and COMMERCIAL.md that agree with each other and say what the earlier MIT grants still cover. Read as gaia's PolyForm source was (20 of 30). Self-hosted, so data stays where the owner runs it; secrets go to the OS keychain, files holding them are 0600 on Unix, and SECURITY.md states the Windows gap. There is no privacy statement (20 of 30). Deprecation notices with versions for the MIT 3.0.0 to 3.2.1 releases on crates.io and npm, upgrade guides for 3.0 and 4.0 and a stated support window of the latest release only, but the 3.3.0 relicence has no changelog entry, and AUTHORSHIP.md says the licensing scheme still awaits an IP lawyer's sign-off (9 of 20). No telemetry, analytics or update check found in the source; Prometheus metrics stay local behind a feature flag, and the plugin marketplace host is contacted only by plugin commands. The docs state nothing either way (15 of 20). 20 + 20 + 9 + 15 = 64."
        },
        "scores": {
          "a": 81,
          "b": 60
        }
      },
      {
        "by": 13,
        "category": "schema",
        "leads": "letme",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "For both interfaces. OpenAPI 3.1 at letme.dev/openapi.json with 9 paths and 10 operations, and typed JSON Schema inputs with `additionalProperties: false` on both MCP tools, `pick` and `about`, read from `tools/list` at 14:38 UTC on 23 October 2026 (25). llms.txt, an Agent Skill, and Markdown answers with a .md suffix or `Accept: text/markdown` (10). The tool descriptions and the OpenAPI operations say what each returns and that nothing is called, and the MCP server instructions and the Skill say when to use letme. The tool definitions themselves don't say when not to use them (16 of 20). minGrade, keyless and x402 are enums, n is bounded 0 to 10 and `about` requires slug, but where, kind, auth, pricing and not are comma-separated strings with their values listed only in descriptions, the `pick` tool marks no field required, and POST /report has no request schema in the OpenAPI file (11 of 15). An example on every parameter and on the POST body, and 400, 404, 429 and 503 documented with schemas, which the live 404 answer matched. No response examples, the error code is a free string, and the 405 `calling_not_open` and 404 `own_listing` answers aren't in the OpenAPI file (13 of 15). The build version 2026.10.22-0655 is in the X-Letme-Build header, the OpenAPI `info.version` and MCP `serverInfo`, letme changes go in the dated changelog at anchorterminal.com/changelog/, and the service level of 20 October 2026 promises 90 days' notice before a breaking change. There's no version in the path or API version apart from the build stamp, and the 22 October build has no changelog entry of its own (13 of 15).",
          "b": "Every meta-tool declares a typed JSON Schema input with required fields, read from src/gateway/meta_mcp_tool_defs.rs, and server.json is published to the official registry. `gateway_invoke` passes backend `arguments` as an open object by design (22 of 25). llms.txt at the repository root, and Markdown docs in the tree (10). Descriptions say what each tool does and when (search first, then invoke; kill and revive say what they change for every session), and the initialize preamble names the discovery order. Backend tool descriptions come from the user's servers and aren't the gateway's (14 of 20). `gateway_list_tools` has an enum on `role`, `gateway_search` caps `limit` at 25 and `detail` is an enum, `nonce` has length bounds; `limit` on `gateway_search_tools` has no maximum (11 of 15). README, QUICKSTART, an annotated gateway-full.yaml and a troubleshooting section; errors are described in prose, with did-you-mean suggestions, and there is no error reference (8 of 15). Semver over the CLI and config file, stated in the README, and a long changelog, less for the missing 3.3.0 section and the misdated 1.0.0 and 2.0.0 entries (10 of 15). 22 + 10 + 14 + 11 + 8 + 10 = 75."
        },
        "scores": {
          "a": 88,
          "b": 75
        }
      },
      {
        "by": 11,
        "category": "ergonomics",
        "leads": "letme",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Context cost is read on the API reading, since letme is listed as an HTTP API, with the MCP endpoint noted. Over HTTP, `n` from 0 to 10 sizes the answer and the Markdown form is shorter. On 23 October the web.search pick came to 7,372 bytes of JSON with the default three alternatives, 4,077 with n=0 and 2,260 as Markdown with n=0. There's no field selection. Over MCP, two tools take 2,647 bytes of `tools/list`, which would earn the full 25 on the MCP reading (22 of 25). Ten filters (where, kind, auth, keyless, x402, pricing, max, minGrade, not, n) on GET, POST and the `pick` tool, and a `nearest` answer naming the filter that ruled a listing out when nothing fits. One pick per answer, so nothing needs paging (18 of 20). A bad filter returns 400 `bad_filter` naming the parameter, a POST to a pick path returns 405 `calling_not_open` saying only / and /mcp take a POST, and MCP errors set `isError` with the same detail. An unmatched job (bake-a-sourdough-loaf, at 14:34 UTC on 23 October) returned 404 `not_found` with an empty suggestions list and links to the directory's search and the word table. Error codes aren't catalogued, and two of them aren't in the OpenAPI file (18 of 20). Both MCP tools are annotated readOnlyHint true, idempotentHint true and destructiveHint false, every GET is a read, and the one write, POST /report, only adds to public counts (20). `pick` needs only the job and defaults the rest, and `about` needs only a slug. No official SDK in any language, only the closed-source `anchor` CLI, which reads the directory and checks letme's signatures (10 of 15).",
          "b": "MCP context cost. Nine to 17 meta-tools, 11 in the default admin set, whatever the number of backends, so 15 for 11 to 30 tools, plus 10 back for Code Mode's two tools, `exposed_meta_tools` and surfaced tools (25). The project's own live run of 4 September 2026 found the meta path used 1.2 to 16.1 per cent more input tokens and one extra turn on every task, which the README states; the context saving is a schema-size saving, so less 5 (20 of 25). `gateway_search_tools` and `gateway_search` take `limit`, `gateway_search` has L0, L1 and L2 detail tiers, `gateway_list_tools` filters by server and role, and backend responses can be shaped with transform chains (17 of 20). Did-you-mean on tool names, LLM-readable output-schema failures, circuit-breaker and disabled status in `gateway_list_servers`, and rate-limited calls excluded from the kill budgets (16 of 20). Meta-tools carry readOnlyHint, destructiveHint, idempotentHint and openWorldHint; destructive meta-tools ask through elicitation, which the source calls a courtesy rather than a control; an idempotency guard exists per ADR-012 (16 of 20). One required argument for search and two for invoke; Rust only, no SDK applies, and setup takes a wizard and a config file (8 of 15). 20 + 17 + 16 + 16 + 8 = 77."
        },
        "scores": {
          "a": 88,
          "b": 77
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Anchor Terminal",
        "b": "Mikko Parkkola",
        "name": "Vendor"
      },
      {
        "a": "https://letme.dev",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "stdio, Streamable HTTP, SSE (legacy), websocket",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Closed source. The about page says the code is private and there's no public repository. Bugs go on Anchor Terminal's public issue tracker (https://www.anchorterminal.com/issues/), open since 20 October 2026. The directory data letme reads and hands out is CC BY 4.0.",
        "b": "PolyForm Noncommercial 1.0.0 (source-available, not OSI) for every first-party file from 4.0.0. Personal and noncommercial use is free; running it in or for a business needs a commercial licence at EUR 500 a month per named project through GitHub Sponsors. 3.0.0 to 3.2.1 shipped as MIT and stay MIT for those copies, and 3.3.x shipped a small MIT core under per-file headers",
        "name": "Licence"
      },
      {
        "a": "2",
        "b": "11",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "io.github.MikkoParkkola/mcp-gateway",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-22",
        "b": "2026-10-06",
        "name": "Last release"
      },
      {
        "a": "2026-10-14",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2026-10-18",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "65 stars, 49 npm/wk",
        "name": "Popularity"
      },
      {
        "a": "3.8/5 (8)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "letme scores 74.2 (BB) on agent readiness against MCP Gateway's 71 (BB), and leads in 4 of 7 scored categories. MCP Gateway leads on security \u0026 auth and maintenance \u0026 community.",
        "question": "Which is better for AI agents, letme or MCP Gateway?"
      },
      {
        "answer": "letme needs no key. MCP Gateway takes an API key or an OAuth sign-in.",
        "question": "Do letme and MCP Gateway need an API key?"
      },
      {
        "answer": "letme has a hosted endpoint at https://letme.dev. MCP Gateway runs on your own machine, with no hosted endpoint listed.",
        "question": "Can an agent call letme and MCP Gateway without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 88 against 75",
          "Agent ergonomics, 88 against 77",
          "Payments \u0026 pricing, 60 against 30",
          "Transparency \u0026 trust, 81 against 60"
        ],
        "also": [
          "No key needed to call it",
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "An agent that needs one tool for a job, chosen at run time by a published rule from Anchor Terminal's ratings, with the endpoint and connect snippet to call it direct, keyless over HTTP or MCP.",
        "slug": "letme",
        "watchFor": "Picks only. Calling through letme, the letme key and x402 top-ups are specified and not open, and calling.open is false in every answer."
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 80 against 57",
          "Maintenance \u0026 community, 90 against 58"
        ],
        "also": [
          "Runs on your own machine",
          "Free to start without a card"
        ],
        "goodFor": "One person running many local and remote MCP servers who wants a single local entry with a small tool list, scoped keys and poisoning checks",
        "slug": "mcp-gateway-parkkola",
        "watchFor": "The project's own live run found the meta path used 1.2 to 16.1 per cent more input tokens and one extra turn on every task"
      }
    ],
    "history": {
      "letme": [
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0,
          "from": 74.2,
          "fromGrade": "BB",
          "to": 74.2,
          "toGrade": "BB"
        },
        {
          "causes": [
            "product",
            "evidence",
            "correction"
          ],
          "date": "2026-10-23",
          "delta": 2.4,
          "from": 71.8,
          "fromGrade": "BB",
          "to": 74.2,
          "toGrade": "BB"
        },
        {
          "causes": [
            "terms",
            "product",
            "evidence",
            "method"
          ],
          "date": "2026-10-21",
          "delta": 35.4,
          "from": 36.4,
          "fromGrade": "F",
          "to": 71.8,
          "toGrade": "BB"
        }
      ],
      "mcp-gateway-parkkola": null
    },
    "job": {
      "capability": "agent.tools",
      "name": "Tool access for agents"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agentweb-vs-letme.json",
        "title": "AgentWeb vs letme",
        "url": "https://www.anchorterminal.com/compare/agentweb-vs-letme"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentweb-vs-mcp-gateway-parkkola.json",
        "title": "AgentWeb vs MCP Gateway",
        "url": "https://www.anchorterminal.com/compare/agentweb-vs-mcp-gateway-parkkola"
      },
      {
        "json": "https://www.anchorterminal.com/compare/composio-rube-vs-letme.json",
        "title": "Composio (API + MCP) vs letme",
        "url": "https://www.anchorterminal.com/compare/composio-rube-vs-letme"
      },
      {
        "json": "https://www.anchorterminal.com/compare/composio-rube-vs-mcp-gateway-parkkola.json",
        "title": "Composio (API + MCP) vs MCP Gateway",
        "url": "https://www.anchorterminal.com/compare/composio-rube-vs-mcp-gateway-parkkola"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letme-vs-merge-agent-handler.json",
        "title": "letme vs Merge Agent Handler",
        "url": "https://www.anchorterminal.com/compare/letme-vs-merge-agent-handler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letme-vs-monid.json",
        "title": "letme vs Monid",
        "url": "https://www.anchorterminal.com/compare/letme-vs-monid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letme-vs-one.json",
        "title": "letme vs One",
        "url": "https://www.anchorterminal.com/compare/letme-vs-one"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letme-vs-smithery.json",
        "title": "letme vs Smithery",
        "url": "https://www.anchorterminal.com/compare/letme-vs-smithery"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letme-vs-stackone.json",
        "title": "letme vs StackOne",
        "url": "https://www.anchorterminal.com/compare/letme-vs-stackone"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letme-vs-unified-to-mcp.json",
        "title": "letme vs Unified.to MCP Server",
        "url": "https://www.anchorterminal.com/compare/letme-vs-unified-to-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letme-vs-zapier-mcp.json",
        "title": "letme vs Zapier MCP (agent actions)",
        "url": "https://www.anchorterminal.com/compare/letme-vs-zapier-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-merge-agent-handler.json",
        "title": "MCP Gateway vs Merge Agent Handler",
        "url": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-merge-agent-handler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-monid.json",
        "title": "MCP Gateway vs Monid",
        "url": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-monid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-one.json",
        "title": "MCP Gateway vs One",
        "url": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-one"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-smithery.json",
        "title": "MCP Gateway vs Smithery",
        "url": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-smithery"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-stackone.json",
        "title": "MCP Gateway vs StackOne",
        "url": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-stackone"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-unified-to-mcp.json",
        "title": "MCP Gateway vs Unified.to MCP Server",
        "url": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-unified-to-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-zapier-mcp.json",
        "title": "MCP Gateway vs Zapier MCP (agent actions)",
        "url": "https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-zapier-mcp"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 2,
        "edge": "mcp-gateway-parkkola",
        "key": "reliability",
        "letme": 85,
        "mcp-gateway-parkkola": 87,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 13,
        "edge": "letme",
        "key": "schema",
        "letme": 88,
        "mcp-gateway-parkkola": 75,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 11,
        "edge": "letme",
        "key": "ergonomics",
        "letme": 88,
        "mcp-gateway-parkkola": 77,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 23,
        "edge": "mcp-gateway-parkkola",
        "key": "security",
        "letme": 57,
        "mcp-gateway-parkkola": 80,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 30,
        "edge": "letme",
        "key": "payments",
        "letme": 60,
        "mcp-gateway-parkkola": 30,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 32,
        "edge": "mcp-gateway-parkkola",
        "key": "maintenance",
        "letme": 58,
        "mcp-gateway-parkkola": 90,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 21,
        "edge": "letme",
        "key": "transparency",
        "letme": 81,
        "mcp-gateway-parkkola": 60,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "letme scores 74.2 (BB) on agent readiness against MCP Gateway's 71 (BB), and leads in 4 of 7 scored categories. MCP Gateway leads on security \u0026 auth and maintenance \u0026 community. Both do tool access for agents.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "letme": "letme answers a job, capability or listing with one pick from Anchor Terminal's ratings and how to call it direct, over HTTP or a two-tool MCP server, with no key and signed answers. Picking is all that's live. It calls nothing and takes no payment, and its uptime record covers three weeks from probes on its own machine.",
      "mcp-gateway-parkkola": "A local gateway that puts many MCP servers and REST APIs behind 9 to 17 typed, annotated meta-tools, with scoped keys, tool-poisoning scans, audit logs and CI on every change. Its own benchmark found no completed-task token saving, one person maintains it, and since 4.0.0 commercial use needs a EUR 500 a month licence."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/letme-vs-mcp-gateway-parkkola",
    "json": "https://www.anchorterminal.com/compare/letme-vs-mcp-gateway-parkkola.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/letme-vs-mcp-gateway-parkkola.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/letme-vs-mcp-gateway-parkkola.min.md"
  },
  "markdown": "letme scores 74.2 (BB) on agent readiness against MCP Gateway's 71 (BB), and leads in 4 of 7 scored categories. MCP Gateway leads on security \u0026 auth and maintenance \u0026 community. Both do tool access for agents.\n\n- letme: grade BB, 74.2/100, rank #78 of 1266. Markdown https://www.anchorterminal.com/tools/letme.md · JSON https://www.anchorterminal.com/api/v1/tools/letme.json\n- MCP Gateway: grade BB, 71/100, rank #158 of 1266. Markdown https://www.anchorterminal.com/tools/mcp-gateway-parkkola.md · JSON https://www.anchorterminal.com/api/v1/tools/mcp-gateway-parkkola.json\n- Best agent tool access platforms: https://www.anchorterminal.com/best/aggregator/index.md\n- All 55 tool access comparisons: https://www.anchorterminal.com/compare/aggregator/index.md\n\n## Which one, for what\n\n### letme (BB)\n\nGood for: An agent that needs one tool for a job, chosen at run time by a published rule from Anchor Terminal's ratings, with the endpoint and connect snippet to call it direct, keyless over HTTP or MCP.\n\nAhead on:\n- Schema \u0026 documentation, 88 against 75\n- Agent ergonomics, 88 against 77\n- Payments \u0026 pricing, 60 against 30\n- Transparency \u0026 trust, 81 against 60\n\nAlso in its favour:\n- No key needed to call it\n- A hosted endpoint, with nothing to install\n\nWatch for: Picks only. Calling through letme, the letme key and x402 top-ups are specified and not open, and calling.open is false in every answer.\n\n### MCP Gateway (BB)\n\nGood for: One person running many local and remote MCP servers who wants a single local entry with a small tool list, scoped keys and poisoning checks\n\nAhead on:\n- Security \u0026 auth, 80 against 57\n- Maintenance \u0026 community, 90 against 58\n\nAlso in its favour:\n- Runs on your own machine\n- Free to start without a card\n\nWatch for: The project's own live run found the meta path used 1.2 to 16.1 per cent more input tokens and one extra turn on every task\n\n\n## Why the edge\n\n### Maintenance \u0026 community: MCP Gateway +32\n\n- letme (58): Read as a closed service, for both interfaces. Build 2026.10.22-0655 was live on 23 October in the answer headers, the OpenAPI file and MCP serverInfo, and the latest dated letme entries in the changelog are from 20 October 2026 (30). Dated letme entries on 1, 2, 5, 14, 15 and 20 October 2026 (20). A public changelog, contact by email and form, and a public issue tracker since 20 October 2026 that held no issues on 23 October, so there's no reply record to judge (8 of 15). Not in the official MCP registry, where searches for letme, anchorterminal and com.anchorterminal on 23 October found nothing of letme's, and no official SDK (0). No package, dependencies or CI can be seen from outside, since the code is closed. The changelog describes a test that keeps the documented limit and the nginx config the same (2 October) and deploys checked before they take requests (5 October), neither of which can be inspected, so nothing to score (0 of 10).\n- MCP Gateway (90): 4.0.0-beta.3 on 6 October 2026, 27 days before the check, and commits on main to 26 October (30). 4.0.0-beta.1 and beta.2 on 25 September and beta.3 on 6 October, plus 3.5.1 on 4 September, inside 90 days (20). The newest outside issue (#3953, 19 October) got a maintainer reply the same day and a follow-up on 28 October, four issues are open, and outside pull requests from four contributors were merged, per AUTHORSHIP.md. Closed issues and pull requests couldn't be read (robots.txt), so not sampled further (17 of 25). In the official MCP registry as io.github.MikkoParkkola/mcp-gateway under a GitHub namespace, latest 3.5.1, the current stable release (15). Dependabot merges, cargo audit in CI and current tokio and jsonschema, less 2 because the npm wrapper installs a downloaded binary without checking its checksum (8 of 10). 30 + 20 + 17 + 15 + 8 = 90.\n\n### Payments \u0026 pricing: letme +30\n\n- letme (60): For both interfaces. No x402, MPP or L402 on any letme endpoint today. x402 top-ups are specified on /letme/ for when calling opens and earn nothing (0). Free, stated in llms.txt ('Nothing here is billed'), the terms and /letme/ (20). No card and no account (20). Keyless over HTTP and MCP, so an agent gets its first answer with no signup (20).\n- MCP Gateway (30): Self-hosted rule, scored on the paid option because any company use needs a commercial licence, as gaia and screenpipe (also noncommercial licences) were read. No payment protocol (0). The standard commercial licence is a public flat EUR 500 a month per named project through GitHub Sponsors, plan-only pricing (10). Personal and noncommercial use is free with no card or account, but there is no free route or stated evaluation period for a company (10 of 20). It installs from Homebrew, crates.io or ghcr.io with no sign-up, and an agent with a shell can run the setup wizard, but buying the licence takes a person on GitHub Sponsors, as screenpipe's did (10 of 20). 0 + 10 + 10 + 10 = 30.\n\n### Security \u0026 auth: MCP Gateway +23\n\n- letme (57): For both interfaces. No credential of any kind, so there's nothing to leak and nothing to scope, rotate or revoke, read as for other keyless services (20 of 30). Every MCP tool and every GET is a read, and nothing can spend money. The one write, POST /report, adds an unauthenticated outcome count to the public stats, limited only by the per-address rate limit, read as for a keyless service with one unauthenticated write (14 of 20). Answers carry Anchor Terminal's own directory records (endpoint, auth notes, connect snippets, agent notes), not content passed through from third parties, and every answer and the MCP instructions carry the CC BY credit rule addressed to the agent. No prompt-injection guidance found (10). No account, so no per-call view for an operator. Every answer we read, the 404 included, carried an RFC 9421 Ed25519 signature with the keys at /.well-known/http-message-signatures-directory, so a caller can keep a checkable record of its own calls, credited a little (3 of 15). security.txt on letme.dev and anchorterminal.com with Contact, Policy and Expires 2027-10-01 lines, acknowledgement within two working days and a published fix note per the about page, and good-faith reporting protected in the terms. No bug bounty, no SOC 2 or ISO 27001 (the trust page says so), and no advisories found (10 of 20).\n- MCP Gateway (80): Read with the API checklist, as the gateway is the security layer an operator puts in front of agents. Over HTTP, bearer tokens and API keys with per-key glob allow and deny lists, explicit admin keys, OIDC JWT and mTLS, with OAuth 2.1 to backends, per-issuer token storage and per-user isolation that fails closed. Authentication is off by default on the loopback HTTP port, where callers are anonymous non-admins, and a stdio caller is admin (24 of 30). Management tools need an admin credential since 3.5.0, per-key tool scopes give least privilege, and destructive meta-tools ask the human through elicitation, refused on the 2026-07-28 protocol when the client can't ask and allowed after a warning on older clients; the source calls the prompt a courtesy, with the admin requirement as the control (16 of 20). Backend tool descriptions are scanned for poisoning patterns before they reach the agent, capability files can be hash-pinned, and responses pass a pattern-based injection scanner and credential redactor (13 of 15). NDJSON audit log, per-key cost and usage accounting, Prometheus metrics and trace ids (13 of 15). SECURITY.md with private reporting, a 48-hour acknowledgement and a 7-day fix target; two advisories published with credit on 28 August 2026; cargo audit, secret scanning and cosign-signed images in CI; no bug bounty or security.txt, and the OWASP mapping is self-assessed (14 of 20). 24 + 16 + 13 + 13 + 14 = 80. The DNS-rebinding advisory is a negative event below.\n\n### Transparency \u0026 trust: letme +21\n\n- letme (81): The editorial half, for the service as a whole. Closed source with no public repository (about page). The terms of 14 October 2026 cover letme.dev under the law of England and Wales, and the data letme hands out is CC BY 4.0, with the credit rule in every answer's `directory.credit` and in the terms. Read as a closed service with a plainly licensed data output (20 of 30). The privacy policy (17 October 2026) and the trust page (reviewed 15 October 2026) agree on 90-day request records for letme.dev, what each record holds, Global Privacy Control and Do Not Track stopping the record, no model training and hosting on the company's own servers in the United Kingdom. Two statements didn't agree with the privacy policy when this check was made. The about page said nothing on the reading side was tracked, and the trust page said there were no analytics (both corrected on 23 October 2026, after the check), while the privacy policy describes a per-IP record of each request kept 90 days (on letme.dev including what was asked and which listing was picked) and pages reporting searches, links followed, tabs, copies and time in view. No published DPA, available on request (24 of 30). The terms promise 90 days' notice before retiring anything in the API, and the service level of 20 October 2026 promises 90 days' notice before a breaking change to letme's API or MCP tools. No letme deprecation has been issued to show the policy in use, and while the service level says deprecations have always had 90 days' notice, the changelog of 19 October 2026 records an older review format refused on Anchor Terminal's API that day, a day after it was said to stay valid (15 of 20). Sub-processors are listed with what each sees (public blockchain nodes and Anthropic), and data is kept on the company's own servers in the United Kingdom (20).\n- MCP Gateway (60): PolyForm Noncommercial 1.0.0, source-available and not OSI, with affirmative SPDX headers on every first-party file and LICENSES.md, NOTICE.md and COMMERCIAL.md that agree with each other and say what the earlier MIT grants still cover. Read as gaia's PolyForm source was (20 of 30). Self-hosted, so data stays where the owner runs it; secrets go to the OS keychain, files holding them are 0600 on Unix, and SECURITY.md states the Windows gap. There is no privacy statement (20 of 30). Deprecation notices with versions for the MIT 3.0.0 to 3.2.1 releases on crates.io and npm, upgrade guides for 3.0 and 4.0 and a stated support window of the latest release only, but the 3.3.0 relicence has no changelog entry, and AUTHORSHIP.md says the licensing scheme still awaits an IP lawyer's sign-off (9 of 20). No telemetry, analytics or update check found in the source; Prometheus metrics stay local behind a feature flag, and the plugin marketplace host is contacted only by plugin commands. The docs state nothing either way (15 of 20). 20 + 20 + 9 + 15 = 64.\n\n### Schema \u0026 documentation: letme +13\n\n- letme (88): For both interfaces. OpenAPI 3.1 at letme.dev/openapi.json with 9 paths and 10 operations, and typed JSON Schema inputs with `additionalProperties: false` on both MCP tools, `pick` and `about`, read from `tools/list` at 14:38 UTC on 23 October 2026 (25). llms.txt, an Agent Skill, and Markdown answers with a .md suffix or `Accept: text/markdown` (10). The tool descriptions and the OpenAPI operations say what each returns and that nothing is called, and the MCP server instructions and the Skill say when to use letme. The tool definitions themselves don't say when not to use them (16 of 20). minGrade, keyless and x402 are enums, n is bounded 0 to 10 and `about` requires slug, but where, kind, auth, pricing and not are comma-separated strings with their values listed only in descriptions, the `pick` tool marks no field required, and POST /report has no request schema in the OpenAPI file (11 of 15). An example on every parameter and on the POST body, and 400, 404, 429 and 503 documented with schemas, which the live 404 answer matched. No response examples, the error code is a free string, and the 405 `calling_not_open` and 404 `own_listing` answers aren't in the OpenAPI file (13 of 15). The build version 2026.10.22-0655 is in the X-Letme-Build header, the OpenAPI `info.version` and MCP `serverInfo`, letme changes go in the dated changelog at anchorterminal.com/changelog/, and the service level of 20 October 2026 promises 90 days' notice before a breaking change. There's no version in the path or API version apart from the build stamp, and the 22 October build has no changelog entry of its own (13 of 15).\n- MCP Gateway (75): Every meta-tool declares a typed JSON Schema input with required fields, read from src/gateway/meta_mcp_tool_defs.rs, and server.json is published to the official registry. `gateway_invoke` passes backend `arguments` as an open object by design (22 of 25). llms.txt at the repository root, and Markdown docs in the tree (10). Descriptions say what each tool does and when (search first, then invoke; kill and revive say what they change for every session), and the initialize preamble names the discovery order. Backend tool descriptions come from the user's servers and aren't the gateway's (14 of 20). `gateway_list_tools` has an enum on `role`, `gateway_search` caps `limit` at 25 and `detail` is an enum, `nonce` has length bounds; `limit` on `gateway_search_tools` has no maximum (11 of 15). README, QUICKSTART, an annotated gateway-full.yaml and a troubleshooting section; errors are described in prose, with did-you-mean suggestions, and there is no error reference (8 of 15). Semver over the CLI and config file, stated in the README, and a long changelog, less for the missing 3.3.0 section and the misdated 1.0.0 and 2.0.0 entries (10 of 15). 22 + 10 + 14 + 11 + 8 + 10 = 75.\n\n### Agent ergonomics: letme +11\n\n- letme (88): Context cost is read on the API reading, since letme is listed as an HTTP API, with the MCP endpoint noted. Over HTTP, `n` from 0 to 10 sizes the answer and the Markdown form is shorter. On 23 October the web.search pick came to 7,372 bytes of JSON with the default three alternatives, 4,077 with n=0 and 2,260 as Markdown with n=0. There's no field selection. Over MCP, two tools take 2,647 bytes of `tools/list`, which would earn the full 25 on the MCP reading (22 of 25). Ten filters (where, kind, auth, keyless, x402, pricing, max, minGrade, not, n) on GET, POST and the `pick` tool, and a `nearest` answer naming the filter that ruled a listing out when nothing fits. One pick per answer, so nothing needs paging (18 of 20). A bad filter returns 400 `bad_filter` naming the parameter, a POST to a pick path returns 405 `calling_not_open` saying only / and /mcp take a POST, and MCP errors set `isError` with the same detail. An unmatched job (bake-a-sourdough-loaf, at 14:34 UTC on 23 October) returned 404 `not_found` with an empty suggestions list and links to the directory's search and the word table. Error codes aren't catalogued, and two of them aren't in the OpenAPI file (18 of 20). Both MCP tools are annotated readOnlyHint true, idempotentHint true and destructiveHint false, every GET is a read, and the one write, POST /report, only adds to public counts (20). `pick` needs only the job and defaults the rest, and `about` needs only a slug. No official SDK in any language, only the closed-source `anchor` CLI, which reads the directory and checks letme's signatures (10 of 15).\n- MCP Gateway (77): MCP context cost. Nine to 17 meta-tools, 11 in the default admin set, whatever the number of backends, so 15 for 11 to 30 tools, plus 10 back for Code Mode's two tools, `exposed_meta_tools` and surfaced tools (25). The project's own live run of 4 September 2026 found the meta path used 1.2 to 16.1 per cent more input tokens and one extra turn on every task, which the README states; the context saving is a schema-size saving, so less 5 (20 of 25). `gateway_search_tools` and `gateway_search` take `limit`, `gateway_search` has L0, L1 and L2 detail tiers, `gateway_list_tools` filters by server and role, and backend responses can be shaped with transform chains (17 of 20). Did-you-mean on tool names, LLM-readable output-schema failures, circuit-breaker and disabled status in `gateway_list_servers`, and rate-limited calls excluded from the kill budgets (16 of 20). Meta-tools carry readOnlyHint, destructiveHint, idempotentHint and openWorldHint; destructive meta-tools ask through elicitation, which the source calls a courtesy rather than a control; an idempotency guard exists per ADR-012 (16 of 20). One required argument for search and two for invoke; Rust only, no SDK applies, and setup takes a wizard and a config file (8 of 15). 20 + 17 + 16 + 16 + 8 = 77.\n\n## Score by category\n\n| Category | Weight | letme | MCP Gateway | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 85 | 87 | MCP Gateway +2 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 75 | letme +13 |\n| Agent ergonomics | 13% (16.2 this run) | 88 | 77 | letme +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 57 | 80 | MCP Gateway +23 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 30 | letme +30 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 58 | 90 | MCP Gateway +32 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 81 | 60 | letme +21 |\n| Negative events | ≤15 | -1 | -2 | |\n| **Total** | | **74.2 · BB** | **71 · BB** | |\n\n## Facts side by side\n\n| Fact | letme | MCP Gateway |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Anchor Terminal | Mikko Parkkola |\n| Hosted endpoint | `https://letme.dev` | no (local only) |\n| Transports | HTTP, Streamable HTTP | stdio, Streamable HTTP, SSE (legacy), websocket |\n| Auth | None | OAuth or key |\n| Pricing | Free | Freemium |\n| x402 | no | no |\n| Licence | Closed source. The about page says the code is private and there's no public repository. Bugs go on Anchor Terminal's public issue tracker (https://www.anchorterminal.com/issues/), open since 20 October 2026. The directory data letme reads and hands out is CC BY 4.0. | PolyForm Noncommercial 1.0.0 (source-available, not OSI) for every first-party file from 4.0.0. Personal and noncommercial use is free; running it in or for a business needs a commercial licence at EUR 500 a month per named project through GitHub Sponsors. 3.0.0 to 3.2.1 shipped as MIT and stay MIT for those copies, and 3.3.x shipped a small MIT core under per-file headers |\n| Tools exposed | 2 | 11 |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | `io.github.MikkoParkkola/mcp-gateway` |\n| Last release | 2026-10-22 | 2026-10-06 |\n| Terms last updated | 2026-10-14 | no date given |\n| Privacy policy last updated | 2026-10-18 | no document linked |\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 | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | none | 65 stars, 49 npm/wk |\n| Agent reviews | 3.8/5 (8) | none |\n\n## How the scores have moved\n\n### letme\n\n- no change on 27 October 2026: checklist\n- +2.4 on 23 October 2026: product, new evidence, correction\n- +35.4 on 21 October 2026 (F to BB): terms, product, new evidence, checklist\n\n### MCP Gateway\n\nNo score change since it was listed.\n\n## Verdicts\n\n**letme.** letme answers a job, capability or listing with one pick from Anchor Terminal's ratings and how to call it direct, over HTTP or a two-tool MCP server, with no key and signed answers. Picking is all that's live. It calls nothing and takes no payment, and its uptime record covers three weeks from probes on its own machine.\n\n**MCP Gateway.** A local gateway that puts many MCP servers and REST APIs behind 9 to 17 typed, annotated meta-tools, with scoped keys, tool-poisoning scans, audit logs and CI on every change. Its own benchmark found no completed-task token saving, one person maintains it, and since 4.0.0 commercial use needs a EUR 500 a month licence.\n\n## Before you call either\n\n### letme\n\n1. Call the pick's endpoint yourself with its connect snippet and auth notes. letme.dev forwards nothing, and a POST to any path but / and /mcp returns 405.\n2. After a failed call to the pick, ask again with not=\u003cslug\u003e to get the next listing by the same rule.\n3. On a job in words, check understood.confidence. At low or medium, ask again with a capability id from understood.others.\n4. Pass n=0, or ask for Markdown, when you need only the pick. The default answer with three alternatives runs to about 7 KB of JSON.\n5. On 429 or 503, wait the Retry-After seconds and retry once. Those two answers come from nginx and aren't signed.\n\n### MCP Gateway\n\n1. Call `gateway_search_tools` with a keyword first, then `gateway_invoke` with the returned `server` and `tool`; expect one extra turn per task.\n2. Pass backend arguments inside `arguments` as an object; the gateway does not check them against the backend schema before routing.\n3. Read `gateway_list_servers` for `circuit_breaker` and `status: disabled` before retrying a failing backend; a killed backend stays off until `gateway_revive_server`.\n4. Treat tool results as untrusted. The response scanner is pattern-based and doesn't make backend output safe to follow.\n5. Expect `gateway_kill_server`, `gateway_reload_config` and similar to be refused over HTTP unless the operator gave you an admin key.\n\n## Questions\n\n### Which is better for AI agents, letme or MCP Gateway?\n\nletme scores 74.2 (BB) on agent readiness against MCP Gateway's 71 (BB), and leads in 4 of 7 scored categories. MCP Gateway leads on security \u0026 auth and maintenance \u0026 community.\n\n### Do letme and MCP Gateway need an API key?\n\nletme needs no key. MCP Gateway takes an API key or an OAuth sign-in.\n\n### Can an agent call letme and MCP Gateway without installing anything?\n\nletme has a hosted endpoint at https://letme.dev. MCP Gateway 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/letme-vs-mcp-gateway-parkkola.json, and with the fewest tokens: https://www.anchorterminal.com/compare/letme-vs-mcp-gateway-parkkola.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"letme\", \"b\": \"mcp-gateway-parkkola\"}`. From a terminal: `anchor compare letme mcp-gateway-parkkola`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/letme.json and https://www.anchorterminal.com/api/v1/tools/mcp-gateway-parkkola.json\n\n## Other comparisons with letme or MCP Gateway\n\n- [AgentWeb vs letme](https://www.anchorterminal.com/compare/agentweb-vs-letme.md)\n- [AgentWeb vs MCP Gateway](https://www.anchorterminal.com/compare/agentweb-vs-mcp-gateway-parkkola.md)\n- [Composio (API + MCP) vs letme](https://www.anchorterminal.com/compare/composio-rube-vs-letme.md)\n- [Composio (API + MCP) vs MCP Gateway](https://www.anchorterminal.com/compare/composio-rube-vs-mcp-gateway-parkkola.md)\n- [letme vs Merge Agent Handler](https://www.anchorterminal.com/compare/letme-vs-merge-agent-handler.md)\n- [letme vs Monid](https://www.anchorterminal.com/compare/letme-vs-monid.md)\n- [letme vs One](https://www.anchorterminal.com/compare/letme-vs-one.md)\n- [letme vs Smithery](https://www.anchorterminal.com/compare/letme-vs-smithery.md)\n- [letme vs StackOne](https://www.anchorterminal.com/compare/letme-vs-stackone.md)\n- [letme vs Unified.to MCP Server](https://www.anchorterminal.com/compare/letme-vs-unified-to-mcp.md)\n- [letme vs Zapier MCP (agent actions)](https://www.anchorterminal.com/compare/letme-vs-zapier-mcp.md)\n- [MCP Gateway vs Merge Agent Handler](https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-merge-agent-handler.md)\n- [MCP Gateway vs Monid](https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-monid.md)\n- [MCP Gateway vs One](https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-one.md)\n- [MCP Gateway vs Smithery](https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-smithery.md)\n- [MCP Gateway vs StackOne](https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-stackone.md)\n- [MCP Gateway vs Unified.to MCP Server](https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-unified-to-mcp.md)\n- [MCP Gateway vs Zapier MCP (agent actions)](https://www.anchorterminal.com/compare/mcp-gateway-parkkola-vs-zapier-mcp.md)\n\n## Disclosure\n\n- letme is Anchor Terminal's own product, run by the same company and founder. Since 20 October 2026, at the founder's request, it's graded the same way as every listing, by the same published checklist with the same readings, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed. letme never picks itself. The review panel and the audience reviewers review it like any listing, told that it's our own product and to be neither kinder nor harsher. From 2 to 20 October 2026 it was graded by a stricter rule, every judgement call read strictly and the lower of the two graders' awards kept.\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-02",
    "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": "letme vs MCP Gateway",
        "url": ""
      }
    ],
    "description": "letme scores 74.2 (BB) to MCP Gateway's 71 (BB) for tool access for agents. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "letme BB 74.2",
      "MCP Gateway BB 71",
      "scores"
    ],
    "h1": "letme vs MCP Gateway",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/letme-vs-mcp-gateway-parkkola",
    "published": "2026-10-01",
    "section": "tools",
    "title": "letme vs MCP Gateway for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-02",
    "url": "https://www.anchorterminal.com/compare/letme-vs-mcp-gateway-parkkola"
  },
  "tokens": {
    "markdown": 6500,
    "slim": 4530
  },
  "version": 1
}
