招标文件处理员MCP
A. FastMCP 2.0 用于解析、分析、导入、OCR处理和管理招标文件的服务器 三联标书.
  
🚀 快速部署到FastMCP云
步骤1:分叉/克隆此存储库
git clone https://github.com/your-username/tender-docs-mcp.git步骤2:部署到FastMCP云
- 访问 fastmcp.cloud
- 使用您的GitHub帐户登录
- 从存储库创建新项目
- 设置入口点:
server.py:mcp - 单击部署
您的服务器将在以下位置可用:
https://your-project-name.fastmcp.app/mcp步骤3:连接到您的MCP客户端
将此添加到您的Claude桌面或光标配置中:
{
"mcpServers": {
"tender-docs": {
"url": "https://your-project-name.fastmcp.app/mcp"
}
}
}📋 特性
文档解析
- 多格式支持:PDF、DOCX、DOC、TXT、HTML、RTF、ODT
- 文本提取 保留布局
- 表格提取 来自PDF文档
- 元数据抽取 (作者、标题、日期、页数)
OCR(光学字符识别)
- 处理扫描的文档和图像
- 支持PNG、JPG、JPEG、TIFF、BMP格式
- 自动检测纯图像PDF
投标文件分析
- 断面提取:自动识别文档结构
- 需求提取:查找强制性和可选要求
- 截止日期检测:提取重要日期和截止日期
- 触点提取:查找电子邮件和电话号码
- 评估标准:确定评分和评估方法
- 合规项目:提取检查表和合规要求
文档管理
- 从base64导入
- 文档验证
- 内容搜索
- 结构分析
🔧 可用工具
| 工具 | 说明 |
|---|---|
parse_document | 从PDF、DOCX、TXT、HTML文件中提取文本 |
analyze_tender | 综合投标分析 -章节、要求、截止日期、联系人、标准 |
extract_metadata | 获取文件信息、页数、作者、标题、日期 |
extract_tables | 从PDF中提取结构化表格 |
extract_requirements | 通过分类查找强制/可选要求 |
extract_sections | 解析文档结构和层次结构 |
extract_deadlines | 查找重要日期和提交截止日期 |
perform_ocr | 用于扫描文档和图像的OCR |
validate_document | 检查文档是否可读且有效 |
search_document | 在文档中搜索文本模式 |
get_document_structure | 获取目录和章节层次结构 |
list_documents | 列出可用文件 |
import_document | 从base64导入 |
📚 可用资源
| 资源URI | 描述 |
|---|---|
tender://config/version | 当前服务器版本 |
tender://config/supported-formats | 支持的文档格式列表 |
tender://config/requirement-categories | 需求分类类别 |
tender://uploads/{filename} | 获取有关上传文档的信息 |
💡 可用提示
| 提示 | 描述 |
|---|---|
analyze_tender_prompt | 全面的投标分析工作流程 |
compare_requirements_prompt | 比较两份标书的要求 |
extract_compliance_checklist_prompt | 从投标中生成合规检查表 |
🖥️ 本地开发
安装
# Clone the repository
git clone https://github.com/your-username/tender-docs-mcp.git
cd tender-docs-mcp
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt本地运行
# Using FastMCP CLI
fastmcp run server.py
# Or directly with Python
python server.pyMCP检验员测试
fastmcp dev server.py这将打开MCP检查器 http://localhost:5173 在那里你可以测试所有工具。
Claude桌面配置(本地)
{
"mcpServers": {
"tender-docs": {
"command": "python",
"args": ["/path/to/tender-docs-mcp/server.py"]
}
}
}📊 示例用法
分析投标文件
# The LLM will call the analyze_tender tool
result = analyze_tender(file_path="/path/to/tender.pdf")
# Returns:
{
"document_id": "DOC-ABC12345",
"metadata": {
"file_name": "tender.pdf",
"page_count": 45,
"word_count": 12500
},
"sections": [
{"title": "Scope of Work", "content": "..."}
],
"requirements": [
{
"requirement_id": "REQ-001",
"description": "Must have ISO certification",
"category": "qualification",
"is_mandatory": true
}
],
"deadlines": [
{"date": "December 31, 2024", "type": "deadline"}
],
"evaluation_criteria": [...],
"compliance_items": [...],
"summary": "This tender seeks proposals for..."
}使用提示
问克劳德:
“使用analyze_tender_prompt进行/uploads/tender.pdf”
Claude将收到一个结构化的工作流提示,并逐步执行分析。
🏗️ 项目结构
tender-docs-mcp/
├── server.py # Main FastMCP server (entrypoint)
├── pyproject.toml # Project configuration
├── requirements.txt # Dependencies
├── README.md # This file
├── LICENSE # MIT License
└── .gitignore # Git ignore rules⚙️ 环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
TENDER_UPLOAD_DIR | 上传文档目录 | 系统临时目录 |
TENDER_PROCESSED_DIR | 已处理文档目录 | 系统临时目录 |
TENDER_CACHE_DIR | 缓存目录 | 系统临时目录 |
📦 需求类别
MCP自动对提取的需求进行分类:
- 技术的:系统、软件、硬件规格
- 金融的:定价、付款、预算要求
- 法律的:合规、监管、合同项目
- 资格:经验、证书、能力
- 时间线:截止日期、时间表、里程碑
- 文档:报告、证书、提交材料
- 人员:工作人员、团队、所需资源
- 通用:其他要求
🔐 身份验证(FastMCP云)
对于专用服务器,添加身份验证标头:
{
"mcpServers": {
"tender-docs": {
"url": "https://your-project.fastmcp.app/mcp",
"headers": {
"Authorization": "Bearer YOUR_TOKEN"
}
}
}
}🤝 与三联投标的整合
该MCP服务器与三标文件生成系统集成:
- 文档上传:用户通过tri-term上传招标文件
- 处理:MCP服务器解析和分析文档
- 分析:提取的数据(要求、截止日期、标准)输入投标响应生成器
- 输出:生成的投标响应基于全面的文件分析
📄 许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
🆘 支持
- FastMCP文档: gofastmcp.com
- FastMCP云: fastmcp.cloud
- Discord 的中文翻译是“不和谐”或“纷争”。: FastMCP故障
- 问题:GitHub问题
🔄 CI/CD
FastMCP云自动:
- 监控您的仓库是否有更改
- 部署到推送
main分支 - 为PR创建预览部署
- 提供用于测试的唯一URL
