Skip to main content
Glama
maheshbalan

FHIR MCP Server

by maheshbalan

request_patient_resource

Performs create, read, update, and delete operations on FHIR Patient resources via HTTP requests to the FHIR server.

Instructions

Makes an HTTP request to the FHIR server. Use this tool to perform CRUD operations only on the FHIR Patient resource. Rules: - When creating or updating a patient, use only the data explicitly provided by the user. - Do not guess, auto-fill, or assume any missing data. - When deleting a patient, ask the user for confirmation with details of the patient and wait for the user's confirmation. - Provide links to the app (not api) patient resource in the final response.

Args: method: HTTP method (GET, POST, PUT, DELETE) path: Resource path (e.g., "/Patient", "/Patient?name=John%20Doe") body: Optional JSON data for POST/PUT requests)

Returns: JSON response from the FHIR server

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It adds meaningful context around data integrity (no guessing/auto-filling), deletion confirmation, and response linking. However, it does not cover auth requirements, error handling, or rate limits, so it is not fully comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description has a clear structure: purpose, rules, args, and return value. It is somewhat verbose but every rule adds useful behavioral guidance. The front-loaded purpose makes it easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is resource-specific and the description covers key CRUD safety rules and return type. However, it omits the nested request parameter structure, authentication/error behavior, and lacks a detailed output schema. Given the complexity of a generic FHIR request tool, this is a moderate gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema defines a single required 'request' object containing method, path, and body, but the description lists 'method', 'path', and 'body' as top-level Args without mentioning the 'request' wrapper. This mismatch can mislead an agent into constructing an invalid call. The schema descriptions are minimal, and the description adds only path examples, not enough to compensate for the confusing structure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it makes HTTP requests to the FHIR server and restricts usage to CRUD operations on the FHIR Patient resource only. This specific verb+resource combination distinguishes it from sibling tools like request_observation_resource or request_medication_resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage rules: do not auto-fill data when creating/updating, require confirmation before deletion, and provide app links in responses. It also explicitly scopes the tool to Patient only, which serves as an exclusion for other resources, but it does not name alternative tools explicitly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/maheshbalan/fhir-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server