{
  "data": {
    "a": {
      "slug": "1uphealth",
      "name": "1upHealth",
      "vendor": "1upHealth, Inc.",
      "vendorUrl": "https://1up.health",
      "kind": "http-api",
      "category": "health-data",
      "summary": "1upHealth runs FHIR APIs for US health plans, including the CMS Patient Access, Provider Access and Payer-to-Payer APIs, which let member-authorised third-party apps read claims, coverage and clinical data.",
      "url": "https://www.anchorterminal.com/tools/1uphealth",
      "markdownUrl": "https://www.anchorterminal.com/tools/1uphealth.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/1uphealth.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/1uphealth.json",
      "license": "Proprietary service under 1upHealth's Terms of Service (effective 1 August 2024)",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "oauth",
      "authNotes": "Developers register in the 1up Dev Portal, verify an email and create sandbox client credentials. Patient Access uses the authorisation code grant, with the member signing in to the health plan's auth app, and access tokens last 15 minutes. Provider Access and Payer-to-Payer use client credentials with scopes such as `bulk-data|user/*.rs`. Client secrets can be regenerated in the Dev Portal. Production access follows 1upHealth's vetting of the app.",
      "pricing": "paid",
      "pricingNotes": "No public prices. The terms set fees in Order Forms, with one price increase a year on 90 days' notice. The Dev Portal sandbox clients need only a verified email, and no card was mentioned (checked 2026-10-14).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, llms.txt or the terms (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://docs.1up.health",
      "llmsTxt": "https://docs.1up.health/llms.txt",
      "capabilities": [
        "health.records",
        "health.fhir",
        "health.consent"
      ],
      "tags": [
        "hosted",
        "health-records",
        "claims",
        "fhir",
        "bulk-data",
        "oauth",
        "llms-txt",
        "status-page",
        "sla",
        "free-tier",
        "hitrust",
        "soc2"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 46.8,
        "grade": "D",
        "agentReady": false,
        "rank": 903,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 12,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 32,
          "maintenance": 37,
          "payments": 20,
          "reliability": 52,
          "schema": 50,
          "security": 63,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "Self-serve Dev Portal sandbox clients and a demo health plan let an app test the CMS Patient Access, Provider Access and Payer-to-Payer FHIR APIs, backed by HITRUST and SOC 2 Type 2. No rate limits, error formats or dated releases are documented, and the Patient Access OAuth step needs the member in a browser.",
        "bestFor": "Consumer and care apps that read a member's health plan claims and clinical data under the CMS rules, and payers meeting those rules.",
        "strengths": [
          "Sandbox client credentials from the Dev Portal with only an email verification",
          "Patient Access client IDs work across every payer production environment 1upHealth runs, once vetted",
          "Privacy policy with stated retention periods and US-only processing",
          "HITRUST, SOC 2 Type 2 and CSA STAR on a public trust centre"
        ],
        "weaknesses": [
          "No rate limits, 429 handling or error formats documented",
          "Release notes are undated",
          "The status page lists no components",
          "Patient Connect, the patient-mediated exchange across health systems, was sunset on 30 September 2026"
        ],
        "agentNotes": [
          "Hand the Patient Access sign-in to the member, who must authorise in the health plan's auth app",
          "Exchange the authorisation code within five minutes, and refresh before the 15-minute token expires",
          "Email payer-patient-access@1up.health with the client ID to get the app synced to the demo environment",
          "Expect only claims and coverage resources from some payers, and read /r4/metadata first"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 46.8
          }
        ],
        "editorialScores": {
          "ergonomics": 32,
          "maintenance": 37,
          "payments": 20,
          "reliability": 52,
          "schema": 50,
          "security": 63,
          "transparency": 61
        },
        "provenanceScore": 82
      },
      "connect": {
        "http": "GET https://api.1uphealthdemo.com/r4/ExplanationOfBenefit\nAuthorization: Bearer \u003caccess-token\u003e"
      },
      "letme": {
        "capability": "https://letme.dev/health.records",
        "tool": "https://letme.dev/1uphealth"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "1upHealth, Inc.",
        "domain": "1up.health",
        "domainRegistered": "2017-07-20",
        "endpointOnVendorDomain": true,
        "terms": "https://1up.health/terms-of-service/",
        "privacy": "https://1up.health/privacy-policy/",
        "statusPage": "https://status.1up.health",
        "changelog": "https://docs.1up.health/docs/release-notes",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The Terms of Service (effective 1 August 2024) name 1upHealth, Inc., 280 Summer Street, Boston, MA 02210, and include the SLA as Exhibit A.",
          "The privacy policy (last updated 25 June 2026) covers the website, keeps logs up to 24 months, clears production data within 30 days and backups within 90 days of a deletion request, keeps data in the US, and leaves PHI to customer BAAs.",
          "The demo API answers on 1uphealthdemo.com, a separate domain.",
          "1up.health/.well-known/security.txt returns 404. The trust centre sends vulnerability reports to security@1up.health.",
          "Release notes carry version numbers such as 26.09.2 but no dates.",
          "RDAP gives 1up.health a registration date of 2017-07-20."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/1uphealth.json",
      "live": {
        "slug": "1uphealth",
        "vendorStatus": {
          "page": "https://status.1up.health",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:38:50.511902685Z"
        },
        "updatedAt": "2026-10-14T09:38:50.511902685Z"
      }
    },
    "answer": "Medblocks scores 52.7 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 5 of 7 scored categories. 1upHealth leads on reliability and transparency \u0026 trust.",
    "b": {
      "slug": "medblocks",
      "name": "Medblocks",
      "vendor": "Medblocks Inc.",
      "vendorUrl": "https://medblocks.com",
      "kind": "http-api",
      "category": "health-data",
      "summary": "Medblocks Platform lets an app or agent connect a patient's hospital, clinic and insurer records through SMART on FHIR and read them back as FHIR R4, through a REST API, a TypeScript SDK or a remote MCP server.",
      "url": "https://www.anchorterminal.com/tools/medblocks",
      "markdownUrl": "https://www.anchorterminal.com/tools/medblocks.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/medblocks.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/medblocks.json",
      "repo": "https://github.com/medblocks/skills",
      "license": "Proprietary service under Medblocks' terms. The medblocks TypeScript SDK on npm carries a proprietary licence that forbids redistribution and reverse engineering. The agent skills repository has no licence file",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://app.medblocks.com/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "medblocks"
        }
      ],
      "auth": "mixed",
      "authNotes": "The REST API takes a workspace API key as a Bearer token (`mb_sk_sbx_` for Sandbox, `mb_sk_live_` for Production). Owners and admins mint, rotate and revoke keys in the dashboard, and the full key is shown once. The MCP server at https://app.medblocks.com/mcp also accepts OAuth from Medblocks' own authorisation server, which publishes dynamic client registration, PKCE and ten scopes (patients:read, patients:write, fhir:read and others), with a consent screen of three tick boxes. Patients authorise each hospital themselves through SMART on FHIR. A BAA is needed before production use.",
      "pricing": "freemium",
      "pricingNotes": "Free plan at $0 for up to 1,000 active patients, with patient access, synthetic sandboxes and full API access. Enterprise is $60,000 a year with no patient cap and adds backend services, clinical workflows, OCR and data structuring. A patient counts as active from the first successful FHIR pull. Upgrades go through support@medblocks.com, and requests outside the plan return 402 `billing_error` (checked 2026-10-14).",
      "priceSummary": "$5000 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, llms-full.txt or the billing page. A 402 status is used only for `billing_error` when a plan does not cover a feature (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": 10,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 36,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://medblocks.com/docs",
      "llmsTxt": "https://medblocks.com/docs/llms.txt",
      "capabilities": [
        "health.records",
        "health.consent",
        "health.ehr",
        "health.fhir",
        "agent.tools"
      ],
      "tags": [
        "hosted",
        "mcp",
        "oauth",
        "fhir",
        "smart-on-fhir",
        "typescript",
        "llms-txt",
        "free-tier",
        "hipaa"
      ],
      "lastRelease": "2026-09-14",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 52.7,
        "grade": "D",
        "agentReady": false,
        "rank": 773,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 72,
          "maintenance": 69,
          "payments": 25,
          "reliability": 28,
          "schema": 62,
          "security": 67,
          "transparency": 51
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "Patient-authorised record retrieval with a ten-tool remote MCP server, OAuth with per-capability consent, an audit entry for every call and a free plan for 1,000 active patients. No status page, no published rate limits and no idempotency keys were found, and the OpenAPI file behind the reference is not published.",
        "bestFor": "A consumer or care app, or an assistant, that needs a patient's own records from US hospitals and payers with the patient's consent, and wants an MCP route as well as REST.",
        "strengths": [
          "Remote MCP server with ten tools, OAuth with dynamic client registration and a consent screen that can leave destructive actions off",
          "Free plan for up to 1,000 active patients and a Synthetic Hospital sandbox with seeded FHIR R4 patients",
          "One error envelope with 36 stable codes, a `param` field, a request ID and `Retry-After` on 429",
          "Every MCP tool call writes an audit entry, and the dashboard shows authorisation and pull history per patient",
          "llms.txt, llms-full.txt and a Markdown copy of every docs page, plus agent skills for Claude Code, Codex and Cursor"
        ],
        "weaknesses": [
          "No status page, SLA or published rate limits for the Platform API",
          "No idempotency keys were found, and the API conventions and versioning pages are unwritten placeholders",
          "The OpenAPI file the reference is generated from is not published",
          "Only one SDK, in TypeScript, with npm's latest tag still at 1.0.0 while the changelog documents 1.2.0",
          "The public terms cover the website and Blue Button app, and no sub-processor list or customer terms for the API were found"
        ],
        "agentNotes": [
          "Connect with `claude mcp add --transport http medblocks https://app.medblocks.com/mcp` and sign in, or send a workspace API key as a Bearer token from a backend",
          "Ask the person before calling `disconnect_health_system` or `delete_person`. Both are permanent",
          "Wait for the connection webhook or check connection status before reading records. Pulls run in the background after the patient approves",
          "Branch on `error.code`, not the message, and wait the `Retry-After` seconds on a 429",
          "Use a Sandbox workspace and the Synthetic Hospital (password `demopass`) for tests. Sandbox keys cannot reach production sources"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 52.7
          }
        ],
        "editorialScores": {
          "ergonomics": 72,
          "maintenance": 69,
          "payments": 25,
          "reliability": 28,
          "schema": 62,
          "security": 67,
          "transparency": 32
        },
        "provenanceScore": 70
      },
      "connect": {
        "install": "npm install medblocks",
        "http": "curl https://app.medblocks.com/patients -H \"Authorization: Bearer $MEDBLOCKS_API_KEY\" -H \"Content-Type: application/json\"",
        "claudeCode": "claude mcp add --transport http medblocks https://app.medblocks.com/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/health.records",
        "tool": "https://letme.dev/medblocks"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Enterprise plan, uncapped patients",
          "unit": "month",
          "usd": 5000,
          "note": "$60,000 a year per the billing page, shown here as a monthly equivalent"
        }
      ],
      "provenance": {
        "legalEntity": "Medblocks Inc.",
        "domain": "medblocks.com",
        "domainRegistered": "2005-11-04",
        "endpointOnVendorDomain": true,
        "terms": "https://medblocks.com/terms",
        "privacy": "https://medblocks.com/privacy-policy",
        "statusPage": "",
        "changelog": "https://medblocks.com/docs/reference/changelog",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The terms, last updated 5 October 2026, name Medblocks Inc., a Delaware corporation, at 100 Front Street, Suite 400 #122, Worcester, MA 01608, and cover the website and the CMS Blue Button application. No separate customer terms for the Platform API were found.",
          "The terms forbid using robots, scripts or scrapers to access the site. We read public pages and recorded that clause.",
          "The privacy policy, last updated 5 October 2026, covers the Medblocks applications including Medblocks Platform and the MCP server, and says no data is used to train AI models.",
          "medblocks.com/.well-known/security.txt returns 404. status.medblocks.com did not answer and no status page was linked from the docs.",
          "RDAP for medblocks.com gives a registration date of 2005-11-04."
        ],
        "score": 70
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/medblocks.json",
      "live": {
        "slug": "medblocks",
        "probe": {
          "target": "https://app.medblocks.com/mcp",
          "method": "get",
          "lastAt": "2026-10-14T09:41:57.376112052Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 317,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 317,
          "p95ms24h": 463,
          "samples24h": 17,
          "samples30d": 17,
          "days": [
            {
              "date": "2026-10-14",
              "probes": 17,
              "ok": 17
            }
          ]
        },
        "updatedAt": "2026-10-14T09:41:57.376112052Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "1upHealth, Inc.",
        "b": "Medblocks Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://app.medblocks.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under 1upHealth's Terms of Service (effective 1 August 2024)",
        "b": "Proprietary service under Medblocks' terms. The medblocks TypeScript SDK on npm carries a proprietary licence that forbids redistribution and reverse engineering. The agent skills repository has no licence file",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "10",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "none",
        "b": "2026-09-14",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-10-05",
        "name": "Terms last updated"
      },
      {
        "a": "2026-06-25",
        "b": "2026-10-05",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "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": "36 npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Medblocks scores 52.7 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 5 of 7 scored categories. 1upHealth leads on reliability and transparency \u0026 trust.",
        "question": "Which is better for AI agents, 1upHealth or Medblocks?"
      },
      {
        "answer": "1upHealth uses an OAuth sign-in. Medblocks takes an API key or an OAuth sign-in.",
        "question": "Do 1upHealth and Medblocks need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for 1upHealth. Medblocks has a hosted endpoint at https://app.medblocks.com/mcp.",
        "question": "Can an agent call 1upHealth and Medblocks without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 52 against 28",
          "Transparency \u0026 trust, 72 against 51"
        ],
        "also": null,
        "goodFor": "Consumer and care apps that read a member's health plan claims and clinical data under the CMS rules, and payers meeting those rules.",
        "slug": "1uphealth",
        "watchFor": "No rate limits, 429 handling or error formats documented"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 62 against 50",
          "Agent ergonomics, 72 against 32",
          "Payments \u0026 pricing, 25 against 20",
          "Maintenance \u0026 community, 69 against 37"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "A consumer or care app, or an assistant, that needs a patient's own records from US hospitals and payers with the patient's consent, and wants an MCP route as well as REST.",
        "slug": "medblocks",
        "watchFor": "No status page, SLA or published rate limits for the Platform API"
      }
    ],
    "job": {
      "capability": "health.records",
      "name": "Patient record retrieval"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-rook.json",
        "title": "1upHealth vs ROOK",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-rook"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-terra.json",
        "title": "1upHealth vs Terra API",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-terra"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aidbox-vs-medblocks.json",
        "title": "Aidbox vs Medblocks",
        "url": "https://www.anchorterminal.com/compare/aidbox-vs-medblocks"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-aidbox.json",
        "title": "1upHealth vs Aidbox",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-aidbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-health-gorilla.json",
        "title": "1upHealth vs Health Gorilla",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-health-gorilla"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-medplum.json",
        "title": "1upHealth vs Medplum",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-medplum"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-metriport.json",
        "title": "1upHealth vs Metriport Medical API",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-metriport"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-particle-health.json",
        "title": "1upHealth vs Particle Health",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-particle-health"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-redox.json",
        "title": "1upHealth vs Redox",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-redox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-zus-health.json",
        "title": "1upHealth vs Zus Health",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-zus-health"
      },
      {
        "json": "https://www.anchorterminal.com/compare/health-gorilla-vs-medblocks.json",
        "title": "Health Gorilla vs Medblocks",
        "url": "https://www.anchorterminal.com/compare/health-gorilla-vs-medblocks"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-medplum.json",
        "title": "Medblocks vs Medplum",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-medplum"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-metriport.json",
        "title": "Medblocks vs Metriport Medical API",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-metriport"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-particle-health.json",
        "title": "Medblocks vs Particle Health",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-particle-health"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-redox.json",
        "title": "Medblocks vs Redox",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-redox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-zus-health.json",
        "title": "Medblocks vs Zus Health",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-zus-health"
      },
      {
        "json": "https://www.anchorterminal.com/compare/1uphealth-vs-validic.json",
        "title": "1upHealth vs Validic Inform",
        "url": "https://www.anchorterminal.com/compare/1uphealth-vs-validic"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-rook.json",
        "title": "Medblocks vs ROOK",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-rook"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-terra.json",
        "title": "Medblocks vs Terra API",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-terra"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medblocks-vs-validic.json",
        "title": "Medblocks vs Validic Inform",
        "url": "https://www.anchorterminal.com/compare/medblocks-vs-validic"
      }
    ],
    "scores": [
      {
        "1uphealth": 52,
        "by": 24,
        "edge": "1uphealth",
        "key": "reliability",
        "medblocks": 28,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "1uphealth": 50,
        "by": 12,
        "edge": "medblocks",
        "key": "schema",
        "medblocks": 62,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "1uphealth": 32,
        "by": 40,
        "edge": "medblocks",
        "key": "ergonomics",
        "medblocks": 72,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "1uphealth": 63,
        "by": 4,
        "edge": "medblocks",
        "key": "security",
        "medblocks": 67,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "1uphealth": 20,
        "by": 5,
        "edge": "medblocks",
        "key": "payments",
        "medblocks": 25,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "1uphealth": 37,
        "by": 32,
        "edge": "medblocks",
        "key": "maintenance",
        "medblocks": 69,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "1uphealth": 72,
        "by": 21,
        "edge": "1uphealth",
        "key": "transparency",
        "medblocks": 51,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Medblocks scores 52.7 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 5 of 7 scored categories. 1upHealth leads on reliability and transparency \u0026 trust. Both do patient record retrieval.",
    "verdicts": {
      "1uphealth": "Self-serve Dev Portal sandbox clients and a demo health plan let an app test the CMS Patient Access, Provider Access and Payer-to-Payer FHIR APIs, backed by HITRUST and SOC 2 Type 2. No rate limits, error formats or dated releases are documented, and the Patient Access OAuth step needs the member in a browser.",
      "medblocks": "Patient-authorised record retrieval with a ten-tool remote MCP server, OAuth with per-capability consent, an audit entry for every call and a free plan for 1,000 active patients. No status page, no published rate limits and no idempotency keys were found, and the OpenAPI file behind the reference is not published."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/1uphealth-vs-medblocks",
    "json": "https://www.anchorterminal.com/compare/1uphealth-vs-medblocks.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/1uphealth-vs-medblocks.md",
    "slim": "https://www.anchorterminal.com/compare/1uphealth-vs-medblocks.min.md"
  },
  "markdown": "Medblocks scores 52.7 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 5 of 7 scored categories. 1upHealth leads on reliability and transparency \u0026 trust. Both do patient record retrieval.\n\n- 1upHealth: grade D, 46.8/100, rank #903 of 1076. Markdown https://www.anchorterminal.com/tools/1uphealth.md · JSON https://www.anchorterminal.com/api/v1/tools/1uphealth.json\n- Medblocks: grade D, 52.7/100, rank #773 of 1076. Markdown https://www.anchorterminal.com/tools/medblocks.md · JSON https://www.anchorterminal.com/api/v1/tools/medblocks.json\n- Best health record and wellness data APIs for AI agents: https://www.anchorterminal.com/best/health-data/index.md\n- All 63 health comparisons: https://www.anchorterminal.com/compare/health-data/index.md\n\n## Which one, for what\n\n### 1upHealth (D)\n\nGood for: Consumer and care apps that read a member's health plan claims and clinical data under the CMS rules, and payers meeting those rules.\n\nAhead on:\n- Reliability, 52 against 28\n- Transparency \u0026 trust, 72 against 51\n\nWatch for: No rate limits, 429 handling or error formats documented\n\n### Medblocks (D)\n\nGood for: A consumer or care app, or an assistant, that needs a patient's own records from US hospitals and payers with the patient's consent, and wants an MCP route as well as REST.\n\nAhead on:\n- Schema \u0026 documentation, 62 against 50\n- Agent ergonomics, 72 against 32\n- Payments \u0026 pricing, 25 against 20\n- Maintenance \u0026 community, 69 against 37\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No status page, SLA or published rate limits for the Platform API\n\n\n## Score by category\n\n| Category | Weight | 1upHealth | Medblocks | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 52 | 28 | 1upHealth +24 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 50 | 62 | Medblocks +12 |\n| Agent ergonomics | 13% (16.2 this run) | 32 | 72 | Medblocks +40 |\n| Security \u0026 auth | 14% (17.5 this run) | 63 | 67 | Medblocks +4 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 25 | Medblocks +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 37 | 69 | Medblocks +32 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 72 | 51 | 1upHealth +21 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **46.8 · D** | **52.7 · D** | |\n\n## Facts side by side\n\n| Fact | 1upHealth | Medblocks |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | 1upHealth, Inc. | Medblocks Inc. |\n| Hosted endpoint | no (local only) | `https://app.medblocks.com/mcp` |\n| Transports | HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth | OAuth or key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under 1upHealth's Terms of Service (effective 1 August 2024) | Proprietary service under Medblocks' terms. The medblocks TypeScript SDK on npm carries a proprietary licence that forbids redistribution and reverse engineering. The agent skills repository has no licence file |\n| Tools exposed | none | 10 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | none | 2026-09-14 |\n| Terms last updated | no date given | 2026-10-05 |\n| Privacy policy last updated | 2026-06-25 | 2026-10-05 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | none | 36 npm/wk |\n\n## Verdicts\n\n**1upHealth.** Self-serve Dev Portal sandbox clients and a demo health plan let an app test the CMS Patient Access, Provider Access and Payer-to-Payer FHIR APIs, backed by HITRUST and SOC 2 Type 2. No rate limits, error formats or dated releases are documented, and the Patient Access OAuth step needs the member in a browser.\n\n**Medblocks.** Patient-authorised record retrieval with a ten-tool remote MCP server, OAuth with per-capability consent, an audit entry for every call and a free plan for 1,000 active patients. No status page, no published rate limits and no idempotency keys were found, and the OpenAPI file behind the reference is not published.\n\n## Before you call either\n\n### 1upHealth\n\n1. Hand the Patient Access sign-in to the member, who must authorise in the health plan's auth app\n2. Exchange the authorisation code within five minutes, and refresh before the 15-minute token expires\n3. Email payer-patient-access@1up.health with the client ID to get the app synced to the demo environment\n4. Expect only claims and coverage resources from some payers, and read /r4/metadata first\n\n### Medblocks\n\n1. Connect with `claude mcp add --transport http medblocks https://app.medblocks.com/mcp` and sign in, or send a workspace API key as a Bearer token from a backend\n2. Ask the person before calling `disconnect_health_system` or `delete_person`. Both are permanent\n3. Wait for the connection webhook or check connection status before reading records. Pulls run in the background after the patient approves\n4. Branch on `error.code`, not the message, and wait the `Retry-After` seconds on a 429\n5. Use a Sandbox workspace and the Synthetic Hospital (password `demopass`) for tests. Sandbox keys cannot reach production sources\n\n## Questions\n\n### Which is better for AI agents, 1upHealth or Medblocks?\n\nMedblocks scores 52.7 (D) on agent readiness against 1upHealth's 46.8 (D), and leads in 5 of 7 scored categories. 1upHealth leads on reliability and transparency \u0026 trust.\n\n### Do 1upHealth and Medblocks need an API key?\n\n1upHealth uses an OAuth sign-in. Medblocks takes an API key or an OAuth sign-in.\n\n### Can an agent call 1upHealth and Medblocks without installing anything?\n\nNo hosted endpoint is listed for 1upHealth. Medblocks has a hosted endpoint at https://app.medblocks.com/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/1uphealth-vs-medblocks.json, and with the fewest tokens: https://www.anchorterminal.com/compare/1uphealth-vs-medblocks.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"1uphealth\", \"b\": \"medblocks\"}`. From a terminal: `anchor compare 1uphealth medblocks`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/1uphealth.json and https://www.anchorterminal.com/api/v1/tools/medblocks.json\n\n## Other comparisons with 1upHealth or Medblocks\n\n- [1upHealth vs ROOK](https://www.anchorterminal.com/compare/1uphealth-vs-rook.md)\n- [1upHealth vs Terra API](https://www.anchorterminal.com/compare/1uphealth-vs-terra.md)\n- [Aidbox vs Medblocks](https://www.anchorterminal.com/compare/aidbox-vs-medblocks.md)\n- [1upHealth vs Aidbox](https://www.anchorterminal.com/compare/1uphealth-vs-aidbox.md)\n- [1upHealth vs Health Gorilla](https://www.anchorterminal.com/compare/1uphealth-vs-health-gorilla.md)\n- [1upHealth vs Medplum](https://www.anchorterminal.com/compare/1uphealth-vs-medplum.md)\n- [1upHealth vs Metriport Medical API](https://www.anchorterminal.com/compare/1uphealth-vs-metriport.md)\n- [1upHealth vs Particle Health](https://www.anchorterminal.com/compare/1uphealth-vs-particle-health.md)\n- [1upHealth vs Redox](https://www.anchorterminal.com/compare/1uphealth-vs-redox.md)\n- [1upHealth vs Zus Health](https://www.anchorterminal.com/compare/1uphealth-vs-zus-health.md)\n- [Health Gorilla vs Medblocks](https://www.anchorterminal.com/compare/health-gorilla-vs-medblocks.md)\n- [Medblocks vs Medplum](https://www.anchorterminal.com/compare/medblocks-vs-medplum.md)\n- [Medblocks vs Metriport Medical API](https://www.anchorterminal.com/compare/medblocks-vs-metriport.md)\n- [Medblocks vs Particle Health](https://www.anchorterminal.com/compare/medblocks-vs-particle-health.md)\n- [Medblocks vs Redox](https://www.anchorterminal.com/compare/medblocks-vs-redox.md)\n- [Medblocks vs Zus Health](https://www.anchorterminal.com/compare/medblocks-vs-zus-health.md)\n- [1upHealth vs Validic Inform](https://www.anchorterminal.com/compare/1uphealth-vs-validic.md)\n- [Medblocks vs ROOK](https://www.anchorterminal.com/compare/medblocks-vs-rook.md)\n- [Medblocks vs Terra API](https://www.anchorterminal.com/compare/medblocks-vs-terra.md)\n- [Medblocks vs Validic Inform](https://www.anchorterminal.com/compare/medblocks-vs-validic.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "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": "1upHealth vs Medblocks",
        "url": ""
      }
    ],
    "description": "Medblocks scores 52.7 (D) to 1upHealth's 46.8 (D) for patient record retrieval. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "1upHealth D 46.8",
      "Medblocks D 52.7",
      "scores"
    ],
    "h1": "1upHealth vs Medblocks",
    "image": "https://www.anchorterminal.com/assets/og/compare-1uphealth-vs-medblocks.png",
    "path": "/compare/1uphealth-vs-medblocks",
    "published": "2026-10-01",
    "section": "tools",
    "title": "1upHealth vs Medblocks for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/1uphealth-vs-medblocks"
  },
  "tokens": {
    "markdown": 2300,
    "slim": 730
  },
  "version": 1
}
