Gsa Elibrary について
Gsa Elibraryは、GSA Multiple Award ScheduleとGWACの契約保有者を調べるMCPサーバーです。政府調達の調査向けに、公開されたeLibraryページからキーワードやSINで検索し、契約業者の情報を参照できます。
主な機能
- 01キーワード、SIN、NAICS、業者名で検索
- 02SINごとの契約保有者一覧
- 03業者のスケジュールと契約番号を確認
- 04新規受注対象外の契約を表示
- 05stdioでローカル実行、またはPipeworx経由で利用
活用シーン
- 01関連するSINの契約業者を探す
- 02業者のスケジュールと契約情報を確認
- 03契約が新規受注を受け付けるか確認
MCP 対応
MCPクライアントに、スケジュール検索、契約保有者一覧、業者プロフィールのツールを公開します。ローカルのstdioサーバー、またはPipeworxゲートウェイ経由で利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/gsa-elibrary/mcpclaude mcp add --transport http pipeworx-io-gsa-elibrary https://gateway.pipeworx.io/gsa-elibrary/mcp{"mcpServers":{"pipeworx-io-gsa-elibrary":{"type":"http","url":"https://gateway.pipeworx.io/gsa-elibrary/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-gsa-elibrary":{"type":"http","url":"https://gateway.pipeworx.io/gsa-elibrary/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-gsa-elibrary":{"type":"http","url":"https://gateway.pipeworx.io/gsa-elibrary/mcp"}}}{"mcpServers":{"pipeworx-io-gsa-elibrary":{"serverUrl":"https://gateway.pipeworx.io/gsa-elibrary/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
@pipeworx/gsa-elibrary
現在 GSA Multiple Award Schedule(MAS)契約を保有し、タスクオーダーに入札できる事業者を確認できます。usaspending の過去の受注データや、労務単価のみを対象とする gsa-calc を補完します。
Pipeworx の一部です。AI エージェントを 1879 以上のライブデータソースに接続する MCP ゲートウェイです。これは独立した非公式の統合であり、上流プロバイダーとは提携関係になく、同社の承認や公開を受けたものでもありません。
ツール
gsa_schedule_search(keyword, search_type?)— キーワード、SIN 番号、NAICS コード、または請負業者・製造業者名で検索します。一致する MAS/GWAC カテゴリと SIN、および契約番号付きの請負業者の一致結果を返します。有効なスケジュールと SIN の組み合わせを探す際の出発点になります。gsa_schedule_contract_holders(sin, schedule?, keyword?, limit?, offset?)— SIN に現在登録されているすべての契約保有者を、契約番号、電話番号、市、州とともに返します。keywordは、名前、契約番号、市、州を対象にクライアント側で絞り込みます。scheduleの既定値は"MAS"です。gsa_contractor_profile(contractor_name, contract_number?, sin?, schedule?)— 請負業者が保有するすべてのスケジュール/GWAC と、それぞれの契約番号に加え、新規受注が終了している契約を返します。請負業者が保有しているとすでに判明しているsin(およびschedule)を渡すと、その SIN の契約保有者一覧から電話番号、市、州も取得できます。住所、メールアドレス、ウェブサイト、SAM UEI、NAICS、社会経済的ステータス・除外リストのステータス、オプション期間の終了日はこのツールでは取得できません。詳しくは、以下の「知っておくべき動作」をご覧ください。
認証
キー不要です。ログイン、API キー、CAPTCHA は必要ありません。
データソース
- GSA、eLibrary — 公開されている Multiple Award Schedule / GWAC の契約保有者一覧です。各ページは認証なしのリクエストにそのまま応答します。1 回の呼び出しの間を超えて、データをミラーリングまたはキャッシュすることはありません。
知っておくと便利な動作
- JSON API はありません。 eLibrary はサーバー側でページをレンダリングするレガシーサイトであり、契約者データ用のドキュメント化された API はありません(別の、ドキュメント化されていない
search_categories形式のエンドポイントは、SIN/カテゴリのメタデータのみを対象とし、契約業者は対象外です)。このパックは、ブラウザーが読み込むものと同じ HTML ページを解析します。 - サイト独自の「Download Contractors (xls/csv)」リンクには、そのリンクを表示したページから引き継いだセッション Cookie が必要です。 セッションなしで取得すると、「System Error: Unable to access GSA eLibrary」が返されます。SIN ごとの一覧ページにはこのようなセッションの引き継ぎは不要です。CSRF トークンのない通常の GET で、SIN の契約業者一覧全体がサーバー側のページネーションなしで 1 ページにすでに表示されます(実測値:SIN 541511 は約 70KB で 341 行、SIN 541611 は約 5.2MB の 1 回のレスポンスで 3,107 行です。このパックは後者も数ミリ秒で解析します)。
limit/offsetは、上流側がページネーションに対応している場合と同じように、解析後に適用されます。 - eLibrary の契約ごとの詳細ページには、こちらのネットワークからアクセスできません。 デプロイ後の実測では、検索結果ページと SIN ごとの一覧ページにはどちらも応答があります(検索ページはまれに最初の 403 の後、再試行でアクセスできるようになります。このパックは再試行を 1 回だけに制限して行うため、実際にブロックされた場合は明確に失敗します)が、契約業者ごとの詳細ページは毎回 HTTP 403 を返します。
gsa_contractor_profileは詳細ページをまったく呼び出さず、代わりにアクセス可能な 2 つのルートからプロフィールを作成します(スケジュール/契約番号との関連付けを調べる契約業者名検索と、電話番号/市区町村/州を調べる任意の SIN ごとの検索)。レスポンスのfields_unavailableリストとnoteには、この組み合わせでは取得できないフィールドが明記されます。検索自体も 1 回の再試行後にブロックされた場合、このツールは生の 403 を返さず、そうした状況を説明する note とともにfound: falseを返します。 - SIN のカテゴリ説明は 1,000 文字を超えることがあり、最初の数百文字以内に
<br>や終了タグがない場合もあります。 タイトルと説明は、1 つの結合パターンではなく、それぞれ別の範囲を指定して解析します。そのため、説明が長くても、短いタイトル/SIN を含む一致全体が黙って失敗することはありません。 - 契約業者一覧テーブルの列は固定ではありません。 SIN によっては、契約業者名と契約番号のセルの間に「Disaster Purchasing」アイコンのセルが追加されるものと、されないものがあります。固定の列オフセットを前提とせず、契約業者への各リンクを特定し、そのリンクから次のリンクまでのテキストだけを読み取って行を解析します。
クイックスタート
MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します。
{
"mcpServers": {
"gsa-elibrary": {
"url": "https://gateway.pipeworx.io/gsa-elibrary/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/gsa-elibrary/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 も、同じゲートウェイと同じ 1879 以上のデータソースに接続します。異なるのは、どのパックのツールが直接表示されるかだけです。ask_pipeworx を使えば、どちらからでもすべてのツールにアクセスできます。
MCP クライアントがない場合は、HTTP 経由で呼び出せます
curl -X POST https://gateway.pipeworx.io/v1/tools/gsa_schedule_search \
-H 'Content-Type: application/json' \
-d '{"keyword":"cybersecurity"}'
最初の呼び出しにアカウントは必要ありません。任意のツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/gsa_schedule_search を実行します。ツールを見つけるには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を実行します。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージは、Pipeworx アカウントやゲートウェイ経由の通信なしで、ローカルの stdio MCP サーバーとしても実行できます。
{
"mcpServers": {
"gsa-elibrary": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-gsa-elibrary"]
}
}
}
または、直接実行して起動することを確認できます。
npx -y @pipeworx/mcp-gsa-elibrary
stdin/stdout 経由で MCP と通信し、このパックのツールのみを対象に initialize/tools/list/tools/call に応答します。上記のゲートウェイ接続で追加される共有メタツールは含まれません。同じソース、同じツールで、ask_pipeworx によるルーティングはありません。
ask_pipeworx の使用
ツールを直接呼び出す代わりに、平易な英語で質問できます。これは上記のパックエンドポイントでも、フルゲートウェイでも動作します。
ask_pipeworx({ question: "your question about Gsa Elibrary data" })
ゲートウェイが適切なツールを選択し、引数を自動的に設定します。
詳細
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。