专利数据服务

一个通过MCP协议提供欧洲专利局开放专利服务的服务器,支持专利数据检索、格式转换和法律状态查询等功能。

  • by JIBSN
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 JIBSN/epo-ops-mcp-server

使用说明

EPO OPS MCP服务器

将欧洲专利局的开放专利服务API公开为使用fastMCP库的MCP(模型上下文协议)服务器的服务器。

特性

  • 用于访问EPO OPS服务的MCP兼容服务器
  • 内置身份验证、限制和缓存
  • API自动文档
  • Docker支持,易于部署
  • 依赖性管理 uv 用于快速安装
  • 使用Pydantic模型进行正确验证

先决条件

  • Python 3.8+
  • EPO OPS API证书(密钥和秘密)
  • uv 包管理器(可选但推荐)

安装

选项1:使用 uv (推荐)

  1. 克隆存储库:

    git clone <repository-url>
    cd epo-ops-mcp-server
    
  2. 安装 uv 如果你还没有:

    pip install uv
    

    或者跟随 官方安装指南

  3. 安装依赖项 uv:

    uv sync
    

用法

  1. 设置环境变量: 创建一个 .env 提交您的EPO OPS证书:

    # EPO OPS API credentials (required)
    EPO_OPS_KEY=key
    EPO_OPS_SECRET=secret
    
    Server settings (optional)
    SERVER_HOST=0.0.0.0
    SERVER_PORT=8000
    
    # Cache settings (optional)
    CACHE_ENABLED=True
    CACHE_PATH=/var/tmp/epo-ops-server/cache.dbm
    
  2. 启动服务器:

    python main.py
    

    或与 uv:

    uv run python main.py
    

MCP客户端配置

"mcpServers": {
    "epo-ops-mcp-server": {
      "command": "uv",
      "args": [
        "run",
        "python",
        "main.py"
      ],
      "cwd": "path to epo-ops-mcp-server",
      "env": {
        "MCP_TRANSPORT_TYPE": "stdio",
        "MCP_LOG_LEVEL": "debug"
      },
      "disabled": false,
      "autoApprove": []
    }
  }

MCP工具

服务器公开了以下可供MCP客户端使用的工具:

  • get_published_data -检索已发布的专利数据
  • search_published_data -搜索已发布的专利数据
  • get_family -检索专利族数据
  • get_legal -检索法律状态信息
  • convert_number -转换专利号格式
  • get_register -检索欧洲专利注册数据
  • search_register -搜索欧洲专利注册
  • get_image -检索专利图像

数字格式

EPO OPS API支持不同的专利号格式:

  1. Epodoc格式:组合国家、数字和种类代码的单个字符串(例如,“WO2025160170”或“US5444451A”)
  2. Docdb格式:国家代码、编号和种类代码的单独字段(例如“WO”、“2025160170”、“A1”)

使用这些工具时,您可以以以下任一格式提供专利号:

# Epodoc format
{
  "number": "WO2025160170",
  "kind_code": "A1"
}

# Docdb format
{
  "country_code": "WO",
  "number": "2025160170",
  "kind_code": "A1"
}

服务器现在使用Pydantic模型来验证输入数据,确保每种类型的请求都使用正确的格式。当提供无效数据时,这提供了更好的类型安全性和更清晰的错误消息。

配置

可以使用环境变量配置服务器:

变量 描述 默认值
EPO_OPS_KEY EPO OPS API密钥 必需
EPO_OPS_SECRET EPO OPS API机密 必需
SERVER_HOST 服务器主机 0.0.0.0
SERVER_PORT 服务器端口 8000
CACHE_ENABLED 启用缓存 True
CACHE_PATH 缓存文件路径 /var/tmp/epo-ops-server/cache.dbm

发展

对于开发,您可以安装开发依赖项:

随着 uv:

uv sync --extra=dev

使用pip:

pip install -e .[dev]