Us Elections について
Us Electionsは、米国の大統領選・上院選・下院選の結果を検索するMCPサーバーです。州、郡、選挙区、投票区ごとの候補者得票を調べるユーザー向けで、年や地域レベルによって収録範囲が異なり、レースの集計と収録範囲の確認もできます。
主な機能
- 01州・郡・投票区ごとの候補者得票検索
- 02総得票数・得票率・勝者・票差の集計
- 03収録済みの州・年・職種・レベルの一覧
- 04大統領選・上院選・下院選のデータ
活用シーン
- 01郡ごとの候補者得票の比較
- 02特定州・年・職種の選挙結果の確認
- 03検索前のレース収録範囲の確認
MCP 対応
選挙結果、レース集計、収録範囲を調べるツールをMCPクライアントに提供します。Pipeworxゲートウェイ経由で接続でき、ローカルのstdio MCPサーバーとしても実行できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/us-elections/mcpclaude mcp add --transport http pipeworx-io-us-elections https://gateway.pipeworx.io/us-elections/mcp{"mcpServers":{"pipeworx-io-us-elections":{"type":"http","url":"https://gateway.pipeworx.io/us-elections/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-us-elections":{"type":"http","url":"https://gateway.pipeworx.io/us-elections/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-us-elections":{"type":"http","url":"https://gateway.pipeworx.io/us-elections/mcp"}}}{"mcpServers":{"pipeworx-io-us-elections":{"serverUrl":"https://gateway.pipeworx.io/us-elections/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
44| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| q | string | いいえ | question の別名。 |
| ask | string | いいえ | question の別名。 |
| text | string | いいえ | question の別名。 |
| input | string | いいえ | question の別名。 |
| packs | array | いいえ | 任意。ルーティング対象をこれらのパックスラッグに限定します(例:["sec-form-d","sec-13f"])。その場合、ルーターは該当パック内のツールのみを選択します。省略すると、デフォルトの全カタログへのルーティングになります。スラッグは list_packs / search_packs / https://pipeworx.io/directory から取得できます。リストにない、または不明なスラッグは無視され、_meta.pack_scope.ignored に記載されます。該当するスラッグが 1 つもない場合は、カタログ全体にルーティングし、_meta.pack_scope.full_catalog:true を設定します(空の回答にはなりません)。 |
| query | string | いいえ | question の別名。 |
| prompt | string | いいえ | question の別名。 |
| message | string | いいえ | question の別名。 |
| question | string | はい | 自然言語での質問またはリクエスト。query、q、prompt、text、input、ask、message をエイリアスとして使用できます。 |
詳細
@pipeworx/us-elections
米国の選挙結果 — 1976~2024年の全州における大統領選挙および米国上院選挙の候補者別得票数、2020年および2022年の総選挙における公式の米国下院選挙区別結果(MEDSLのゲストブック登録が必要な下院データファイルに代わる、登録不要のデータ)、そして2024年総選挙における郡別(13州)および選挙区別(ペンシルベニア州、ミシガン州)の大統領選挙、上院選挙、米国下院選挙の詳細データ。Fleet #2952、拡張 fleet #2958。
Pipeworx の一部です。AI エージェントを1784以上のライブデータソースにつなぐMCPゲートウェイです。これは独立した非公式の連携であり、上流プロバイダーとは提携、推奨、公開のいずれの関係もありません。
ツール
election_results(state, year, office, level?, county?, district?, limit?, offset?)— 1つの州/年/選挙職について、state、county、またはprecinctの粒度(既定値はcounty)で候補者別の結果を返します。郡別または選挙区別のクエリを特定の郡に絞り込むにはcountyを、下院選挙を特定の選挙区に絞り込むにはdistrict(例:"09")を指定します。各行には候補者、政党、得票数、選挙区全体の得票数と得票率に加え、source、source_url、license、data_as_ofが含まれます。データのない組み合わせでは、利用可能な粒度を明示した明確な「見つかりません」エラーを返し、空の結果を成功として返すことはありません。election_race_summary(state, year, office)— 最も集約度の高い利用可能なレベル(対象範囲に州全体のデータがあれば州全体、なければ利用可能な郡別/選挙区別の詳細データを合算)に基づいて算出した、選挙の集計得票数、得票率、当選者、得票差を返します。選挙区を単位とする選挙職(下院)の場合、選挙区ごとに1件の概要を返します。list_elections(state?)— このパックに実際に含まれている州/年/選挙職の組み合わせと、それぞれのデータが利用可能な粒度を返します。特定の選挙を問い合わせる前に呼び出して、データの対象範囲を確認してください。
州には郵便略号("PA")または正式名称("Pennsylvania")を指定でき、大文字と小文字は区別されません。選挙職には "president"、"senate"、"house"(および "POTUS"、"U.S. Senate" など一般的な同義語)を指定できます。
認証
認証キーは不要です。ツールはデータを保持する Pipeworx ゲートウェイ経由でのみ応答します。単独で npm install しても読み込めるデータはなく、そこで各ツールを呼び出すと、空のリストではなく「このランタイムではバインドされていません」という明確なエラーが必ず返されます。
データソース
- MIT Election Data + Science Lab(MEDSL)、Harvard Dataverse — 1976~2024年の州単位の米国大統領選挙結果。
- MIT Election Data + Science Lab(MEDSL)、Harvard Dataverse — 1976~2024年の州単位の米国上院選挙結果。 両方のライセンスは CC0 1.0(パブリックドメインへの提供)です。
- Federal Election Commission(fec.gov)— 公式統計資料「Federal Elections」:2020年および2022年総選挙における米国下院の選挙区別結果。(同じ資料には上院のシートも含まれていますが、ここでは意図的に読み込んでいません。上記のMEDSLがすでにこれらの年の上院選挙について州単位のデータを提供しており、両方を読み込むと
election_race_summaryで候補者ごとの得票数が二重に集計されるためです。load-data.mjs を参照してください。) ライセンス: パブリックドメイン(米国政府の著作物、17 U.S.C. 105)。ログイン、キー、ゲストブック登録は不要です。fec.gov から xlsx ファイルを直接ダウンロードできます。 - OpenElections — 2024年総選挙の郡別結果:ジョージア州、ミシシッピ州、ニューメキシコ州、ノースダコタ州、サウスダコタ州、テネシー州、ユタ州、ウェストバージニア州、コロラド州、ミズーリ州、オレゴン州、サウスカロライナ州、ケンタッキー州(13州)。さらに、ペンシルベニア州とミシガン州の実際の選挙区別結果(郡別にも集計)。
ライセンス: データリポジトリには、データの再利用に関する個別のライセンスが掲載されていません。プロジェクトのパーサーコードベース(
openelections-core)はMITライセンスであり、基礎となる数値は郡/州の選挙管理委員会が認証した得票数です。これらは公開選挙記録です。再利用を禁止する規約は見つからなかったため、規約に明記がない一括ファイルのみを公開するソースについては、Pipeworxのルールに従ってこのパックにコピーを作成し、その旨を明記しています。
既知の制約 — このパックを拡張する前にお読みください
MEDSL 独自の郡レベルおよび下院のファイルは、未作成なのではなくアクセスが制限されています。
MEDSL の正式な「County Presidential Election Returns 2000-2024」データセットと「U.S. House 1976-2024」データセット(どちらも Harvard Dataverse 上)は、必須のゲストブック(氏名、メールアドレス、所属機関、役職がすべて必須)によってアクセスが制限されており、文書化された API による回避方法もありません。これら 2 つのデータセットでは、匿名アクセスでも認証済みアクセスでも、すべてのファイルダウンロード呼び出しで "You may not download this file without the required Guestbook response for guestbookID 458" が返されます。これはアクセス制限であり、robots.txt の問題ではないため、ローダーは自動化による回避を試みません(CLAUDE.md の「Authentication or payment walls」が該当する例外です。永続的なアカウントは作成されませんが、機械的なアクセスを妨げる本人確認情報の必須入力フォームも同じ扱いです)。FEC 公式の選挙区別下院ファイル(上記)は、これまでに FEC が公開した選挙サイクル(2020 年、2022 年)について、制限のない代替データです。MEDSL のゲストブックフォームに人が手動で入力し、その結果のファイルをこのパックに提供した場合は、scripts/us-elections/load-data.mjs で直接読み込めます。スキーマはすでに適切な形式です(level = 'county'、office = 'HOUSE')。
FEC は、編集済みの「Federal Elections 2024」版をまだ公開していません。
2026-10-13 にライブで確認したところ、fec.gov/.../federal-elections-2024/ は 404 を返し、fec.gov 独自の年別インデックスにも 2024 年はありません(最新は 2022 年)。これは通常の公開遅延です(2022 年版も編集完了は 2023 年でした)。アクセス制限ではないため、FEC が公開したらローダーを再実行してください。FEC が本日時点で公開している 2024 年関連の 2 つのファイルは、代替データにはなりません。2024presgeresults.xlsx は州レベルの大統領選挙結果のみで、政党の列がなく、2024congressgecands.xlsx は投票数を一切含まない、下院・上院の候補者名簿です。
郡・選挙区のデータを収録しているのは 50 州ではなく 15 州です。 OpenElections は州ごとに個別のリポジトリを公開しており、列の構成も州によって異なります(この詳細度の単一の全国ファイルはありません)。2026-10-13 に gh api を使い、すべての openelections-data-<st> リポジトリの 2024/ ディレクトリを調査しました。上記の新しい 13 州(および元から対象の PA/MI/GA)は、このローダーの列の前提に合致する、一般選挙の郡または選挙区 CSV が 1 つだけ存在する州です(county,office,district,party,candidate,votes。precinct 列は任意)。対象外の州は、2024 年のディレクトリが選挙職種別または郡別の多数の小さなファイルに分かれているか、一般選挙のファイルが 1 つもない州です。該当する州は AZ、CT、IN、NH、NJ、NY、RI、TX、WY(確認済み)と、上記に記載のないすべての openelections-data-<st> リポジトリです(個別には未確認ですが、ほとんどは 2024/ ディレクトリ自体がありません)。適切な形式の州を追加するのは単純な作業です(ローダーの COUNTY_STATES または PRECINCT_TO_COUNTY_STATES に項目を 1 つ追加します)。形式が複雑な州には、元の PA/MI/GA の oeState() 呼び出しと同様に、独自の列マッピングが必要です。
州議会および知事選挙のデータは読み込まれていません。 タスクで提案された対象範囲には含まれていましたが、行数と列マッピングの作業量を抑えるため、対象外としました。FEC の 2020 年および 2022 年の全国選挙サイクルについては「U.S. House」を読み込み済みです。2024 年については、OpenElections の州別ファイルに含まれている上記の州のみが対象であり、全国分は対象外です(MEDSL の全国下院ファイルは上記のとおりアクセスが制限されており、FEC の 2024 年版もまだ公開されていません)。
元データが選挙区レベルであっても、このパックでは CO/MO/OR/SC/KY は郡レベルのみです。 連邦選挙職種の生データに含まれる選挙区別の行は州ごとに 21k〜64k 件(合計約 218k 件)です。データ量と既定のレスポンスサイズを抑えるため、保存しているのは郡単位に集計した行(州ごとに 2,500 件未満)のみです。これはデータ量とのトレードオフであり、解析上の制約ではありません。必要に応じて load-data.mjs を拡張し、PA/MI と同様に、これらの州の level === 'precinct' の行も保持できます。
データの更新または拡張
node scripts/us-elections/load-data.mjs を再実行してください(Pipeworx Cloudflare アカウントに wrangler でログインしている必要があります。また、複数のアカウントが表示される場合は CLOUDFLARE_ACCOUNT_ID を設定してください)。すべてのソースをその時点の最新データで再取得し、election_results/sources テーブルを置き換えます(DROP +再読み込み)。MEDSL、FEC、OpenElections は過去の行を追記ではなく修正するためです。OpenElections の州を追加するには、そのファイルが標準の列構成と一致する場合、COUNTY_STATES(郡レベルのファイル)または PRECINCT_TO_COUNTY_STATES(選挙区レベルのファイルを集計)にエントリーを追加してください。一致しない場合は、その州独自の列名を使った oeState({...}) の呼び出しを直接記述してください(これまでに確認された固有の形式については、PA/MI/GA の呼び出しを参照してください)。
クイックスタート
MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します:
{
"mcpServers": {
"us-elections": {
"url": "https://gateway.pipeworx.io/us-elections/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/us-elections/mcp の tools/list は、上の表にあるツールに加えて、共有 Pipeworx メタツール(ask_pipeworx、discover_tools、search_within、remember/recall など、ゲートウェイ全体で利用できる一連のツール)も返します。そのため、表示されるツール数はこの表より多くなります。現在、単一パックのエンドポイントには、パック固有のツールとともに共有ツールがおよそ 30 個表示されます。接続の initialize 応答には正確な範囲が記載されており、その日ごとの正式な情報源です。
これは意図的な設計であり、偶然の多重化ではありません。メタツールを使うと、このパックで対応していない質問にも、カタログ全体を対象に振り分ける ask_pipeworx 経由で回答できるため、MCP サーバーを追加する必要がありません。現在、メタツールを含めずにパックのエンドポイントをマウントする方法はありません。追加のスキーマによるコンテキスト消費がルーティングの利点を上回る場合は、複数のパックエンドポイントに接続する代わりに、フルゲートウェイに一度だけ接続してください。
または、Pipeworx のフルゲートウェイに接続すると、このパックだけでなく、すべてのパックのツールが直接一覧表示されます:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
どちらの URL も、同じゲートウェイと同じ 1784 以上のデータソースにアクセスします。違いは、どのパックのツールが直接一覧表示されるかだけです。どちらからでも、ask_pipeworx を通じてすべてのツールを利用できます。
MCP クライアントがない場合:HTTP で呼び出す
curl -X POST https://gateway.pipeworx.io/v1/tools/election_results \
-H 'Content-Type: application/json' \
-d '{"state":"PA","year":2024,"office":"president","level":"county"}'
最初の呼び出しではアカウントは不要です。任意のツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/election_results を使用してください。ツールを検索するには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を使用してください。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージは、ローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイへの往復通信も不要です:
{
"mcpServers": {
"us-elections": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-us-elections"]
}
}
}
または、直接実行して起動を確認してください:
npx -y @pipeworx/mcp-us-elections
stdin/stdout 経由で MCP と通信し、このパックのツールのみを対象に initialize/tools/list/tools/call に応答します。上記のゲートウェイ接続で追加される共有メタツールはありません。同じソース、同じツールで、ask_pipeworx によるルーティングはありません。
ask_pipeworx の使用
ツールを直接呼び出す代わりに、自然な英語で質問できます。これは上記のパックエンドポイントでも、フルゲートウェイでも利用できます:
ask_pipeworx({ question: "your question about Us Elections data" })
ゲートウェイが適切なツールを選び、引数を自動的に設定します。
詳細
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。