Google专利搜索
一种模型上下文协议服务器,通过SerpApi Google Patents API启用搜索Google专利信息的功能,允许用户使用各种过滤器和排序选项查询专利数据。
服务介绍
Google Patents MCP 服务器 (google-patents-mcp)
此项目提供了一个 Model Context Protocol (MCP) 服务器,允许通过 SerpApi Google Patents API 搜索 Google 专利信息。
更新日志
v0.2.0 (2025-04-17)
- 修复: 为
resources/list和prompts/listMCP 方法实现了空处理器。 - 修复: 在服务器初始化中声明了
prompts功能。 - 杂项: 更新了依赖项。
这些更改旨在提高与 Claude Desktop 等 MCP 客户端的兼容性,尽管尚未直接使用 Claude Desktop 进行测试。
特性
- 提供一个 MCP 工具
search_patents用于搜索 Google 专利。 - 使用 SerpApi 作为后端。
- 可以直接使用
npx运行,无需本地安装。
前提条件
- Node.js: 推荐版本 18 或更高。
- npm: 需要运行
npx命令。 - SerpApi API 密钥: 您需要从 SerpApi 获取有效的 API 密钥才能使用 Google 专利 API。
快速开始(使用 npx)
运行此服务器最简单的方法是使用 npx。此命令会下载(如果需要)并直接运行服务器。
npx @kunihiros/google-patents-mcp
注意: 如果实际发布的包名不同,请将 @kunihiros/google-patents-mcp 替换为实际的包名。
服务器将启动并在标准输入/输出上监听 MCP 请求。
配置
服务器需要您的 SerpApi API 密钥。您可以通过以下方式之一提供它:
1. **环境变量(推荐用于MCP主机):**
运行服务器时设置`SERPAPI_API_KEY`环境变量。MCP主机配置通常允许为服务器设置环境变量。
示例MCP主机配置片段(`config.json`或类似文件):
```json
{
"mcpServers": {
"google-patents-mcp": {
"command": "npx",
"args": [
"-y", // 如果本地未安装包,则跳过确认
"@kunihiros/google-patents-mcp" // 使用正确的包名
],
"env": {
"SERPAPI_API_KEY": "您的实际SERPAPI密钥"
// 可选:设置日志级别
// "LOG_LEVEL": "debug"
}
}
}
}
```
2. **.env文件:**
在运行`npx`命令的目录中(用于本地测试或不使用MCP主机时),或者在您的主目录中(`~/.google-patents-mcp.env`),创建一个`.env`文件,内容如下:
```dotenv
SERPAPI_API_KEY=您的实际SERPAPI密钥
# 可选:设置日志级别(例如,debug, info, warn, error)
# LOG_LEVEL=debug
```
**注意:** 虽然使用`.env`文件对于本地测试来说很方便,但对于生产环境或与MCP主机集成时,直接通过主机配置设置环境变量是更推荐且更安全的方法。主要预期用途是通过`npx`执行,其中环境变量通常由调用进程或MCP主机管理。
服务器按以下顺序查找`.env`文件:
* `./.env`(相对于运行`npx`的位置)
* `~/.google-patents-mcp.env`(在您的主目录中)
## 提供的MCP工具
### `search_patents`
通过SerpApi搜索Google专利。
**输入模式:**
#1
**输出:**
返回一个包含来自SerpApi搜索结果的JSON对象。结构遵循SerpApi响应格式。
**示例用法(MCP请求):**
#2
## 开发
1. **克隆仓库(如果需要开发):**
```bash
# git clone <仓库URL>
# cd google-patents-mcp
```
2. **安装依赖:**
```bash
npm install
```
3. **创建`.env`文件:**
将`.env.example`复制到`.env`并添加您的`SERPAPI_API_KEY`。
4. **构建:**
```bash
npm run build
```
5. **本地运行:**
```bash
npm start
```
或者为了开发带有自动重建功能:
```bash
npm run dev
```
## 日志记录
* 日志输出到标准错误流。
* 可以通过`LOG_LEVEL`环境变量控制日志级别(`error`, `warn`, `info`, `http`, `verbose`, `debug`, `silly`)。默认为`info`。
* 尝试在项目根目录(`google-patents-server.log`)、用户主目录(`~/.google-patents-server.log`)或`/tmp/google-patents-server.log`中创建日志文件。
## 许可证
MIT许可证(参见LICENSE文件)