NHaris18/pfizer-mcp-server
If you are the rightful owner of pfizer-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Pfizer ZIP MCP Server provides intelligence workflows for analyzing ZIP codes in terms of healthcare provider presence, patient demographics, and Paxlovid formulary access.
Pfizer ZIP MCP Server
This repository exposes the Pfizer ZIP intelligence workflows via the Model Context Protocol (MCP). The tools analyze ZIP codes for healthcare provider presence, patient demographics, and Paxlovid formulary access.
Available Implementations
This repository provides two MCP server implementations:
-
Standard MCP Server (
mcp_server.py) - Official MCP SDK implementation using stdio transport- Use with Claude Desktop, MCP Inspector, or any MCP-compatible client
- Recommended for production use
-
HTTP MCP Server (
server.py) - FastAPI-based HTTP implementation- Exposes tools via REST endpoints with optional SSE streaming
- Useful for remote access or HTTP-based integrations
Project Layout
pfizer_mcp/– Python package containing tool implementations and registriesmcp_server.py– Standard MCP server using stdio transportserver.py– HTTP-based MCP server using FastAPIPython Scripts/– Original standalone scripts (for reference/testing)data/– Static datasets (NPI, demographics, formulary data)
Setup
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Using the Standard MCP Server
Running Standalone
python mcp_server.py
Integrating with Claude Desktop
Add to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"pfizer-zip": {
"command": "python",
"args": ["/absolute/path/to/mcp_server.py"],
"env": {}
}
}
}
Testing with MCP Inspector
npx @modelcontextprotocol/inspector python mcp_server.py
Available Tools
Both server implementations expose the same tools:
1. pfizer_zip_pipeline_v1
Original pipeline producing NPI, demographic, and formulary summaries.
Input:
zip_code(string): 5-digit ZIP code
Output: Comprehensive ZIP code analysis including provider details, demographics, and formulary data.
2. pfizer_zip_pipeline_v2
Enhanced pipeline with priority scoring and key insights.
Input:
zip_code(string): 5-digit ZIP code
Output: Prioritized analysis with scoring (0-100), key drivers, and actionable insights.
Using the HTTP MCP Server
Running the HTTP Server
uvicorn server:app --host 0.0.0.0 --port 8000
HTTP Endpoints
GET /.well-known/mcp.json– MCP manifestGET /tools– Tool metadataPOST /invoke– Execute tool (JSON response)POST /invokewith{"stream": true}– Execute tool (SSE streaming)
HTTP Example Requests
List tools:
curl http://localhost:8000/tools
Invoke tool v1 (JSON response):
curl -X POST http://localhost:8000/invoke \
-H "Content-Type: application/json" \
-d '{"tool": "pfizer_zip_pipeline_v1", "arguments": {"zip_code": "12345"}}'
Stream tool v2 using SSE:
curl -N http://localhost:8000/invoke \
-H "Accept: text/event-stream" \
-H "Content-Type: application/json" \
-d '{"tool": "pfizer_zip_pipeline_v2", "arguments": {"zip_code": "12345"}, "stream": true}'
The streamed output is chunked as JSON data: events signaling status, result, and completion, making it easy to integrate with MCP clients that expect progressive updates.