{
  "data": {
    "a": {
      "slug": "middesk",
      "name": "Middesk",
      "vendor": "Middesk, Inc.",
      "vendorUrl": "https://www.middesk.com",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Business verification API from Middesk in San Francisco. It checks US and international businesses against registry, tax ID, sanctions and watchlist records, monitors them for changes, and files liens and state tax registrations, over REST and a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/middesk",
      "markdownUrl": "https://www.anchorterminal.com/tools/middesk.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/middesk.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/middesk.json",
      "repo": "https://github.com/middesk/plugins",
      "license": "Proprietary service under Middesk's Business Verification Terms and Conditions. The Claude Code and Codex plugins on GitHub are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.middesk.com/v1",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Access is granted by Middesk's sales team, and keys are then created in the dashboard under Settings, Developer, Credentials. An API key goes as the Basic auth username or as a Bearer token. `mk_test` keys work only against https://api-sandbox.middesk.com/v1 and `mk_live` keys only against https://api.middesk.com/v1. OAuth 2.0 authorisation code is available for acting in another Middesk user's account, with up to 5 clients an account, `read_only` or `read_write` scope, no consent screen, access tokens that don't expire and a revoke endpoint. The hosted MCP server takes OAuth 2.1 with PKCE and dynamic client registration, or a live API key as a Bearer token. The account's IP allowlist applies to OAuth requests.",
      "pricing": "paid",
      "pricingNotes": "No public prices. Fees are set in an order form under the Business Verification Terms and Conditions, the site has no pricing page (middesk.com/pricing returns 404) and its buttons ask for a demo. A sandbox with mock data comes with every account. Middesk's plugin README says trial accounts exist and issue test keys only, and we didn't find how one is opened without sales. Creating a business places billable orders (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index, the OpenAPI spec or the site (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 11,
      "popularity": {
        "githubStars": 2,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.middesk.com",
      "llmsTxt": "https://docs.middesk.com/llms.txt",
      "openapi": "https://docs.middesk.com/openapi.json",
      "capabilities": [
        "kyc.business",
        "kyc.screening",
        "kyc.cases",
        "kyc.identity"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "sales-led",
        "api-key",
        "oauth",
        "mcp",
        "openapi",
        "llms-txt",
        "webhooks",
        "sandbox",
        "graphql",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59,
        "grade": "C",
        "agentReady": false,
        "rank": 509,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 56,
          "maintenance": 64,
          "payments": 10,
          "reliability": 73,
          "schema": 82,
          "security": 56,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A public OpenAPI 3.1 contract for 87 operations, llms.txt, Markdown docs and a dated weekly changelog make the REST API readable to an agent, and OAuth has a read-only scope. Access is sales-led. No price, self-serve signup or official SDK was found, and the hosted MCP server rejects sandbox keys.",
        "bestFor": "An agent onboarding or re-checking US businesses for a bank, lender or marketplace that already holds a Middesk contract, with registry, TIN, sanctions and lien data in one object.",
        "strengths": [
          "Public OpenAPI 3.1 spec with 87 operations and 373 schemas, plus llms.txt and a Markdown copy of every docs page",
          "Dated changelog with nine entries between 20 July and 5 October 2026, breaking changes labelled as such",
          "OAuth 2.0 with `read_only` and `read_write` scopes and a revoke endpoint. The MCP server adds PKCE and dynamic client registration",
          "Sandbox at api-sandbox.middesk.com with documented trigger values for names, addresses, TINs, people and watchlist hits",
          "The public terms of 21 August 2026 bar training generative AI models on customer data in any form"
        ],
        "weaknesses": [
          "No public price. Fees are set in an order form, and every docs page ends with a prompt to contact sales",
          "No official SDK found on npm, PyPI or RubyGems, and none in the vendor's GitHub organisation",
          "The hosted MCP server runs against production only, so a sandbox key fails on every call",
          "Creating a business places billable orders, and an empty `orders` array doesn't prevent that",
          "OAuth access tokens don't expire, and no security.txt, disclosure policy or bug bounty was found"
        ],
        "agentNotes": [
          "Match the key to the host. `mk_test` keys work only at https://api-sandbox.middesk.com/v1 and `mk_live` keys only at https://api.middesk.com/v1",
          "Name the `orders` on `POST /v1/businesses`. Omitting them places a verification order plus every package the account runs automatically, all billed",
          "Send `address_line1` and `address_line2`. The API ignores `address_line_1` without an error",
          "A 201 means the business was created, not verified. Wait for the `business.updated` webhook or poll until `status` leaves `pending`",
          "Stay under 20 requests a second per account, and in sandbox wait the seconds in `Retry-After` after a 429 on business creation"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59
          }
        ],
        "editorialScores": {
          "ergonomics": 56,
          "maintenance": 64,
          "payments": 10,
          "reliability": 73,
          "schema": 82,
          "security": 56,
          "transparency": 43
        },
        "provenanceScore": 78
      },
      "connect": {
        "http": "curl -X POST https://api-sandbox.middesk.com/v1/businesses \\\n  -u $MIDDESK_SANDBOX_API_KEY: \\\n  -H \"Accept: application/json\" \\\n  -d name=Corporation \\\n  -d addresses\\[0\\]\\[address_line1\\]=223+Grand+St. \\\n  -d addresses\\[0\\]\\[city\\]=new+york \\\n  -d addresses\\[0\\]\\[state\\]=NY \\\n  -d addresses\\[0\\]\\[postal_code\\]=10013",
        "claudeCode": "claude mcp add --transport http middesk https://mcp.middesk.com/mcp \\\n  --header \"Authorization: Bearer mk_live_...\"",
        "config": {
          "mcpServers": {
            "middesk": {
              "headers": {
                "Authorization": "Bearer mk_live_your_api_key"
              },
              "url": "https://mcp.middesk.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/kyc.business",
        "tool": "https://letme.dev/middesk"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Middesk, Inc.",
        "domain": "middesk.com",
        "domainRegistered": "2018-11-20",
        "endpointOnVendorDomain": true,
        "terms": "https://www.middesk.com/policies/bv-msa",
        "privacy": "https://www.middesk.com/policies/privacy-policy",
        "statusPage": "https://status.middesk.com",
        "changelog": "https://docs.middesk.com/guides/get-started/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Business Verification Terms and Conditions (last updated 21 August 2026) define Middesk as Middesk, Inc. The website terms (last updated 9 November 2023) give the address 85 2nd St., Suite 710, San Francisco, CA 94105.",
          "The API answers at api.middesk.com and api-sandbox.middesk.com, and the MCP server at mcp.middesk.com, all middesk.com subdomains.",
          "security.txt returns 404 on www.middesk.com, docs.middesk.com and api.middesk.com.",
          "The privacy policy was last updated on 2 November 2025 and gives no retention periods.",
          "trust.middesk.com is a Vanta trust centre that only renders with JavaScript, so we couldn't read its contents.",
          "RDAP for middesk.com gives a registration date of 2018-11-20."
        ],
        "score": 78
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/middesk.json",
      "live": {
        "slug": "middesk",
        "probe": {
          "target": "https://api.middesk.com/v1",
          "method": "get",
          "lastAt": "2026-10-09T11:46:34.338797674Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 215,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 202,
          "p95ms24h": 316,
          "samples24h": 218,
          "samples30d": 218,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "date": "2026-10-09",
              "probes": 125,
              "ok": 125
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.middesk.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-09T11:39:54.608163692Z"
        },
        "githubStars": 2,
        "securityTxt": {
          "url": "https://middesk.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:39.426096193Z"
        },
        "pages": [
          {
            "url": "https://docs.middesk.com/guides/get-started/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:19:07.781323249Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "eebdc6aa87ba"
          },
          {
            "url": "https://www.middesk.com/policies/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:29:15.011730927Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a386a0eeeb69"
          },
          {
            "url": "https://www.middesk.com/policies/bv-msa",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:29:12.510644226Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "26b54790c413"
          }
        ],
        "updatedAt": "2026-10-09T11:46:34.338797674Z"
      }
    },
    "answer": "Socure RiskOS scores 63.5 (B) on agent readiness against Middesk's 59 (C), and leads in 6 of 7 scored categories. Middesk leads on agent ergonomics.",
    "b": {
      "slug": "socure-riskos",
      "name": "Socure RiskOS",
      "vendor": "Socure Inc.",
      "vendorUrl": "https://www.socure.com",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Socure RiskOS is an identity verification and risk decisioning platform from Socure Inc. Its Evaluation API runs configured workflows for KYC, document and selfie checks, fraud scoring and watchlist screening, and returns a decision with reason codes.",
      "url": "https://www.anchorterminal.com/tools/socure-riskos",
      "markdownUrl": "https://www.anchorterminal.com/tools/socure-riskos.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/socure-riskos.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/socure-riskos.json",
      "repo": "https://github.com/socure-inc/.github",
      "license": "Proprietary service. No service agreement is published, and the OpenAPI file states its licence as Proprietary",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://mcp.riskos.socure.com/sandbox",
      "packages": [
        {
          "registry": "npm",
          "name": "@socure-inc/device-risk-sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key for the sandbox, sent as `Authorization: Bearer \u003ckey\u003e`. A person signs up in a browser for a Socure Launch sandbox account and copies the key from the Developer Workbench. Sandbox and production use separate keys and hosts. Production starts at 0 requests a second and needs Socure Support to activate it, and Enterprise accounts go through sandbox certification with Socure staff. Each key reaches every workflow, with no scopes. Regenerating a key keeps the old one working until it is deleted, and an additional key is requested from Support. The MCP server takes its own MCP Server Key. IP allowlisting, mutual TLS and payload encryption are optional (checked 2026-10-08).",
      "pricing": "usage",
      "pricingNotes": "Socure Launch charges per evaluation started in production, at $0.80 for document verification, $0.90 with watchlist screening, $1.00 for KYC, fraud and watchlist with a document step-up, and $1.30 with prefill. Launch accounts receive $1,000 in production credits each month. The sandbox is free, so an agent can build and test without a contract, but it returns predefined results. Evaluations an end user abandons are still charged. Socure Enterprise is priced through sales. Whether sign-up or the move to production asks for a card was not established (checked 2026-10-08).",
      "priceSummary": "$0.80 / tx",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API reference, the OpenAPI file, the MCP server page or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 9,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 35395,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://help.socure.com/riskos/docs",
      "llmsTxt": "https://help.socure.com/riskos/llms.txt",
      "openapi": "https://raw.githubusercontent.com/socure-inc/.github/main/openapi-spec/riskos-api-spec.json",
      "capabilities": [
        "kyc.identity",
        "kyc.documents",
        "kyc.screening",
        "kyc.business",
        "kyc.cases"
      ],
      "tags": [
        "hosted",
        "usage",
        "sandbox",
        "api-key",
        "mcp",
        "openapi",
        "llms-txt",
        "webhooks",
        "status-page",
        "soc2",
        "iso27001",
        "fedramp"
      ],
      "lastRelease": "2026-10-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.5,
        "grade": "B",
        "agentReady": false,
        "rank": 357,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 46,
          "maintenance": 75,
          "payments": 35,
          "reliability": 75,
          "schema": 84,
          "security": 60,
          "transparency": 68
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A public OpenAPI file, llms.txt, 15 documented error codes and dated release notes cover a ten-operation REST API, and Socure Launch publishes prices from $0.80 an evaluation with a free sandbox. API keys carry no scopes, no idempotency header is defined, no service terms are published, and production stays at zero requests until Socure activates it.",
        "bestFor": "A company in the United States that wants one decision from combined KYC, document, fraud and watchlist checks through a single evaluation call.",
        "strengths": [
          "OpenAPI 3.0.3 file for ten operations and a 3.1 webhook file in a public GitHub repository, last synced 5 October 2026",
          "llms.txt indexes for every docs section and a Markdown copy of each page, with a robots.txt signal that allows AI input",
          "Socure Launch publishes four solutions at $0.80 to $1.30 per evaluation, with a free sandbox and $1,000 of monthly production credits",
          "Errors return one of 15 machine-readable codes with field-level `invalid_args`, and 429 responses carry `X-Retry-After`",
          "Release notes show entries on 5 and 6 October 2026 and more than 20 dated entries since 10 July"
        ],
        "weaknesses": [
          "No service agreement or API terms are published. The only terms pages are website terms of use and end-user terms for document capture",
          "Each API key reaches every workflow, with no scopes or read-only keys, and an additional key has to be requested from Support",
          "The rate limit page advises idempotency keys, but neither the docs nor the OpenAPI file define an idempotency header",
          "No endpoint lists or searches evaluations. A caller needs the `eval_id` from the original response or a webhook",
          "Enrichment request and response schemas, reason codes and signal definitions sit in the dashboard, not in the public docs",
          "Production starts at 0 requests a second until Socure approves it, and Launch accounts are capped at 1 evaluation a second and 500 a day"
        ],
        "agentNotes": [
          "Send `Authorization: Bearer \u003ckey\u003e` to `https://riskos.sandbox.socure.com/api/evaluation` for tests and `https://riskos.socure.com/api/evaluation` for live checks. The two environments use separate keys.",
          "Use dummy data only in the sandbox. It returns predefined results, connects to no live data source and expects the documented test values.",
          "Store the `eval_id` from every `POST /api/evaluation` response. No list or search endpoint exists to find it later.",
          "On 429 wait the seconds given in `X-Retry-After`. Do not blindly resend a failed `POST /api/evaluation`, because no idempotency header is documented and Launch bills each initiated evaluation.",
          "The MCP server at `https://mcp.riskos.socure.com/sandbox` reads docs, workflows and webhooks with its own MCP Server Key. It cannot run evaluations or read results."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.5
          }
        ],
        "editorialScores": {
          "ergonomics": 46,
          "maintenance": 75,
          "payments": 35,
          "reliability": 75,
          "schema": 84,
          "security": 60,
          "transparency": 53
        },
        "provenanceScore": 82
      },
      "connect": {
        "http": "curl --request POST \\\n  --url \"https://riskos.sandbox.socure.com/api/evaluation\" \\\n  --header \"Authorization: Bearer YOUR_API_KEY\" \\\n  --header \"Content-Type: application/json\" \\\n  --header \"Accept: application/json\" \\\n  --data '{\"id\":\"customer-onb-12345\",\"timestamp\":\"2024-12-01T08:15:30.456Z\",\"workflow\":\"consumer_onboarding\",\"data\":{\"individual\":{\"given_name\":\"Jane\",\"family_name\":\"Doe\",\"email\":\"jane.doe@example.com\",\"phone_number\":\"+1-555-123-4567\",\"address\":{\"line_1\":\"123 Main St\",\"locality\":\"San Francisco\",\"major_admin_division\":\"CA\",\"postal_code\":\"94105\",\"country\":\"US\"}}}}'",
        "claudeCode": "claude mcp add --transport http socure-dev-assist https://mcp.riskos.socure.com/sandbox --header \"Authorization: Bearer $RISKOS_MCP_KEY\"",
        "config": {
          "mcpServers": {
            "socure-dev-assist": {
              "args": [
                "-y",
                "mcp-remote",
                "https://mcp.riskos.socure.com/sandbox",
                "--header",
                "Authorization: Bearer YOUR_MCP_SERVER_KEY"
              ],
              "command": "npx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/socure-riskos"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Socure Launch, Document Verification (DocV)",
          "unit": "tx",
          "usd": 0.8,
          "note": "Per evaluation started in production, after $1,000 of monthly credits"
        },
        {
          "item": "Socure Launch, DocV + Watchlist",
          "unit": "tx",
          "usd": 0.9,
          "note": "Per evaluation started in production"
        },
        {
          "item": "Socure Launch, KYC + Fraud + Watchlist with DocV step-up",
          "unit": "tx",
          "usd": 1,
          "note": "Per evaluation started in production"
        },
        {
          "item": "Socure Launch, Prefill, KYC + Fraud + Watchlist with DocV step-up",
          "unit": "tx",
          "usd": 1.3,
          "note": "Per evaluation started in production"
        }
      ],
      "provenance": {
        "legalEntity": "Socure Inc.",
        "domain": "socure.com",
        "domainRegistered": "2003-06-20",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "https://www.socure.com/privacy-en",
        "statusPage": "https://status.socure.com",
        "changelog": "https://help.socure.com/riskos/page/release-notes",
        "securityTxt": "expired",
        "checked": "2026-10-08",
        "notes": [
          "The Global Services Privacy Notice (effective 1 October 2026) names Socure Inc. and covers the verification services. A separate Website Privacy Notice covers the marketing site.",
          "No service agreement or API terms are published. www.socure.com/terms-of-service is the Website Terms of Use, and the policies page lists only privacy notices, the DocV Terms of Use for end users and a text messaging notice, so the terms field is left out.",
          "The API answers at riskos.socure.com and riskos.sandbox.socure.com, and the MCP server at mcp.riskos.socure.com, all socure.com subdomains.",
          "www.socure.com/.well-known/security.txt gives security@socure.com and an `Expires` value of 15 July 2026, which has passed.",
          "RDAP for socure.com gives a registration date of 2003-06-20."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/socure-riskos.json",
      "live": {
        "slug": "socure-riskos",
        "probe": {
          "target": "https://mcp.riskos.socure.com/sandbox",
          "method": "get",
          "lastAt": "2026-10-09T11:46:41.308485021Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 340,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 337,
          "p95ms24h": 397,
          "samples24h": 44,
          "samples30d": 44,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 44,
              "ok": 44
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.socure.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-09T11:40:55.521859922Z"
        },
        "updatedAt": "2026-10-09T11:46:41.308485021Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Middesk, Inc.",
        "b": "Socure Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.middesk.com/v1",
        "b": "https://mcp.riskos.socure.com/sandbox",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Middesk's Business Verification Terms and Conditions. The Claude Code and Codex plugins on GitHub are MIT",
        "b": "Proprietary service. No service agreement is published, and the OpenAPI file states its licence as Proprietary",
        "name": "Licence"
      },
      {
        "a": "11",
        "b": "9",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-05",
        "b": "2026-10-06",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "2 stars",
        "b": "35k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Socure RiskOS scores 63.5 (B) on agent readiness against Middesk's 59 (C), and leads in 6 of 7 scored categories. Middesk leads on agent ergonomics.",
        "question": "Which is better for AI agents, Middesk or Socure RiskOS?"
      },
      {
        "answer": "Middesk takes an API key or an OAuth sign-in. Socure RiskOS needs an API key.",
        "question": "Do Middesk and Socure RiskOS need an API key?"
      },
      {
        "answer": "Yes. Middesk has a hosted endpoint at https://api.middesk.com/v1 and Socure RiskOS at https://mcp.riskos.socure.com/sandbox.",
        "question": "Can an agent call Middesk and Socure RiskOS without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 56 against 46"
        ],
        "also": null,
        "goodFor": "An agent onboarding or re-checking US businesses for a bank, lender or marketplace that already holds a Middesk contract, with registry, TIN, sanctions and lien data in one object.",
        "slug": "middesk",
        "watchFor": "No public price. Fees are set in an order form, and every docs page ends with a prompt to contact sales"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 35 against 10",
          "Maintenance \u0026 community, 75 against 64",
          "Transparency \u0026 trust, 68 against 61"
        ],
        "also": null,
        "goodFor": "A company in the United States that wants one decision from combined KYC, document, fraud and watchlist checks through a single evaluation call.",
        "slug": "socure-riskos",
        "watchFor": "No service agreement or API terms are published. The only terms pages are website terms of use and end-user terms for document capture"
      }
    ],
    "job": {
      "capability": "kyc.business",
      "name": "Kyc business"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-middesk.json",
        "title": "ComplyCube vs Middesk",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-middesk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-socure-riskos.json",
        "title": "ComplyCube vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-middesk.json",
        "title": "Didit vs Middesk",
        "url": "https://www.anchorterminal.com/compare/didit-vs-middesk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-socure-riskos.json",
        "title": "Didit vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/didit-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jumio-vs-middesk.json",
        "title": "Jumio vs Middesk",
        "url": "https://www.anchorterminal.com/compare/jumio-vs-middesk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jumio-vs-socure-riskos.json",
        "title": "Jumio vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/jumio-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-veriff.json",
        "title": "Middesk vs Veriff",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-socure-riskos.json",
        "title": "Persona vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/persona-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shufti-vs-socure-riskos.json",
        "title": "Shufti vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/shufti-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socure-riskos-vs-sumsub.json",
        "title": "Socure RiskOS vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/socure-riskos-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socure-riskos-vs-trulioo.json",
        "title": "Socure RiskOS vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/socure-riskos-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socure-riskos-vs-veriff.json",
        "title": "Socure RiskOS vs Veriff",
        "url": "https://www.anchorterminal.com/compare/socure-riskos-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-middesk.json",
        "title": "ComplyAdvantage vs Middesk",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-middesk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-socure-riskos.json",
        "title": "ComplyAdvantage vs Socure RiskOS",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-socure-riskos"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-persona.json",
        "title": "Middesk vs Persona",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-shufti.json",
        "title": "Middesk vs Shufti",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-shufti"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-sumsub.json",
        "title": "Middesk vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-trulioo.json",
        "title": "Middesk vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-trulioo"
      }
    ],
    "scores": [
      {
        "by": 2,
        "edge": "socure-riskos",
        "key": "reliability",
        "middesk": 73,
        "name": "Reliability",
        "socure-riskos": 75,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 2,
        "edge": "socure-riskos",
        "key": "schema",
        "middesk": 82,
        "name": "Schema \u0026 documentation",
        "socure-riskos": 84,
        "weight": 13
      },
      {
        "by": 10,
        "edge": "middesk",
        "key": "ergonomics",
        "middesk": 56,
        "name": "Agent ergonomics",
        "socure-riskos": 46,
        "weight": 13
      },
      {
        "by": 4,
        "edge": "socure-riskos",
        "key": "security",
        "middesk": 56,
        "name": "Security \u0026 auth",
        "socure-riskos": 60,
        "weight": 14
      },
      {
        "by": 25,
        "edge": "socure-riskos",
        "key": "payments",
        "middesk": 10,
        "name": "Payments \u0026 pricing",
        "socure-riskos": 35,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "edge": "socure-riskos",
        "key": "maintenance",
        "middesk": 64,
        "name": "Maintenance \u0026 community",
        "socure-riskos": 75,
        "weight": 7
      },
      {
        "by": 7,
        "edge": "socure-riskos",
        "key": "transparency",
        "middesk": 61,
        "name": "Transparency \u0026 trust",
        "socure-riskos": 68,
        "weight": 7
      }
    ],
    "summary": "Socure RiskOS scores 63.5 (B) on agent readiness against Middesk's 59 (C), and leads in 6 of 7 scored categories. Middesk leads on agent ergonomics. Both do kyc business.",
    "verdicts": {
      "middesk": "A public OpenAPI 3.1 contract for 87 operations, llms.txt, Markdown docs and a dated weekly changelog make the REST API readable to an agent, and OAuth has a read-only scope. Access is sales-led. No price, self-serve signup or official SDK was found, and the hosted MCP server rejects sandbox keys.",
      "socure-riskos": "A public OpenAPI file, llms.txt, 15 documented error codes and dated release notes cover a ten-operation REST API, and Socure Launch publishes prices from $0.80 an evaluation with a free sandbox. API keys carry no scopes, no idempotency header is defined, no service terms are published, and production stays at zero requests until Socure activates it."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/middesk-vs-socure-riskos",
    "json": "https://www.anchorterminal.com/compare/middesk-vs-socure-riskos.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/middesk-vs-socure-riskos.md",
    "slim": "https://www.anchorterminal.com/compare/middesk-vs-socure-riskos.min.md"
  },
  "markdown": "Socure RiskOS scores 63.5 (B) on agent readiness against Middesk's 59 (C), and leads in 6 of 7 scored categories. Middesk leads on agent ergonomics. Both do kyc business.\n\n- Middesk: grade C, 59/100, rank #509 of 842. Markdown https://www.anchorterminal.com/tools/middesk.md · JSON https://www.anchorterminal.com/api/v1/tools/middesk.json\n- Socure RiskOS: grade B, 63.5/100, rank #357 of 842. Markdown https://www.anchorterminal.com/tools/socure-riskos.md · JSON https://www.anchorterminal.com/api/v1/tools/socure-riskos.json\n\n## Which one, for what\n\n### Middesk (C)\n\nGood for: An agent onboarding or re-checking US businesses for a bank, lender or marketplace that already holds a Middesk contract, with registry, TIN, sanctions and lien data in one object.\n\nAhead on:\n- Agent ergonomics, 56 against 46\n\nWatch for: No public price. Fees are set in an order form, and every docs page ends with a prompt to contact sales\n\n### Socure RiskOS (B)\n\nGood for: A company in the United States that wants one decision from combined KYC, document, fraud and watchlist checks through a single evaluation call.\n\nAhead on:\n- Payments \u0026 pricing, 35 against 10\n- Maintenance \u0026 community, 75 against 64\n- Transparency \u0026 trust, 68 against 61\n\nWatch for: No service agreement or API terms are published. The only terms pages are website terms of use and end-user terms for document capture\n\n\n## Score by category\n\n| Category | Weight | Middesk | Socure RiskOS | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 75 | Socure RiskOS +2 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 82 | 84 | Socure RiskOS +2 |\n| Agent ergonomics | 13% (16.2 this run) | 56 | 46 | Middesk +10 |\n| Security \u0026 auth | 14% (17.5 this run) | 56 | 60 | Socure RiskOS +4 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 35 | Socure RiskOS +25 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 64 | 75 | Socure RiskOS +11 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 61 | 68 | Socure RiskOS +7 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **59 · C** | **63.5 · B** | |\n\n## Facts side by side\n\n| Fact | Middesk | Socure RiskOS |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Middesk, Inc. | Socure Inc. |\n| Hosted endpoint | `https://api.middesk.com/v1` | `https://mcp.riskos.socure.com/sandbox` |\n| Transports | HTTP | HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Paid | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary service under Middesk's Business Verification Terms and Conditions. The Claude Code and Codex plugins on GitHub are MIT | Proprietary service. No service agreement is published, and the OpenAPI file states its licence as Proprietary |\n| Tools exposed | 11 | 9 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-05 | 2026-10-06 |\n| Terms last updated | no date given | no document linked |\n| Privacy policy last updated | no date given | no date given |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | not found in the text |  |\n| Terms restrict benchmarking | yes |  |\n| Terms or service can change without notice | not found in the text |  |\n| Arbitration or class-action waiver | yes |  |\n| Popularity | 2 stars | 35k npm/wk |\n\n## Verdicts\n\n**Middesk.** A public OpenAPI 3.1 contract for 87 operations, llms.txt, Markdown docs and a dated weekly changelog make the REST API readable to an agent, and OAuth has a read-only scope. Access is sales-led. No price, self-serve signup or official SDK was found, and the hosted MCP server rejects sandbox keys.\n\n**Socure RiskOS.** A public OpenAPI file, llms.txt, 15 documented error codes and dated release notes cover a ten-operation REST API, and Socure Launch publishes prices from $0.80 an evaluation with a free sandbox. API keys carry no scopes, no idempotency header is defined, no service terms are published, and production stays at zero requests until Socure activates it.\n\n## Before you call either\n\n### Middesk\n\n1. Match the key to the host. `mk_test` keys work only at https://api-sandbox.middesk.com/v1 and `mk_live` keys only at https://api.middesk.com/v1\n2. Name the `orders` on `POST /v1/businesses`. Omitting them places a verification order plus every package the account runs automatically, all billed\n3. Send `address_line1` and `address_line2`. The API ignores `address_line_1` without an error\n4. A 201 means the business was created, not verified. Wait for the `business.updated` webhook or poll until `status` leaves `pending`\n5. Stay under 20 requests a second per account, and in sandbox wait the seconds in `Retry-After` after a 429 on business creation\n\n### Socure RiskOS\n\n1. Send `Authorization: Bearer \u003ckey\u003e` to `https://riskos.sandbox.socure.com/api/evaluation` for tests and `https://riskos.socure.com/api/evaluation` for live checks. The two environments use separate keys.\n2. Use dummy data only in the sandbox. It returns predefined results, connects to no live data source and expects the documented test values.\n3. Store the `eval_id` from every `POST /api/evaluation` response. No list or search endpoint exists to find it later.\n4. On 429 wait the seconds given in `X-Retry-After`. Do not blindly resend a failed `POST /api/evaluation`, because no idempotency header is documented and Launch bills each initiated evaluation.\n5. The MCP server at `https://mcp.riskos.socure.com/sandbox` reads docs, workflows and webhooks with its own MCP Server Key. It cannot run evaluations or read results.\n\n## Questions\n\n### Which is better for AI agents, Middesk or Socure RiskOS?\n\nSocure RiskOS scores 63.5 (B) on agent readiness against Middesk's 59 (C), and leads in 6 of 7 scored categories. Middesk leads on agent ergonomics.\n\n### Do Middesk and Socure RiskOS need an API key?\n\nMiddesk takes an API key or an OAuth sign-in. Socure RiskOS needs an API key.\n\n### Can an agent call Middesk and Socure RiskOS without installing anything?\n\nYes. Middesk has a hosted endpoint at https://api.middesk.com/v1 and Socure RiskOS at https://mcp.riskos.socure.com/sandbox.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/middesk-vs-socure-riskos.json, and with the fewest tokens: https://www.anchorterminal.com/compare/middesk-vs-socure-riskos.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"middesk\", \"b\": \"socure-riskos\"}`. From a terminal: `anchor compare middesk socure-riskos`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/middesk.json and https://www.anchorterminal.com/api/v1/tools/socure-riskos.json\n\n## Other comparisons with Middesk or Socure RiskOS\n\n- [ComplyCube vs Middesk](https://www.anchorterminal.com/compare/complycube-vs-middesk.md)\n- [ComplyCube vs Socure RiskOS](https://www.anchorterminal.com/compare/complycube-vs-socure-riskos.md)\n- [Didit vs Middesk](https://www.anchorterminal.com/compare/didit-vs-middesk.md)\n- [Didit vs Socure RiskOS](https://www.anchorterminal.com/compare/didit-vs-socure-riskos.md)\n- [Jumio vs Middesk](https://www.anchorterminal.com/compare/jumio-vs-middesk.md)\n- [Jumio vs Socure RiskOS](https://www.anchorterminal.com/compare/jumio-vs-socure-riskos.md)\n- [Middesk vs Veriff](https://www.anchorterminal.com/compare/middesk-vs-veriff.md)\n- [Persona vs Socure RiskOS](https://www.anchorterminal.com/compare/persona-vs-socure-riskos.md)\n- [Shufti vs Socure RiskOS](https://www.anchorterminal.com/compare/shufti-vs-socure-riskos.md)\n- [Socure RiskOS vs Sumsub](https://www.anchorterminal.com/compare/socure-riskos-vs-sumsub.md)\n- [Socure RiskOS vs Trulioo](https://www.anchorterminal.com/compare/socure-riskos-vs-trulioo.md)\n- [Socure RiskOS vs Veriff](https://www.anchorterminal.com/compare/socure-riskos-vs-veriff.md)\n- [ComplyAdvantage vs Middesk](https://www.anchorterminal.com/compare/complyadvantage-vs-middesk.md)\n- [ComplyAdvantage vs Socure RiskOS](https://www.anchorterminal.com/compare/complyadvantage-vs-socure-riskos.md)\n- [Middesk vs Persona](https://www.anchorterminal.com/compare/middesk-vs-persona.md)\n- [Middesk vs Shufti](https://www.anchorterminal.com/compare/middesk-vs-shufti.md)\n- [Middesk vs Sumsub](https://www.anchorterminal.com/compare/middesk-vs-sumsub.md)\n- [Middesk vs Trulioo](https://www.anchorterminal.com/compare/middesk-vs-trulioo.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Middesk vs Socure RiskOS",
        "url": ""
      }
    ],
    "description": "Socure RiskOS scores 63.5 (B) on agent readiness against Middesk's 59 (C), and leads in 6 of 7 scored categories. Middesk leads on agent ergonomics. Both do kyc business. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Middesk C 59",
      "Socure RiskOS B 63.5",
      "scores"
    ],
    "h1": "Middesk vs Socure RiskOS",
    "image": "https://www.anchorterminal.com/assets/og/compare-middesk-vs-socure-riskos.png",
    "path": "/compare/middesk-vs-socure-riskos",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Middesk vs Socure RiskOS for AI agents, C 59 vs B 63.5",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/middesk-vs-socure-riskos"
  },
  "tokens": {
    "markdown": 2300,
    "slim": 680
  },
  "version": 1
}
