Postman MCP 服务器
展示/揭露 Postman API 作为一组\[模型上下文协议(MCP)\]工具。此项目将Postman的核心API端点封装成类型良好的工具,这些工具可以通过您喜欢的MCP主机(Codex、Claude Desktop等)调用。使用它来列出工作区、管理集合、编辑请求和响应(示例),甚至直接从聊天中运行监视器。
特点/功能
| 工具 | 描述 |
|---|---|
listWorkspaces 列出已认证的API密钥可以访问的每个工作区。使用 GET /workspaces【260284429113736†截图】。 | |
getWorkspace | 通过ID获取单个工作区的详细信息。包括集合、环境、模拟和监控的数组【260284429113736†截图】。 |
listCollectionsInWorkspace | 给定一个工作区ID,返回该工作区中包含的集合引用(UID、名称、所有者)。内部调用 GET /workspaces/{workspaceId} 并提取出 collections 数组。 |
createCollection 从一个 Postman Collection v2 对象创建一个新的集合。接受一个可选的参数 workspaceId 查询参数,用于将集合保存到特定的工作区【516251068010627†截图】。 | |
getCollection 使用UID检索完整的集合定义 GET /collections/{collectionUid}【260252579404281†截图】。 | |
updateCollection 通过使用新的Collection v2有效载荷替换现有的集合 PUT /collections/{collectionUid}【671023381355334†截图】。 | |
createRequest | 向集合中添加一个新请求。发送 POST /collections/{collectionId}/requests 带着一个 request 对象,允许你向集合中追加或插入请求。 |
getRequest 从集合中获取一个单独的请求项,使用 GET /collections/{collectionId}/requests/{requestId} (路径变量: collectionId, requestId)【996776406622354†截图】。 | |
updateRequest 使用(某方法/工具)替换现有的请求定义 PUT /collections/{collectionId}/requests/{requestId}. | 翻译成中文是:。 |
createResponse 为请求创建一个示例响应(示例)。用途: POST /collections/{collectionId}/responses?request={requestId} 并且发送一个 response 身体。 | |
getResponse 通过ID获取响应示例 GET /collections/{collectionId}/responses/{responseId}. | |
updateResponse | 使用(某个工具或方法)更新现有示例 PUT /collections/{collectionId}/responses/{responseId}。 |
runMonitor | 同步执行监视器。 调用 POST /monitors/{monitorUid}/run等待执行完成并返回运行结果【322691760681237†截图】。 |
API限制
- 所有端点都需要有效的API密钥。设置
POSTMAN_API_KEY在您的环境中或.env文件。 - 基础URL默认为
https://api.getpostman.com但可以被以下方式覆盖POSTMAN_BASE_URL(适用于欧盟或印度数据区域)。 - 在创建或更新集合时,主体必须符合(相关规范/要求) Postman 集合 v2 规范至少应包含一个
info带有a的物体name和一个item数组。
开始入门
本地开发
- 克隆此存储库并安装依赖项:
cd postman-mcp
npm install- 复制
.env.exampleto.env并添加您的Postman API密钥以及(可选)一个默认工作区:
POSTMAN_API_KEY=pmak-xxxxxxxxxxxxxxxxxxxx
POSTMAN_BASE_URL=https://api.getpostman.com
DEFAULT_WORKSPACE_ID=- 以开发模式运行服务器:
npm run dev服务器在标准输入/输出(stdin/stdout)上监听来自您的MCP主机的JSON-RPC消息。
Docker
使用提供的 Dockerfile 构建并运行:
docker compose run -e POSTMAN_API_KEY=pmak-xxx postman-mcp与Codex(VS Code)集成
在你的(列表/记录中)添加一项条目 ~/.codex/config.toml:
[mcp_servers.postman]
command = "/usr/local/bin/node"
args = ["/absolute/path/postman-mcp/dist/server.js"]
[mcp_servers.postman.env]
POSTMAN_API_KEY = "pmak-xxx..."
POSTMAN_BASE_URL = "https://api.getpostman.com"
DEFAULT_WORKSPACE_ID = ""重新加载 Codex 扩展;带有前缀的新工具 postman 将出现在命令面板或聊天界面中。
示例用法
列出工作区:
listWorkspaces {}在工作区中创建一个新的集合:
createCollection {
"collection": {
"info": {
"name": "Demo API",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
},
"item": []
},
"workspaceId": "8aefd87e-xxxx-4f1a-xxxx-123456789012"
}向现有集合中添加请求:
createRequest {
"collectionId": "631e6cfa-59b0-463c-9b89-123456789abc",
"request": {
"name": "Get Users",
"request": {
"method": "GET",
"url": {
"raw": "https://example.com/users",
"protocol": "https",
"host": ["example","com"],
"path": ["users"]
}
}
}
}为上述请求创建一个示例回复:
createResponse {
"collectionId": "631e6cfa-59b0-463c-9b89-123456789abc",
"requestId": "c82dd0c2-4870-4907-8fcb-593a876cf05b",
"response": {
"name": "200 OK",
"status": "OK",
"code": 200,
"header": [],
"body": "{\"message\":\"success\"}"
}
}同步运行一个监控程序并查看其结果:
runMonitor {
"monitorUid": "9e18469a-2c3d-4a60-8d7f-1234567890ab"
}延长;扩展
这个MCP服务器特意专注于Postman的核心实体。您可以通过添加以下工具来进一步扩展它:
- 环境 – 列出、创建和更新环境变量。
- 模拟(对象) – 管理模拟服务器及其相关的示例。
- 显示器 - 创建、更新和删除监控器,以及检索运行结果。
- 用户信息 – 阅读API使用情况和团队成员数据。
请随意进行分支并添加更多端点以适应您的工作流程!
