pfizer-mcp-server

NHaris18/pfizer-mcp-server

3.2

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.

Tools
2
Resources
0
Prompts
0

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:

  1. 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
  2. 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 registries
  • mcp_server.py – Standard MCP server using stdio transport
  • server.py – HTTP-based MCP server using FastAPI
  • Python 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 manifest
  • GET /tools – Tool metadata
  • POST /invoke – Execute tool (JSON response)
  • POST /invoke with {"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.