Landed について
Landedは求職者向けのMCPサーバーで、適合度付きのAI関連求人を検索し、応募フォームや面接準備資料を取得できます。継続的に更新されるLandedの求人情報に接続し、プロキシのセルフホストにも対応します。
主な機能
- 01適合度付きの求人検索
- 02求人応募フォーム項目の取得
- 03面接・ポートフォリオ学習資料
- 04再利用可能な求職ガイド用プロンプト
- 05匿名アクセスとトークン認証
活用シーン
- 01職種・スキル・勤務地で求人を絞り込む
- 02応募先に合わせた回答を準備する
- 03職種別の面接学習資料を探す
MCP 対応
Streamable HTTPのリモートMCPサーバーとして、求人検索、応募フォーム、学習資料のツールとガイド用プロンプトを提供します。リポジトリをセルフホストし、Landed APIへのプロキシとして運用することもできます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.landed.jobs/mcpclaude mcp add --transport http landedjobs-landed https://mcp.landed.jobs/mcp{"mcpServers":{"landedjobs-landed":{"type":"http","url":"https://mcp.landed.jobs/mcp"}}}Cursor で開く{"servers":{"landedjobs-landed":{"type":"http","url":"https://mcp.landed.jobs/mcp"}}}VS Code で開く{"mcpServers":{"landedjobs-landed":{"type":"http","url":"https://mcp.landed.jobs/mcp"}}}{"mcpServers":{"landedjobs-landed":{"serverUrl":"https://mcp.landed.jobs/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
3| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| role | string | いいえ | 対象となる職種または職名のグループ。例:"AI Engineer"、"RAG Engineer"、"Data Scientist"。 |
| avoid | array | いいえ | 避けたい企業または業界。 |
| limit | integer | いいえ | 返す求人の件数。 |
| query | string | いいえ | ユーザー自身の言葉による理想の仕事の自由記述。サーバー側で構造化フィルターに解析され、意味的な補助情報としても使われます。 |
| remote | enum | いいえ | 希望する勤務形態。remote | hybrid | onsite |
| skills | array | いいえ | 職務で求められる中核的なスキル/技術。例:["RAG", "LangChain", "Python"]。 |
| minComp | number | いいえ | 許容できる基本給の最低額(数値)。 |
| regions | array | いいえ | 旧形式の、人が読みやすいリモート勤務対象地域/国。例:["APAC", "India"]。判明している場合は regionCodes/countryCodes を優先してください。 |
| currency | string | いいえ | minComp の通貨。例:"USD"。 |
| locations | array | いいえ | 希望する勤務地の都市/国を正確な名称で指定してください。都市名が曖昧な場合は国名も含めます。例:["Bengaluru, India", "London, UK"]。サーバー側で安定した場所 ID に解決されます。 |
| seniority | string | いいえ | 希望する職位レベル。例:"junior"、"mid"、"senior"、"staff"、"lead"。 |
| industries | array | いいえ | 希望する企業の業界/分野。 |
| regionCodes | array | いいえ | 標準形式のリモート勤務対象地域。 |
| countryCodes | array | いいえ | 求人の勤務地となる、またはリモート勤務の対象となる国の ISO 3166-1 alpha-2 コード。例:["IN"]。 |
| companyStages | array | いいえ | 希望する企業の成長段階。例:["seed", "series-a", "public"]。 |
| workAuthorizationCountryCodes | array | いいえ | 候補者が就労許可を得ている国の ISO コード。 |
詳細
あらゆる MCP クライアントから、AI ネイティブな求人を検索し、応募の準備をし、面接対策ができます。 Claude、Cursor、VS Code、その他 MCP 対応エージェントに、Landed のランキング付けと適合度スコアリングがされた求人データへのライブアクセスを提供する、公開 Model Context Protocol サーバーです。
Landed がメンテナンスしています。毎日の AI ネイティブな求人マッチング、すべての応募でのエージェントによるサポート、模擬面接対策を提供します。
これは何ですか?
Landed MCP は、AI ネイティブな職種(AI エンジニア、ML エンジニア、RAG エンジニア、AI プロダクトマネージャー、GTM エンジニアなど)を厳選し、継続的に更新しているデータに AI アシスタントを接続します。求人サイトの内容をチャットにコピー&ペーストする代わりに、エージェントは次のことができます。
- 🔎 求人を検索 — 職種、スキル、経験年数、リモート勤務、報酬、業界などの構造化された条件、または自然な文章による説明に基づいて、ランキング付けと適合度スコアリングを行います。
- 📝 応募を準備 — 求人の実際の応募フォームを取得し、標準項目、スクリーニング項目、EEO 項目に分類して、応募前にエージェントが自動入力し、回答案を作成できるようにします。
- 🎓 面接対策 — 無料で厳選された面接対策、ポートフォリオ、ロードマップのリソースを取得します。
Streamable HTTP を使用しており、あらゆる MCP クライアントで動作します。ホスト型サーバーならすぐに利用でき、このリポジトリを独自の Landed API に接続してセルフホストすることもできます。
無料で始められます。 匿名ユーザーには、サインアップもキーも不要の共有無料利用枠が提供されます。API トークンを追加すると、無制限でパーソナライズされた結果を利用できます。
クイックスタート(ホスト型)
ホスト型サーバーの場所:
https://mcp.landed.jobs/mcp
以下からクライアントを選択してください。すべて匿名でそのまま動作するため、Authorization ヘッダーを省略してください。無制限の検索や条件に合わせた検索には、Authorization: Bearer lnd_live_… を追加してください(Landed → Settings → API tokens で発行できます)。
Claude Code
ワンライナー(CLI):
# Anonymous (free tier)
claude mcp add --transport http landed-jobs https://mcp.landed.jobs/mcp
# Authenticated (unlimited, personalized)
claude mcp add --transport http landed-jobs https://mcp.landed.jobs/mcp \
--header "Authorization: Bearer lnd_live_your_token_here"
セッションで /mcp を実行して接続を確認し、find_jobs プロンプトを試してください。
Claude Desktop
Settings → Developer → Edit Config を開き(claude_desktop_config.json が開きます)、次を追加します。
{
"mcpServers": {
"landed-jobs": {
"command": "npx",
"args": [
"-y", "mcp-remote", "https://mcp.landed.jobs/mcp",
"--header", "Authorization: Bearer lnd_live_your_token_here"
]
}
}
}
Claude Desktop を再起動します。無料の匿名利用枠では、--header の行を削除してください。
Claude Desktop は
mcp-remoteを介してリモート HTTP サーバーに接続します。 お使いのビルドにネイティブの Custom Connectors(Settings → Connectors → Add custom connector)がある場合は、 代わりにhttps://mcp.landed.jobs/mcpを直接貼り付けることができます。
Cursor
プロジェクト内に .cursor/mcp.json を作成します(全体設定の場合は ~/.cursor/mcp.json)。
{
"mcpServers": {
"landed-jobs": {
"url": "https://mcp.landed.jobs/mcp",
"headers": { "Authorization": "Bearer lnd_live_your_token_here" }
}
}
}
Settings → MCP で landed-jobs を有効にします。無料利用枠では headers を省略してください。
VS Code(GitHub Copilot / Agent Mode)
.vscode/mcp.json を作成します。
{
"servers": {
"landed-jobs": {
"type": "http",
"url": "https://mcp.landed.jobs/mcp",
"headers": { "Authorization": "Bearer lnd_live_your_token_here" }
}
}
}
Chat ビューを開き、Agent モードにすると、🔧 ピッカーにツールが表示されます。
Windsurf
~/.codeium/windsurf/mcp_config.json を編集します。
{
"mcpServers": {
"landed-jobs": {
"serverUrl": "https://mcp.landed.jobs/mcp",
"headers": { "Authorization": "Bearer lnd_live_your_token_here" }
}
}
}
Cline(VS Code 拡張機能)
Cline → MCP Servers → Configure を開くか、cline_mcp_settings.json を編集します。
{
"mcpServers": {
"landed-jobs": {
"type": "streamableHttp",
"url": "https://mcp.landed.jobs/mcp",
"headers": { "Authorization": "Bearer lnd_live_your_token_here" }
}
}
}
Gemini CLI
~/.gemini/settings.json(またはプロジェクト内の .gemini/settings.json)を編集します。
{
"mcpServers": {
"landed-jobs": {
"httpUrl": "https://mcp.landed.jobs/mcp",
"headers": { "Authorization": "Bearer lnd_live_your_token_here" }
}
}
}
gemini を再起動し、/mcp を実行してツールを確認します。無料枠では headers を省略してください。
その他の MCP クライアント
Streamable HTTP トランスポートを使用して、https://mcp.landed.jobs/mcp に接続します。
トークンをお持ちの場合は、Authorization: Bearer <token> を渡してください。ターミナルから簡単に動作確認するには、次のコマンドを実行します。
curl -s -X POST https://mcp.landed.jobs/mcp \
-H 'content-type: application/json' \
-H 'accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
レジストリ
Landed は Official MCP Registry に
io.github.landedjobs/landed として、また Smithery に
landedjobs/landed として登録されています。どちらかのレジストリを参照するクライアントは、手動で設定しなくても Landed を検出してインストールできます。
ツール
| ツール | 機能 | 匿名利用時のコスト |
|---|---|---|
search_jobs | ランク付けされ、適合度スコアが付いた求人を検索します。物理的な都市名・国名と、リモート勤務の対象国・地域を示す標準コードに対応しています。自由記述はサーバー側で解析されます。 | 1 単位/返された求人 |
get_job_form | jobId の応募フォームを、回答準備用に standard/screening/eeo のグループに分けて取得します。 | 無料 |
get_learning_content | 厳選された面接対策、ポートフォリオ、ロードマップのリソースを取得します。 | 無料 |
プロンプト(ガイド付きワークフロー)
MCP プロンプトは、ツールを連携して使い、結果を生の JSON ではなく、見やすい候補リストとして提示する方法をエージェントに教える、再利用可能でユーザーが呼び出せるスキルです。ほとんどのクライアントでは、スラッシュコマンドとして表示されます。
| プロンプト | 引数 | ガイドする内容 |
|---|---|---|
find_jobs | describe? | 求人を検索し、ランク付けと適合度スコアを付けた候補リストと、次のステップを提示します。 |
prepare_application | jobId | 応募フォームを取得し、standard を自動入力して、screening の回答案を作成し、eeo はユーザーに委ねます。 |
prep_for_role | role? | 職種に合わせて学習リソースを取得し、学習順を提案します。 |
サーバーには、常時有効な instructions(ツールの概要、結果の提示ルール、フリーミアムの動作)も含まれており、準拠クライアントはこれを自動的に読み込みます。
場所のパラメーター
勤務地の適格性は、キーワード照合ではなく、構造化された情報として扱われます。
locations:物理的な都市名・国名。都市名が曖昧な場合は国名も含めます。例:["Bengaluru, India"]countryCodes:リモート勤務または勤務地の適格性を示す ISO alpha-2 コード。例:["IN"]regionCodes:apac、emea、americasworkAuthorizationCountryCodes:就労許可のある国を示す ISO alpha-2 コードremote:勤務形態(remote、hybrid、onsite)
ホストされた API は、人間が読める都市名を安定した場所 ID に解決します。呼び出し側で場所 ID を作り出してはいけません。互換性のため、従来の regions フィールドも引き続き使用できます。
認証と料金
| ティア | 方法 | 利用できる内容 |
|---|---|---|
| 匿名 | ヘッダーなし | 毎日 00:00 UTC にリセットされる、無料の求人ユニット枠。IP アドレスと発行された X-Landed-Anon トークンを組み合わせて使用量を計測します(トークンはすべてのレスポンスで返されます。セッションをまたいで枠を維持するには、再送してください)。 |
| 認証済み | Authorization: Bearer lnd_live_… | 保存済みの希望条件とプロフィールに基づく、無制限の検索。Landed → Settings → API tokens でトークンを発行できます。 |
すべての結果には freemium ブロックが含まれており、エージェントは残りの枠と上限を解除する方法を確認できます。
アーキテクチャ
このリポジトリは、薄型でセルフホスト可能なプロキシです。MCP として動作し、ホストされた Landed API にリクエストを転送します。データベース、ランキングエンジン、求人データは一切保持しません。
MCP client landed-mcp (this repo) Landed API
┌─────────────┐ HTTP ┌────────────────────────┐ HTTPS ┌────────────────────────┐
│ Claude / │ ───────▶ │ • MCP protocol + tools │ ──────▶ │ • search engine │
│ Cursor / │ /mcp │ • forwards caller creds│ │ • job corpus + forms │
│ VS Code … │ ◀─────── │ • local learning list │ ◀────── │ • auth · freemium meter│
└─────────────┘ └────────────────────────┘ └────────────────────────┘
プロキシ自体は何も解決しません。呼び出し側の API トークン(または匿名 ID)を Landed API に転送し、Landed API がトークンを検証して検索を実行し、使用量を計測したうえで、結果と freemium ブロックを返します。プロキシはこれをそのまま中継します。get_learning_content のカタログは静的で、このリポジトリ内にあります(src/mcp/catalog/learning.ts)。このツールはバックエンドがなくても動作します。
セルフホスト
Landed API(またはその独自デプロイ)に接続して、独自のプロキシを実行します。
前提条件
- Node.js ≥ 20
- pnpm(
npm i -g pnpm) - Landed API のベース URLと共有内部シークレット
実行
git clone [email protected]:landedjobs/landed-mcp.git
cd landed-mcp
pnpm install
cp .env.example .env # then fill in the values below
pnpm dev # hot-reload dev server
# → [mcp] listening on :8090 — POST /mcp → https://api.landed.jobs/api/v1
本番環境では、pnpm start を実行します。
Stdio と Docker
サーバーをプロセスとして起動するクライアント向けに、pnpm start:stdio は HTTP ではなく stdio 経由で MCP を使用します。独自の API トークンを使用するには LANDED_API_TOKEN を設定してください。設定しない場合は、匿名の無料利用枠が適用されます。
docker build -t landed-mcp .
docker run -i --rm landed-mcp
このイメージは、ホストされた API に対して stdio サーバーを実行します。
環境変数
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
LANDED_API_BASE | ✓ | http://localhost:8000/api/v1 | ホストされた Landed API のベース URL。/api/v1 プレフィックスを含めて指定します。 |
LANDED_INTERNAL_SECRET | ✓ | — | このプロキシを API に対して認証する共有シークレット(サーバーの INTERNAL_SERVICE_SECRET と一致する必要があります)。 |
PORT | 8090 | リッスンする HTTP ポート。 | |
CORS_ORIGINS | * | 許可するオリジンのカンマ区切りリスト、または *。 | |
RATE_LIMIT_PER_MIN | 60 | IP ごとの一次リクエスト上限。実際の経済的な上限は、API のフリーミアム利用量です。 |
エンドポイント
| メソッド | パス | 用途 |
|---|---|---|
POST | /mcp | MCP Streamable HTTP エンドポイント(ステートレス)。 |
GET | /healthz | 生存確認プローブ({ "ok": true })。 |
開発
pnpm dev # watch + reload
pnpm check-types # tsc --noEmit
pnpm test # deterministic input-contract tests
pnpm start # run once
このリポジトリには、server.json に公式 MCP Registry のメタデータが含まれています。これは公開 Streamable HTTP エンドポイントを記述するものであり、サーバーが外部レジストリに登録申請された、または承認されたことを意味するものではありません。
プロジェクト構成
src/
├── index.ts # bootstrap: start the HTTP server
├── config/ # env → typed config
├── http/ # express shell + per-IP rate limiter
├── services/api-client.ts # typed fetch client → Landed API
├── types.ts # the API response contract (owned here)
└── mcp/
├── server.ts # instructions + tool/prompt registration
├── prompts.ts # find_jobs / prepare_application / prep_for_role
├── catalog/learning.ts # static, public learning resources
└── tools/ # search_jobs · get_job_form · get_learning_content
スタック:TypeScript · Express · @modelcontextprotocol/sdk · Zod。データベースはなく、ビルド手順もありません(tsx で実行します)。
コントリビューション
Issue や PR を歓迎します。特に、バグ修正、新しいクライアント設定ガイド、学習カタログへの追加を歓迎します。
PR を作成する前に、pnpm check-types と pnpm test を実行してください。非公開の脆弱性レポートについては、
SECURITY.md に従ってください。
ライセンス
MIT © Landed
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
