Hire-me MCP
hire-me-mcp
hire-me-mcp は Marcos Alvarez のポートフォリオを、ライブで照会可能な API として再構築したものです。公開・匿名の
Model Context Protocol(MCP)サーバーと Next.js サイトが、どちらも同じ実在のキャリアデータを読み取るため、あらゆる AI アシスタントにこの CV をツールとして渡せば、推測ではなく引用付きの根拠ある回答が得られます。API キー不要、サインアップ不要、接続は URL 1 つだけです。

ダウンロード可能な CV(PDF):
packages/career-dataから直接生成 — 同じソース、同じ ドメインレイヤーを使用し、別途管理するコピーはありません。サイトヘッダー(「Download CV」)と/llms.txtの Site セクションからリンクされています。安定したダウンロードパスは上記ライブサイトの/cv/<slugified-name>-cv.pdfです。コンテンツが変更されたらpnpm generate:cvでいつでも再生成し、 結果をコミットしてください(コミットされた PDF はすべてのデプロイに同梱されます — Vercel のビルドは Next.js アプリのビルド/デプロイのみを行うため、PDF 生成は意図的に組み込まれていません)。同じコンテンツの 印刷対応 HTML ビューは/cv/printで提供されます。エージェント向けドキュメント:
docs/mcp.md(全クライアント、レート制限、トラブルシューティング)と サイト自身の/llms.txtエントリポイント。セキュリティチェックリスト: 今回のローンチと同時に #57 で公開予定 —
docs/security-checklist.mdが マージされたらここにリンクします。ライブ MCP エンドポイント(Streamable HTTP、認証なし):
https://hire-me-mcp-web.vercel.app/api/mcp30秒で試す
API キー不要、OAuth 不要、アカウント不要。MCP の Streamable HTTP トランスポートに対応したクライアントなら、 上の URL を「リモートサーバー」/「カスタムコネクタ」フィールドに貼り付けるだけで接続できます。
Claude Code(CLI):
claude mcp add --transport http hire-me-mcp https://hire-me-mcp-web.vercel.app/api/mcpCursor / VS Code(.cursor/mcp.json または .vscode/mcp.json):
{
"mcpServers": {
"hire-me-mcp": {
"url": "https://hire-me-mcp-web.vercel.app/api/mcp"
}
}
}Claude ウェブ/デスクトップのカスタムコネクターフロー、生の curl ヘルスチェック、レート制限、
トラブルシューティングはすべて docs/mcp.md にあります — これが正規の接続ガイドです。
上記のスニペットはすべて、そのガイドが参照するのと同じ接続メタデータモジュール(packages/connect-metadata、
pnpm generate:connect 経由)から生成されるため、サーバーが実際に提供する内容と同期がずれることはありません。
Related MCP server: Developer Portfolio MCP Server
質問できること
すべてのツール応答には、回答の根拠となった特定のプロフィールレコード、役職、プロジェクトへの引用が含まれます — 推測ではなく、根拠ある回答です。
「Marcos Alvarez とは誰ですか?現在新しい役割にオープンですか?」
「Marcos は 2022 年以降何に取り組んできましたか?最近の役割を順に説明してください。」
「Marcos が TypeScript または Kubernetes を使ったプロジェクトを見せてください。」
「Marcos はイベント駆動アーキテクチャに取り組んだ経験がありますか?証拠を見せてください。」
「エンジニアリングチームのリードとメンタリングに関する Marcos の経験は?」
Tool | What it answers | Example question |
| Marcos Alvarez の単一のプロフィールレコード(名前、見出し、所在地、稼働状況、短い経歴)を、引用情報付きの1つのオブジェクトとして返します。'この人物は誰か' や '現在の稼働状況・所在地は何か' を一目で答えるために使用します。役職ごとの職務履歴(get-experience を使用)、特定のプロジェクトの詳細(search-projects を使用)、特定のスキルやテクノロジーが主張されているかどうかの確認(get-skill-evidence を使用)には使用しないでください。入力は不要です。通常の運用では '結果なし' という結果はありません — このサーバーのデータセットには常に正確に1つのプロフィールが存在します。 | "Marcos Alvarez とは誰で、現在新しい役割にオープンですか?" |
| Marcos Alvarez の職務履歴から、オプションの構造化フィルター(企業、テクノロジータグ、YYYY-MM の日付範囲、現在/過去のステータス)に一致するすべてのエントリーを、新しい順に並べたリストとして返し、各エントリーに引用情報を添えます。'会社Xで何をしたか'、'年Yに何に取り組んだか'、'現在何をしているか' に答えるために使用します。フィルターフィールドを指定せずに呼び出すと、全履歴を返します。単一のプロフィール概要(get-profile を使用)、プロジェクトの説明のキーワード検索(search-projects を使用)、名前付きスキルが主張されているかの確認(get-skill-evidence を使用)には使用しないでください。どの役割にも一致しないフィルターは、エラーではなく空のリストを伴う成功結果を返します。 | "Marcos は2022年以降、何に取り組んできましたか?最近の役割を説明してください。" |
| Marcos Alvarez のプロジェクトポートフォリオをキーワードおよび/またはテクノロジータグで検索し、関連性スコア、一致フィールドの説明、引用情報をそれぞれに添えたランク付けされた一致結果を返します。マッチングはプロジェクト名、要約、本文、テクノロジータグに対する決定的なキーワード/タグ検索であり、現在のところクエリの意味論的または埋め込みベースの理解はありません。特定のプロジェクトを探したり説明したりするよう求められた場合に使用します(例: 'React を使用したプロジェクトを見せて'、'Kubernetes で何を構築したか')。時系列の職務履歴(get-experience を使用)や、スキルが主張されているかどうか(証拠またはギャップ)の確認(get-skill-evidence を使用)には使用しないでください。どのプロジェクトにも一致しないクエリは、エラーではなく空のリストを伴う成功結果を返します。空または空白のみのクエリも同様に動作します。 | "Marcos が TypeScript または Kubernetes を使用したプロジェクトを見せてください。" |
| 単一の名前付きスキルまたはテクノロジーを検索し、3つの正直な結果のいずれかを報告します: 'claimed'(裏付けとなる証拠付きのスキル)、'not-claimed'(独自の記述と関連スキルを伴う、明示的で認識されたギャップ)、または 'unknown'(用語がどちらにも一致しない)。特定のテクノロジーについて 'X を知っていますか' や 'Y で作業したことがありますか' と尋ねられた場合に使用します。完全なスキルリストの閲覧(このサーバーにはそのようなツールはありません)や、プロジェクトの説明のキーワード検索(代わりに search-projects を使用)には使用しないでください。また、質問が単一のスキルではなく役割や企業に関するものである場合、get-experience の代わりにはなりません。'not-claimed' または 'unknown' の結果は、エラーではなく正常で成功した回答です — 再試行したり、その周辺で捏造したりせず、正直にそのまま伝えてください。 | "Marcos はイベント駆動アーキテクチャで作業したことがありますか?証拠を見せてください。" |
| Marcos Alvarez のキャリアコンテンツ(経験、プロジェクト、スキル、執筆)の全文に対してファジーで意味論的な検索を実行し、関連性スコアと引用情報をそれぞれに添えたランク付けされた抜粋を返します。類似度しきい値を超えるものが何もない場合は、明示的な '関連コンテンツが見つかりません' という結果を返します。構造化ルックアップでは直接答えられない、自由形式、横断的、または概念的な質問に使用します — 例: 'イベント駆動アーキテクチャで作業したことがあるか'、'チームを率いた経験は何か'、'コスト最適化について何かあるか'。質問が、決定的なツールがすでに正確に答えられる特定の構造化ルックアップに対応する場合は使用しないでください: 人物像は get-profile、役割/企業/日付範囲の職務履歴は get-experience、キーワード/タグのプロジェクト検索は search-projects、特定の名前付きスキルまたはテクノロジーの確認は get-skill-evidence — これらを優先し、当てはまらない場合にのみこのツールにフォールバックしてください。このツールは呼び出しごとにコストが高く(クエリを埋め込みます)、同じ呼び出しごとにコストが高く(クエリを埋め込みます)、ここにある他のすべてのツールと同じサーバー全体のレート制限の対象となります — 同じ質問に対して繰り返し呼び出さないでください。 | "Marcos のエンジニアリングチームのリードとメンタリングの経験はどのようなものですか?" |
(6つ目のツールである ping は、純粋に接続性の診断のために存在します。)
アーキテクチャマップ
pnpm + Turborepo のモノレポです。Node >= 22(CI と Vercel は 24 で実行)、pnpm 10(packageManager で固定)。
apps/
web/ Next.js 15 App Router app — the site, the chat widget, and the public MCP endpoint (app/api/mcp/route.ts)
packages/
core/ Framework-free domain layer (search, citations) — consumed by apps/web
career-data/ Zod-typed career content (profile, experience, projects, skills) — the single source of truth
agent/ Mastra-based interview chat agent (grounded RAG over packages/career-data) + eval suite
connect-metadata/ Typed MCP connection metadata, per-client snippet renderers, and the generated-region injector (#17)
tooling/
tdd-guard/ Source<->test path mapping and TDD allow/block decision logic, used by .claude/hooksapps/web は上記の packages/* に workspace:* プロトコル経由で依存します — 相対的な ../../packages/... インポートや tsconfig のパスハックは決して使用しません。packages/core と packages/career-data は、公開 MCP エンドポイントを直接支えているため、フレームワーク非依存のままです。すべてのパッケージは共有の tsconfig.base.json(strict: true)を拡張します。
ローカル開発
前提条件: Node >= 22、pnpm 10(corepack enable が固定バージョンを自動的に取得します)。
pnpm install # install all workspace dependencies + git hooks (lefthook)
pnpm dev # turbo run dev — runs all dev servers (site at http://localhost:3000)
pnpm turbo lint typecheck test build # the canonical pipeline — same one CI and the Stop hook run必要な環境変数(名前のみ — 完全な根拠と各変数が参照される場所については .env.example を参照してください。実際の値は決してコミットされません):
変数 | 目的 |
| サイト自身の絶対オリジンのオプション上書き。必須ではありません — Vercel が自動的に導出します。 |
|
|
| MCP エンドポイントのレート制限ウィンドウを上書きします。 |
| チャットエージェントのモデルプロバイダー/ID を選択して固定します。 |
|
|
|
|
| チャットのガードレール調整 — |
|
|
| DB 統合テストスイート専用の使い捨て Neon ブランチを作成/削除します — メインデータベースに対しては決して使用されません。 |
クリーンなチェックアウトで pnpm turbo lint typecheck test build をパスさせるために必須のものはありません。
pnpm lint # turbo run lint — Biome, the only linter/formatter in this repo
pnpm typecheck # turbo run typecheck — strict TypeScript everywhere
pnpm test # turbo run test — Vitest, co-located *.test.ts(x) next to source
pnpm build # turbo run build — builds all packages in dependency order
pnpm test:e2e # Playwright smoke test against a production build
pnpm test:mcp # protocol-level MCP integration suite (real SDK client, real server process)
pnpm eval:agent # chat agent groundedness/gap-honesty/relevance evals
pnpm eval:retrieval # searchCareer recall@k/precision@k/MRR golden-dataset eval
pnpm generate:connect:check # verify the generated regions above are up to date with the real tool registry完全なテストピラミッドの仕組み(プレビュー e2e、Lighthouse、pre-commit フック、CI ジョブ、ブランチ保護)、および Vercel デプロイをローカルで再現する方法は、docs/development.md と docs/deployment.md にあります — このセクションではコマンドのみを列挙し、「理由」は説明しません。
詳細
AGENTS.md— このコードベースで作業するコーディングエージェント向けのルール: テストファースト開発、標準コマンド、およびその両方を強制する3つのレイヤー。docs/mcp.md— 完全な MCP 接続ガイド(すべてのクライアント、レート制限、トラブルシューティング)。JSON-LDPerson、ルートごとの OpenGraph/Twitter カード、/.well-known/mcp.jsonに関する 「Discovery: machine-readable metadata」 セクション、およびそれらのうちどれが MCP 仕様で定義されているか(この認証なしサーバーではなし)とプロジェクト規約かを含みます。/llms.txt— このリポジトリではなくデプロイされた URL を渡された訪問者向けの、サイト自身のエージェントエントリポイント。セキュリティチェックリスト — 一度きりのセキュリティパス(依存関係監査、シークレット衛生、MCP 入力ファジング、レート制限の再検証)が #57 に追加される予定です。この PR がマージされると、このセクションは
docs/security-checklist.mdに直接リンクします。Issue トラッカー — ロードマップ、進行中の作業、および古いスニペットや MCP サーバーのバグを報告する場所。
This server cannot be installed
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 gradedqualityCmaintenanceAn MCP server that provides a structured API for AI agents to query a person's resume, including profile, projects, writing, and gated access to experience and skills.
- AlicenseAqualityCmaintenanceAn MCP server that lets recruiters and AI assistants explore your profile, skills, and projects through natural language.6MIT
- AlicenseAqualityDmaintenanceTurn any data source into an MCP server in 5 minutes. Build knowledge bases that AI assistants like Claude and Cursor can query directly.22823MIT
- FlicenseNot gradedqualityCmaintenanceA local MCP server that gives AI agents structured access to a personal Obsidian knowledge vault, with semantic search, organization through Maps of Content, and git-backed history.
Related MCP Connectors
An MCP server that gives your AI access to the source code and docs of all public github repos
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
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/garusis/hire-me-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server