postman-mcp
Provides tools for managing Postman workspaces, collections, requests, environments, and folders programmatically via the Postman API.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@postman-mcp add a GET request to the 'Users' collection"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Postman MCP
A Model Context Protocol (MCP) server that provides seamless integration with the Postman API. This package enables AI assistants and applications to interact with Postman workspaces, collections, requests, environments, and folders programmatically.
🚀 Features
📁 Workspace Management
List all workspaces
Get detailed workspace information
Create new workspaces (personal/team)
Update workspace metadata
📚 Collection Management
List collections within workspaces
Get collection details with full structure
Create new collections
Update collection metadata and variables
Delete collections
🔧 Request Management
Add new HTTP requests to collections
Update existing requests (method, URL, headers, body)
Move requests between folders
Delete requests
Support for all HTTP methods (GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS)
🌍 Environment Management
List environments in workspaces
Get environment details and variables
Create new environments with variables
Update environment variables
Delete environments
Support for secret, default, and custom variable types
📂 Folder Organization
Create nested folder structures
Organize requests within folders
Support for hierarchical folder paths
Related MCP server: MCP Server
⚙️ Setup
1. Get Your Postman API Key
Go to Postman Account Settings
Click "Generate API Key"
Give it a name and copy the generated key
2. MCP Configuration
For Claude Desktop
Add to your Claude Desktop configuration file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"postman": {
"command": "npx",
"args": ["postman-mcp"],
"env": {
"POSTMAN_API_KEY": "your_postman_api_key_here"
}
}
}
}For Cursor
Add the configuration to your Cursor settings:
{
"mcp": {
"servers": {
"postman": {
"command": "npx postman-mcp",
"env": {
"POSTMAN_API_KEY": "your_postman_api_key_here"
}
}
}
}
}For Warp
Add the following to your Warp session setup:
{
"postman": {
"command": "npx",
"args": ["postman-mcp"],
"env": {
"POSTMAN_API_KEY": "your_postman_api_key_here"
},
"working_directory": null,
"start_on_launch": true
}
}For Other MCP Clients
Use the standard MCP server connection with:
Command:
npx postman-mcpornode path/to/postman-mcp/dist/index.jsTransport: stdio
Environment: Set
POSTMAN_API_KEY
🛠️ Development Setup
Prerequisites
Node.js 18+
npm or yarn
Postman API key
Local Development
Clone the repository:
git clone https://github.com/SalehKhatri/postman-mcp.git cd postman-mcpInstall dependencies:
npm installSet up environment:
cp .env.example .env # Edit .env and add your POSTMAN_API_KEYBuild the project:
npm run buildRun in development mode:
npm run dev
🔍 Available Tools
Workspace Operations
list_workspaces- Get all workspacesget_workspace- Get workspace detailscreate_workspace- Create new workspaceupdate_workspace- Update workspace info
Collection Operations
list_collections- Get collections in workspaceget_collection- Get full collection structurecreate_collection- Create new collectionupdate_collection- Update collection metadatadelete_collection- Remove collection
Request Operations
add_request- Add HTTP request to collectionupdate_request- Modify existing requestdelete_request- Remove request from collection
Environment Operations
list_environments- Get environments in workspaceget_environment- Get environment variablescreate_environment- Create new environmentupdate_environment- Modify environment variablesdelete_environment- Remove environment
Folder Operations
create_folder- Create folder in collection
💡 Usage Examples
Basic Workflow
// List all workspaces
const workspaces = await mcp.callTool("list_workspaces", {});
// Get collections in a workspace
const collections = await mcp.callTool("list_collections", {
workspaceId: "workspace-id",
});
// Create a new request
await mcp.callTool("add_request", {
collectionUid: "collection-uid",
name: "Get Users",
method: "GET",
url: "https://api.example.com/users",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer {{token}}",
},
folder: "API/Users",
});
// Create an environment
await mcp.callTool("create_environment", {
name: "Production",
workspaceId: "workspace-id",
values: [
{
key: "base_url",
value: "https://api.production.com",
type: "default",
},
{
key: "api_key",
value: "secret-key",
type: "secret",
},
],
});🔐 Security
API Key Protection: Store your Postman API key securely using environment variables
Scope Limitation: The API key should have minimal required permissions
Network Security: All requests use HTTPS to communicate with Postman API
🤝 Contributing
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add some amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🔗 Links
📞 Support
Create an issue for bug reports or feature requests
Check existing issues before creating new ones
Provide detailed information including error messages and environment details
Made with ❤️ for the developer community
Available Tools
19 toolsadd_requestC
Add a new request to a collection
Inputs: url (required), name (required), method (required), collectionUid (required), +4 more.
create_collectionB
Create a new collection
Inputs: name (required), description (required), workspaceId (required).
create_environmentC
Create a new environment
Inputs: name (required), workspaceId (required), values.
create_folderC
Create a new folder in a collection
Inputs: folderName (required), collectionUid (required), parentFolder.
create_workspaceC
Create a new workspace
Inputs: name (required), type (required), description (required).
delete_collectionB
Delete a Postman collection
Inputs: collectionUid (required).
delete_environmentC
Delete an existing environment
Inputs: environmentUid (required).
delete_folderC
Delete a folder from a collection
Inputs: folderName (required), collectionUid (required), parentFolder.
delete_requestB
Delete a request from a collection
Inputs: requestName (required), collectionUid (required).
get_collectionB
Get detailed information about a specific collection
Inputs: collectionUid (required).
get_environmentA
Get detailed information about a specific environment
Inputs: environmentUid (required).
get_workspaceA
Get detailed information about a specific workspace
Inputs: workspaceId (required).
list_collectionsB
List all collections in a workspace
Inputs: workspaceId (required).
list_environmentsC
List all environments
Inputs: workspaceId (required).
list_workspacesB
List all workspaces
Inputs: no named parameters.
update_collectionB
Update collection metadata (name, description, variables)
Inputs: collectionUid (required), info, variables.
update_environmentB
Update an existing environment
Inputs: environmentUid (required), name, values.
update_requestA
Update an existing request in a collection
Inputs: updates (required), requestName (required), collectionUid (required).
update_workspaceB
Update an existing workspace
Inputs: workspaceId (required), name, description.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 19 tools
Each tool targets a distinct resource and action. Workspaces, collections, requests, environments, and folders are cleanly separated, with no two tools appearing to do the same thing. The CRUD operations for each resource are unambiguous.
The naming pattern is overwhelmingly consistent, using verb_noun in snake_case (e.g., list_workspaces, get_collection, update_environment). The only deviation is 'add_request' instead of 'create_request', which slightly disrupts the otherwise uniform create/update/delete pattern.
At 19 tools, the count is slightly above the ideal 3-15 range but still reasonable for the breadth of Postman resources covered. Each tool has a clear purpose, and none feel redundant or unnecessary.
Collections and environments have full CRUD coverage, but requests lack read/list operations, folders only support create/delete, and workspaces miss delete. These gaps create minor dead ends that agents may need to work around when managing certain resources.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
The Mercado Pago MCP Server implements the Model Context Protocol to provide AI agents and LLMs with access to Mercado Pago's APIs and tools within compatible development environments. It acts as an intermediary that translates Mercado Pago resources into executable functions (tools) that AI applications can invoke to perform actions and automate flows. The server simplifies integration, enables using documentation to implement or improve code, and optimizes operations through natural language interactions without manual implementations.
MCP server for AI access to SmartBear tools, including BugSnag, Reflect, Swagger, PactFlow, QTM4J.
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server that generates AI agent tools from Postman collections and requests. This server integrates with the Postman API to convert API endpoints into type-safe code that can be used with various AI frameworks.113MIT
- AlicenseNot gradedqualityDmaintenanceModel Context Protocol server that enables API test automation across various AI hosts (Claude, OpenAI, custom) using Postman Collections.MIT
- AlicenseBqualityDmaintenanceA server that implements the Model Context Protocol (MCP) standard, enabling LLMs like Claude to interact with selected Postman API requests through generated JavaScript tools.4MIT
- AlicenseBqualityDmaintenanceAn MCP-compatible server that provides tools for integrating selected Postman API requests, allowing LLMs like Claude to interact with APIs through natural language.3MIT