Hire-me MCP
hire-me-mcp
hire-me-mcp는 Marcos Alvarez의 포트폴리오를 실시간 쿼리 가능한 API로 재구축한 것입니다. 동일한 실제 경력 데이터를 읽는 공개 익명
Model Context Protocol (MCP) 서버와 Next.js 사이트로 구성되어 있어, 어떤 AI 어시스턴트든 이 이력서를 도구로 제공받아 추측 대신 출처가 명시된 근거 있는 답변을 얻을 수 있습니다 — API 키도, 가입도 필요 없고, 연결할 URL 하나만 있으면 됩니다.

라이브 사이트: https://hire-me-mcp-web.vercel.app
다운로드 가능한 이력서 (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의 단일 프로필 레코드(이름, 헤드라인, 위치, 가용성, 짧은 소개)를 인용과 함께 하나의 객체로 반환합니다. '이 사람이 누구인지' 또는 '현재 가용성/위치가 무엇인지'를 한눈에 확인할 때 사용하세요. 역할별 업무 이력(이 경우 get-experience 사용), 특정 프로젝트 세부 정보(이 경우 search-projects 사용), 특정 스킬이나 기술이 명시되어 있는지 확인(이 경우 get-skill-evidence 사용)에는 사용하지 마세요. 입력값이 필요 없습니다. 정상 작동 시 '결과 없음'은 발생하지 않습니다 — 이 서버의 데이터셋에는 항상 정확히 하나의 프로필만 있습니다. | "Marcos Alvarez는 누구이며, 현재 새로운 역할에 열려 있나요?" |
| 선택적 구조화 필터(회사, 기술 태그, YYYY-MM 날짜 범위, 현재/과거 상태)와 일치하는 Marcos Alvarez의 업무 이력의 모든 항목을 최신순 목록으로 반환하며, 각 항목에 인용이 포함됩니다. 'X 회사에서 무엇을 했는지', 'Y 연도에 무엇을 작업했는지', '지금 무엇을 하고 있는지'에 답할 때 사용하세요. 필터 없이 호출하면 전체 이력을 반환합니다. 단일 프로필 요약(이 경우 get-profile 사용), 키워드로 프로젝트 설명 검색(이 경우 search-projects 사용), 특정 스킬이 명시되어 있는지 확인(이 경우 get-skill-evidence 사용)에는 사용하지 마세요. 어떤 역할과도 일치하지 않는 필터는 오류가 아니라 빈 목록과 함께 성공 결과를 반환합니다. | "Marcos는 2022년 이후 무엇을 작업했나요? 최근 역할을 설명해 주세요." |
| 키워드 및/또는 기술 태그로 Marcos Alvarez의 프로젝트 포트폴리오를 검색하고 관련성 점수, 일치 필드 설명, 인용이 포함된 순위 결과를 반환합니다. 일치는 프로젝트 이름, 요약, 본문, 기술 태그에 대한 결정적 키워드/태그 검색입니다 — 현재 쿼리에 대한 의미론적 또는 임베딩 기반 이해는 없습니다. 특정 프로젝트를 찾거나 설명하라는 요청(예: 'React를 사용한 프로젝트를 보여 줘' 또는 'Kubernetes로 무엇을 구축했는지')에 사용하세요. 연대순 업무 이력(이 경우 get-experience 사용)이나 스킬이 전혀 명시되어 있는지, 증거 또는 공백 확인(이 경우 get-skill-evidence 사용)에는 사용하지 마세요. 어떤 프로젝트와도 일치하지 않는 쿼리는 오류가 아니라 빈 목록과 함께 성공 결과를 반환합니다. 빈 쿼리나 공백만 있는 쿼리도 동일하게 동작합니다. | "Marcos가 TypeScript 또는 Kubernetes를 사용한 프로젝트를 보여 주세요." |
| 단일 명명된 스킬 또는 기술을 조회하고 세 가지 정직한 결과 중 하나를 보고합니다: 'claimed'(지원 증거가 있는 스킬), 'not-claimed'(자체 설명과 관련 스킬이 있는 명시적이고 인정된 공백), 또는 'unknown'(어느 쪽과도 일치하지 않는 용어). 특정 기술에 대해 'X를 아는지' 또는 'Y로 작업한 적이 있는지' 질문받을 때 사용하세요. 전체 스킬 목록을 탐색하거나(이 서버에는 그런 도구가 없음) 키워드로 프로젝트 설명을 검색하는 데는 사용하지 마세요(대신 search-projects 사용). 질문이 단일 스킬이 아닌 역할이나 회사에 관한 것일 때 get-experience를 대체하지도 않습니다. 'not-claimed' 또는 'unknown' 결과는 오류가 아니라 정상적이고 성공적인 답변입니다 — 재시도하거나 그 주변을 지어내지 말고 정직하게 전달하세요. | "Marcos가 이벤트 기반 아키텍처로 작업한 적이 있나요? 증거를 보여 주세요." |
| Marcos Alvarez의 경력 콘텐츠(경력, 프로젝트, 스킬, 글) 전체 텍스트에 대해 퍼지(fuzzy) 의미론적 검색을 실행하고 관련성 점수와 인용이 포함된 순위 발췌문을 반환하거나, 유사도 임계값을 넘는 내용이 없을 때 명시적 '관련 콘텐츠 없음' 결과를 반환합니다. 구조화된 조회로 직접 답할 수 없는 개방형, 교차 주제, 또는 개념적 질문에 사용하세요 — 예: '이벤트 기반 아키텍처로 작업한 적이 있는지', '팀 리딩 경험이 어떤지', '비용 최적화에 관한 것'. 질문이 결정적 도구가 이미 정확히 답하는 특정 구조화 조회에 매핑될 때는 사용하지 마세요: 그가 누구인지는 get-profile, 역할/회사/날짜 범위 업무 이력은 get-experience, 키워드/태그 프로젝트 검색은 search-projects, 특정 명명된 스킬 또는 기술 확인은 get-skill-evidence — 이들을 먼저 선호하고, 맞지 않을 때만 이 도구로 폴백하세요. 이 도구는 호출당 비용이 더 높고(쿼리를 임베딩함) 여기의 다른 모든 도구와 동일한 서버 전체 속도 제한이 적용됩니다 — 같은 질문에 반복 호출하지 마세요. | "엔지니어링 팀 리딩과 멘토링에 대한 Marcos의 경험은 어떤가요?" |
(여섯 번째 도구인 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은 workspace:* 프로토콜을 통해 위의 packages/*에 의존합니다 — 상대 경로 ../../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 참조, 실제 값은 절대 커밋되지 않음):
변수 | 용도 |
| 사이트 자체 절대 출처(origin)에 대한 선택적 재정의. 필수 아님 — 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— 이 코드베이스에서 작업하는 모든 코딩 에이전트를 위한 규칙: 테스트 우선 개발, 표준 명령, 그리고 둘 다를 강제하는 세 계층.docs/mcp.md— 전체 MCP 연결 가이드(모든 클라이언트, 속도 제한, 문제 해결), JSON-LDPerson, 경로별 OpenGraph/Twitter 카드,/.well-known/mcp.json에 대한 "Discovery: machine-readable metadata" 섹션 포함 — 그리고 이 중 어떤 것이 MCP 사양 정의(이 무인증 서버의 경우 없음)인지 vs 프로젝트 규칙인지./llms.txt— 이 저장소 대신 배포된 URL을 받은 방문자를 위한 사이트 자체 에이전트 진입점.보안 체크리스트 — 일회성 보안 점검(의존성 감사, 비밀 키 위생, MCP 입력 퍼징, 속도 제한 재검증)이 #57에 반영 예정입니다; 이 PR이 병합되면 이 섹션은
docs/security-checklist.md로 바로 연결됩니다.이슈 트래커 — 로드맵, 진행 중인 작업, 오래된 스니펫이나 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