Skip to main content
Glama

OpenRater

Turn a rate filing into a working rating engine — with a citation for every number.

Insurance prices are defined by rating manuals: hundreds of pages of factor tables, classification rules, territory definitions, and a rating order, filed as PDFs. OpenRater makes them executable. An AI (Claude, or any MCP-capable agent) transcribes the document into a spec'd Excel workbook; OpenRater's deterministic compiler validates it and builds an executable plan; analytics let you walk any risk through the algorithm step by step; then serve it as a quote API or re-rate a whole book from CSV.

The AI is a transcriber, never a calculator. Nothing probabilistic executes at rating time. The platform itself never calls an AI — your agent calls the platform.

filing PDF ──(AI transcribes, following the spec)──▶ workbook (.xlsx, cited, reviewable in Excel)
            ──(deterministic check + build, zero AI)──▶ executable plan + build report
            ──(analytics: walk a risk, rate cards, gates)──▶ understanding
            ──(quote API / batch CSV re-rate)──▶ production use

Why trust it

  • Every number has a citation. The build report carries page-level provenance for every factor; re-ingesting a revised workbook shows a cell-grain diff before anything is applied.

  • The filing's own worked examples become acceptance tests. The workbook's test_cases sheet pins correctness against the source document, not against our opinion.

  • Refuse, never improvise. An input the plan can't rate is a structured, visible error — never a silent neutral factor, never a plausible-but-wrong premium. Unsupported constructs are recorded in a gaps_and_assumptions sheet, not approximated.

  • A human reviewer has a natural seat. The workbook in the middle of the pipeline is an ordinary Excel file an actuary can open, audit, and correct.

Related MCP server: CornMCP

Three ways to use it

You are

You use

You get

An actuary (no terminal required)

Claude Desktop + the OpenRater extension (a one-file .mcpb)

The full loop in chat: transcribe → validate → build → review → quote → re-rate, with the review UI one click away

A technical actuary / engineer

Claude Code (or any MCP client) + @openrater/mcp

The same loop, scriptable — see AGENTS.md

An integrator

This repo, self-hosted

The REST API, the scoring engine, the integration-events ledger — headless

Install (Claude Desktop)

The extension is one signed file. No terminal, no dependencies — Claude Desktop is the only prerequisite.

  1. Install Claude Desktop (Mac or Windows) and sign in.

  2. Download one file from the latest release:

    Your machine

    Pick the file ending in

    Mac · Apple silicon (M-series)

    darwin-arm64.mcpb

    Mac · Intel

    darwin-x64.mcpb

    Windows

    win32-x64.mcpb

    Not sure which Mac you have? Apple menu → About This Mac — "Chip" means Apple silicon, "Processor" means Intel.

  3. In Claude Desktop, open Settings → Extensions and drag the file in.

  4. Start a new chat and ask: "What is OpenRater? Show me." The engine starts on your machine, the review app opens in your browser, and Claude offers a three-minute tour of the bundled synthetic program (Meridian Mutual Insurance, Shopfront BOP).

macOS builds are Developer ID–signed and notarized; Windows builds are signed via Azure Trusted Signing. Everything runs locally — the engine binds to 127.0.0.1, and nothing you rate leaves your machine (privacy policy).

Prefer to build the extension yourself? packaging/desktop/build-mcpb.sh does it; the release test and signing runbook document the release lane.

Quickstart (development)

Prerequisites: Node ≥ 20 + pnpm ≥ 9, Python ≥ 3.12 + uv.

pnpm install
uv sync --project server

pnpm dev   # server :8001 · scoring engine · web app (Vite)

The Desktop extension and the Docker deploy come pre-seeded with a fully synthetic demo program — Meridian Mutual Insurance, Shopfront BOP (see docs/fixtures/) — so you can quote a risk and walk its trace immediately. In the dev flow, load it with:

python3 scripts/plan_fixture.py load meridian-shopfront-bop-ne-2026 \
  docs/fixtures/meridian-shopfront-bop-ne-2026.plan.json \
  --db ~/.openrater/openrater.db

To drive the loop from an agent:

claude mcp add openrater -- npx tsx services/mcp/src/main.ts

Self-hosting: deploy/ has a Docker Compose kit (SQLite on a host volume, optional Litestream backup, optional Cloudflare tunnel) — copy deploy/.env.example and run docker compose -f deploy/docker-compose.yml --env-file deploy/.env up -d --build.

What's in the box

frontend/            the web app (Rate Lab authoring + analytics, Exhibits, Integrations)
server/              FastAPI service: plans, ingestion, quotes, integration events
services/scoring/    the ONE deterministic rating engine (TypeScript)
services/mcp/        @openrater/mcp — 18 tools exposing the loop to any MCP client
skills/              the transcription skill (the agent runbook for filings)
packaging/desktop/   the Claude Desktop extension (.mcpb) build
docs/specs/          the contracts: filing-transcription spec, plan format, engine
                     contract, integration contract, capability registry, conformance
docs/fixtures/       synthetic seed content + FIXTURE_PROVENANCE.md
deploy/              Docker Compose kit

The spec set is the heart of the project: the filing-transcription spec defines the workbook any AI transcribes into, and the capability registry declares — machine-readably — what the platform can and cannot express, so agents record gaps instead of approximating.

Status

The full loop — filing PDF → transcribed workbook → validated build → cited build report → quote with trace → book re-rate — runs today, in the browser, over MCP, and from the packaged Desktop extension. Transcription profiles cover Businessowners (BOP) and General Liability; see LIMITATIONS.md for the supported boundary. OpenRater is still in the 0.x series, so interfaces may change between releases.

Content policy (please read before contributing)

This repository ships only synthetic rating content. Every bundled fixture is invented and traceable to a committed generator — see docs/fixtures/FIXTURE_PROVENANCE.md. Bureau-derived material (ISO/Verisk, AAIS, NCCI) and carriers' filed rate content are not accepted, in any form — see CONTRIBUTING.md. You bring the documents you are entitled to use; OpenRater never fetches filings for you, and SERFF automation is out of scope by design.

Disclaimer. OpenRater outputs are reconstructions for analysis. The carrier's filed and approved rates govern; verify results against the source document (the test_cases sheet exists for exactly this). OpenRater is an independent project with no affiliation to NAIC, SERFF, ISO/Verisk, AAIS, NCCI, or any insurer.

Privacy Policy

OpenRater is local-first: your filings, workbooks, and rate plans stay on your machine, the engine binds to 127.0.0.1 only, and the app collects no telemetry. The full policy — data collection, usage and storage, third-party sharing, retention, and contact — is docs/PRIVACY.md.

License

Apache-2.0 — see LICENSE and NOTICE. Contributions are accepted under the Developer Certificate of Origin.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
1dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • OCR, transcription, file extraction, and image generation for AI agents via MCP.

  • AI document editing for agents: draft, edit, export .docx/PDF. 37 MCP tools; agent self-signup.

  • Paid remote MCP for agent code search routing MCP, structured receipts, audit logs, and reviewer-rea

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vadim-filimonov/openrater'

If you have feedback or need assistance with the MCP directory API, please join our Discord server