返回市场
邮递员-MCP服务器

邮递员-MCP服务器

作者:ankit-roy-06025 星标更新:2025-09-13

项目介绍

🚀 Postman MCP 服务器

通过无缝集成 Postman 将您的 AI 对话转换为强大的 API 工作流

npm 版本 npm 下载量 CI 安全审计 Socket 徽章 许可证:MIT Node.js 版本 TypeScript

停止在您的 AI 助手和 Postman 之间切换! 这个模型上下文协议(MCP)服务器将 Postman 的全部功能直接带入您与 Cline、Claude Desktop、Cursor 和其他兼容 MCP 的客户端之间的 AI 对话中。

🎯 您为什么需要这个

问题

  • 上下文切换噩梦:不断在 AI 聊天和 Postman 之间切换以管理 API
  • 手动 API 文档:费力地向您的 AI 助手解释 API 结构
  • 工作流程中断:为了测试、更新或创建 API 请求而打断您的流程
  • 团队协作差距:难以在 AI 辅助开发和团队工具之间共享 API 工作流

解决方案

一个命令。无限可能。 将您的 AI 助手直接连接到 Postman,并解锁:

即时 API 管理 - 创建、更新和组织 API 集合,无需离开您的 AI 对话
🔄 实时同步 - 通过 AI 进行的更改立即在 Postman 中可用
🎯 上下文感知辅助 - 您的 AI 理解您的整个 API 生态系统
🚀 加速开发 - 使用 AI 驱动的工作流构建和测试 API 快速 10 倍
👥 无缝团队整合 - AI 生成的 API 自动同步到您的团队的 Postman 工作区

🌟 您可以做什么

🏢 智能工作区管理

  • “为我们的移动应用项目创建一个新的工作区” - 几秒钟完成
  • “列出我所有的团队工作区” - 即时了解您的组织情况
  • “切换到生产工作区” - 无缝环境管理

📚 智能集合构建

  • “为用户认证构建一个 REST API 集合” - AI 创建整个结构
  • “为产品端点添加 CRUD 操作” - 完整的 API 集合瞬间生成
  • “将我的 OpenAPI 规范导入到新集合中” - 自动化 API 文档

🌍 动态环境控制

  • “设置开发、预发布和生产环境” - 一个命令多环境设置
  • “更新生产 API 密钥” - 安全凭证管理
  • “将所有请求切换到使用预发布服务器” - 批量环境更改

🔧 轻松请求管理

  • “创建带有验证的用户注册 POST 请求” - 完整请求,包括标头、正文和测试
  • “为这个集合中的所有请求添加身份验证” - 批量安全实施
  • “为用户创建端点生成测试数据” - 真实的测试场景

📂 有序文件夹结构

  • “按功能整理这些请求” - 自动逻辑分组
  • “为微服务创建文件夹结构” - 企业级组织
  • “将所有身份验证请求移到单独的文件夹中” - 即时重新组织

🎭 AI 驱动的模拟服务器创建

  • “为我的用户 API 创建一个带有真实数据的模拟服务器” - 即时模拟端点和智能响应
  • “生成带有错误场景的模拟响应进行测试” - 包括 400、401、404、500 响应的完整测试场景
  • “设置具有动态数据和响应延迟的模拟服务器” - 类似生产的模拟行为用于真实的测试

🚀 快速开始(60 秒掌握 API)

1. 全局安装

npm install -g postman-mcp-server

2. 获取您的 Postman API 密钥

  1. 访问 Postman API 密钥
  2. 点击“生成 API 密钥”
  3. 复制您的密钥

3. 配置您的 AI 代理

对于 Cline(VSCode 扩展)

在您的 Cline MCP 设置中添加:

{
  "mcpServers": {
    "postman": {
      "command": "postman-mcp-server",
      "env": {
        "POSTMAN_API_KEY": "your-postman-api-key-here"
      }
    }
  }
}

对于 Claude Desktop

在您的配置文件中添加:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "postman": {
      "command": "postman-mcp-server",
      "env": {
        "POSTMAN_API_KEY": "your-postman-api-key-here"
      }
    }
  }
}

对于 Cursor

在您的 Cursor MCP 配置中添加:

{
  "mcpServers": {
    "postman": {
      "command": "postman-mcp-server",
      "env": {
        "POSTMAN_API_KEY": "your-postman-api-key-here"
      }
    }
  }
}

4. 开始构建!

重启您的 AI 代理并开始:

"显示我所有的 Postman 工作区,并帮助我为我的电子商务项目创建一个新的 API 集合"

💡 实际用例

🎯 API 优先开发

您: "我在构建一个社交媒体应用。创建一个完整的 API 集合,包括用户管理、帖子和评论。"

AI: *创建工作区,设置具有适当文件夹结构的集合,添加用户/帖子/评论的 CRUD 操作,配置身份验证,并设置测试环境*

🔄 快速原型设计

您: "将这个 OpenAPI 规范转换为 Postman 集合,并添加真实的测试数据。"

AI: *导入规范,创建有组织的集合,生成带有适当标头和真实 JSON 负载的样本请求*

🚀 团队入职

您: "为我们的新团队成员设置一个开发环境,包括我们所有的微服务端点。"

AI: *创建工作区,导入所有集合,设置环境变量,按服务组织,添加文档*

🔧 API 测试自动化

您: "为我的用户管理集合中的所有端点添加全面的测试。"

AI: *为每个请求添加状态码检查、响应验证、身份验证测试和错误处理*

🛠️ 强大功能

🏢 工作区管理

  • 列表 & 浏览:立即查看所有工作区
  • 创建 & 配置:设置新的团队或个人工作区
  • 更新 & 组织:修改工作区设置和描述
  • 智能切换:上下文感知的工作区管理

📚 集合操作

  • 智能创建:AI 驱动的集合结构生成
  • 批量操作:同时管理多个集合
  • 版本控制:跟踪和管理集合更改
  • 导入/导出:无缝数据迁移

🌍 环境控制

  • 多环境设置:开发、预发布、生产配置
  • 变量管理:安全处理 API 密钥和端点
  • 批量更新:跨集合更改环境
  • 环境克隆:复制设置以供新项目使用

🔧 请求工程

  • 智能生成:AI 创建具有适当结构的完整请求
  • 批量修改:同时更新多个请求
  • 身份验证集成:跨请求自动设置身份验证
  • 测试生成:所有端点的综合测试套件

📂 组织工具

  • 文件夹层次结构:创建逻辑 API 分组
  • 自动组织:AI 建议最佳文件夹结构
  • 批量移动:高效重组请求
  • 搜索 & 过滤:在大型集合中查找请求

🔒 安全性及最佳实践

🛡️ 供应链安全

  • ✅ 无已知漏洞:通过 npm 审计进行定期安全审计
  • 🔍 依赖监控:通过 Socket.dev 进行自动漏洞扫描
  • 📦 最小依赖:只有 3 个生产依赖项以减少攻击面
  • 🔄 定期更新:自动依赖项更新和安全补丁
  • 🏷️ 签名发布:所有发布都经过签名和验证

🔐 API 安全

  • 🔑 安全 API 密钥处理:仅存储环境变量
  • 🛡️ 遵守速率限制:内置 Postman API 速率限制
  • ✅ 输入验证:使用 Zod 模式进行全面请求验证
  • 🔍 错误处理:优雅失败管理,不泄露数据
  • 📝 审计日志:跟踪所有 API 操作以进行安全监控

🚨 安全报告

发现安全漏洞?请参阅我们的 安全政策,了解负责任披露指南。

🔧 安全配置

# 推荐:使用环境变量存储 API 密钥
export POSTMAN_API_KEY="your-secure-api-key"

# 不要将 API 密钥提交到版本控制
echo "POSTMAN_API_KEY=*" >> .gitignore

📊 安全监控

  • 自动安全审计:每日漏洞扫描
  • 依赖健康检查:每周依赖审查
  • Socket.dev 集成:实时供应链监控
  • GitHub 安全通告:自动安全通知

🎨 高级配置

环境变量设置

export POSTMAN_API_KEY="your-postman-api-key-here"

替代配置(如果全局安装不起作用)

{
  "mcpServers": {
    "postman": {
      "command": "node",
      "args": ["$(npm root -g)/postman-mcp-server/build/index.js"],
      "env": {
        "POSTMAN_API_KEY": "your-postman-api-key-here"
      }
    }
  }
}

🧪 验证

测试您的安装:

# 检查命令是否可用
postman-mcp-server --help

# 验证全局安装
npm list -g postman-mcp-server

🚀 可用工具

<details> <summary><strong>🏢 工作区工具</strong></summary>

list_workspaces

立即获取所有 Postman 工作区

{ "name": "list_workspaces", "arguments": {} }

get_workspace

详细的工区信息和元数据

{ "name":  "get_workspace", "arguments": { "workspaceId": "workspace-id" } }

create_workspace

创建新的团队或个人工作区

{
  "name": "create_workspace",
  "arguments": {
    "name": "我的新工作区",
    "type": "team",
    "description": "我们的新项目的工区"
  }
}

update_workspace

修改工作区设置和描述

{
  "name": "update_workspace",
  "arguments": {
    "workspaceId": "workspace-id",
    "name": "更新名称",
    "description": "新描述"
  }
}

delete_workspace

删除工作区(谨慎使用!)

{ "name": "delete_workspace", "arguments": { "workspaceId": "workspace-id" } }
</details> <details> <summary><strong>📚 集合工具</strong></summary>

list_collections

浏览所有集合或按工作区过滤

{ "name": "list_collections", "arguments": { "workspaceId": "可选工作区ID" } }

get_collection

完整的集合结构和元数据

{ "name": "get_collection", "arguments": { "collectionId": "collection-id" } }

create_collection

构建新的 API 集合

{
  "name": "create_collection",
  "arguments": {
    "name": "用户管理 API",
    "description": "完整的用户 CRUD 操作",
    "workspaceId": "workspace-id"
  }
}

update_collection

修改集合元数据和设置

{
  "name": "update_collection",
  "arguments": {
    "collectionId": "collection-id",
    "name": "更新的 API 集合",
    "description": "增强的描述"
  }
}

delete_collection

永久删除集合

{ "name": "delete_collection", "arguments": { "collectionId": "collection-id" } }
</details> <details> <summary><strong>🌍 环境工具</strong></summary>

list_environments

查看所有环境或按工作区过滤

{ "name": "list_environments", "arguments": { "workspaceId": "可选工作区ID" } }

get_environment

环境详情及其所有变量

{ "name": "get_environment", "arguments": { "environmentId": "environment-id" } }

create_environment

设置具有变量的新环境

{
  "name": "create_environment",
  "arguments": {
    "name": "生产",
    "values": [
      { "key": "baseUrl", "value": "https://api.production.com", "type": "default" },
      { "key": "apiKey", "value": "secret-key", "type": "secret" }
    ],
    "workspaceId": "workspace-id"
  }
}

update_environment

修改环境变量和设置

{
  "name": "update_environment",
  "arguments": {
    "environmentId": "environment-id",
    "name": "更新的环境",
    "values": [
      { "key": "新变量", "value": "新值", "type": "default" }
    ]
  }
}

delete_environment

删除环境

{ "name": "delete_environment", "arguments": { "environmentId": "environment-id" } }
</details> <details> <summary><strong>🔧 请求 & 文件夹管理工具</strong></summary>

create_request

创建具有完整配置的新 API 请求

{
  "name": "create_request",
  "arguments": {
    "collectionId": "collection-id",
    "name": "创建用户",
    "url": "https://api.example.com/users",
    "method": "POST",
    "description": "创建一个新的用户账户",
    "headers": [
      { "key": "Content-Type", "value": "application/json" },
      { "key": "Authorization", "value": "Bearer {{token}}" }
    ],
    "body": {
      "mode": "raw",
      "raw": "{\"name\": \"John Doe\", \"email\": \"john@example.com\"}"
    },
    "folderId": "可选文件夹ID"
  }
}

get_request

检索详细的请求信息

{
  "name": "get_request",
  "arguments": {
    "collectionId": "collection-id",
    "requestId": "request-id"
  }
}

update_request

修改现有请求

{
  "name": "update_request",
  "arguments": {
    "collectionId": "collection-id",
    "requestId": "request-id",
    "name": "更新的请求名称",
    "url": "https://api.example.com/v2/users",
    "method": "PUT",
    "headers": [
      { "key": "Content-Type", "value": "application/json" }
    ]
  }
}

delete_request

从集合中删除请求

{
  "name": "delete_request",
  "arguments": {
    "collectionId": "collection-id",
    "requestId": "request-id"
  }
}

create_folder

使用文件夹结构组织请求

{
  "name": "create_folder",
  "arguments": {
    "collectionId": "collection-id",
    "name": "用户管理",
    "description": "所有与用户相关的 API 端点",
    "parentFolderId": "可选父文件夹ID"
  }
}

update_folder

修改文件夹属性

{
  "name": "update_folder",
  "arguments": {
    "collectionId": "collection-id",
    "folderId": "folder-id",
    "name