research-project-mcp-demo
A demo MCP server for research project management that enables document ingestion, information extraction, project tracking, and report generation through MCP tools.
README
科研管理大模型原型系统 - 课题管理 MCP Server Demo
本项目是“科研管理大模型原型系统”中“课题管理智能体模块”的本地 MCP Server Demo。它面向本地展示和后续平台接入,优先跑通文档导入、结构化抽取、课题档案管理、人员/进度/资金管理、报表生成和 MCP 工具调用闭环。
功能范围
已覆盖:
- 2.2.1 文档信息自动提取与管理。
- 2.2.2 课题过程自动化管理。
- 2.2.4 报表与总结自动生成。
暂不完整实现:
- 复杂课题风险预警系统。
- 生产级权限系统。
- 复杂前端。
- 完整知识图谱。
- 科研布局和成果管理模块。
- 强制 LLM 抽取。
已实现功能
- DOCX/PDF/TXT/MD/XLSX/XLS/CSV 解析入口,其中当前样例重点验证 DOCX。
- 文档分类:立项签报、采购签报、绩效发放签报、阶段报告、课题统计报表、未知。
- 规则抽取:课题名称、负责人、部门、起止时间、预算、绩效、成员、进度、阶段内容等。
- 抽取 evidence 保留。
- SQLite 本地档案库。
- 文档版本、hash、导入时间记录。
- 人员、里程碑、资金、采购、绩效、阶段成果、操作日志表。
- Markdown 报表和阶段总结。
- Excel 多 Sheet 报表导出。
- FastAPI 本地接口。
- FastMCP 工具集。
- 本地路径和 HTTP/HTTPS 文件 URL 导入入口。
- 知识库输入文本落地目录。
- Dockerfile。
- 基础测试用例。
项目结构
app/
main.py
mcp_server.py
config.py
database.py
models.py
schemas.py
document_parser.py
document_classifier.py
extractor.py
services/
tools/
utils/
data/
demo.db
uploads/
reports/
knowledge_base_inputs/
docs/
scripts/
tests/
requirements.txt
Dockerfile
安装依赖
python -m pip install -r requirements.txt
初始化数据库
python scripts/init_db.py
导入样例文件
python scripts/ingest_samples.py
本地运行 Demo
python scripts/run_demo.py
运行 FastAPI
python -m uvicorn app.main:app --reload --port 8000
接口:
/health/demo/projects/projects/{project_id}/reports/docs
运行 MCP Server
python app/mcp_server.py
默认 SSE 地址:
http://127.0.0.1:8001/sse
平台接入时,远程 URL、鉴权、上传文件参数形态仍需按 docs/UNKNOWN_ITEMS.md 确认。
PostgreSQL 可通过环境变量切换:
set RPM_DATABASE_URL=postgresql+psycopg://user:password@host:5432/dbname
Docker
docker build -t research-project-mcp-demo .
docker run --rm -p 8001:8001 -v %cd%/data:/app/data research-project-mcp-demo
MCP 工具清单
ingest_project_documentsingest_project_documents_textget_extraction_resultconfirm_project_dataquery_projectlist_projectsupdate_project_progressget_project_fund_summarygenerate_project_reportsearch_project_documentsget_operation_logs
数据库表
project_infoproject_documentproject_memberproject_milestoneproject_fundproject_purchaseproject_performanceproject_stage_resultoperation_log
平台接入说明
本地 Demo 当前优先采用 FastMCP SSE。平台手册和截图显示灵犀支持远程 MCP、容器化 MCP、API 转 MCP 三种方式。建议优先确认远程 MCP 的协议和 URL 要求,再接入:
http://<可被平台访问的主机>:8001/sse
如平台只能接 OpenAPI,可临时使用 FastAPI 的 /docs 或 /openapi.json 做 API 转 MCP 备选。
待确认问题
详见:
docs/UNKNOWN_ITEMS.md
重点包括平台协议、文件上传参数形态、容器持久化、模型 API、PostgreSQL 要求、报表格式和验收边界。
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。