instaffo-mcp-server
instaffo-mcp-server
一个 MCP 服务器,让 AI 助手能够访问您自己的 Instaffo 候选人账户,并使用您自己的浏览器会话进行身份验证。个人求职工具。完全本地运行。
Instaffo 是一个双向招聘市场(候选人与公司匹配)。此服务器暴露候选人端:从 MCP 客户端读取您的个人资料、职位建议、对话,并执行可逆的写入操作。
工作原理
Instaffo 没有公开的候选人 API,因此服务器使用真实的已登录会话进行身份验证。其候选人 Web 应用通过 app.instaffo.com/candidate/api/v1/* 下的干净 JSON API 进行通信,仅通过会话 cookie 进行身份验证(无 bearer 令牌)。因此,服务器是一个轻量级的、基于 cookie 认证的 httpx 客户端,而非爬虫。浏览器(通过 patchright)仅用于登录时创建会话的一次性使用。
MCP client ── stdio ──> instaffo-mcp-server ──cookie──> app.instaffo.com JSON API
│
storage-state.json (cookies, written 0600, git-ignored)
▲
instaffo-mcp --login (one-time browser sign-in)Related MCP server: Chrome MCP Server
设置
uv sync
uv run patchright install chromium # one-time, for login only
uv run instaffo-mcp --login # opens a browser; sign in once
uv run instaffo-mcp --auth-status # confirm the session is stored在您的 MCP 客户端(stdio)中注册它:
{
"command": "uv",
"args": ["run", "--directory", "/path/to/instaffo-mcp-server", "instaffo-mcp"]
}工具
读取(无副作用):
工具 | 返回内容 |
| 您的身份信息(姓名、邮箱、职位) |
| 您的个人资料:资历、地点、技能、简历摘要 |
| 您当前的匹配结果,附计数 |
| 一个职位的完整信息:描述、要求、薪资、筛选问题 |
| 公司请求(入站兴趣)和您的申请 |
| 是否存在会话( |
| 在 Instaffo 的封闭词汇表中查找技能 UUID |
写入(每个写入工具都接受 confirm 参数;没有它不会发起网络请求,您将收到将要发送的确切载荷):
工具 | 效果 | 端点 |
| 收藏/取消收藏一个职位建议 |
|
| 替换“关于我”文本 |
|
| 替换技能集 |
|
| 替换语言列表 |
|
| 替换行业经验 |
|
| 替换社交链接 |
|
| 设置工作经验级别 |
|
| 年薪资期望 |
|
| 目标职位(驱动匹配) |
|
| 活跃/被动状态 |
|
| 添加工作或教育经历 |
|
| 原地编辑一条经历 |
|
| 删除一条经历(不可逆) |
|
| 每项技能的经验年数 |
|
所有端点均通过观察得到,而非猜测。构建这些端点所依据的契约记录在 docs/API.md 中,带有日期,源自录制的捕获数据。
为什么每次写入后都要重新读取
此 API 对每次写入都返回裸 {"success": true},且仅进行部分验证——即使 PATCH 请求缺少必填字段或包含错误类型的值,也会返回 {"success": true}。因此,响应无法告诉您实际存储了什么。每个写入工具都会重新读取 GET /profile 并报告 verified 和 value_now;请相信这些,而不是响应。
在调用任何工具之前,有两个字段陷阱值得了解:
instaffo_set_skills会重新在服务端推导topSkills。 没有可发送的topSkills字段,也没有 UI 控件。即使技能集未更改,保存操作仍会移动前三项。技能上限为 23 个(
skills20 个 +topSkills3 个)。超过此限制会返回"maximum is 20 characters"——消息说的是字符,但单位是项。
有监督的,故意为之:申请和消息
有两个操作被故意未实现为即发即弃的工具:申请职位和给招聘人员发送消息。
申请并非单个请求。它是一个多步骤向导,在提交之前会先对您的真实个人资料进行持久的自我展示写入:
技能自我评估(每项所需技能的年数滑块,例如 0-5),通过
experience_durations/bulk_save自动保存到您的个人资料,您的薪资期望(从您的个人资料预填),
“您使用的 AI 工具”和“AI 技能”多选,
最终提交,创建申请并打开与招聘人员的聊天。
因为这些是真实、面向外部的、关于您如何展示自己的选择,并且最终提交的端点只有在整个流程完成后才会出现,所以申请和消息工具留给了有监督的会话,由账户所有者批准输入。它们不是基于猜测的端点构建的。观察到的子步骤和向导形态已记录在此,以便该会话能够快速进行。
命令
instaffo-mcp # run the MCP server (stdio)
instaffo-mcp --login # headed manual login, persist the session
instaffo-mcp --capture # record app API traffic to a JSONL (diagnostics)
instaffo-mcp --auth-status [--deep]安全与隐私
会话材料(
profile/、storage-state.json、captures/、.env)位于~/.instaffo-mcp下,权限为0600,并被 git 忽略。永远不会被提交。写入工具有确认限制,且仅影响可逆的表面。
这是仅供您自己账户使用的个人本地工具。它不存储任何其他人的数据,并且仅使用您自己的会话与 Instaffo 通信。
先前的作品
会话捕获和浏览器模式在精神上改编自 stickerdaniel/linkedin-mcp-server(Apache-2.0),该作品以相同方式对个人 LinkedIn 会话进行身份验证。
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
- AlicenseAqualityAmaintenanceEnables AI assistants to interact with LinkedIn by scraping profiles, companies, job postings, and getting personalized job recommendations using authenticated browser automation.173,203Apache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to control and automate your Chrome browser directly, leveraging existing login states and configurations for tasks like content analysis, semantic search across tabs, screenshots, network monitoring, and interactive operations.10MIT
- AlicenseNot gradedqualityCmaintenanceLets AI assistants control your real Chrome browser to perform web tasks like reading pages, taking screenshots, clicking, and typing, using your existing logged-in sessions.131MIT

blackmount-mcpofficial
AlicenseNot gradedqualityAmaintenanceEnables AI assistants to access and search local browser history, bookmarks, open tabs, and downloads for personalized context.MIT
Related MCP Connectors
Give AI agents the LinkedIn tools to find, qualify, engage, and follow up with prospects.
Run LinkedIn outreach from your AI chat: find leads, launch campaigns, send, and reply.
Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.
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/esinecan/instaffo-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server