Skip to main content
Glama

PatentAgent

基于大语言模型(LLM)驱动的智能专利分析系统。用自然语言与专利数据对话。

PatentSmelter 的下一代演进。从"批处理工具箱"到"对话式智能分析"。

推荐且唯一持续维护的用户入口:frontend/ + server.py。根目录旧 mock 前端、 Streamlit/Chainlit 兼容入口仅为迁移保留,不代表当前能力。

暂时以AGPL的形式开源。以后也许(但不保证)会转换为更宽松的模式。Contact: 2507380208@wtu.edu.cn

快速开始

一键启动(推荐)

cd PatentAgent
bash start.sh

自动启动后端 (FastAPI :8000) 和前端 (React :5173),浏览器自动打开。

分别启动

后端:

cd PatentAgent
MCP_INPUT_DIR=./my_patents PATENT_DATA_ROOT=./my_patents uvicorn server:app --host 127.0.0.1 --port 8000
# API 文档: http://localhost:8000/docs

前端:

cd PatentAgent/frontend
npm install     # 首次运行
npm run dev     # http://localhost:5173

MCP Server

cd PatentAgent
pip install mcp
python mcp_server.py

在 Claude Code / VS Code / Cursor 中配置 MCP 连接。详见 MCP 使用指南

核心特性

  • 对话式交互 — 自然语言提问,Agent 理解意图、制定计划、调用工具、输出结论

  • 动态工具目录 — 工具数以 /api/tools 注册表为单一来源,并按当前字段能力启用或降级

  • 智能关键词过滤 — 400 词专利专用停用词库 + NLTK 词性过滤,剔除说明书套话和语境噪音

  • 结果可追溯 — 图表、结构化摘要、方法、字段覆盖率、警告、参数和耗时统一返回

  • 原生可视化 — React/ECharts 优先读取结构化结果,支持原始尺寸、适应窗格、全屏、PNG/JSON 导出与数据表切换

  • 多供应商 LLM — Claude / OpenAI / DeepSeek,支持本地模型隐私模式

  • 极速加载 — 多线程并行解析 + Pickle 缓存,首次 10s,缓存命中 0.3s

  • 报告导出 — HTML 报告(含完整中文排版),CSV 数据导出

  • MCP 协议支持 — 标准 MCP (Model Context Protocol) stdio/HTTP 服务器,Claude Code / VS Code / Cursor 可直接调用全部工具

  • 算法证据登记表 — 16 个工具逐一登记算法 ID、版本、公式、字段门槛、论文来源与禁止结论

工具清单

工具

说明

get_dataset_summary

数据集概况(总量/时间/IPC/Top申请人)

analyze_patent_trend

专利公开趋势(月度/年度,支持IPC/申请人筛选)

analyze_lifecycle

公开量累计与同比增长(不自动判定生命周期)

analyze_ipc_distribution

IPC 分类热力图(年份 × A-H 部级)

generate_wordcloud

关键词词云 + 词频柱状图(含词性过滤)

analyze_burst_terms

近期增长词(最小支持、平滑;非 Kleinberg Burst)

analyze_yearly_keywords

逐年关键词对比(年份 × 技术词热力图)

analyze_country_distribution

首个公开局分布(不等同同族市场覆盖)

analyze_co_network

申请人合作网络(交互式可拖拽)

analyze_tech_roadmap

年度技术主题时间轴(引证充分时显示内部路径)

analyze_tech_matrix

Derwent 摘要代理功效矩阵 + 低共现复核候选

analyze_clustering

TF-IDF 空间 K-means + silhouette 选 k + CC0.5 标题

analyze_patent_valuation

稳健百分位价值筛查(不是财务估值)

analyze_competitor_evolution

IPC profile cosine shift / entropy / dominant share

search_patents

TF-IDF 词项相似度检索(不是语义嵌入或查全检索)

read_patent_details

当前数据源记录读取(Derwent 摘要不是完整说明书)

MCP 使用指南

PatentAgent 提供标准 MCP 服务器;可用工具数量以运行时注册表为准,与 /api/tools 保持一致。

什么是 MCP

MCP 是一种标准化的 AI 工具通信协议。有了它,AI 客户端不再局限于"只能聊天",而是可以主动发现和调用运行时注册表中的工具。AI 客户端可以:

  • 自动发现有哪些分析工具可用

  • 根据用户意图选择合适的工具

  • 传参调用工具,获取结构化分析结果

  • 基于真实数据撰写分析结论

安装 MCP 依赖

pip install mcp

启动 MCP 服务器

stdio 模式(推荐,用于 Claude Code / VS Code / Cursor):

python mcp_server.py

服务器通过标准输入输出与客户端通信,不需要网络端口。

HTTP 模式(用于远程访问):

python mcp_http_server.py --port 8000 --host 127.0.0.1

环境变量配置

变量

默认值

说明

MCP_INPUT_DIR

./my_patents

专利数据文件目录

MCP_STORE_CACHE_TTL

300

数据缓存有效期(秒),超时自动从磁盘重载

MCP_LOG_LEVEL

INFO

日志级别:DEBUG / INFO / WARNING / ERROR

MCP_HTTP_PORT

8000

HTTP 模式监听端口

MCP_HTTP_HOST

127.0.0.1

HTTP 模式监听地址

MCP_MAX_ITEMS_IN_RESULT

50

分析结果中列表字段的最大条目数

配置 Claude Code

在项目根目录创建或编辑 .mcp.json

{
  "mcpServers": {
    "patent-agent": {
      "command": "python3",
      "args": ["/绝对路径/PatentAgent/mcp_server.py"],
      "env": {
        "MCP_INPUT_DIR": "/绝对路径/my_patents",
        "MCP_LOG_LEVEL": "WARNING"
      }
    }
  }
}

重启 Claude Code 后,MCP 服务器自动启动。你可以直接说:

  • "列出可用的专利分析工具"

  • "给我一个专利数据集的总览"

  • "分析 2018 到 2022 年的公开趋势"

  • "找找技术空白点,哪些方向还没有专利布局"

  • "用词云展示技术热点"

配置 VS Code / Cursor

在项目根目录创建 .vscode/mcp.json

{
  "servers": {
    "patent-agent": {
      "type": "stdio",
      "command": "python3",
      "args": ["/绝对路径/PatentAgent/mcp_server.py"],
      "env": {
        "MCP_INPUT_DIR": "/绝对路径/my_patents",
        "MCP_LOG_LEVEL": "WARNING"
      }
    }
  }
}

MCP 工具清单

MCP 服务器暴露的工具接口(数量以运行时注册表为准):

工具名

参数

说明

get_dataset_summary

数据集概况(总量/时间/IPC/Top 申请人)

analyze_patent_trend

chart_type, year_start, year_end, ipc_filter, applicant_filter

公开趋势分析

analyze_lifecycle

公开量累计与年增长率(不判定生命周期)

analyze_ipc_distribution

IPC 分类热力图

generate_wordcloud

text_source

关键词词云 + 词频柱状图

analyze_burst_terms

技术突发词检测

analyze_yearly_keywords

text_source

逐年关键词对比

analyze_country_distribution

首个公开局分布(不是同族市场覆盖)

analyze_co_network

申请人合作网络

analyze_tech_roadmap

top_n_per_year

技术路线图

analyze_tech_matrix

top_n

Derwent 摘要代理功效矩阵 + 低共现复核候选

analyze_clustering

n_clusters

专利文本聚类

analyze_patent_valuation

top_n, citation_mode

价值筛查(不是财务估值)

analyze_competitor_evolution

top_n_applicants

IPC 画像工程指标(不是 PatentMiner DICT)

search_patents

query, top_k, year_start, year_end

TF-IDF 词项检索

read_patent_details

patent_numbers(最多 5 个)

当前数据源字段读取

分析结果格式

MCP 工具调用返回两种内容类型:

  • text — 结构化 JSON 数据,包含分析结果的主要数据(如趋势数据点、词频列表、矩阵数值等)

  • resource(可选)— 嵌入式 HTML 图表(text/html MIME),客户端渲染为交互式 pyecharts 图表

验证 MCP 服务器

可以使用 Python 脚本验证 MCP 服务器是否正常工作:

python -m pytest tests/test_mcp_integration.py -v

测试覆盖:服务器初始化、动态工具列表、工具调用、错误处理。

架构

React Frontend (Vite + TypeScript)  |  MCP Server (stdio/HTTP)
         ↕ HTTP + SSE                         ↕ JSON-RPC
FastAPI Backend (server.py)
         ↕
Agent 编排层 (条件/依赖/重试 + 完整证据分块综合 + SQLite 持久会话)
         ↕
Tool 层 (注册表为单一来源,含能力门禁与统一结果契约)
         ↕
Engine 层 (纯计算)
         ↕
数据访问层 (Parquet 缓存 + 列投影)
         ↕
知识库层 (16 工具算法证据登记表 + 决策模板)

项目结构

PatentAgent/
├── server.py              # FastAPI 后端(REST、会话管理与 SSE 流式)
├── start.sh               # 一键启动脚本
├── frontend/              # React 前端
│   ├── src/
│   │   ├── App.tsx         #   主应用(三栏布局)
│   │   ├── api.ts          #   全部 API 调用 + SSE 流
│   │   ├── types.ts        #   TypeScript 类型定义
│   │   └── components/     #   原生 ECharts 注册表、兼容 ChartFrame、工具卡与消息组件
│   └── package.json
├── agent/                 # Agent 编排层
│   ├── orchestrator.py    #   状态机 + 工具编排
│   ├── strategy_chains.py #   旧版兼容,Web 主流程不再调用
│   ├── cross_tool_synthesis.py  # 跨工具关联推理
│   ├── recommendation_engine.py # 战略建议生成
│   ├── adaptive_planner.py      # 旧版兼容,不会自动追加工具
│   ├── proactive_discovery.py   # 主动发现引擎
├── storage/conversation_store.py # 会话、轮次与结构化证据(不保存 API Key/图表 HTML)
│   └── prompts.py
├── tools/                 # Tool 层(16 个运行时注册工具)
├── engine/                # 分析引擎层 (13个纯计算模块)
├── patent_mcp/            # MCP 服务器
├── mcp_server.py          # MCP stdio 入口
├── models/                # Pydantic 数据模型
├── knowledge/             # 单一算法证据登记表 + 决策模板
├── storage/               # 数据访问层
├── viz/                   # 旧客户端/MCP 的 pyecharts 兼容可视化层
└── tests/                 # Python 回归测试 + 前端渲染测试

配置

LLM 设置

Claude API   → 长上下文 + 工具调用最成熟(推荐)
OpenAI API   → 兼容性最广
DeepSeek API → 中文性价比最优,支持国内直接访问

默认模型: Claude `claude-sonnet-4-6` / OpenAI `gpt-4.1` /
DeepSeek `deepseek-v4-flash`

本地隐私模式: vLLM + Qwen3-32B / DeepSeek-V3 + BGE-M3 Embedding

连接检查不只测试一次文本回复,还会完成一次无副作用的 tool_call → 本地结果回传 → 最终文本,并校验一次结构化 JSON 输出。只有全部通过,前端才显示 “LLM 工具调用已就绪”。

Web Agent 的正常流程由 LLM 第一轮直接选择最小必要工具集,本地参数/数据/ 成本门禁通过后执行,再按 OpenAI、Claude 或 DeepSeek 的官方消息协议回传结果。 第二轮禁用新工具并生成针对当前问题的结构化答案和动态追问。

你也可以在网页端利用“高级设置”来自行配置服务商,例如Openrouter等。本人致力于降低软件使用门槛。建议用户使用Deepseek作为默认模型,能大大降低使用成本。

数据格式

支持 Web of Science (Clarivate Derwent) 专利导出 .txt 文件。

将文件放入 my_patents/ 目录,在 GUI 中加载即可。支持增量更新,缓存自动失效。

文档

  • 项目与论文审计 — 数据质量、论文适用条件、优势/弱点和法律边界

  • 16 工具算法证据矩阵 — 由 knowledge/tool_evidence.json 自动生成

  • DII 基准数据状态 — 检索式、授权核验和导入审计方法(随专利数据目录提供,不包含在源码仓库中)

  • 软件说明书 — 架构设计、功能详解、技术栈、版本历史

  • 操作指南 — 从零开始的手把手教程,含环境配置、工具使用、常见问题

-
license - not tested
-
quality - not tested
-
maintenance - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/iStoryOfSpring/PatentAgent'

If you have feedback or need assistance with the MCP directory API, please join our Discord server