Finance Toolkit
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Access FEC campaign finance data. Query data about candidates, money trails, and election filings.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
FEC_API_KEY, MCP_LOG_LEVELต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://openfec.caseyjhand.com/mcpเปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"openfec": {
"command": "npx",
"args": [
"-y",
"@cyanheads/openfec-mcp-server"
],
"env": {
"FEC_API_KEY": "ใส่ค่าของคุณ",
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http openfec https://openfec.caseyjhand.com/mcpclaude mcp add openfec --env FEC_API_KEY='ใส่ค่าของคุณ' --env MCP_LOG_LEVEL='ใส่ค่าของคุณ' -- npx -y @cyanheads/openfec-mcp-serverเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"openfec": {
"url": "https://openfec.caseyjhand.com/mcp"
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"openfec": {
"command": "npx",
"args": [
"-y",
"@cyanheads/openfec-mcp-server"
],
"env": {
"FEC_API_KEY": "ใส่ค่าของคุณ",
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"openfec": {
"type": "http",
"url": "https://openfec.caseyjhand.com/mcp"
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"openfec": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/openfec-mcp-server"
],
"env": {
"FEC_API_KEY": "ใส่ค่าของคุณ",
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://openfec.caseyjhand.com/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
FEC_API_KEY envMCP_LOG_LEVEL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ยังไม่ได้อ่านรายการเครื่องมือของตัวนี้ เราตรวจ endpoint ทีละชุดวนไป
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub cyanheads ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.10.0) เข้า registry 10 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Finance Toolkit, SolidInvoice, Korea Tax Calculator
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.
Korean tax calculation and tax-audit judgment MCP: 96 tools with statutory citations.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
@cyanheads/openfec-mcp-server Access FEC campaign finance data on candidates, money trails, and election filings via MCP. STDIO or Streamable HTTP. 12 Tools • 5 FEC Resource Templates • 2 Prompts • 1 Skill
Public Hosted Server: https://openfec.caseyjhand.com/mcp
US federal campaign finance data from the FEC's OpenFEC API. Search candidates, committees, and filings, trace contributions (Schedule A), disbursements (Schedule B), and independent and coordinated party expenditures (Schedules E/F), and look up election races, legal documents, and filing deadlines.
| Tool | Description |
|---|---|
openfec_search_candidates | Find federal candidates by name, state, office, party, or cycle; fetch one by FEC ID with financial totals |
openfec_search_committees | Find political committees by name, type, candidate affiliation, or state; fetch one by FEC ID |
openfec_get_committee_totals | Pre-aggregated financial totals for one committee by cycle, or ranked across committees of one entity type |
openfec_search_contributions | Itemized contributions (Schedule A), or aggregates by size, state, employer, or occupation |
openfec_search_disbursements | Itemized committee spending (Schedule B), or aggregates by purpose or recipient |
openfec_search_expenditures | Independent expenditures (Schedule E) supporting or opposing candidates, itemized or totaled per candidate |
openfec_search_coordinated_expenditures | Coordinated party expenditures (Schedule F) made on behalf of a candidate |
openfec_search_filings | FEC filings and reports by committee, candidate, form type, or date range |
openfec_lookup_elections | Candidates in a federal race with their fundraising totals, or an aggregate race summary |
openfec_search_legal | Advisory opinions, enforcement cases, alternative dispute resolutions, administrative fines, and statutes |
openfec_get_legal_document | One legal document in full, including the arrays search trims away, paged by entry when too large for one response |
openfec_lookup_calendar | FEC calendar events, filing deadlines, and election dates |
| Resource | Description |
|---|---|
openfec://candidate/{candidate_id} | Candidate profile with financial totals and principal committees |
openfec://committee/{committee_id} | Committee profile with type, designation, and financial summary |
openfec://election/{cycle}/{office} | Presidential race with candidate financial totals |
openfec://election/{cycle}/{office}/{state} | Senate or at-large House race with candidate financial totals |
openfec://election/{cycle}/{office}/{state}/{district} | House district race with candidate financial totals |
The same data is reachable through openfec_search_candidates, openfec_search_committees, and openfec_lookup_elections for tool-only clients.
The openfec-guide skill covers campaign-finance investigations, historical committee attribution, and coverage checks. MCP clients can read it at skill://openfec-guide/SKILL.md.
| Prompt | Description |
|---|---|
openfec_money_trail | Trace the money around a candidate: direct fundraising, PAC support, independent expenditures, and party spending |
openfec_campaign_analysis | Structured analysis of a candidate's financial position |
openfec_search_candidates toolquery name search filtered by state, district, office, party, cycle, election_year, incumbent_challenge, candidate_status, and has_raised_funds, up to 100 per page; or a candidate_id lookup (H/S/P + eight letters or digits) returning one full recordinclude_totals (default on for an ID lookup) adds per-cycle totals rows and caps a search page at 35 candidates when cycle or election_year scopes the totals, 5 when they span every cycle; candidates the totals fetch didn't reach are listed in missing_totalscandidate_not_found, inputs_not_applicable_to_id_lookupopenfec_search_committees toolquery name search filtered by candidate_id, state, party, committee_type, designation, cycle, and treasurer_name, up to 100 per page; or a committee_id lookup (C + eight digits)committee_not_found, inputs_not_applicable_to_id_lookupopenfec_get_committee_totals toolmode: "single" (default) takes a committee_id and returns one row per two-year cycle; mode: "by_entity_type" ranks every committee of one entity_type (presidential, pac, party, pac-party, house-senate, ie-only), filterable by state, type, designation, organization type, and receipts/disbursements bounds; up to 100 per pagemode says whether rows are cycles or committeescommittee_id_required_for_single_mode, entity_type_required_for_group_mode, committee_totals_not_foundopenfec_search_contributions toolitemized (default) needs a committee_id and filters by contributor name, employer, occupation, city, state, ZIP, date and amount ranges, and is_individual, 30 rows per page; by_size / by_state take a committee_id or candidate_id, by_employer / by_occupation a committee_idmode becomes by_size_candidate or by_state_candidate when scoped by candidate, a different row shape; itemized responses carry next_cursor, count, and count_is_approximateitemized_requires_committee_id, aggregate_requires_committee_idopenfec_search_disbursements toolcommittee_id required in every mode: itemized (default; recipient name, state, city, and committee ID, description, purpose category, date and amount ranges, 30 rows per page), by_purpose, by_recipient, by_recipient_idnext_cursor, count, and count_is_approximate; aggregate modes page by numberopenfec_search_expenditures toolitemized (default) filters by committee, candidate, support_oppose, payee, targeted office/state/district, party, is_notice (24/48-hour notices), dates, and amounts; most_recent defaults to true; 60 rows per page when scoped by committee_id, 30 otherwiseby_candidate totals need a candidate_id or a full race scope (candidate_office=P alone, S plus candidate_office_state, H plus state and candidate_office_district), or fail as by_candidate_requires_scopeopenfec_search_coordinated_expenditures toolcommittee_id, benefiting candidate_id, cycle, payee, dates, and amounts; unscoped queries span all yearscommittee_id and 25 otherwise; rows carry subordinate_committee_id, the committee the spending is attributed toopenfec_search_filings toolmost_recent defaults to true, hiding superseded amendments; rows carry form and report type, financial totals, and pdf_urlopenfec_lookup_elections tooloffice and an even cycle are required; Senate also needs state and House state plus district, unless a zip scopes a searchmode: "search" (default) returns the race's candidates with totals and candidate_pcc_id / candidate_pcc_name, that cycle's principal campaign committee; mode: "summary" returns one aggregate race rowcycle_must_be_even, missing_state_for_office, missing_district_for_house, summary_does_not_support_zipopenfec_search_legal tooltype (advisory_opinions, murs, adrs, admin_fines, statutes), query, ao_number, case_number, respondent, citations, penalty bounds, or dates; at least one is required (missing_filter), and a date bound needs type plus a date_kind that type recordstype it doesn't filter fails as filter_not_valid_for_type, and with type omitted the search returns only the types they all apply to, with a total over those types. On MURs and ADRs a citation can't be combined with case_number, respondent, a penalty bound, or an open/close date bound, which upstream would ignore; the two citation fields together match either one52 U.S.C. 30104 or 11 CFR 110.1 (USC, C.F.R., §, and suffixes like 30104(g) are fine); a bare 30106 or 110.1 fails as invalid_citation instead of silently returning unfiltered results. One citation per field: upstream applies only the first citation in a value, so 52 U.S.C. 30104, 52 U.S.C. 30118 fails the same wayfrom_hit / hits_returned, up to 200 per type within a 10,000-result windowdocuments becomes document_count and document_categories, dispositions becomes disposition_count and disposition_categories, highlights stop at 3 with their match markup removed and render one per line, and commission_votes shrink to a date and a 200-character action; openfec_get_legal_document returns the full recordtruncated, shown, and nextFromHit — the from_hit that continues each type, passedตัดมาแค่ช่วงต้น อ่านต่อใน repo