简历数据服务

一个基于FastMCP构建的MCP服务器,用于提供个人简历数据服务和网页抓取功能,支持与AI系统集成进行自动化简历分享和验证。

  • by rk-vashista
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 rk-vashista/mcp-resume-server

使用说明

🚀 MCP恢复服务器

A. 模型上下文协议(MCP)服务器 使用FastMCP构建,提供个人简历数据并提供网络获取功能。该服务器旨在与Puch AI等人工智能系统集成,以实现自动简历共享和验证。

📋 特性

  • 🔐 承载令牌身份验证 -使用可配置令牌进行安全访问
  • 📄 简历工具 -自动从PDF文件中提取并提供简历
  • ✅ 验证工具 -用于服务器身份验证的电话号码验证
  • 🌐 网络抓取 -使用markdown转换获取和解析web内容
  • 🔍 调试支持 -用于故障排除的内置调试工具

🛠️ 可用工具

1. 简历工具

  • 目的:以markdown格式提供个人简历
  • 输入:个性化问候的可选名称参数
  • 输出:从中提取的简历内容 Resume.pdf 或回退内容
  • 特性:
    • 使用PyMuPDF提取PDF文本
    • 自动长度截断以防止超时
    • 优雅的错误处理

2. 验证工具

  • 目的:返回用于服务器身份验证的电话号码
  • 输出:电话号码在 {country_code}{number} 格式
  • 必需:必须出席Puch AI集成

3. 提取工具

  • 目的:获取和解析web内容
  • 输入:URL、最大长度、起始索引、原始选项
  • 输出:简化的标记内容或原始HTML
  • 特性:
    • 内容截断与延续支持
    • HTML到markdown的转换
    • 失败请求的错误处理

🚀 快速开始

先决条件

# Install required packages
pip install fastmcp pymupdf httpx readabilipy markdownify pydantic

配置

  1. 设置您的身份验证令牌:

    TOKEN = "your_application_key_here"
    
  2. 设置您的电话号码:

    MY_NUMBER = "916366797779"  # Format: {country_code}{number}
    
  3. 添加您的简历:

    • 把你的简历放在 Resume.pdf 在项目目录中
    • 或者修改恢复功能中的回退内容

运行服务器

# Start the MCP server
python mcp_server.py

服务器将于启动 http://0.0.0.0:8085/mcp

使其可公开访问

为了与Puch AI等外部服务集成,您需要公开您的服务器:

# Using ngrok (recommended)
ngrok http 8085

# Your public URL will be something like:
# https://abcd-1234-5678-9012.ngrok-free.app/mcp

📁 项目结构

puchAI/
├── mcp_server.py      # Main MCP server implementation
├── Resume.pdf         # Your resume file (optional)
├── .gitignore        # Git ignore rules
├── README.md         # This file
└── .venv/            # Virtual environment (if used)

🔧 配置选项

环境变量(推荐)

import os
TOKEN = os.getenv("MCP_TOKEN", "default_token")
MY_NUMBER = os.getenv("PHONE_NUMBER", "916366797779")

服务器设置

  • 主机: 0.0.0.0 (接受来自任何IP的连接)
  • 端口: 8085
  • 运输: streamable-http
  • 认证:不记名代币

🛡️ 安全考虑

  • 🔒 令牌安全:永远不要将您的实际令牌提交给版本控制
  • 🌐 暴露于公开场合:仅在需要时公开服务器
  • 📱 电话号码:确保您的电话号码格式正确
  • 📄 简历内容:查看共享的个人信息

🐛 故障排除

常见问题:

  1. 401未经授权

    • 检查您的持票人代币是否正确
    • 确保客户端和服务器之间的令牌匹配
  2. 无法处理请求

    • 简历内容可能太长(检查截断)
    • 验证PDF文件是否存在并且可读
    • 检查服务器日志中的特定错误
  3. 连接失败

    • 验证ngrok隧道是否处于活动状态
    • 检查防火墙设置
    • 确保URL格式正确 /mcp 端点

调试命令:

# Check server status
curl -X POST http://localhost:8085/mcp/ \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

📝 日志

服务器提供详细的日志记录:

  • 📄 resume() tool called -恢复工具执行
  • 🔍 validate() tool called -验证工具执行
  • 🐛 debug_info() tool called -调试工具执行
  • ❌ Error in resume tool -错误消息

🤝 贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 彻底测试
  5. 提交拉取请求

📄 许可证

这个项目是供个人使用的。根据需要修改和分发您自己的应用程序。

📞 支持

如果您遇到问题:

  1. 检查故障排除部分
  2. 查看服务器日志
  3. 验证配置设置
  4. 使用调试工具进行测试

内置于❤️ 使用FastMCP