mcpField
S
Sponsor Finder

Sponsor Finder

リモート
github.com/alirezahamid法務・行政16 週間前に更新
リポジトリ

Sponsor Finder について

Sponsor Finder は、英国とオランダの企業が就労ビザのスポンサーライセンスを持つか調べる読み取り専用 MCP サーバーです。公開名簿に基づく判定を返し、上流 API の認証情報はサーバー側に保持します。

主な機能

  1. 01企業名によるライセンス状況の確認
  2. 02条件を指定したスポンサー名簿の検索
  3. 03組織の詳細と履歴の取得
  4. 04名簿の統計と用語の確認
  5. 05クライアント認証情報不要の読み取り専用アクセス

活用シーン

  1. 01英国の就労ビザをスポンサーできる企業か確認する
  2. 02都市やビザルートで英国のスポンサーを探す
  3. 03スポンサー種別でオランダの組織を調べる
  4. 04名簿の更新状況や用語の説明を確認する

MCP 対応

stdio または Streamable HTTP 経由で、4 つの読み取り専用ツールを MCP クライアントに提供します。クライアントは認証情報なしで接続でき、上流 API キーはサーバー側に保持されます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://mcp.sponsorfinder.io/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

5
パラメーター型必須説明
countryenumいいえ確認する登録簿:uk、nl、または bothuk | nl | both
company_namestringはい会社の正式な登録法人名です。ブランド名、製品名、商号、URLではありません。ユーザーがブランド名またはウェブサイトを提示した場合は、正式な登録法人名を先に特定してから、ここに渡してください。

詳細

SponsorFinder MCP サーバー

認証不要で読み取り専用のリモート MCP サーバーです。AI アシスタント(Claude、ChatGPT、Cursor、…)が、企業に英国またはオランダの就労ビザスポンサーライセンスがあるかどうかを確認できます。公開されている SponsorFinder API に中継し、レスポンスをわかりやすい判定結果に整形します。また、上流 API キーはサーバー側で管理するため、クライアントは認証情報なしで接続できます。

License: MIT Node >=24 Built with MCP

できること

SponsorFinder は、就労ビザのスポンサーとして認可された企業に関する、政府の公式登録簿を 2 つ追跡しています。

  • 英国 — 内務省の認可済みスポンサー登録簿。内務省が公開する CSV から再構築され、毎日確認されています。ビザの種類(例:Skilled Worker)、評価(A/B)、所在地が掲載されています。
  • オランダ — IND の認定スポンサー公開登録簿。毎日確認されています。認定スポンサーとスポンサーの種類(WORK/EXCHANGE/STUDY/RESEARCH)が掲載されています。英国のデータよりも情報が少なく、ビザの種類、評価、所在地は掲載されていません。

この MCP サーバーは、このデータを 4 つのツールとして公開します。読み取り専用で、クライアントの認証は不要です。上流の x-api-key はサーバー側のシークレットであり、MCP クライアントから参照されることはありません。OAuth、ユーザーごとの状態、書き込みツールはありません。

ツール

ツールタイトル機能主な入力
check_sponsor_licenseスポンサーライセンスの確認主要なツールです。会社名から会社を特定し(誤字を許容)、判定(licensed、formerly_licensed、ambiguous、not_found)とともに、ビザルート、評価、所在地、登録日を返します。一致の確度が低い場合は推測しません。company_name(2~100文字、誤字可)、country(uk | nl | both、デフォルトは both)
search_sponsorsスポンサー登録簿の検索任意のフィルターを使った探索的な一覧検索です。コンパクトな一覧と合計件数を返します。特定の会社を調べる場合は、check_sponsor_license を使うことをおすすめします。query?、country(uk | nl、デフォルトは uk)、city?(英国)、route?(英国)、sponsor_type?(オランダ:WORK | EXCHANGE | STUDY | RESEARCH)、limit(1~20、デフォルトは 10)
get_sponsor_detailsスポンサーの詳細を取得ID を指定して、1 つの組織の完全なレコードを返します。ビザルート/評価/所在地/日付(英国)、またはスポンサー種別と KvK 番号(オランダ)が含まれます。任意で登録簿の変更履歴も含められます。org_id(整数)、country(uk | nl、デフォルトは uk)、include_history(bool、デフォルトは false)
get_register_infoスポンサー登録簿について登録簿の統計情報、データの鮮度、用語集、法的免責事項を返します。ライセンス、ビザルート、評価、スポンサー種別の意味を説明するときに使います。なし

すべてのツールには readOnlyHint: true が注釈されており、人間が読めるテキストブロックと structuredContent の両方を返します。それぞれにデータの鮮度を示す日付と出典に関する注記が付いています。

プロンプトの例

サーバーに接続すると、アシスタントに自然言語で次のように尋ねられます。

  • 「Google は英国のスポンサーライセンスを保有していますか?」
  • 「ASML はオランダで認定スポンサーですか?」
  • 「マンチェスターの英国の Skilled Worker スポンサーを検索してください。」
  • 「'shell' に一致するオランダの WORK タイプのスポンサーを一覧表示してください。」
  • 「B 評価とは何ですか?」

会社名の照合についての注意。 あいまい検索では誤字が許容されます(例:googel uk)。ただし、確度の高い特定には ある程度完全な 名前が必要です。「Google UK」や「Google UK Limited」であれば明確に特定できますが、単独の一般的な単語では多くの会社が一致する可能性があります。サーバーは、一致の確度が低い場合や複数の候補が同程度に一致する場合、意図的に 推測しません。候補から 1 つを黙って選ぶ代わりに、候補一覧を含む ambiguous 判定を返し、候補を絞り込むか、正しい ID を指定して get_sponsor_details を呼び出すよう求めます。登録簿に掲載されていないこと自体にも意味があります。つまり、その会社は現在、その種類のビザをスポンサーできないということです。

利用方法(ホスト型)

サーバーは次の場所でホストされています。

https://mcp.sponsorfinder.io/mcp

Claude Code

claude mcp add --transport http sponsorfinder https://mcp.sponsorfinder.io/mcp

claude.ai — [設定]→[コネクター]→[カスタムコネクターを追加]の順に進み、上記の URL を貼り付けます。認証は不要です。

ChatGPT — [設定]→[コネクター](またはカスタム GPT のアクション)→[追加]の順に進み、カスタム/リモート MCP コネクターを追加して、上記の URL を貼り付けます。

Streamable HTTP に対応する MCP クライアントなら、同じ方法で接続できます。接続先に https://mcp.sponsorfinder.io/mcp を指定してください。

ローカルで実行

前提条件: Node.js 24 と pnpm 11。

pnpm install
cp .env.example .env
# then edit .env and fill in:
#   SPONSORFINDER_API_BASE   e.g. https://api.sponsorfinder.io
#   SPONSORFINDER_API_KEY    your upstream x-api-key (server-side secret)

次の 2 つのトランスポートのいずれかを、ウォッチモードで実行します。

pnpm dev:stdio   # stdio transport (Claude Desktop / Claude Code / MCP Inspector)
pnpm dev:http    # Streamable HTTP on http://localhost:3001/mcp

ローカルの stdio ビルドを Claude Code に追加する:

pnpm build
claude mcp add sponsorfinder -- node dist/entry/stdio.js

MCP Inspector を使って、どちらかのトランスポートに接続し、ツールを対話的に確認する:

npx @modelcontextprotocol/inspector

設定

すべての設定は環境変数で行います(.env.example を参照)。

名前必須デフォルト説明
SPONSORFINDER_API_BASEはい—上流の SponsorFinder API のベース URL。末尾にスラッシュは付けません(例:https://api.sponsorfinder.io)。
SPONSORFINDER_API_KEYはい—上流の x-api-key ヘッダー値。サーバー側のシークレットです。MCP クライアント、ツールの出力、エラー、ログには決して公開されません。
PORTいいえ3001Node エントリ(src/entry/node.ts)の HTTP ポート。stdio と Cloudflare Workers では無視されます。
UPSTREAM_TIMEOUT_MSいいえ10000上流リクエストのタイムアウト(ミリ秒単位)。AbortSignal.timeout() を介して中断されます。

SPONSORFINDER_API_KEY は唯一の重要なシークレットです。MCP クライアントは認証なしで接続し、このキーはサーバー上(Docker の環境変数または Cloudflare Workers のシークレット)にのみ保存され、クライアントに公開されることはありません。

セルフホスト/デプロイ

Web 標準のコアは Node と Cloudflare Workers の両方で実行でき、異なるのはエントリファイルだけです。

Docker(主な方法) — イメージは ghcr.io/alirezahamid/sponsor-finder-mcp、設定は Dockerfile と docker-compose.yml にあります。

docker compose up -d

mcp.sponsorfinder.io の前段にリバースプロキシ(Caddy/nginx)を配置し、POST、GET、DELETE を /mcp に転送してください。Streamable HTTP ではレスポンスのバッファリングを無効にする必要があります(nginx では proxy_buffering off; を設定します。Caddy はデフォルト設定のままで問題ありません)。

Cloudflare Workers — 設定は wrangler.jsonc にあります。

wrangler secret put SPONSORFINDER_API_KEY
pnpm deploy:worker

開発

スクリプト処理内容
pnpm typechecktsc --noEmit で型チェックします。
pnpm lintESLint で静的解析します。
pnpm test単体テストを実行します(スモークテストを除く)。
pnpm test:smoke実際のステージング API に対するインテグレーションスモークテストを実行します(シークレットが必要です)。
pnpm buildtsup で dist/ にバンドルします。
pnpm checktypecheck、lint、test をまとめて実行します。

アナリティクス(任意)

サーバーは、サーバー側の Measurement Protocolを介して、使用状況をGoogle Analytics 4に送信できます。 MCP サーバーにはブラウザーがないため、GA/GTM の JavaScript タグは実行できません。代わりに、 サーバーが HTTP 経由でイベントを送信します。Node と Cloudflare Workers の両方で動作します。

GA_MEASUREMENT_ID と GA_API_SECRET の両方が設定されていない限り、アナリティクスはオフです。 各ツール呼び出しで、カテゴリ別のパラメーターを含む mcp_tool_call イベントが 1 件送信されます。 パラメーターは tool、status、verdict、country、mcp_client、latency_bucket、error_kind です。 デフォルトでは、会社名や自由記述のクエリは GA に送信されません。検索した名称は、 CAPTURE_QUERY_NAMES を有効にした場合にのみ query パラメーターとして含まれます。詳しくは以下をご覧ください。

セットアップ:

  1. GA4 プロパティ(無料)と Web データストリームを作成します。
  2. 管理 → データストリーム → ストリーム → Measurement Protocol API シークレットで、シークレットを作成します。 ストリームの測定 ID(G-XXXXXXXXXX)とシークレットの値をコピーします。
  3. GA_MEASUREMENT_ID と GA_API_SECRET を設定します(環境変数/Docker/wrangler secret)。
  4. GA4 で、上記のイベントパラメーターをカスタムディメンションとして登録し (管理 → カスタム定義)、レポートに表示されるようにします。テスト中は GA_DEBUG=true を設定して、 GA の検証エンドポイントに送信します。

需要のない検索の分析:CAPTURE_QUERY_NAMES=true を設定すると、検索した会社名がサーバーの 構造化ログに記録され、さらに query イベントパラメーターとして GA4 に送信されます (表示するには query カスタムディメンションを登録してください)。デフォルトではオフです。 注意点:生の名称は GA ではカーディナリティが高く、(other) にまとめられます。また、個人名を含む クエリは GA の規約上、個人を特定できる情報(PII)と見なされる場合があります。通常は、プライベートな ログストアに保存する方が適切です。有効にする前に、プライバシーポリシーに記載を追加してください。

仕組み

サーバーは、レスポンスを整形するステートレスな薄いプロキシです。MCP クライアントは stdio または ステートレスな Streamable HTTP 経由で接続します。小さな Hono アプリ (@hono/mcp を使用)がリクエストごとに MCP サーバーを構築し、サーバー側のキーを使って SponsorFinder API を呼び出します。すべてのレスポンスを zod で検証して(契約のずれを防止)、 簡潔な判定結果に整形します。登録統計とフィルター値は、短い TTL でプロセス内にキャッシュされます。 中核部分では Web 標準 API(fetch、URL)のみを使用するため、同じコードが Node と Cloudflare Workers で動作し、 異なるのは src/entry/* のみです。

MCP client (Claude / ChatGPT / Cursor)
        │  stdio  or  stateless Streamable HTTP
        ▼
SponsorFinder MCP server  (Hono + @hono/mcp)
   • 4 read-only tools, zod-validated
   • x-api-key added server-side
   • cached /status + /filters
        │  HTTPS  (x-api-key)
        ▼
SponsorFinder API  →  UK Home Office register + Dutch IND register

データと免責事項

データは、公式の英国政府のライセンスを受けたスポンサー登録簿と オランダ IND の認定スポンサー公開登録簿に基づいており、毎日更新されます。

このツールは情報提供のみを目的としており、法的助言ではありません。登録簿のデータは公式発表より遅れる場合があり、 ライセンスがあるからといって、企業が特定の職種でスポンサーになるとは限りません。判断を下す前に、必ず公式情報源で確認してください。

貢献

github.com/alirezahamid/sponsor-finder-mcpで、Issue とプルリクエストを歓迎します。 PR を作成する前に pnpm check を実行してください。

公開に関する注意: server.json は公式 MCP レジストリ用のマニフェストです。mcp-publisher publish を実行する前に、現在の registry.modelcontextprotocol.io のドキュメントで $schema の正確な URL を確認してください。ここで固定されているスキーマのバージョンは、すでに更新されている可能性があります。

ライセンス

MIT © 2026 Alireza Hamid

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。