MCP Servers

模型上下文协议服务器、框架、SDK 和模板的综合目录。

让AI读懂任何复杂文档 - 解决AI上下文限制问题的通用MCP服务器 | Universal MCP server for AI to understand complex documents

创建于 1/11/2026
更新于 about 10 hours ago
Repository documentation and setup instructions

📄 Doc MCP Server

让AI读懂任何复杂文档 - 解决AI上下文限制问题的通用MCP服务器

PyPI version License: MIT Python 3.10+ MCP

English | 中文


🌟 为什么需要这个工具?

当你让AI处理复杂的Excel/PDF/Word文档时,是否遇到过这些问题:

  • ❌ AI只能读取一部分内容就"失忆"了
  • ❌ 合并单元格、复杂表格让AI无法理解
  • ❌ 323行的征信报告,AI读到一半就乱了
  • ❌ 需要反复调试才能准确定位字段

Document Analyzer MCP 专为解决这些痛点而生!

✨ 核心特性

🎯 智能文档分析

  • 自动识别章节结构
  • 处理合并单元格、嵌套表头
  • 生成AI友好的结构化文档

📊 支持多种格式

  • Excel (.xlsx, .xls) - 完整支持
  • 🚧 PDF (.pdf) - 开发中
  • 🚧 Word (.docx) - 开发中

🔍 精确字段定位

  • 字段映射表(字段名 → 坐标)
  • 章节级别读取
  • 支持模糊搜索

⚡ 高效性能

  • 结构化缓存
  • 按需加载
  • 批量操作

🚀 快速开始

安装

# 从PyPI安装(推荐)
pip install doc-mcp-server

# 从源码安装
git clone https://github.com/jiahuidegit/doc-mcp-server
cd doc-mcp-server
pip install -e .

配置Claude Desktop

claude_desktop_config.json 中添加:

{
  "mcpServers": {
    "document-analyzer": {
      "command": "python",
      "args": ["-m", "document_analyzer.server"]
    }
  }
}

基础使用

# 在Claude中使用

1. 分析文档
analyze_document(
  file_path="/path/to/your/document.xlsx",
  output_format="json"
)

2. 读取字段
read_field(
  file_path="/path/to/your/document.xlsx",
  field_key="第一部分:信息概要_企业名称"
)

3. 读取章节
read_section(
  file_path="/path/to/your/document.xlsx",
  section_name="第一部分:信息概要"
)

📖 使用示例

示例1: 处理征信报告

用户: "分析这份征信报告的结构"
AI调用: analyze_document(file_path="credit_report.xlsx")

AI返回:
{
  "meta": {
    "format": "excel",
    "total_fields": 68,
    "page_count": 1
  },
  "sections": [
    {"title": "第一部分:信息概要", "row_range": "4-16"},
    {"title": "未结清信贷及授信信息概要", "row_range": "17-93"},
    ...
  ]
}

示例2: 读取特定数据

用户: "读取企业的借贷交易信息"
AI调用: read_section(
  file_path="credit_report.xlsx",
  section_name="第一部分:信息概要"
)

AI返回:
{
  "section_name": "第一部分:信息概要",
  "data": {
    "首次有信贷交易的年份": "2020",
    "发生信贷交易的机构数": "5",
    "借贷交易": "1000000"
  }
}

🛠️ 可用工具

1. analyze_document

分析文档结构,生成元数据

参数:

  • file_path: 文档路径
  • output_format: 输出格式 (json/markdown)
  • deep_analysis: 是否深度分析

2. read_field

读取指定字段的值

参数:

  • file_path: 文档路径
  • field_key: 字段键 (格式: "章节名_字段名")

3. read_section

读取整个章节数据

参数:

  • file_path: 文档路径
  • section_name: 章节名称

4. write_field (仅Excel)

写入字段值

参数:

  • file_path: 文档路径
  • field_key: 字段键
  • value: 要写入的值

5. list_sections

列出所有章节

6. list_fields

列出所有字段或指定章节的字段

7. export_structure

导出文档结构为JSON或Markdown

🎯 实际应用场景

📊 数据分析

  • 财务报表分析
  • 征信报告处理
  • 统计数据提取

📝 文档自动化

  • 合同信息提取
  • 报告生成
  • 数据迁移

🤖 AI应用

  • RAG系统数据源
  • 文档问答系统
  • 智能助手集成

🏗️ 技术架构

用户 → Claude Desktop → MCP Server → Document Analyzer
                                          ↓
                              Excel/PDF/Word Analyzer
                                          ↓
                            结构化数据 + 字段映射表

📊 性能对比

| 场景 | 传统方式 | Document Analyzer MCP | |-----|---------|---------------------| | Token消耗 | ~15000 | ~2000 | | 成功率 | 30% | 90%+ | | 处理时间 | 多次调试 | 一次成功 |

🤝 贡献指南

欢迎贡献代码!请查看 CONTRIBUTING.md

开发环境设置

git clone https://github.com/jiahuidegit/doc-mcp-server
cd doc-mcp-server
pip install -e ".[dev]"
pytest

📄 许可证

MIT License - 详见 LICENSE

🙏 致谢

📮 联系方式

  • GitHub Issues: 提交问题
  • 邮箱: your.email@example.com

🌏 中文

项目背景

在使用AI处理大型或复杂文档时,经常会遇到上下文长度限制的问题。例如:

  • 一份323行的企业征信报告,包含1352个合并单元格
  • AI读取时常常"失忆",无法完整理解文档结构
  • 需要多次尝试才能准确定位字段

Document Analyzer MCP 通过将复杂文档转换为AI可理解的结构化数据,彻底解决了这个问题。

核心理念

不让AI直接读取原始文档,而是给它一份"说明书"

工作流程:

  1. 分析文档 → 提取结构
  2. 生成字段映射表 → 精确定位
  3. AI按需读取 → 避免上下文过载

实战案例:征信报告处理

传统方式

AI读取Excel → 内容过长 → 失忆 → 重试 → 再失忆 → 放弃
成功率: 30%

使用MCP

analyze_document → 获取结构 → read_section → 精确读取 → 完成
成功率: 90%+

支持的文档类型

已支持

  • ✅ Excel (.xlsx, .xls) - 完整支持合并单元格、复杂表头

开发中

  • 🚧 PDF - 结构化PDF + OCR扫描件
  • 🚧 Word - 长文档 + 复杂格式

计划中

  • 📋 Markdown - 技术文档
  • 📑 CSV - 简单表格

安装使用

详见 快速开始 章节

开发路线图

  • v0.1 (当前) - Excel基础功能
  • v0.2 - PDF/Word支持 + 智能分块
  • v0.3 - 向量化存储 + 语义搜索
  • v1.0 - 生产级稳定性

社区


Made with ❤️ by Yang Jiahui

快速设置
此服务器的安装指南

安装包 (如果需要)

uvx doc-mcp-server

Cursor 配置 (mcp.json)

{ "mcpServers": { "jiahuidegit-doc-mcp-server": { "command": "uvx", "args": [ "doc-mcp-server" ] } } }