---
summary: "openfec_money_trail and openfec_campaign_analysis now chain openfec_get_committee_totals and openfec_search_coordinated_expenditures, pin the cycle on itemized calls, and fix an unexecutable openfec_lookup_elections step (#24)"
breaking: false
security: false
---

# 0.7.1 — 2026-07-26

## Fixed

- **`openfec_money_trail`** adds `openfec_get_committee_totals` (mode `single`) after the committee search for the per-cycle totals of every committee found, and a new step between the independent-expenditure and disbursement steps that runs `openfec_search_coordinated_expenditures` on the `candidate_id` — Schedule F party spending is legally distinct from Schedule E independent expenditures and was previously unreachable through this prompt's sequence. Trailing steps renumber from 5–6 to 6–7; the synthesis step now reports totals per committee and separates coordinated from independent party support. ([#24](https://github.com/cyanheads/openfec-mcp-server/issues/24))
- **`openfec_campaign_analysis`** gains the same two additions — `openfec_get_committee_totals` (mode `single`, cycle omitted) on the principal committee for its multi-cycle fundraising trajectory, and `openfec_search_coordinated_expenditures` after the independent-expenditure query — plus a fix to an unexecutable step: `openfec_lookup_elections` requires `office` and `cycle`, and `state` (Senate) or `state` and `district` (House), none of which the prompt previously told the model to source. Section 1 now names `office`, `state`, and `district` as fields to read from the candidate record. ([#24](https://github.com/cyanheads/openfec-mcp-server/issues/24))
- **Both prompts pin `cycle`** on every call that accepts it once the caller supplies one — itemized Schedule A/B/E queries silently fall back to the current cycle when `cycle` is omitted, which previously left a past-cycle investigation reading current-cycle results without any indication the cycle had shifted.
