
Medplum MCP Server: Setup for Claude and Other Apps
Lets Claude read and change patient records, appointments and lab results stored in Medplum.
Medplum is an open-source healthcare platform built on FHIR. Its MCP server has one working tool, fhir-request, that sends any FHIR request to your Medplum server, so the assistant can search patients, read lab results or create an appointment. The other two tools, search and fetch, are placeholders that return a fixed dummy document.
Medplum hosts the server at https://api.medplum.com/mcp/stream. Add it as a custom connector and sign in with your Medplum account. The code reads the base URL from the server's own config, so a self-hosted Medplum serves it from its own address, but the docs only give the hosted address.
Good for
- Teams building on Medplum who want to query FHIR data in plain language
- Developers testing a Medplum project with an assistant
- Clinical ops staff on Medplum who look up patients, orders and results
Works in
14 should work
Tap an app to see how to set it up and any known problems.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Install Medplum MCP
Claude Code
- 1
Copy this prompt.
Add the Medplum MCP server to Claude Code. Run this command: claude mcp add --transport http medplum https://api.medplum.com/mcp/stream Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Sign-in with the vendor account (OAuth).
Built from the package data we hold. Not yet tested by us.
Tools
Reads, creates, changes or deletes FHIR records
Sends one request to your Medplum FHIR server and returns the result. The assistant picks the method (GET, POST, PUT, PATCH or DELETE), a path such as Patient?name=Smith, and an optional body. It uses your sign-in, and the path must stay on your Medplum server.
Try: “What were John Doe's most recent cholesterol results?”
Delete ·
fhir-requestUsed by the assistant behind the scenes
Placeholder search some clients require
Exists so clients like ChatGPT will connect. It ignores the query and returns one fixed placeholder document. Real searches go through the FHIR request tool.
Try: “(The assistant uses this only to satisfy the client.)”
Read ·
searchPlaceholder fetch some clients require
Exists so clients like ChatGPT will connect. It ignores the ID and returns the same fixed placeholder document. Real reads go through the FHIR request tool.
Try: “(The assistant uses this only to satisfy the client.)”
Read ·
fetch
Read from the source code
Permissions
high risk · 3 things to watch
High risk
The assistant can read, change and delete patient data, with the same rights as the account you sign in with. Use an account limited to reading and send nothing your AI provider should not see.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It can delete patient records
One tool takes any FHIR request, including DELETE and PUT. Sign in with an account whose access policy only allows what you intend, and approve each call by hand. github.com
Health data goes to your AI provider
Anything the assistant reads from Medplum is sent to the model provider behind your client. Check that your agreements allow protected health information there. github.com
The assistant writes the request itself
It builds the path and body from your prompt, so it can pick the wrong patient. Check any create or update call before you approve it. github.com
Security advisories
No published security advisories for the MCP server as of Nov 1, 2026.
2 other advisories are about the wider medplum project, not this MCP server. See them on GitHub
Technical details
| Turning on read-only | No read-only mode is documented. Use a Medplum account whose access policy only allows reads. |
|---|---|
| Talks to | Your Medplum server (api.medplum.com for Medplum's hosted service) |
| Sign-in and keys | You sign in with OAuth 2.0 in the browser. The server uses your access token for each request. |
| Scopes |
|
Questions
Is the Medplum MCP server official?
Yes. Medplum, the company behind the platform, builds and hosts it, and its documentation calls it the official Medplum MCP integration.
What is the Medplum MCP server URL?
https://api.medplum.com/mcp/stream for Medplum's hosted service. Medplum's docs give only that address; for a self-hosted server, check your own deployment for the MCP path.
How do I add it to Claude?
Medplum's steps are for Claude.ai on a paid plan: add an organization integration with that address, then connect and sign in with Medplum. Other clients are covered by the generated steps in the install box and are not documented by Medplum.
Can it delete records?
Yes. Its only working tool accepts any FHIR request including DELETE. What it may delete depends on your Medplum access policy.
Can I make it read-only?
Not with a setting. Sign in with an account whose access policy allows reads only.
Why does it show only one real tool?
Medplum relies on the model already knowing FHIR, so one general request tool does the work. The other two tools are placeholders that some clients require.
Does it work with ChatGPT?
Not documented by Medplum. Its code adds the placeholder search and fetch tools with a comment saying ChatGPT will not connect without them, but its setup guide covers Claude.ai only.
Is it safe to use with patient data?
Only if your agreements allow it. Everything the assistant reads goes to the AI provider behind your client, and Medplum's docs do not describe a read-only mode. Use a test project or an account limited to reads, and check each write call before you approve it.
Information
updated Nov 2, 2026
- Publisher
- Official
- Endpoint
https://api.medplum.com/mcp/stream- Transport
- Streamable HTTP
- Auth
- OAuth
- Version
- 1.0.0
- License
- Apache-2.0
- Last commit
- Oct 31, 2026
- Open issues
- 604
- Listed in
- Official MCP registry
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 2Hide
- github.com · github.com
- github.com · github.com