带招聘助手的MCP服务器文件上下文
集成Claude AI的综合模型上下文协议(MCP)服务器 招聘助理。此应用程序提供基于AI的文件操作 专注于候选人评估和技术评估,具有 安全的API端点和专业的配置文件管理。
特性
🤖 AI招聘助理
- Claude AI集成:由Anthropic的Claude为智能提供支持
候选人评价
- 专业概况分析:使用Yonatan Ayalon的专业上下文
15年以上高级工程经验
- 技术评估:对前端候选人进行专家评估,
后端和全栈技术
- 安全的API访问:用于第三方集成的CORS保护端点
🔧 文件系统工具
read_file-从本地文件系统读取任何文件
- 输入: path (string)-要读取的文件路径 - 返回:支持语法高亮显示的文件内容
list_directory-列出包含元数据的目录内容
- 输入: path (string)-列表的目录路径 - 返回:带有大小和类型指示符的文件和文件夹
search_files-高级文件模式匹配
- 输入: rootPath (字符串), pattern (string)-搜索位置和 模式 - 返回:跨目录树匹配文件路径
analyze_folder-综合项目分析
- 输入: path (string)-要分析的文件夹 - 回报:结构分析、文件类型和项目见解
🌐 API终点
/api/chat-带文件上下文的Claude AI聊天界面/api/tools-直接文件操作API/api/evaluate-candidate-公开招聘评估终点- CORS安全:仅限于
localhost:3000和
https://yonatan-ayalon.com
快速开始
1.安装依赖项
npm install对于公司防火墙: 如果你在公司代理/防火墙后面(比如 Zscaler),配置npm使用镜像注册表:
# Configure npm to use mirror registry (for corporate firewalls)
npm config set registry https://registry.npmmirror.com2.配置Claude API密钥
将Anthropic/Claude API键设置为环境变量。创建一个 .env.local 项目根目录中的文件:
echo "ANTHROPIC_API_KEY=sk-ant-api03-your-actual-api-key-here" > .env.local备注:本项目仅与 Anthropic公司的Claude API你会的 需要来自的API密钥 Anthropic 对于完整 功能。
或者,直接设置环境变量:
export ANTHROPIC_API_KEY="your-claude-api-key-here"⚠️ 安全说明:The .env.local git会自动忽略该文件 确保API密钥的安全。应用程序将以有限的功能运行 没有API密钥。
3.建设项目
npm run build4.启动应用程序
🚀 生产服务器(推荐)
npm run start:http接入点:
- 网络界面: http://localhost:3000
- API终点: http://localhost:3000/api/\*
- MCP服务器: http://localhost:3000/mcp
🛠️ 开发模式
npm run start:http:prod # Production build
npm run start # HTTP server mode
npm run dev # Development with watch mode5.运行测试
npm test # Run all tests
npm run test:coverage # Run tests with coverage report
npm run test:watch # Run tests in watch mode应用接口
🎨 交互式Web用户界面 (主界面)
访问功能齐全的web界面 http://localhost:3000
主要特点:
- 🤖 AI招聘助理:Claude为候选人评估提供支持
专业背景
- 🗂️ 文件操作仪表板:通过拖放进行可视化文件管理
支持
- 💬 自然语言查询:询问有关代码、文件和项目的问题
结构
- 📊 实时分析:实时项目分析和代码洞察
- 🔒 安全的API访问:第三方的CORS保护端点
集成
- 📱 响应式设计:针对台式机、平板电脑和移动设备进行了优化
🔗 API终点
聊天和人工智能功能
POST /api/chat # Claude AI conversation with file context
GET /api/evaluate-candidate # Public recruitment evaluation endpoint文件操作
POST /api/tools # Direct access to all file system tools
# Supports: read_file, list_directory, search_files, analyze_folderCORS安全
- 允许的起源:
http://localhost:3000,https://yonatan-ayalon.com - 第三方集成:使用
/api/evaluate-candidate外用
招聘工具
💬 命令行接口
交互式终端聊天
npm run chat # Claude AI chat in terminal
npm run chat:mock # Mock mode (no API key required)
npm run local-chat # Local Ollama integrationMCP协议支持
npm run start:stdio # Standard MCP server mode第三方集成
🔗 公共API使用
对于外部招聘工具和应用程序:
// Candidate evaluation endpoint
const response = await fetch('http://localhost:3000/api/evaluate-candidate', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Origin': 'https://yonatan-ayalon.com' // Must be from allowed origins
},
body: JSON.stringify({
candidateData: {
name: "Candidate Name",
resume: "resume content...",
portfolio: "portfolio links..."
},
evaluationCriteria: ["technical skills", "experience", "culture fit"]
})
});
const evaluation = await response.json();🛡️ 安全和CORS
- 限制进入:只有
localhost:3000和https://yonatan-ayalon.com - API安全:所有受CORS验证保护的端点
- 文件访问:仅限于中的markdown文件
/api-resources/目录 - 速率限制:内置防滥用保护
测试与开发
🧪 综合测试套件
npm test # Run all tests
npm run test:coverage # Coverage report (>90% coverage)
npm run test:watch # Development watch mode测试类别:
- 单元测试:文件操作和API终结点
- 集成测试:Claude AI集成和MCP功能
- 安全测试:CORS、路径验证、访问控制
- 性能测试:大文件处理和并发操作
- 模拟测试:没有API密钥的脱机功能
MCP客户端集成
Claude桌面配置
添加到您的Claude Desktop配置文件 (~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):
{
"mcpServers": {
"file-context-recruitment": {
"command": "node",
"args": ["/absolute/path/to/your/project/build/index.js"]
}
}
}VS代码MCP扩展
配置VS Code MCP扩展 .vscode/mcp.json:
{
"servers": {
"file-context-server": {
"type": "stdio",
"command": "node",
"args": ["/Users/yonatan.ayalon/projects/new_app_1/my-mcp/build/index.js"]
}
}
}替代方案:HTTP MCP模式
对于基于网络的MCP连接:
npm run start:http
# Connect MCP clients to: http://localhost:3000/mcp用例和示例
🤖 AI招聘助理
候选人评估:
- “根据候选人的作品集评估其React经验”
- “评估高级前端职位的技术技能”
- “比较全栈开发人员角色的多个候选人”
技术评估:
- “查看此代码示例并提供反馈”
- “这位候选人的技能对我们团队来说缺少什么?”
- “评价这位开发人员使用现代JavaScript框架的经验”
🗂️ 文件操作
项目分析:
- “分析此代码库并确定技术堆栈”
- “这个应用程序的总体架构是什么?”
- “查找此项目中的所有配置文件”
代码审查:
- “阅读主要组件并解释应用程序结构”
- “搜索所有测试文件并评估覆盖率”
- “分析此项目中的API终结点”
🔍 自然语言查询
简单操作:
- “src目录中有哪些文件?”
- “阅读package.json并解释依赖关系”
- “查找所有具有接口的TypeScript文件”
复杂分析:
- “比较前端和后端代码质量”
- “识别代码库中的潜在安全问题”
- “建议改进以优化性能”
安全特性
🛡️ API安全
- CORS保护:仅限于
localhost:3000和
https://yonatan-ayalon.com
- 路径验证:解析所有文件路径以防止目录遍历
- 文件访问控制:仅限于中的markdown文件
/api-resources/ - 环境隔离:开发/生产模式安全控制
🔒 文件系统安全
- 权限检查:在文件访问之前验证读取权限
- 递归极限:目录分析深度有限,以防止循环
- 隐藏文件筛选:自动排除系统/隐藏文件
- 山宁泰小径:所有输入都经过消毒和验证
发展
📁 项目结构
├── api/
│ └── index.js # Express API server with Claude integration
├── src/
│ ├── index.ts # Main MCP server implementation
│ ├── http-server.ts # HTTP server with UI
│ ├── chat-interface.ts # Terminal chat interface
│ ├── local-chat.ts # Local Ollama integration
│ └── file-operations.ts # Core file system tools
├── api-resources/
│ ├── yonatan-profile.md # Professional recruitment profile
│ └── projects-achievements.md # Technical achievements
├── build/ # Compiled JavaScript output
├── ui/ # Web interface assets
├── tests/ # Comprehensive test suite
└── coverage/ # Test coverage reports🔧 可用脚本
生产:
npm run build-构建服务器和UI组件npm run start:http-启动生产HTTP服务器npm run start:http:prod-优化生产模式
发展:
npm run dev-TypeScript监视模式npm run chat-终端聊天界面npm run local-chat-本地AI集成
测试:
npm test-运行完整的测试套件npm run test:coverage-生成覆盖率报告npm run test:watch-交互式测试开发
🔍 测试与调试
使用 MCP检查员 为了 协议调试:
npx @modelcontextprotocol/inspector node build/index.js技术规格
🏗️ 建筑
- 核心协议:模型上下文协议(MCP)v1.24.2
- 传输层:STDIO,HTTP REST API
- 后端:Node.js+带TypeScript的Express
- 前端:带有现代CSS的普通JavaScript
- 人工智能集成:API
- 数据库:基于文件(markdown配置文件)
🔧 技术栈
- 运行时:Node.js 16+
- 语言:TypeScript 5+
- 框架:带CORS的Express.js
- 测试:支持TypeScript的Jest
- 构建:本机TypeScript编译器
- 安全:路径验证、CORS、环境控制
📋 系统要求
- Node.js:16.0.0或更高
- 记忆:最低512MB RAM
- 存储:100MB用于依赖关系和构建工件
- 网络:Claude API的互联网访问(文件操作可选)
- 操作系统:支持Node.js的macOS、Linux或Windows
🌐 部署
- 本地开发:
npm run start:http - 生产就绪:环境变量配置
- Docker支持:集装箱化准备就绪
- 云部署:与Vercel、Heroku、AWS兼容
许可证
MIT License-开源招聘助手和文件上下文服务器。
______________________________________________________________________
支持和文档
- MCP协议:
- API克劳德: 人类API文件
- 问题:为bug报告和功能请求创建GitHub问题
- 专业联系人:通过以下方式提供集成支持
🚀 快速部署
- 克隆和安装:
git clone [repo] && npm install - 配置API:添加
ANTHROPIC_API_KEY到.env.local - 构建与运行:
npm run build && npm run start:http - 访问:打开http://localhost:3000
