io.github.stayce/icf-mcp

Official registry Health

WHO ICF codes: lookup, search, hierarchy, qualifiers, and 11 scored clinical assessment instruments.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

Remote (streamable-http)
Claude Code
claude mcp add --transport http icf-mcp 'https://mcp-icf.medseal.app/mcp'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "icf-mcp": {
            "type": "http",
            "url": "https://mcp-icf.medseal.app/mcp"
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. ICF MCP Server (Cloudflare Workers)
  2. What is ICF?
  3. Tool
  4. Prerequisites
  5. Installation
  6. Configuration
  7. Development
  8. Testing
  9. Deployment
  10. Usage with Claude
  11. Endpoints
  12. API Reference
  13. License
  14. Related

ICF MCP Server (Cloudflare Workers)

A Model Context Protocol (MCP) server for the WHO International Classification of Functioning, Disability and Health (ICF), deployed on Cloudflare Workers for global edge availability.

Live URL: https://mcp-icf.medseal.app/mcp

What is ICF?

The ICF is a WHO classification that complements ICD (diagnosis codes) by describing how health conditions affect a person's functioning in daily life:

  • Body Functions (b) - Physiological and psychological functions
  • Body Structures (s) - Anatomical parts of the body
  • Activities and Participation (d) - Task execution and life involvement
  • Environmental Factors (e) - Physical, social, and attitudinal environment

Tool

A single icf tool with action dispatch (token-efficient). 19 actions:

Codes & Hierarchy
ActionDescription
lookupLook up a specific ICF code (e.g., b280, d450)
searchSearch by keyword (e.g., "walking difficulty", "pain")
browseBrowse a category (b, s, d, e) or sub-chapter (b1, d4, e3)
childrenGet subcategories of a code
parentNavigate up to a code's parent category
siblingsCodes at the same level (same parent)
chainFull hierarchy path from root to a code
profileBuild a functional profile from multiple codes
Qualifiers
ActionDescription
qualifierComponent-specific qualifier reference (b=1, s=3, d=2, e=barrier/facilitator)
validateValidate code format + qualifiers, verify existence in the WHO API
parseParse fully qualified codes (d450.23, s730.312, e120+3)
Clinical Assessment Instruments

11 standardized RPM instruments with items, scoring, and ICF mappings: GAD-7, PHQ-9, RADAI-5, SLEDAI-2K, WHODAS 2.0, HAQ-DI, PROMIS-10, CAT, ODI, NRS Pain, Short FES-I.

ActionDescription
instrumentsList instruments, optionally filtered by domain
instrumentFull spec: items, response options, scoring, ICF mappings
scoreScore responses → severity, interpretation, ICF qualifier
suggestSuggest instruments for a condition, ICF code, or domain
mappingShow an instrument's ICF code mappings
Meta
ActionDescription
overviewFull ICF classification overview
apiRaw WHO API request (escape valve)
helpAction reference with examples

Example call:

{"action": "score", "name": "GAD-7", "responses": [1, 2, 1, 0, 1, 2, 1]}

Instrument and qualifier actions are pure logic and work without WHO API credentials; code/hierarchy actions require them.

Prerequisites

  1. WHO ICD-API credentials (free): Register at https://icd.who.int/icdapi
  2. Cloudflare account with Workers enabled
  3. Node.js 18+ and npm

Installation

git clone https://github.com/stayce/icf-mcp-cloudflare.git
cd icf-mcp-cloudflare
npm install

Configuration

  1. Copy the example environment file:
     cp .dev.vars.example .dev.vars
  2. Edit .dev.vars with your WHO API credentials for local development.
  3. For production, set secrets:
     wrangler secret put WHO_CLIENT_ID
     wrangler secret put WHO_CLIENT_SECRET

Development

npm run dev

The server will be available at http://localhost:8787.

Testing

npm test

Regression tests cover instrument scoring (all 11 instruments) and qualifier parsing — pure logic, no WHO API credentials needed.

Deployment

npm run deploy

For custom domain (configured in wrangler.toml):

wrangler deploy --env production

Usage with Claude

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "icf": {
      "type": "url",
      "url": "https://mcp-icf.medseal.app/mcp"
    }
  }
}

Or if deploying your own:

{
  "mcpServers": {
    "icf": {
      "type": "url",
      "url": "https://your-worker.workers.dev/mcp"
    }
  }
}

Endpoints

  • / or /health - Health check / server info
  • /mcp - MCP protocol endpoint (streamable HTTP)

API Reference

This server uses the WHO ICD-API which provides programmatic access to both ICD-11 and ICF classifications.

License

MIT License - see LICENSE

Frequently asked questions

What is io.github.stayce/icf-mcp?

WHO ICF codes: lookup, search, hierarchy, qualifiers, and 11 scored clinical assessment instruments.

How do I install io.github.stayce/icf-mcp?

It runs as a remote server. In Claude Code: claude mcp add --transport http icf-mcp 'https://mcp-icf.medseal.app/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.stayce/icf-mcp need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is io.github.stayce/icf-mcp open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.stayce/icf-mcp?

It is published by stayce. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.