Change events across plans: recordkeeper switches, new plans, mergers, terminations...
find_plan_changesChange 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.
Input Schema
| 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. |