# 1upHealth vs Medplum > Medplum scores 68.7 (B) to 1upHealth's 46.8 (D) for patient record retrieval. Prices, MCP, x402, uptime and agent notes side by side. - Canonical: https://www.anchorterminal.com/compare/1uphealth-vs-medplum - Markdown: https://www.anchorterminal.com/compare/1uphealth-vs-medplum.md (~2,300 tokens) - Slim: https://www.anchorterminal.com/compare/1uphealth-vs-medplum.min.md (~730 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/1uphealth-vs-medplum.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-14 Medplum scores 68.7 (B) on agent readiness against 1upHealth's 46.8 (D), and leads in 6 of 7 scored categories. Both do patient record retrieval. - 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 - Medplum: grade B, 68.7/100, rank #216 of 1076. Markdown https://www.anchorterminal.com/tools/medplum.md · JSON https://www.anchorterminal.com/api/v1/tools/medplum.json - Best health record and wellness data APIs for AI agents: https://www.anchorterminal.com/best/health-data/index.md - All 63 health comparisons: https://www.anchorterminal.com/compare/health-data/index.md ## Which one, for what ### 1upHealth (D) Good 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. Watch for: No rate limits, 429 handling or error formats documented ### Medplum (B) Good for: An agent working inside a digital health company's own FHIR store, reading and writing patients, observations and appointments under a BAA. Ahead on: - Reliability, 75 against 52 - Schema & documentation, 82 against 50 - Agent ergonomics, 73 against 32 - Security & auth, 74 against 63 - Payments & pricing, 25 against 20 - Maintenance & community, 93 against 37 Also in its favour: - A hosted endpoint, with nothing to install - Open source Watch for: The MCP `fhir-request` tool can delete or overwrite any resource the token allows, with no readOnlyHint or destructiveHint ## Score by category | Category | Weight | 1upHealth | Medplum | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 52 | 75 | Medplum +23 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 50 | 82 | Medplum +32 | | Agent ergonomics | 13% (16.2 this run) | 32 | 73 | Medplum +41 | | Security & auth | 14% (17.5 this run) | 63 | 74 | Medplum +11 | | Payments & pricing | 10% (12.5 this run) | 20 | 25 | Medplum +5 | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 37 | 93 | Medplum +56 | | Transparency & trust | 7% (8.8 this run) | 72 | 72 | even | | Negative events | ≤15 | 0 | -2 | | | **Total** | | **46.8 · D** | **68.7 · B** | | ## Facts side by side | Fact | 1upHealth | Medplum | | --- | --- | --- | | Kind | HTTP API | HTTP API | | Vendor | 1upHealth, Inc. | Orangebot, Inc. (dba Medplum) | | Hosted endpoint | no (local only) | `https://api.medplum.com/mcp/stream` | | Transports | HTTP | HTTP, Streamable HTTP, SSE (legacy) | | Auth | OAuth | OAuth | | Pricing | Paid | Freemium | | x402 | no | no | | Licence | Proprietary service under 1upHealth's Terms of Service (effective 1 August 2024) | Apache 2.0 for the server, SDKs and apps in medplum/medplum. The hosted service at api.medplum.com runs under Medplum's terms of service | | Tools exposed | none | 3 | | Read-only variant documented | no | yes | | llms.txt | yes | yes | | MCP registry | not listed | `com.medplum/mcp` | | Last release | none | 2026-10-08 | | Terms last updated | no date given | 2023-04-11 | | Privacy policy last updated | 2026-06-25 | 2022-04-05 | | Customer content may train models | not found in the text | not found in the text | | Terms restrict automated access | not found in the text | not found in the text | | Terms restrict benchmarking | yes | not found in the text | | Terms or service can change without notice | not found in the text | yes | | Arbitration or class-action waiver | not found in the text | yes | | Popularity | none | 2.7k stars, 270k npm/wk | ## 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. **Medplum.** Graded on the hosted FHIR API at api.medplum.com. Rate limits, a `RateLimit` header and a 99.99 per cent SLA are published, AccessPolicy resources allow read-only clients, and an official MCP server sits in the registry. Its main tool can delete records with no annotation, the status page could not be read, and the privacy policy dates from 2022. ## Before you call either ### 1upHealth 1. Hand the Patient Access sign-in to the member, who must authorise in the health plan's auth app 2. Exchange the authorisation code within five minutes, and refresh before the 15-minute token expires 3. Email payer-patient-access@1up.health with the client ID to get the app synced to the demo environment 4. Expect only claims and coverage resources from some payers, and read /r4/metadata first ### Medplum 1. Use a ClientApplication with an AccessPolicy limited to the resources the task needs, and set `readonly` where no writes are needed 2. Read the `RateLimit` header and wait for the reset time after a 429. Writes cost 100 quota points, searches 20 and reads 1 3. Create patients with conditional create (`If-None-Exist`) or upsert on an identifier so a retry doesn't make a duplicate 4. Pass paths to `fhir-request` relative to the FHIR R4 base, with no leading slash or `/fhir/R4` prefix 5. Use `Prefer: respond-async` for large bundles. Operations inside the background job don't count against the quota ## Questions ### Which is better for AI agents, 1upHealth or Medplum? Medplum scores 68.7 (B) on agent readiness against 1upHealth's 46.8 (D), and leads in 6 of 7 scored categories. ### Do 1upHealth and Medplum need an API key? Both use an OAuth sign-in. ### Can an agent call 1upHealth and Medplum without installing anything? No hosted endpoint is listed for 1upHealth. Medplum has a hosted endpoint at https://api.medplum.com/mcp/stream. ### Are 1upHealth and Medplum open source? No open-source release is listed for 1upHealth. Medplum is open source (Apache 2.0 for the server, SDKs and apps in medplum/medplum. The hosted service at api.medplum.com runs under Medplum's terms of service). ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/1uphealth-vs-medplum.json, and with the fewest tokens: https://www.anchorterminal.com/compare/1uphealth-vs-medplum.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "1uphealth", "b": "medplum"}`. From a terminal: `anchor compare 1uphealth medplum` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/1uphealth.json and https://www.anchorterminal.com/api/v1/tools/medplum.json ## Other comparisons with 1upHealth or Medplum - [1upHealth vs ROOK](https://www.anchorterminal.com/compare/1uphealth-vs-rook.md) - [1upHealth vs Terra API](https://www.anchorterminal.com/compare/1uphealth-vs-terra.md) - [Aidbox vs Medplum](https://www.anchorterminal.com/compare/aidbox-vs-medplum.md) - [Medplum vs Metriport Medical API](https://www.anchorterminal.com/compare/medplum-vs-metriport.md) - [Medplum vs Particle Health](https://www.anchorterminal.com/compare/medplum-vs-particle-health.md) - [Medplum vs Redox](https://www.anchorterminal.com/compare/medplum-vs-redox.md) - [Medplum vs ROOK](https://www.anchorterminal.com/compare/medplum-vs-rook.md) - [Medplum vs Terra API](https://www.anchorterminal.com/compare/medplum-vs-terra.md) - [Medplum vs Zus Health](https://www.anchorterminal.com/compare/medplum-vs-zus-health.md) - [1upHealth vs Aidbox](https://www.anchorterminal.com/compare/1uphealth-vs-aidbox.md) - [1upHealth vs Health Gorilla](https://www.anchorterminal.com/compare/1uphealth-vs-health-gorilla.md) - [1upHealth vs Medblocks](https://www.anchorterminal.com/compare/1uphealth-vs-medblocks.md) - [1upHealth vs Metriport Medical API](https://www.anchorterminal.com/compare/1uphealth-vs-metriport.md) - [1upHealth vs Particle Health](https://www.anchorterminal.com/compare/1uphealth-vs-particle-health.md) - [1upHealth vs Redox](https://www.anchorterminal.com/compare/1uphealth-vs-redox.md) - [1upHealth vs Zus Health](https://www.anchorterminal.com/compare/1uphealth-vs-zus-health.md) - [Health Gorilla vs Medplum](https://www.anchorterminal.com/compare/health-gorilla-vs-medplum.md) - [Medblocks vs Medplum](https://www.anchorterminal.com/compare/medblocks-vs-medplum.md) - [1upHealth vs Validic Inform](https://www.anchorterminal.com/compare/1uphealth-vs-validic.md)