PubMed MCP Server
# PubMed MCP Server
[中文](#中文) | [English](#english)
---
## 中文
PubMed 文献检索 MCP 服务器,基于 [Model Context Protocol](https://modelcontextprotocol.io/) 构建,让 AI Agent 直接搜索和阅读 PubMed 学术文献。
无需 NCBI API Key,直接爬取 PubMed 公开网页接口。
### 使用方式
将本仓库 Git 地址发送给你的 Agent:
```
https://github.com/wjixiang/pubmed-mcp.git
```
Agent 会自动克隆、安装依赖、构建并启动 MCP 服务器。
### MCP 配置示例
构建完成后,在 Claude Desktop 等 MCP 客户端中配置:
```json
{
"mcpServers": {
"pubmed": {
"command": "node",
"args": ["/path/to/pubmed-mcp/dist/mcp/index.js"]
}
}
}
```
### 能力
**Tools(Agent 可调用的工具)**
| 工具 | 说明 |
|---|---|
| `pubmed_search` | 按关键词搜索 PubMed,支持日期范围、文章类型过滤、排序、分页 |
| `pubmed_article_detail` | 按 PMID 获取完整文章记录(作者、摘要、MeSH、参考文献等) |
**Resources(可读取的数据资源)**
| URI 模板 | 说明 |
|---|---|
| `pubmed://article/{pmid}` | 以文本形式提供文章详情 |
**Prompts(预设提示模板)**
| 名称 | 说明 |
|---|---|
| `literature_review` | 引导 Agent 对指定主题进行结构化文献综述 |
| `article_summary` | 引导 Agent 总结指定文章 |
### 开发
```bash
pnpm install
pnpm build # 构建库 + MCP 服务器
pnpm start:mcp # 启动 MCP 服务器
pnpm type-check # TypeScript 类型检查
pnpm test:run # 运行全部测试
pnpm test:e2e # E2E 测试(需要网络,访问真实 PubMed)
```
---
## English
An MCP server for PubMed literature retrieval, built on [Model Context Protocol](https://modelcontextprotocol.io/). Enables AI Agents to directly search and read PubMed academic literature.
No NCBI API Key required — scrapes the public PubMed web interface directly.
### Usage
Send this repository's Git URL to your Agent:
```
https://github.com/wjixiang/pubmed-mcp.git
```
The Agent will automatically clone, install dependencies, build, and launch the MCP server.
### MCP Configuration Example
After building, configure in Claude Desktop or other MCP clients:
```json
{
"mcpServers": {
"pubmed": {
"command": "node",
"args": ["/path/to/pubmed-mcp/dist/mcp/index.js"]
}
}
}
```
### Capabilities
**Tools (callable by Agent)**
| Tool | Description |
|---|---|
| `pubmed_search` | Search PubMed by keyword, with date range filters, publication type filters, sorting, and pagination |
| `pubmed_article_detail` | Fetch full article record by PMID — authors, abstract, MeSH terms, references, and more |
**Resources (readable data)**
| URI Template | Description |
|---|---|
| `pubmed://article/{pmid}` | Article details as plain text |
**Prompts (pre-built templates)**
| Name | Description |
|---|---|
| `literature_review` | Guide the Agent to conduct a structured literature review on a given topic |
| `article_summary` | Guide the Agent to summarize a specific article |
### Development
```bash
pnpm install
pnpm build # Build library + MCP server
pnpm start:mcp # Start MCP server
pnpm type-check # TypeScript type checking
pnpm test:run # Run all tests
pnpm test:e2e # E2E tests (requires network, hits live PubMed)
```
---
## License
MIT
TDQS
Scored across 2 tools
The two tools have completely distinct purposes: one for searching by keyword and the other for fetching full details by PMID. There is no overlap or ambiguity.
Both tools use the consistent 'pubmed_' prefix followed by descriptive action/noun pairs (pubmed_search, pubmed_article_detail), maintaining a clear and predictable pattern.
With only 2 tools, the server covers the essential PubMed operations (search and detail retrieval). While more advanced features could be added, this minimal set is well-scoped for basic article lookup.
The server covers the core search and detail retrieval workflow for PubMed articles. It lacks some advanced features like author-specific queries or citation networks, but it meets the primary need of searching and viewing articles.