Skip to main content
Glama
reichaves

FEC Campaign Finance MCP Server

by reichaves

MCP-сервер финансирования избирательных кампаний FEC

Автор: Рейналдо Чавес (reichaves@gmail.com)

GitHub Python License FastMCP OpenFEC

Читайте это на португальском

MCP-сервер, который подключает API OpenFEC к ИИ-ассистентам, позволяя вам исследовать финансирование федеральных избирательных кампаний в США с помощью естественного общения.

Разработано для дата-журналистов, исследователей и граждан, которым необходимо изучать сложные данные Федеральной избирательной комиссии (FEC), не вникая напрямую в работу API.


Содержание


Что такое MCP?

MCP (Model Context Protocol) — это открытый стандарт, который позволяет ИИ-ассистентам безопасно и единообразно взаимодействовать с внешними системами: базами данных, API, файлами и сервисами.

Три типа возможностей MCP

Тип

Что это

Пример в этом проекте

Инструменты

Функции, которые ИИ может вызывать для получения или обработки данных

search_candidates(), get_top_donors()

Ресурсы

Статические или контекстные данные, которые всегда доступны

Таблицы кодов FEC, важные ID, глоссарий

Промпты

Шаблоны рабочих процессов для сложных расследований

investigate_candidate(), follow_the_money()


Что делает этот проект?

Этот проект предоставляет доступ к API OpenFEC в качестве MCP-сервера. Результат: вы можете расследовать политическое финансирование, просто общаясь с LLM.

Ключевые возможности

  • Поиск кандидатов: Поиск любого федерального кандидата по имени, штату, партии или должности.

  • Финансовый анализ: Общие суммы собранных и потраченных средств, долги и остатки на счетах.

  • Отслеживание доноров: Определение крупнейших спонсоров кампании и их работодателей.

  • Геоанализ: Просмотр того, из каких штатов поступают средства кандидата.

  • Суперкомитеты (Super PACs) и независимые расходы: Мониторинг сторонних групп, тратящих средства на поддержку или критику кандидатов.

  • Официальные отчеты: Доступ к финансовой отчетности, поданной в FEC кампаниями и комитетами.

  • Направляемое расследование: Готовые рабочие процессы для журналистских расследований.

🔍 Методологическое примечание (OSINT и архитектура данных)

API FEC разделяет «Итоговые показатели кандидата» (основная конечная точка официального комитета) и средства, находящиеся в распоряжении комитетов политических действий (PAC). fec_mcp был разработан строго в соответствии с принципом «нулевых галлюцинаций». Он предоставляет данные именно в том виде, в котором их классифицирует государственная бюрократия. В расследованиях OSINT задача ИИ-агента или журналиста — использовать search_candidates, чтобы перечислить все основные уполномоченные комитеты и PAC, привязанные к политику, и запрашивать их финансы по отдельности.

Поддержка нескольких языков (i18n)

Сервер поддерживает интернационализацию. Языком ответов и подсказок по умолчанию является английский. Вы можете изменить это, установив переменную окружения FEC_MCP_LANG (например, FEC_MCP_LANG=ru-ru).


Доступные инструменты

Инструменты

  • search_candidates: Поиск федеральных кандидатов.

  • get_candidate_finances: Получение финансовых итогов для кандидата.

  • search_contributions: Поиск индивидуальных пожертвований (Schedule A).

  • get_top_donors: Список крупнейших доноров комитета.

  • get_contributions_by_state: Агрегирование пожертвований по штатам.

  • get_campaign_expenditures: Список расходов кампании (Schedule B).

  • get_independent_expenditures: Поиск независимых расходов суперкомитетов (Super PACs).

  • get_candidate_filings / get_committee_filings: Список финансовых отчетов, поданных в FEC.

  • search_pacs: Поиск PAC и Super PAC по названию.

  • fec_help: Внутренняя документация по инструментам.

  • suggest_investigation: Предложения для журналистских расследований на основе данных FEC.

Ресурсы

URI

Содержимое

fec://reference/codes

Коды партий, должностей, типов комитетов, типов отчетов, лимиты пожертвований

fec://reference/notable_ids

ID кандидатов в президенты, национальных комитетов, значимых Super PAC

fec://reference/api_info

Охват данных, лимиты запросов, советы по использованию

fec://reference/glossary

Глоссарий терминологии FEC (например, PAC, Schedule A, Cash on Hand)

Промпты

  • investigate_candidate(candidate_name): Пошаговый рабочий процесс для полного финансового расследования кандидата.

  • follow_the_money(company_name): Отслеживание политического влияния компании.

  • compare_candidates(candidate1, candidate2): Сравнение двух кандидатов бок о бок.


Установка

Предварительные требования

Шаги

git clone https://github.com/your-username/fec-mcp-server.git
cd fec-mcp-server
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -r requirements.txt
echo "FEC_API_KEY=your_key_here" > .env

Примеры использования

Расследование в отношении кандидата

«Расследуй финансирование кампании Камалы Харрис в 2024 году»

LLM автоматически выполнит:

  1. search_candidates(name="Kamala Harris", election_year=2024)

  2. get_candidate_finances(candidate_id="P00009423")

  3. get_top_donors(committee_id="C00703975")

Сравнение кандидатов

«Сравни финансы Трампа и Байдена за 2024 год»

Промпт compare_candidates создает полную таблицу со всеми показателями для сравнения.


Известные ограничения

  • Только федеральные данные: Выборы в штатах и местные выборы не входят в FEC.

  • «Темные деньги»: Пожертвования в организации 501(c)(4) не раскрываются в FEC.

  • Задержка: Конечные точки для индивидуальных пожертвований (schedule_a) могут работать медленно.

  • Лимит запросов: 1000 запросов в час с бесплатным ключом API.

Внешние ресурсы

A
license - permissive license
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/reichaves/fec-mcp-server'

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