Plan Data API
Server Details
Form 5500 data for prospecting and research: U.S. retirement plans, recordkeepers, fees, switches.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Score is being calculated.
Available Tools
7 toolsfind_plan_changesChange events across plans: recordkeeper switches, new plans, mergers, terminations...Read-onlyIdempotentInspect
Change events detected by comparing each plan's consecutive filings, newest filing first. Each event has before/after values, a confidence, the year compared against, a plain-English detail and the ACK ID of the filing that shows it.
Providers are compared by family, so a rebrand (Great-West → Empower) isn't a change. Each event also
has the plan's size around the event (net_assets_at_event), which min_assets and sort=assets use.
The newest plan year is still being filed, so its counts grow month to month.
Price: $0.25 per call, paid in USDC on Base (mainnet) with x402 (MCP transport). Without payment the tool returns the payment requirements. Errors and empty results aren't charged.
Same data as GET /changes of the Plan Data API.
| Name | Required | Description | Default |
|---|---|---|---|
| pn | No | With `ein`: only this plan number. | |
| ein | No | Only this sponsor's plans (EIN, 9 digits, dashes allowed): what changed at one company. | |
| sort | No | newest (the default: newest filing first) or assets (largest plan first, by `net_assets_at_event`). | newest |
| limit | No | Events per page (1-50). Each event is about 200 tokens of JSON, so the default 25 keeps an answer compact; narrow the filters rather than asking for more. | |
| since | No | Only events whose filing DOL received on or after this date (YYYY-MM-DD): "what's new since I last checked". Excludes filings_stopped, which no filing reveals. | |
| state | No | Two-letter state of the sponsor (latest filing). | |
| offset | No | Events to skip (0-500). | |
| plan_type | No | Plan type, as in `search_plans` (e.g. 401k, dc, db). | |
| event_type | No | Event type(s); repeat the parameter or separate with commas. One of: recordkeeper_change, advisor_added, advisor_removed, advisor_changed, auditor_change, audit_opinion_change, late_deposits_appeared, new_plan, plan_merged_in, plan_merged_out, plan_terminated, termination_resolution, filings_stopped, large_asset_jump. Meanings at `get_coverage`. | |
| filer_size | No | large or small, in the event's plan year. | |
| min_assets | No | Minimum net assets around the event (`net_assets_at_event`: the larger of the event year's start and end). | |
| plan_year_to | No | Latest plan year of the event. | |
| recordkeeper | No | Only recordkeeper_change events to or from this recordkeeper family (any brand name works). | |
| min_confidence | No | Lowest confidence to include: high = high only, medium = high and medium, low = all. | low |
| plan_year_from | No | Earliest plan year of the event. | |
| to_recordkeeper | No | Only recordkeeper_change events to this recordkeeper family (any brand name). | |
| from_recordkeeper | No | Only recordkeeper_change events away from this recordkeeper family (any brand name). Combine with `to_recordkeeper` for one move, e.g. Empower to Fidelity. |
get_coverageData coverage and limitationsRead-onlyIdempotentInspect
What the data covers per plan year, every limitation, the coverage-note codes responses can carry, the event types, the screening signals and the plan-type values. Free.
Also lists the prices and what isn't charged. Same data as GET /coverage of the Plan Data API.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
get_planLatest clean profile of one planRead-onlyIdempotentInspect
The plan as of its latest filing: identity and status, plan type and features, assets and participants, average balance and approximate return, recordkeeper, advisors and auditor, headline fees, screening signals and data-quality flags.
When the latest year is a small-plan filing (no Schedule C), the recordkeeper shown is the last one seen
on an earlier Schedule C, labeled with its year and a lower confidence. availability says which years
get_plan_history and get_plan_fees will return.
Price: $0.03 per call, paid in USDC on Base (mainnet) with x402 (MCP transport). Without payment the tool returns the payment requirements. Errors and empty results aren't charged.
Same data as GET /plan of the Plan Data API.
| Name | Required | Description | Default |
|---|---|---|---|
| pn | No | Plan number (1-999; 1 and 001 both work). Optional when the EIN sponsors only one retirement plan; otherwise the error lists the plans to choose from. | |
| ein | Yes | Sponsor EIN (9 digits, dashes allowed). |
get_plan_feesSchedule C fee breakdown in dollars and bps, with completeness notesRead-onlyIdempotentInspect
For each large plan year: Schedule C pay by role (recordkeeping, advisory, participant advice, TPA, investment management, trustee, other) in dollars and basis points of average net assets; every provider on the Schedule C with names as filed, codes, direct and indirect pay; Schedule H line 2i expenses as a second view; and a completeness rating with the reasons.
Small plans file no Schedule C: the response still succeeds, with schedule_c_available: false and the
plan-paid expenses that small plans do report. Check get_plan availability.fee_years first to see
which years have a breakdown. Fees are floors: see meta.coverage_notes.
Price: $0.10 per call, paid in USDC on Base (mainnet) with x402 (MCP transport). Without payment the tool returns the payment requirements. Errors and empty results aren't charged.
Same data as GET /fees of the Plan Data API.
| Name | Required | Description | Default |
|---|---|---|---|
| pn | No | Plan number (1-999). Optional when the EIN has one plan. | |
| ein | Yes | Sponsor EIN (9 digits, dashes allowed). | |
| plan_year | No | One plan year only. Default: every year. |
get_plan_historyEvery plan year of one plan: assets, participants, growth breakdown, providers, eventsRead-onlyIdempotentInspect
One entry per plan year, oldest first: the filing used, assets and participants, average balance, approximate return, participant growth (flagged across the 2023 counting change), the growth breakdown (contributions, investment return, distributions, expenses, transfers), plan-paid expenses and Schedule C fees in bps, the year's recordkeeper / primary advisor / auditor, and the change events detected that year.
Price: $0.25 per call, paid in USDC on Base (mainnet) with x402 (MCP transport). Without payment the tool returns the payment requirements. Errors and empty results aren't charged.
Same data as GET /plan/history of the Plan Data API.
| Name | Required | Description | Default |
|---|---|---|---|
| pn | No | Plan number (1-999). Optional when the EIN has one plan. | |
| ein | Yes | Sponsor EIN (9 digits, dashes allowed). |
list_prospectsBulk list of plans by industry, place and size: address, industry, participants, assets, inception date, recordkeeperRead-onlyIdempotentInspect
A list of plans for prospecting or research, many per call: plan and sponsor name, mailing address, EIN and plan number, industry, plan type, effective (inception) date, participants and net assets at the end of the latest plan year, form type, recordkeeper and primary advisor last seen on Schedule C, and the filing's ACK ID.
Filter by industry, place (state, city, ZIP), size, plan type, effective date or recordkeeper. Large
(long-form) filers only unless filer_size says otherwise. Use search_plans instead to find one company's
plan by name, and get_plan for everything about one plan. Paging stops at offset 500: narrow the
filters to see more.
Price: $0.25 per call, paid in USDC on Base (mainnet) with x402 (MCP transport). Without payment the tool returns the payment requirements. Errors and empty results aren't charged.
Same data as GET /prospects of the Plan Data API.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | Sponsor's ZIP code or its start (3-5 digits), e.g. 432 for the Columbus, OH area. | |
| city | No | Sponsor's city, as on the filing (case doesn't matter). Best with `state`. | |
| sort | No | assets (largest first, the default), participants (most first), name (A-Z by sponsor) or newest_plan (latest effective date first). | assets |
| limit | No | Plans per page (1-100). The price is per call, whatever the limit. | |
| state | No | Two-letter state of the sponsor's address, e.g. OH. | |
| offset | No | Plans to skip (0-500). | |
| industry | No | The sponsor's industry: words ("restaurants", "car dealers", "law firms") or a NAICS business code or its start ("62" = health care, "5411" = legal services). Separate several with commas. `meta.query.industry` lists the codes each one matched. | |
| plan_type | No | Plan type, as in `search_plans` (e.g. 401k, dc, db). | |
| filer_size | No | large (the default) = long-form filers: Form 5500 with Schedule H, generally 100+ participants, with providers on Schedule C. small = 5500-SF or Schedule I. any = both. | large |
| max_assets | No | Maximum end-of-year net assets in dollars. | |
| min_assets | No | Minimum end-of-year net assets in dollars, in the plan's latest plan year. | |
| recordkeeper | No | Only plans whose latest Schedule C names this recordkeeper (any brand, matched to its family as in `search_plans`). | |
| include_ended | No | Include plans that are terminated, merged into another plan, or stopped filing. Off by default. | |
| effective_after | No | Only plans whose effective (inception) date is on or after this date (YYYY-MM-DD). | |
| effective_before | No | Only plans whose effective (inception) date is on or before this date (YYYY-MM-DD). | |
| max_participants | No | Maximum end-of-year participants. | |
| min_participants | No | Minimum end-of-year participants, in the plan's latest plan year. |
search_plansFind plans by company name, EIN, state, size, recordkeeper or plan typeRead-onlyIdempotentInspect
Find plans. Give at least one of name, ein, state or recordkeeper; the other filters narrow
the list. Each result is a short summary: call get_plan with its ein and pn for the profile.
With name, results are ordered by match score, then size; without it, largest plans first. Plans
that ended are hidden unless include_ended=true. Paging stops at offset 500: narrow the filters to
see more.
Price: $0.01 per call, paid in USDC on Base (mainnet) with x402 (MCP transport). Without payment the tool returns the payment requirements. Errors and empty results aren't charged.
Same data as GET /search of the Plan Data API.
| Name | Required | Description | Default |
|---|---|---|---|
| ein | No | Sponsor EIN (9 digits, dashes allowed). Lists every retirement plan under it. | |
| name | No | Company or plan name, as you know it. Fuzzy: typos, missing suffixes (Inc, LLC), DBA names and former names all match, and the last word can be a prefix ("starb"). Results come best match first with a `match` score. | |
| limit | No | Results per page (1-50). | |
| state | No | Two-letter state of the sponsor's address, e.g. TX. | |
| offset | No | Results to skip (0-500). | |
| plan_type | No | Plan type: 401k, 403b, cash_balance, db_and_dc, defined_benefit, esop, ira_based, money_purchase, other_dc, profit_sharing, stock_bonus, target_benefit, type_not_coded, db, dc. `dc` = any defined contribution plan, `db` = any defined benefit plan. | |
| filer_size | No | large = files Schedule H (generally 100+ participants; has providers and fees); small = 5500-SF or Schedule I. | |
| max_assets | No | Maximum end-of-year net assets in dollars. | |
| min_assets | No | Minimum end-of-year net assets in dollars, latest plan year. | |
| recordkeeper | No | Recordkeeper, any brand old or new ("Empower", "Great-West", "Fidelity"). Matched to the firm's family, so Great-West and Prudential filings count as Empower. Only plans that filed a Schedule C can match. `meta.query.recordkeeper` shows what it resolved to. | |
| include_ended | No | Include plans that are terminated, merged into another plan, or stopped filing. Off by default. | |
| max_participants | No | Maximum end-of-year total participants. | |
| min_participants | No | Minimum end-of-year total participants. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
7 tool updates
- First observed
find_plan_changes - First observed
get_coverage - First observed
get_plan - First observed
get_plan_fees - First observed
get_plan_history - First observed
list_prospects - First observed
search_plans
Related MCP Connectors
Funding rounds, exec moves, UCC liens and Form 5500 plans. 7 tools need no API key.
Public-record buying signals and prospect research for US field sales reps.
1US market data from public filings: SEC, insiders, 13F, Congress trades, lobbying, FDA, contracts.
Financial data and research MCP for US/CN/JP equities: filings, statements, ownership, signals.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables searching U.S. DOL Form 5500/5500-SF employee benefit plan filings via EFAST2 by sponsor, EIN, plan name, state, or year, and retrieving filing details with participant counts, assets, and links to full filing PDFs.14 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables searching closed US Department of Labor civil-penalty enforcement actions against ERISA benefit-plan sponsors for deficient, late, or missing Form 5500 filings, with lookups by sponsor name, case type, state, and plan year plus penalty-amount buckets and close dates. Also provides per-sponsor enforcement histories, recent closings, and dataset coverage details.430 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables checking whether a named pension plan was terminated and taken over by the federal pension insurer or remains active and paying premiums, by searching the trusteed-plan register and the single- and multiemployer premium-filer rosters. Also supports state, sponsor, and industry-level counts of trusteed cases, with each result stamped with its data-as-of snapshot.268 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables searching and retrieving U.S. Department of Labor Form M-1 filings for multiple employer welfare arrangements and association health plans, including by plan year, sponsor, EIN, headquarters state, coverage state, and filing attributes. Provides full filing histories for a given MEWA/sponsor or EIN.465 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.