job-search-mcp
job-search-mcp
ビザの制約があるなかで求職活動をおこなうための MCP サーバー。
スポンサーシップが必要な場合、既存の求職ツールは「間違った質問」に答えている。それらのツールが教えてくれるのは「求人が存在する」ということとだけだ。雇用主があなたを合法に雇用できるかどうか、「ミドルレベル」というタイトルの裏にシニア級の業務内容が隠れていないか、その求人を掲出している会社がスポンサーライセンスを一切持たない人材エージェンシーなのか、そのようなことは何も教えてくれない。
このサーバーはそれらの質問に答える。Model Context Protocol 経由で4つのツールを公開し、AI アシスタントが推測ではなく、自ら確認できるようにする。
ツール
ツール | なにがわかるか |
| この雇用主は英国の Skilled Worker ライセンスを持っているか? その一致はどの程度信用できるか? |
| ここに絶対条件(ハードバー)はあるか? タイトルはシニア度合いについて真実を言っているか? |
| いま有効な採用求人はどれか? エージェンシーを除いたうえで。 |
| ここにはすでに応募したか? |
Related MCP server: recruiting-jobs-mcp
なぜ信頼度評価が存在するのか
スポンサーライセンスを確認する素直な方法は、登録簿(register)で会社名を検索することだ。このサーバーもそのやり方から始めた。しかしそのやり方は、危険を生むほど頻度に間違う。
社名は衝突する。Pimberly を登録名 Pimberly Software Development Limited と照合するには、"Software" や "Limited" といった単語を削ぎ落とす必要がある。同じ正規化は、Minerva Defence を minerva に変えてしまう。それは、家具事業者、信用情報会社、自立生活支援事業者などの、無関係な13の会社に一致してしまう。
そこで check_sponsor は、真偽値ではなく信頼度を返す:
high-- 名前の識別力のある部分が、一度だけ、完全に一致した。verify-- 何かは一致したが、偶然の可能性がある。雇用主の登録された法的な法人名を確認し、その名前でひとを検索しない。none-- 一致したものはない。これは求人できたという証明ではない。 たとえスポンサーライセンスを持っていても、登録された法人名とは異なる名前で仕事をしている雇用主なら、多い。
この設計を形作った実例が下である:
検索名 | 一致したのは | 実際に言えたこと |
Minerva Defence | 無関係な「Minerva」に目をひく13行 |
|
Prevail | Prevail Technology Limited (Poole) | 雇用主は |
MAGIC | MAGIC SOFTWARE SERVICES LIMITED | 答えが正しくは、証拠が間違っている。雇用主は |
TransPerfect | PERFECT DIGITAL LIMITED | 「perfect」という単語での一致です。 |
eFinancialCareers | eFinancialCareers Ltd | 正しいが役に立たない: ライセンスはある、ただし単なる求人掲示板。その名前での求人は、名を伏せた第三者に帰属する |
なぜ screen_posting はタイトルではなく本文を読むのか
「"ソフトウェアエンジニア"というタイトルの求氏、As a Senior Software Engineer you will... という始まりで、*「the founding team」*に参加して人を求していた。また別の「Software Engineer (Java Mid)」というタイトルは、3パラグラフ下にシニアグレードの要件を記載していた。タイトルだけでのフィルタはどちらも見録できない。
screen_posting はまた、どんなに応募書類を調整しても乗り越えられない絶対条件ヘのハードバーを検知する:
You must be a UK citizen and have lived in the UK for the past 10 years.
You must already hold high-level UK security clearance.そして、スポンサーシップが必要なときに最大の意味をもつのは、A評価(A-rated)のライセンスを保有している会社からの募集のものだ:
We are unable to offer visa sponsorship for this role. Candidates who need visa
sponsorship now or will need it in the future will not be considered.ライセンスは「その会社がスポンサーできる」ことを意味する。スポンサーしてくれることは意味しない。
なぜ search_roles はファネル(漏斗)を返すのか
英国の求人ボードは、人材紹介エージェンシーによって占められている。そしてエージェンシーは、自身が広告する求人に対してスポンサーライセンスを保有していない。しかし**、***それを除外することは必須であり、選別は激しい: 典型の検索結果は7件から1件に落ちる。
説明がないまま1 つになるのはバグに見える。そこでこのツールは、各段階で何を除去したのかを返す:
{
"totalFromSource": 7,
"funnel": { "fromSource": 7, "afterAgencyFilter": 2, "afterSalaryAndAge": 1 },
"notes": ["5 of 7 results were recruitment agencies or job boards. ..."]
}非公開の給与は保持され、決してフィルタリングされていない。給与が記載されていないことは、給与が低いという証拠ではない。
インストール
npm install && npm run build現在の登録簿(約 11 MB、定期的に更新)をダウンロード:
https://www.gov.uk/government/publications/register-of-licensed-sponsors-workers
data/register.csv として保存するか、SPONSOR_REGISTER_PATH にその場所を指定する。
Claude Desktop / Claude Code
{
"mcpServers": {
"job-search": {
"command": "node",
"args": ["/absolute/path/to/job-search-mcp/dist/index.js"],
"env": {
"SPONSOR_REGISTER_PATH": "/absolute/path/to/data/register.csv",
"REED_API_KEY_FILE": "/absolute/path/to/.reed-api-key"
}
}
}
}変数 | 必須条件 | 目的 |
| なし | 登録簿 CSV。デフォルトは |
|
| キーを格納したファイルパス。推奨: 秘密情報は一箇所に置き、クライアント設定はパスだけを保持する |
| 代替 | キーを直接(インラインで)記載。単純だが、秘密情報をMCP設定にコピーしてしまう |
| なし | NDJSON 形式の応募履歴 |
リポジトリ内部のファイルから資格情報を読み取られることはなく、登録簿は gitignore されている。
または Claude Code CLI を使う場合:
claude mcp add job-search --scope user \
--env SPONSOR_REGISTER_PATH=/path/to/data/register.csv \
--env REED_API_KEY_FILE=/path/to/.reed-api-key \
-- node /path/to/job-search-mcp/dist/index.jsテスト
npm test54件のテスト。各フィクスチャは、このコードの以前の版を失敗させた実在の求人採用または実在のレジストリ登録である。Reed のテストは fetch をモックしているため、テストスイートはオフラインで動作し、API の割り当てを消費しない。
スイートが書いている最中にとらえた2つのバグ:
£40,000-85,000の表示が、2桁側に通貨記号が付いていなかったせいで、単純の £40,000 として解析されてしまった。給与のしきい値と照合すると、これは「クリア」と「非クリア」の違いになる。\brecruit\bという記述のエージェンシーフィルターは、リクルートや Consultancy に一度もヒットしなかった。結果として50社近いエージェンシーがすり抜けた。
設計ノート
core() は意図的に情報を破壊する。 ブランドを正式な法人名に対応させるには記述語を除去する必要があり、それはすなわち誤検出を引き起こす原因其物である。信頼度付けはこのトレードオフを隠すことなく、その価格として示す。
不在は否定的な結果ではない。 none にはそう記されているいる。この領域でも最も高くつくエラーは、登録のない雇用主をスポンサー不可と断言してしまうことだ。
読み取り専用。 サーバーは応募台帳を読み取るだけで、そこに書き込むことはない。応募結果を記録するべきのは、人間が下す判断である。
ライセンス
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI-driven job application automation for LinkedIn and SEEK platforms with intelligent cover letter generation, automated application submission, and application tracking management. Supports anti-detection measures and complies with platform usage policies for safe job hunting automation.
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to pull live job listings from major ATS platforms (Greenhouse, Lever, Ashby, Workable), Hacker News hiring threads, and detect hiring signals on company career pages.
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to discover, filter, and track job openings based on the user's local resume, without uploading data to the cloud.11MIT

FoundRole MCPofficial
AlicenseAqualityBmaintenanceEnables AI assistants to search live jobs, view full details, save and track applications in a Kanban board, set follow-up reminders, and subscribe to job alerts—no account needed for searching.20269MIT
Related MCP Connectors
Job platform for AI agents. Track tech jobs from companies that match your stack.
AI job search MCP — fact-checked jobs, application tracker, alerts. ChatGPT, Claude, Cursor.
Search AI-native jobs, inspect application forms, and fetch free interview-prep resources.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/pendevster/job-search-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server