Troubleshooting
Common issues and solutions for Clinical Terminology MCP servers.
Claude doesn’t use the tools
Symptoms: Claude responds to clinical terminology questions with general knowledge instead of using the MCP tools.
Solutions:
- Restart Claude Desktop after adding server configuration
- Check the configuration file path is correct for your OS
- Verify the binary path in your configuration exists and is executable
- Look for errors in Claude’s MCP server logs
Check server is running:
# Test the binary directly
/path/to/bin/snomed-mcp
# Should output MCP initialization JSON
Authentication errors
ICD-11: “Unauthorized” or “Invalid credentials”
Symptoms: Error 401 when using ICD-11 tools.
Solutions:
- Verify your credentials at icd.who.int/icdapi
- Ensure environment variables are set correctly:
"env": { "ICD11_CLIENT_ID": "your-id", "ICD11_CLIENT_SECRET": "your-secret" } - Check for extra whitespace in credentials
- Regenerate credentials if they’ve expired
LOINC: “Authentication failed”
Symptoms: Error when using LOINC tools.
Solutions:
- Use your LOINC.org account credentials (not a separate API key)
- Verify login works at loinc.org
- Check username/password in environment variables
UMLS: “Invalid API key”
Symptoms: Error when using UMLS tools.
Solutions:
- Log in to uts.nlm.nih.gov
- Go to Profile → API Key
- Copy the current API key (they don’t expire but can be regenerated)
- Ensure
UMLS_API_KEYis set correctly
Connection errors
“Timeout” or “Connection refused”
Symptoms: Tools fail with network errors.
Solutions:
- Check internet connectivity
- Verify the API endpoint is reachable:
curl https://snowstorm.ihtsdotools.org/snowstorm/snomed-ct/MAIN - Increase timeout if on slow connection:
"env": { "HTTP_TIMEOUT": "60" } - Check if a firewall or proxy is blocking connections
“Certificate error” or “TLS handshake failed”
Symptoms: SSL/TLS errors when connecting to APIs.
Solutions:
- Ensure system certificates are up to date
- Check system time is correct (certificate validation requires accurate time)
- Try updating the operating system
No results returned
SNOMED search returns empty
Possible causes:
- Searching inactive concepts (add
active_only: falseif needed) - Wrong branch/edition configured
- Search term too specific
Solutions:
- Try broader search terms
- Check branch configuration:
"env": { "SNOWSTORM_BRANCH": "MAIN" // or "MAIN/SNOMEDCT-US" for US edition }
RxNorm drug not found
Possible causes:
- Brand name vs generic name
- Drug not in RxNorm database
- Spelling differences
Solutions:
- Try both brand and generic names
- Search for the active ingredient
- Use partial matching (first few letters)
Debug logging
To see detailed MCP communication:
# Run server with verbose output
/path/to/bin/snomed-mcp 2>&1 | tee mcp-debug.log
Check the log for:
- Initialization messages
- Tool invocations
- API request/response details
- Error messages
Getting help
If you’re still having issues:
- Check GitHub Issues for similar problems
- Search existing discussions
- Open a new issue with:
- Server name and version
- Operating system
- Full error message
- Steps to reproduce
- Configuration (with credentials redacted)
Common error messages
| Error | Cause | Solution |
|---|---|---|
exec format error | Wrong binary for OS/architecture | Download correct platform binary |
permission denied | Binary not executable | chmod +x /path/to/binary |
connection refused | Server not running or wrong port | Check configuration paths |
invalid JSON | Malformed config file | Validate JSON syntax |
context deadline exceeded | Request timeout | Increase HTTP_TIMEOUT |