Sponsor Finder について
Sponsor Finder は、英国とオランダの企業が就労ビザのスポンサーライセンスを持つか調べる読み取り専用 MCP サーバーです。公開名簿に基づく判定を返し、上流 API の認証情報はサーバー側に保持します。
主な機能
- 01企業名によるライセンス状況の確認
- 02条件を指定したスポンサー名簿の検索
- 03組織の詳細と履歴の取得
- 04名簿の統計と用語の確認
- 05クライアント認証情報不要の読み取り専用アクセス
活用シーン
- 01英国の就労ビザをスポンサーできる企業か確認する
- 02都市やビザルートで英国のスポンサーを探す
- 03スポンサー種別でオランダの組織を調べる
- 04名簿の更新状況や用語の説明を確認する
MCP 対応
stdio または Streamable HTTP 経由で、4 つの読み取り専用ツールを MCP クライアントに提供します。クライアントは認証情報なしで接続でき、上流 API キーはサーバー側に保持されます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.sponsorfinder.io/mcpclaude mcp add --transport http io-sponsorfinder https://mcp.sponsorfinder.io/mcp{"mcpServers":{"io-sponsorfinder":{"type":"http","url":"https://mcp.sponsorfinder.io/mcp"}}}Cursor で開く{"servers":{"io-sponsorfinder":{"type":"http","url":"https://mcp.sponsorfinder.io/mcp"}}}VS Code で開く{"mcpServers":{"io-sponsorfinder":{"type":"http","url":"https://mcp.sponsorfinder.io/mcp"}}}{"mcpServers":{"io-sponsorfinder":{"serverUrl":"https://mcp.sponsorfinder.io/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
5| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| country | enum | いいえ | 確認する登録簿:uk、nl、または bothuk | nl | both |
| company_name | string | はい | 会社の正式な登録法人名です。ブランド名、製品名、商号、URLではありません。ユーザーがブランド名またはウェブサイトを提示した場合は、正式な登録法人名を先に特定してから、ここに渡してください。 |
詳細
SponsorFinder MCP サーバー
認証不要で読み取り専用のリモート MCP サーバーです。AI アシスタント(Claude、ChatGPT、Cursor、…)が、企業に英国またはオランダの就労ビザスポンサーライセンスがあるかどうかを確認できます。公開されている SponsorFinder API に中継し、レスポンスをわかりやすい判定結果に整形します。また、上流 API キーはサーバー側で管理するため、クライアントは認証情報なしで接続できます。
できること
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 | いいえ | 3001 | Node エントリ(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 typecheck | tsc --noEmit で型チェックします。 |
pnpm lint | ESLint で静的解析します。 |
pnpm test | 単体テストを実行します(スモークテストを除く)。 |
pnpm test:smoke | 実際のステージング API に対するインテグレーションスモークテストを実行します(シークレットが必要です)。 |
pnpm build | tsup で dist/ にバンドルします。 |
pnpm check | typecheck、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 パラメーターとして含まれます。詳しくは以下をご覧ください。
セットアップ:
- GA4 プロパティ(無料)と Web データストリームを作成します。
- 管理 → データストリーム → ストリーム → Measurement Protocol API シークレットで、シークレットを作成します。
ストリームの測定 ID(
G-XXXXXXXXXX)とシークレットの値をコピーします。 GA_MEASUREMENT_IDとGA_API_SECRETを設定します(環境変数/Docker/wrangler secret)。- 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
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。