About Canvas Medical MCP by usefulapi
Canvas Medical MCP by usefulapi is a hosted, read-only server for searching and reading patient charts through the Canvas FHIR R4 API. It is intended for MCP clients that need access to FHIR resources without local installation.
Key features
- 01Search FHIR resources
- 02Read individual FHIR resources
- 03Retrieve all data for one patient
- 04View the FHIR capability statement
Use cases
- 01Search for patient chart resources
- 02Read a specific FHIR record
- 03Retrieve a patient's available chart data
- 04Check Canvas Medical FHIR capabilities
MCP support
Exposes read-only Canvas Medical FHIR search and retrieval tools to MCP clients through a hosted endpoint. Users authenticate with their Canvas Medical credentials.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://canvas-medical.usefulapi.io/mcpclaude mcp add --transport http io-usefulapi-canvas-medical https://canvas-medical.usefulapi.io/mcp{"mcpServers":{"io-usefulapi-canvas-medical":{"type":"http","url":"https://canvas-medical.usefulapi.io/mcp"}}}Open in Cursor{"servers":{"io-usefulapi-canvas-medical":{"type":"http","url":"https://canvas-medical.usefulapi.io/mcp"}}}Open in VS Code{"mcpServers":{"io-usefulapi-canvas-medical":{"type":"http","url":"https://canvas-medical.usefulapi.io/mcp"}}}{"mcpServers":{"io-usefulapi-canvas-medical":{"serverUrl":"https://canvas-medical.usefulapi.io/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
4| Parameter | Type | Required | Description |
|---|---|---|---|
| _id | string | No | Fetch by resource id through search. |
| date | string | No | FHIR date filter, e.g. "ge2026-08-01" or "lt2026-09-01". Prefixes: eq, ne, gt, lt, ge, le. |
| name | string | No | Name search, for Patient and Practitioner. |
| _sort | string | No | Sort field, e.g. -date for newest first. |
| _count | integer | No | Page size, 1-100. |
| status | string | No | FHIR status filter, e.g. active, completed, cancelled. |
| _offset | integer | No | Offset for paging through results. |
| patient | string | No | Restrict to one patient, by Patient id. The usual first filter. |
| resource | enum | Yes | Which FHIR resource type to search.Patient | Appointment | Condition | Observation | MedicationRequest | MedicationStatement | MedicationDispense | AllergyIntolerance | Immunization | Encounter | DocumentReference | DiagnosticReport | Procedure | CarePlan | CareTeam | Goal | Coverage | Claim | Practitioner | Organization | Location | Schedule | Slot | Task | ServiceRequest | Questionnaire | QuestionnaireResponse | Consent | Device | Specimen | RelatedPerson | Communication | DetectedIssue | Provenance | Media | Group |
| identifier | string | No | Search by business identifier, e.g. an MRN. |
Details
From the project READMECanvas Medical MCP by usefulapi
Search and read a patient chart over the Canvas FHIR R4 API. Read-only. Hosted, no local install.
Live endpoint: https://canvas-medical.usefulapi.io/mcp · Homepage: https://usefulapi.io
Connect
- Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste
https://canvas-medical.usefulapi.io/mcp. - Claude Code:
claude mcp add --transport http canvas-medical https://canvas-medical.usefulapi.io/mcp, then run/mcpto log in. - VS Code: Add to VS Code.
- Cursor and other clients: add the URL as a remote MCP server:
{
"mcpServers": {
"canvas-medical": {
"url": "https://canvas-medical.usefulapi.io/mcp"
}
}
}
Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Canvas Medical credentials.
Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/canvas-medical/
On first connect you'll paste your Canvas Medical credentials. They are validated, stored per-user, and scoped to you — no keys in config files.
Tools
| Tool | Type | What it does |
|---|---|---|
canvas_search | read | Search a FHIR resource |
canvas_read | read | Read one FHIR resource |
canvas_get_patient_everything | read | Get everything for one patient |
canvas_get_capability_statement | read | Get the FHIR capability statement |
canvas_medical_usage_status | meta | Usage status (free-tier meter) |
canvas_medical_request_feature | meta | Request a missing feature |
canvas_medical_upgrade | meta | Upgrade to Pro (unlimited*) |
canvas_medical_cancel_subscription | meta | Cancel the Pro subscription |
read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.
Pricing
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 50 tool calls / month |
| Pro | $9/mo or $90/yr (2 months free) | Unlimited* |
*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].
Pro covers this server only. Subscribe with canvas_medical_upgrade (it returns a Stripe Checkout link). Cancel any time with canvas_medical_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running canvas_medical_upgrade before then undoes the cancel. Or write to [email protected].
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.