About REST-to-Postman MCP
REST-to-Postman MCP is an MCP server for API developers that syncs REST endpoints and environment variables to Postman collections and environments. It supports multiple authentication methods, merges endpoints into existing collections, and runs over stdio or SSE.
Key features
- 01Converts REST endpoints into Postman collections
- 02Creates or updates Postman environments
- 03Supports multiple authentication methods
- 04Merges endpoints into existing collections
- 05Handles sensitive environment variables
- 06Supports stdio and SSE transports
Use cases
- 01Generate a Postman collection from a REST API
- 02Sync application environment variables to Postman
- 03Update an existing collection while retaining endpoints
MCP support
The server exposes tools for creating or updating Postman environments and collections to MCP clients. A Postman API key and workspace ID are required.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEREST-to-Postman MCP
A Model Context Protocol (MCP) server that converts REST API code (e.g., NestJS controllers, FastAPI/Flask endpoints) to Postman collections and environments. This tool helps developers automatically sync their REST API endpoints and environment configurations with Postman.
Features
- Convert REST API endpoints to Postman collections
- Sync environment variables with Postman environments
- Support for various authentication methods (e.g., Bearer token)
- Intelligent merging of new endpoints with existing collections
- Automatic handling of sensitive environment variables
- Support for both stdio and SSE transport modes
Prerequisites
- Bun v1.2.2 or later
- Postman API Key
- Postman Workspace ID
Installation & Usage
This is a Model Context Protocol (MCP) stdio server that requires access to your Postman workspace to create/update collections and environments.
Installing via Smithery
To install REST-to-Postman MCP for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @runninghare/rest-to-postman-mcp --client claude
Running the MCP Server with npx
To use the MCP server with npx:
npx -y rest-to-postman@latest --postman-api-key your_api_key --postman-workspace-id your_workspace_id
Or use environment variables:
export POSTMAN_API_KEY=your_api_key
export POSTMAN_ACTIVE_WORKSPACE_ID=your_workspace_id
npx -y rest-to-postman@latest
You can integrate this command with various AI code editors that support MCP:
- Claude Desktop
- Cursor
- Windsurf
- Roo Cline Editor
Important Note: The server requires Postman API credentials to function. Make sure you have both the API key and workspace ID ready before starting the server.
Tool Descriptions
The server provides two main tools:
1. REST to Postman Environment (rest_to_postman_env)
Creates or updates a Postman environment with your application's environment variables.
Input Parameters:
envName(string): Name of the Postman environmentenvVars(object): Key-value pairs of environment variables
Example Input:
{
"envName": "REST Environment",
"envVars": {
"API_URL": "https://api.example.com",
"API_TOKEN": "secret-token-1"
}
}
2. REST to Postman Collection (rest_to_postman_collection)
Creates or updates a Postman collection with your REST API endpoints.
Input Parameters:
collectionRequest(object): Postman collection configuration containing:info: Collection metadataauth: Authentication settingsitem: Array of API endpoints
Example Input:
{
"info": {
"name": "REST Collection",
"description": "REST Collection",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
},
"auth": {
"type": "bearer",
"bearer": [
{
"key": "Authorization",
"value": "Bearer {{API_TOKEN}}",
"type": "string"
}
]
},
"item": [
{
"name": "Get Users",
"request": {
"method": "GET",
"url": {
"raw": "{{API_URL}}/users",
"protocol": "https",
"host": ["api", "example", "com"],
"path": ["users"]
}
}
}
]
}
Response Format
Both tools return a success message confirming the creation/update of the Postman resource:
{
"content": [{
"type": "text",
"text": "Successfully created/updated Postman environment: REST Environment"
}]
}
Use this MCP in Cursor
You can use this MCP server in Cursor. Here's an example which generates a Postman Collection based on a Nest.js Typescript controller.
Prompt:
Create a postman collection named "Campaign Endpoints" based on this next.js controller. The baseUrl is `http://localhost:7022`. The collection should have a Bear token which applies to all the endpoints
Here's the automatically generated Postman Collection:
Note all the endpoints from the Campaign Controller are generated, along with the Bear token setting.
Development
Local Setup
- Clone the repository:
git clone https://github.com/runninghare/rest-to-postman.git
cd rest-to-postman
- Install dependencies:
bun install
- Create a
.envfile:
POSTMAN_API_KEY=your_api_key_here
POSTMAN_ACTIVE_WORKSPACE_ID=your_workspace_id_here
Running in Development Mode
For development, you can run the server directly using Bun:
# Start in stdio mode (default)
bun run src/mcp.ts
# Start in SSE mode
bun run src/mcp.ts --sse
Building
To build the project:
bun run build
This will create a bundled output in the dist directory.
Scripts
bun run build- Build the projectbun run dev- Run the server in development modebun run startSSE- Start the server in SSE mode
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.