# FHIR MCP Server

> MCP server providing seamless access to FHIR APIs for AI tools and healthcare applications

- name: io.github.wso2/fhir-mcp-server
- version: 0.10.0
- connection class: L0 (run_local_package)
- trust: 80/100
- quality: –/100 (not scored)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.wso2%2Ffhir-mcp-server
- tools: https://api.protogrid.dev/v1/servers/io.github.wso2%2Ffhir-mcp-server/tools

**Runs on your machine: something must execute the package.** Only local packages are published (npm, PyPI, OCI, …). The registry never executes them, so tools are unknown until you run it.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "fhir-mcp-server": {
      "command": "uvx",
      "args": [
        "fhir-mcp-server==0.10.0"
      ],
      "env": {
        "FHIR_SERVER_BASE_URL": "${FHIR_SERVER_BASE_URL}"
      }
    }
  }
}
```


## Trust

- hygiene: 100
- liveness: n/a
- freshness: 45
- provenance: 90
- drivers: +repository +namespace-matches-repo +website ~liveness-unmeasured -stale-203d
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality –/100 (not scored)

Not scored: fewer than three checks apply, usually because no remote answered a credential-free probe or the server is a local package.

### protocol: n/a (weight 25)

- n/a `protocol.modern`, `protocol.stateless`, `protocol.transport`, `protocol.list_ttl`: no remote answered a protocol handshake (not probed yet, unreachable, or local-only)

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: n/a (weight 30)

- n/a `tools.descriptions`, `tools.description_length`, `tools.schemas`, `tools.annotations`, `tools.directory_hints`, `tools.token_cost`, `tools.api_dump`: tool list unknown (behind auth, not probed, or empty)

### stability: n/a (weight 15)

- n/a `stability.changes`, `stability.rug_pull`: tool list unknown

### dependencies: 33 (weight 15)

- fail `deps.known_vulns`: 4 advisories to act on (malicious, or rated high or critical with a fix available): GHSA-2g87-pp6c-29x5 in aiohttp@3.12.13 (direct, fixed in 3.14.4), GHSA-5wr8-gcqf-gqf3 in aiohttp@3.12.13 (direct, fixed in 3.14.4), GHSA-6mq8-rvhq-8wgg in aiohttp@3.12.13 (direct, fixed in 3.13.3), ...; 32 more of lower severity or without a fix
- fail `deps.mcp_sdk_version`: mcp 1.9.1 has 6 known advisories (GHSA-3qhf-m339-9g5v, GHSA-84m7-p3x7-pcfv, GHSA-9h52-p55h-vw2f, ...); update mcp to 1.30.0 or later
- pass `deps.resolvable`: fhir-mcp-server@0.10.0 resolved: 41 packages

- tools: unknown
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.wso2/fhir-mcp-server.svg)](https://protogrid.dev/servers/io.github.wso2/fhir-mcp-server)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Dependencies

- pypi fhir-mcp-server@0.10.0: resolved, 40 dependencies, MCP SDK mcp 1.9.1
  - GHSA-2g87-pp6c-29x5 (high) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.4 ``, advisory summary: "aiohttp: Multiple instances of excessive or unbounded memory/CPU use" https://osv.dev/vulnerability/GHSA-2g87-pp6c-29x5
  - GHSA-5wr8-gcqf-gqf3 (high) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.4 ``, advisory summary: "aiohttp server lacks an initial request/header timeout" https://osv.dev/vulnerability/GHSA-5wr8-gcqf-gqf3
  - GHSA-6mq8-rvhq-8wgg (high) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.3 ``, advisory summary: "AIOHTTP's HTTP Parser auto\_decompress feature is vulnerable to zip bomb" https://osv.dev/vulnerability/GHSA-6mq8-rvhq-8wgg
  - GHSA-cq5v-8q36-5273 (high) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.3 ``, advisory summary: "AIOHTTP: Out-of-bounds heap read in C HTTP response parser error path (malformed chunked response)" https://osv.dev/vulnerability/GHSA-cq5v-8q36-5273
  - GHSA-3qhf-m339-9g5v (high) in `` mcp@1.9.1 ``, direct, fixed in `` 1.9.4 ``, advisory summary: "MCP Python SDK vulnerability in the FastMCP Server causes validation error, leading to DoS" https://osv.dev/vulnerability/GHSA-3qhf-m339-9g5v
  - GHSA-9h52-p55h-vw2f (high) in `` mcp@1.9.1 ``, direct, fixed in `` 1.23.0 ``, advisory summary: "Model Context Protocol (MCP) Python SDK does not enable DNS rebinding protection by default" https://osv.dev/vulnerability/GHSA-9h52-p55h-vw2f
  - GHSA-j975-95f5-7wqh (high) in `` mcp@1.9.1 ``, direct, fixed in `` 1.10.0 ``, advisory summary: "MCP Python SDK has Unhandled Exception in Streamable HTTP Transport, Leading to Denial of Service" https://osv.dev/vulnerability/GHSA-j975-95f5-7wqh
  - GHSA-jpw9-pfvf-9f58 (high) in `` mcp@1.9.1 ``, direct, fixed in `` 1.27.2 ``, advisory summary: "MCP Python SDK: HTTP transports serve session requests without verifying the authenticated principal" https://osv.dev/vulnerability/GHSA-jpw9-pfvf-9f58
  - GHSA-vj7q-gjh5-988w (high) in `` mcp@1.9.1 ``, direct, fixed in `` 1.28.1 ``, advisory summary: "MCP Python SDK: WebSocket server transport does not support Host/Origin validation" https://osv.dev/vulnerability/GHSA-vj7q-gjh5-988w
  - GHSA-4fvr-rgm6-gqmc (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.1 ``, advisory summary: "aiohttp: HTTP/1 Pipelined Requests Queue Without Limit" https://osv.dev/vulnerability/GHSA-4fvr-rgm6-gqmc
  - GHSA-63hw-fmq6-xxg2 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.1 ``, advisory summary: "aiohttp: C HTTP Parser Bypasses max\_line\_size for Fragmented Lines" https://osv.dev/vulnerability/GHSA-63hw-fmq6-xxg2
  - GHSA-6jhg-hg63-jvvf (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.3 ``, advisory summary: "AIOHTTP vulnerable to denial of service through large payloads" https://osv.dev/vulnerability/GHSA-6jhg-hg63-jvvf
  - GHSA-c427-h43c-vf67 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP accepts duplicate Host headers" https://osv.dev/vulnerability/GHSA-c427-h43c-vf67
  - GHSA-g3cq-j2xw-wf74 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.1 ``, advisory summary: "aiohttp: Unread Compressed Request Bodies Bypass client\_max\_size During Cleanup" https://osv.dev/vulnerability/GHSA-g3cq-j2xw-wf74
  - GHSA-g84x-mcqj-x9qq (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.3 ``, advisory summary: "AIOHTTP vulnerable to DoS through chunked messages" https://osv.dev/vulnerability/GHSA-g84x-mcqj-x9qq
  - GHSA-hg6j-4rv6-33pg (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.0 ``, advisory summary: "AIOHTTP is vulnerable to cross-origin redirect with per-request cookies" https://osv.dev/vulnerability/GHSA-hg6j-4rv6-33pg
  - GHSA-hpj7-wq8m-9hgp (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.1 ``, advisory summary: "aiohttp: DigestAuthMiddleware Applies Credentials to Cross-Origin Redirect Challenges" https://osv.dev/vulnerability/GHSA-hpj7-wq8m-9hgp
  - GHSA-jg22-mg44-37j8 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.0 ``, advisory summary: "AIOHTTP is Vulnerable to Deserialization of Untrusted Data" https://osv.dev/vulnerability/GHSA-jg22-mg44-37j8
  - GHSA-jj3x-wxrx-4x23 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.3 ``, advisory summary: "AIOHTTP vulnerable to DoS when bypassing asserts" https://osv.dev/vulnerability/GHSA-jj3x-wxrx-4x23
  - GHSA-m5qp-6w8w-w647 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP has a Multipart Header Size Bypass" https://osv.dev/vulnerability/GHSA-m5qp-6w8w-w647
  - GHSA-mfx4-hv73-q22v (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.2 ``, advisory summary: "AIOHTTP: HTTP request smuggling via WebSocket upgrade" https://osv.dev/vulnerability/GHSA-mfx4-hv73-q22v
  - GHSA-mq44-7p77-q5h7 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.2 ``, advisory summary: "AIOHTTP: WebSocket client accepts compressed frames without negotiated permessage-deflate" https://osv.dev/vulnerability/GHSA-mq44-7p77-q5h7
  - GHSA-p998-jp59-783m (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP affected by UNC SSRF/NTLMv2 Credential Theft/Local File Read in static resource handler on Windows" https://osv.dev/vulnerability/GHSA-p998-jp59-783m
  - GHSA-w2fm-2cpv-w7v5 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "aiohttp allows unlimited trailer headers, leading to possible uncapped memory usage" https://osv.dev/vulnerability/GHSA-w2fm-2cpv-w7v5
  - GHSA-xcgm-r5h9-7989 (moderate) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.1 ``, advisory summary: "aiohttp: Incomplete websocket frame payloads bypass memory limits" https://osv.dev/vulnerability/GHSA-xcgm-r5h9-7989
  - GHSA-84m7-p3x7-pcfv (moderate) in `` mcp@1.9.1 ``, direct, fixed in `` 1.30.0 ``, advisory summary: "MCP Python SDK: Unbounded Session Accumulation in StreamableHTTP Transport Enables Resource Exhaustion" https://osv.dev/vulnerability/GHSA-84m7-p3x7-pcfv
  - GHSA-2fqr-mr3j-6wp8 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.1 ``, advisory summary: "aiohttp: Host-Only Cookies Become Domain Cookies After CookieJar Persistence" https://osv.dev/vulnerability/GHSA-2fqr-mr3j-6wp8
  - GHSA-2vrm-gr82-f7m5 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP has CRLF injection through multipart part content type header construction" https://osv.dev/vulnerability/GHSA-2vrm-gr82-f7m5
  - GHSA-3wq7-rqq7-wx6j (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP has late size enforcement for non-file multipart fields causes memory DoS" https://osv.dev/vulnerability/GHSA-3wq7-rqq7-wx6j
  - GHSA-494j-54xm-rwp3 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.4 ``, advisory summary: "AIOHTTP: Secure attribute not enforced for shared cookie" https://osv.dev/vulnerability/GHSA-494j-54xm-rwp3
  - GHSA-4m7w-qmgq-4wj5 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.1 ``, advisory summary: "aiohttp: TLS Server Hostname Override Is Ignored When Reusing HTTPS Connections" https://osv.dev/vulnerability/GHSA-4m7w-qmgq-4wj5
  - GHSA-54jq-c3m8-4m76 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.3 ``, advisory summary: "AIOHTTP vulnerable to brute-force leak of internal static ﬁle path components" https://osv.dev/vulnerability/GHSA-54jq-c3m8-4m76
  - GHSA-63hf-3vf5-4wqf (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP's C parser (llhttp) accepts null bytes and control characters in response header values - header injection/security bypass" https://osv.dev/vulnerability/GHSA-63hf-3vf5-4wqf
  - GHSA-69f9-5gxw-wvc2 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.3 ``, advisory summary: "AIOHTTP's unicode processing of header values could cause parsing discrepancies" https://osv.dev/vulnerability/GHSA-69f9-5gxw-wvc2
  - GHSA-9548-qrrj-x5pj (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.12.14 ``, advisory summary: "AIOHTTP is vulnerable to HTTP Request/Response Smuggling through incorrect parsing of chunked trailer sections" https://osv.dev/vulnerability/GHSA-9548-qrrj-x5pj
  - GHSA-966j-vmvw-g2g9 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP leaks Cookie and Proxy-Authorization headers on cross-origin redirect" https://osv.dev/vulnerability/GHSA-966j-vmvw-g2g9
  - GHSA-9x8q-7h8h-wcw9 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.1 ``, advisory summary: "aiohttp: Payload Response Resources Are Not Closed After Mid-Body Disconnect" https://osv.dev/vulnerability/GHSA-9x8q-7h8h-wcw9
  - GHSA-fh55-r93g-j68g (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.3 ``, advisory summary: "AIOHTTP Vulnerable to Cookie Parser Warning Storm" https://osv.dev/vulnerability/GHSA-fh55-r93g-j68g
  - GHSA-hcc4-c3v8-rx92 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP Affected by Denial of Service (DoS) via Unbounded DNS Cache in TCPConnector" https://osv.dev/vulnerability/GHSA-hcc4-c3v8-rx92
  - GHSA-m6qw-4cw2-hm4m (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.14.0 ``, advisory summary: "aiohttp: CRLF injection in multipart headers" https://osv.dev/vulnerability/GHSA-m6qw-4cw2-hm4m
  - GHSA-mqqc-3gqh-h2x8 (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.3 ``, advisory summary: "AIOHTTP has unicode match groups in regexes for ASCII protocol elements" https://osv.dev/vulnerability/GHSA-mqqc-3gqh-h2x8
  - GHSA-mwh4-6h8g-pg8w (low) in `` aiohttp@3.12.13 ``, direct, fixed in `` 3.13.4 ``, advisory summary: "AIOHTTP has HTTP response splitting via \\r in reason phrase" https://osv.dev/vulnerability/GHSA-mwh4-6h8g-pg8w

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0.

## Remotes

_none_

## Packages

- pypi fhir-mcp-server@0.10.0

## Tools (0)

_none observed_
