MCP HTTP Endpoint
Last updated: Jan 20, 2025
MCP HTTP Endpoint
Access the FindICD10 MCP server directly over HTTP without installing any packages. Ideal for:
- Web-based MCP clients that can't run local processes
- Server-side integrations that need remote MCP access
- Testing and development without local setup
Endpoint
POST https://findicd10.com/api/mcpThe endpoint accepts MCP JSON-RPC messages and returns MCP-formatted responses.
Rate Limits
| Client Type | Limit |
|---|---|
| MCP Clients | 60 requests/min |
| API/Scripts | 30 requests/min |
Rate limit headers are included in all responses:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 59
X-RateLimit-Reset: 1705789200Available Tools
The HTTP endpoint exposes the same 5 tools as the stdio MCP server:
| Tool | Description |
|---|---|
search_codes | Search ICD-10 codes by keyword |
get_code | Get detailed code information |
get_related_codes | Find parent and sibling codes |
convert_code | Convert between ICD-9 and ICD-10 |
analyze_note | Extract codes from clinical text |
Usage Examples
Using curl
List available tools:
curl -X POST https://findicd10.com/api/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}'Search for codes:
curl -X POST https://findicd10.com/api/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "search_codes",
"arguments": {
"query": "type 2 diabetes",
"billable_only": true,
"limit": 5
}
}
}'Get code details:
curl -X POST https://findicd10.com/api/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "get_code",
"arguments": {
"code": "E11.65"
}
}
}'MCP Client Configuration
For MCP clients that support HTTP transport, configure the server URL:
{
"mcpServers": {
"findicd10": {
"transport": "http",
"url": "https://findicd10.com/api/mcp"
}
}
}Note: Configuration syntax varies by client. Check your MCP client's documentation for the exact format.
Response Format
Responses follow the MCP JSON-RPC format:
{
"jsonrpc": "2.0",
"id": 2,
"result": {
"content": [
{
"type": "text",
"text": "Found 5 ICD-10 codes for \"type 2 diabetes\":\n\nE11.9 [Billable]\n Type 2 diabetes mellitus without complications..."
}
]
}
}Error Handling
Errors are returned in MCP JSON-RPC error format:
{
"jsonrpc": "2.0",
"id": 1,
"error": {
"code": -32602,
"message": "Invalid params: code is required"
}
}| Error Code | Meaning |
|---|---|
| -32700 | Parse error (invalid JSON) |
| -32600 | Invalid request |
| -32601 | Method not found |
| -32602 | Invalid params |
| -32603 | Internal error |
Stdio vs HTTP
| Feature | Stdio (npx @findicd10/mcp) | HTTP (/api/mcp) |
|---|---|---|
| Setup | Requires Node.js, npx | None |
| Latency | Lower (local) | Higher (network) |
| Rate limits | 30 req/min | 60 req/min |
| Connection | Persistent | Per-request |
| Best for | Claude Desktop, local AI | Web apps, remote clients |
When to Use HTTP
Choose HTTP when:
- Your MCP client doesn't support stdio
- You're building a web-based integration
- You can't install Node.js locally
- You need higher rate limits
Choose stdio when:
- Using Claude Desktop or Claude Code
- You want lower latency
- You're doing intensive local development
Support
- Full MCP documentation: MCP Server Reference
- REST API: REST API Reference
- Questions: Contact us