research-project-mcp-demo
科研管理大模型原型系统 - 课题管理 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/dbnameDocker
docker build -t research-project-mcp-demo .
docker run --rm -p 8001:8001 -v %cd%/data:/app/data research-project-mcp-demoMCP 工具清单
ingest_project_documentsingest_project_documents_textget_extraction_resultconfirm_project_dataquery_projectlist_projectsupdate_project_progressget_project_fund_summarygenerate_project_reportsave_researcher_profile_pagesave_duplicate_check_report_pagesearch_project_documentsget_operation_logs
save_researcher_profile_page 用于保存科研人员画像 HTML,并返回可在浏览器打开的 /profile-pages/{filename} 页面链接。save_duplicate_check_report_page 用于保存查重智能体生成的论文查重分析报告 HTML。两类页面链接都复用 RPM_DOWNLOAD_BASE_URL 对应的 FastAPI 外部访问地址。
数据库表
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 要求、报表格式和验收边界。
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/DaisyLandForu/research-project-mcp-demo'
If you have feedback or need assistance with the MCP directory API, please join our Discord server