Developer Preview MCP Protocol

Insurance MCP Server

Make your insurance data queryable by AI agents. Coverage details, renewal tracking, discount analysis. Works with Claude, ChatGPT, and any MCP client.

Developer Preview: Sign up and generate an API key from your dashboard. Add the config below and your agent can start querying your insurance data.

Overview

AI tools like Claude and ChatGPT can read a PDF you upload. But they can't remember it next week, cross-reference it with your other policies, or compare your rate to the market. The data isn't structured. It isn't persistent. It isn't connected.

This MCP server gives your AI agent access to the structured insurance data in your Policy Penguin vault: coverage details, limits, deductibles, discounts, renewal history. It uses the Model Context Protocol, so any MCP-compatible client can query it.

Policy Penguin does the extraction and structuring. Your AI agent gets clean, validated data it can reason about. For direct programmatic access, see the REST API.

What you can ask

  • "What's my auto deductible?"
  • "Do I have umbrella coverage? What are the limits?"
  • "What discounts am I missing?"
  • "How did my rate compare to the state average this year?"
  • "What changed on my last renewal?"
  • "Show me all my policies and when they renew."

Prerequisites

  • A Policy Penguin account with at least one policy uploaded
  • An MCP-compatible AI client (Claude Desktop, Claude Code, ChatGPT, or any MCP client)
  • An API key from your Policy Penguin dashboard

Connect to the Server

Add the Policy Penguin MCP server to your AI agent's configuration. The server uses the Streamable HTTP transport.

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "policy-penguin": {
      "url": "https://mcp.policypenguin.ai/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

Claude Code

Add to your project's .mcp.json:

{
  "mcpServers": {
    "policy-penguin": {
      "type": "http",
      "url": "https://mcp.policypenguin.ai/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

Other MCP Clients

OpenClaw, ChatGPT, and any client supporting the Model Context Protocol can connect to https://mcp.policypenguin.ai/mcp with Bearer token authentication. See our OpenClaw tutorial for a step-by-step walkthrough.

Tools

Tools are functions your AI agent can call. Each returns structured JSON. The server provides four tools covering portfolio overview, policy details, asset details, and document upload.

get_portfolio

Get all policies and assets. Returns policy summaries (carrier, type, premium, coverage, insights count) and assets (vehicles, properties) with coverage status.

Parameters

None. Returns all policies and assets in your vault.

Example Response

{
  "policies": [
    {
      "id": "pol_a1b2c3d4",
      "type": "auto",
      "carrier": "State Farm",
      "state": "TX",
      "premium": {
        "amount": 2400,
        "period": "6mo",
        "currency": "usd"
      },
      "vehicles": 2,
      "insights_count": 4,
      "renewal_date": "2026-09-01"
    },
    {
      "id": "pol_e5f6g7h8",
      "type": "home",
      "carrier": "Progressive",
      "state": "TX",
      "premium": {
        "amount": 1800,
        "period": "12mo",
        "currency": "usd"
      },
      "insights_count": 3,
      "renewal_date": "2026-11-15"
    }
  ],
  "assets": [
    {
      "id": "ast_x1y2z3",
      "type": "vehicle",
      "name": "2022 Honda Accord",
      "covered": true
    },
    {
      "id": "ast_x4y5z6",
      "type": "vehicle",
      "name": "2020 Toyota Camry",
      "covered": true
    },
    {
      "id": "ast_x7y8z9",
      "type": "property",
      "name": "123 Main St",
      "covered": true
    }
  ]
}

get_policy_details

Full details for a specific policy: structured coverages with numeric limits and deductibles (grouped by vehicle), insights, discount analysis with savings estimates, renewal timeline, state minimums, and exclusions.

Parameters

Name Type Required Description
policy_id string Yes The policy ID to retrieve details for.

Example Response

{
  "id": "pol_a1b2c3d4",
  "type": "auto",
  "carrier": "State Farm",
  "state": "TX",
  "premium": {
    "amount": 2400,
    "period": "6mo",
    "currency": "usd"
  },
  "effective_date": "2026-03-01",
  "renewal_date": "2026-09-01",
  "coverages": {
    "policy_level": {
      "bodily_injury": {
        "per_person": 250000,
        "per_accident": 500000
      },
      "property_damage": {
        "limit": 100000
      },
      "uninsured_motorist": {
        "per_person": 250000,
        "per_accident": 500000
      }
    },
    "by_vehicle": [
      {
        "vehicle": "2022 Honda Accord",
        "collision": {
          "deductible": 500
        },
        "comprehensive": {
          "deductible": 250
        }
      },
      {
        "vehicle": "2020 Toyota Camry",
        "collision": {
          "deductible": 1000
        },
        "comprehensive": {
          "deductible": 500
        }
      }
    ]
  },
  "insights": [
    {
      "type": "coverage_gap",
      "severity": "high",
      "title": "Umbrella liability gap",
      "description": "Auto liability is $250K/$500K but umbrella requires $500K/$500K minimum."
    },
    {
      "type": "hidden_fee",
      "title": "Duplicate roadside assistance",
      "savings_estimate": 72
    }
  ],
  "discounts": {
    "applied": [
      "Multi-policy",
      "Multi-vehicle",
      "Paid in full"
    ],
    "available": [
      {
        "name": "Defensive driving course",
        "estimated_savings": 160
      },
      {
        "name": "Good student",
        "estimated_savings": 120
      }
    ]
  }
}

get_asset_details

Detail for a vehicle or property: current coverage, coverage history, premium trends.

Parameters

Name Type Required Description
asset_id string Yes The asset ID to retrieve details for.

Example Response

{
  "asset": {
    "type": "vehicle",
    "name": "2022 Honda Accord",
    "details": {
      "year": 2022,
      "make": "Honda",
      "model": "Accord"
    }
  },
  "current_coverage": {
    "carrier": "State Farm",
    "policy_number": "SF-12345678",
    "premium": {
      "amount": 2400,
      "period": "6-month",
      "currency": "usd"
    },
    "effective": {
      "start": "2025-12-01",
      "end": "2026-06-01"
    },
    "status": "active"
  },
  "premium_trends": {
    "current_monthly": 400,
    "change_percent": 8.1,
    "trend": "increasing"
  }
}

upload_policy

Upload an insurance policy document for extraction. Accepts PDF, JPEG, or PNG as base64. Returns structured policy data in about 15 seconds. The document is processed and deleted. Only extracted data is stored.

Parameters

Name Type Required Description
file string Yes Base64-encoded file content.
filename string Yes Original filename (e.g. "my-policy.pdf").
mime_type string Yes "application/pdf", "image/jpeg", or "image/png"

Example Response

{
  "policies": [
    {
      "id": "pol_n3w4p5",
      "carrier": "Progressive",
      "type": "auto",
      "premium": {
        "amount": 1850,
        "period": "6-month",
        "currency": "usd"
      },
      "effective": {
        "start": "2026-03-15",
        "end": "2026-09-15"
      },
      "vehicles": [
        {
          "year": 2020,
          "make": "Toyota",
          "model": "Camry"
        }
      ],
      "extraction_quality": "clean",
      "is_renewal": false
    }
  ],
  "insights_status": "generating"
}

Resources

Resources are data your AI agent can read without calling a function. They update automatically as you upload policies and renewals.

insurance://portfolio

Current portfolio snapshot: total policies, carriers, per-policy summary with premiums and renewal dates.

insurance://renewals

Upcoming renewal dates across all policies, sorted by date.

What This Looks Like in Practice

The same AI, the same question. The difference is whether your insurance data is connected.

Without the insurance MCP server:

What's my auto deductible?
I don't have access to your insurance information. You would need to check your policy documents or contact your insurance provider.

With the insurance MCP server:

What's my auto deductible?
Your State Farm auto policy has a $500 collision deductible on the Honda Accord and $1,000 on the Toyota Camry. Comprehensive is $250 and $500 respectively. Your renewal is September 1. Want me to check if those deductibles are still the right fit for your vehicles?
Actually, how did my rate compare to other people in Texas?
Your State Farm premium went up 8% at your last renewal. The state average across all carriers was 4.5%. Progressive actually decreased rates 2.1% in Texas. Your increase is above the market average. Might be worth getting a comparison quote before September.

How It Works

  1. Upload your policies to Policy Penguin. We extract and structure the data from your documents.
  2. Policy Penguin validates and stores the structured data. Coverages, limits, deductibles, discounts, insights. All typed and verified.
  3. Add the MCP server to your AI agent. Use the config snippets above to connect Claude, ChatGPT, or any MCP client.
  4. Ask questions in natural language. Your agent calls the tools and resources to answer with real, validated data from your policies.

Connect your agent.

Sign up for Policy Penguin, upload a policy, and generate your API key. Add the MCP config above and start asking questions.

Or see the Insurance Intelligence API for direct programmatic access to the same data.