REST-to-Postman MCP
REST-to-Postman MCP
REST API 코드(예: NestJS 컨트롤러, FastAPI/Flask 엔드포인트)를 Postman 컬렉션 및 환경으로 변환하는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 도구는 개발자가 REST API 엔드포인트와 환경 구성을 Postman과 자동으로 동기화할 수 있도록 지원합니다.
특징
REST API 엔드포인트를 Postman 컬렉션으로 변환
Postman 환경과 환경 변수 동기화
다양한 인증 방식 지원(예: Bearer 토큰)
기존 컬렉션과 새로운 엔드포인트의 지능적 병합
민감한 환경 변수의 자동 처리
stdio 및 SSE 전송 모드 모두 지원
Related MCP server: Codebase Insights MCP Server
필수 조건
Bun v1.2.2 이상
Postman API 키
Postman 작업 공간 ID
설치 및 사용
이는 Postman 작업 공간에 액세스하여 컬렉션과 환경을 생성/업데이트해야 하는 MCP(Model Context Protocol) stdio 서버입니다.
Smithery를 통해 설치
Smithery를 통해 Claude Desktop용 REST-to-Postman MCP를 자동으로 설치하려면:
지엑스피1
npx 로 MCP 서버 실행
npx 와 함께 MCP 서버를 사용하려면:
npx -y rest-to-postman@latest --postman-api-key your_api_key --postman-workspace-id your_workspace_id또는 환경 변수를 사용하세요.
export POSTMAN_API_KEY=your_api_key
export POSTMAN_ACTIVE_WORKSPACE_ID=your_workspace_id
npx -y rest-to-postman@latest 이 명령은 MCP를 지원하는 다양한 AI 코드 편집기와 통합할 수 있습니다.
클로드 데스크탑
커서
윈드서핑
루 클라인 편집자
중요 참고 : 서버가 작동하려면 Postman API 자격 증명이 필요합니다. 서버를 시작하기 전에 API 키와 작업 공간 ID를 모두 준비하세요.
도구 설명
서버는 두 가지 주요 도구를 제공합니다.
1. REST에서 Postman 환경( rest_to_postman_env )
애플리케이션의 환경 변수를 사용하여 Postman 환경을 생성하거나 업데이트합니다.
입력 매개변수:
envName(문자열): Postman 환경의 이름envVars(객체): 환경 변수의 키-값 쌍
입력 예시:
{
"envName": "REST Environment",
"envVars": {
"API_URL": "https://api.example.com",
"API_TOKEN": "secret-token-1"
}
}2. REST에서 Postman 컬렉션으로( rest_to_postman_collection )
REST API 엔드포인트를 사용하여 Postman 컬렉션을 만들거나 업데이트합니다.
입력 매개변수:
collectionRequest(객체): 다음을 포함하는 Postman 컬렉션 구성:info: 컬렉션 메타데이터auth: 인증 설정item: API 엔드포인트 배열
입력 예시:
{
"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"]
}
}
}
]
}응답 형식
두 도구 모두 Postman 리소스 생성/업데이트를 확인하는 성공 메시지를 반환합니다.
{
"content": [{
"type": "text",
"text": "Successfully created/updated Postman environment: REST Environment"
}]
}커서에서 이 MCP를 사용하세요
Cursor에서 이 MCP 서버를 사용할 수 있습니다. Nest.js Typescript 컨트롤러를 기반으로 Postman 컬렉션을 생성하는 예시는 다음과 같습니다.
즉각적인 :
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자동 생성된 Postman 컬렉션은 다음과 같습니다.
Campaign 컨트롤러의 모든 엔드포인트가 Bear 토큰 설정과 함께 생성됩니다.
개발
로컬 설정
저장소를 복제합니다.
git clone https://github.com/runninghare/rest-to-postman.git
cd rest-to-postman종속성 설치:
bun install.env파일을 만듭니다.
POSTMAN_API_KEY=your_api_key_here
POSTMAN_ACTIVE_WORKSPACE_ID=your_workspace_id_here개발 모드에서 실행
개발을 위해 Bun을 사용하여 서버를 직접 실행할 수 있습니다.
# Start in stdio mode (default)
bun run src/mcp.ts
# Start in SSE mode
bun run src/mcp.ts --sse건물
프로젝트를 빌드하려면:
bun run build이렇게 하면 dist 디렉토리에 묶인 출력이 생성됩니다.
스크립트
bun run build- 프로젝트 빌드bun run dev- 개발 모드에서 서버 실행bun run startSSE- SSE 모드로 서버 시작
기여하다
기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.
특허
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.
Available Tools
2 toolsrest_to_postman_collectionA
Creates or updates a Postman collection with the provided collection configuration. This tool helps synchronize your REST API endpoints with Postman. When updating an existing collection, it intelligently merges the new endpoints with existing ones, avoiding duplicates while preserving custom modifications made in Postman. Here's an example:
{
"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"]
}
}
},
{
"name": "Create User",
"request": {
"method": "POST",
"url": {
"raw": "{{API_URL}}/users"
},
"body": {
"mode": "raw",
"raw": "{"name":"John Doe","email":"john.doe@example.com"}"
}
}
}
]
}
| Name | Required | Description | Default |
|---|---|---|---|
| collectionRequest | Yes | The Postman collection configuration containing info, items, and other collection details |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It describes key behaviors: it can create or update collections, intelligently merges endpoints to avoid duplicates, and preserves custom modifications. However, it lacks details on permissions, error handling, or rate limits, which are important for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose but includes a lengthy example that may not be necessary for understanding the tool's function. While the example is helpful, it makes the description less concise, and some details could be moved to documentation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (1 parameter with nested objects, no annotations, no output schema), the description is moderately complete. It covers the tool's purpose and behavior but lacks information on return values, error cases, or prerequisites, which are important for a tool that mutates data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the baseline is 3. The description adds minimal parameter semantics by mentioning 'collection configuration' and providing an example, but it does not explain parameter constraints or usage beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Creates or updates a Postman collection with the provided collection configuration.' It specifies the verb ('creates or updates'), the resource ('Postman collection'), and distinguishes it from sibling tools by mentioning synchronization with REST API endpoints, unlike the sibling 'rest_to_postman_env' which likely handles environments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for usage: 'This tool helps synchronize your REST API endpoints with Postman.' It explains when to use it (for creating or updating collections) and hints at the update behavior (intelligent merging). However, it does not explicitly state when not to use it or name specific alternatives beyond the sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_to_postman_envA
Creates or updates a Postman environment with the provided environment variables. This tool helps synchronize your REST application's environment configuration with Postman. It supports both creating new environments and updating existing ones in your Postman workspace. Environment variables related to sensitive data (containing 'token' in their names) are automatically marked as secrets. Here's an example:
{ "envName": "REST Environment", "envVars": { "API_URL": "https://api.example.com", "API_TOKEN": "secret-token-1" } }
| Name | Required | Description | Default |
|---|---|---|---|
| envName | Yes | The name of the Postman environment to create or update | |
| envVars | Yes | A record of environment variables to be added to the Postman environment. Format: { [key: string]: string } |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals important behavioral traits: support for both create and update operations, automatic secret marking for variables containing 'token', and workspace context. However, it doesn't disclose authentication requirements, rate limits, error handling, or whether the operation is idempotent, leaving significant gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded with the core functionality in the first sentence. The example is helpful but could be more concise. The text is well-structured with clear sentences, though the example takes up significant space relative to the explanatory content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description provides adequate basic information about what the tool does and includes a helpful example. However, it lacks important contextual details: no information about return values, error conditions, authentication requirements, or workspace selection logic. The example helps but doesn't compensate for these missing elements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents both parameters. The description adds minimal value beyond the schema: it provides an example showing the expected JSON structure and mentions the secret-marking behavior for 'token' variables, but doesn't explain parameter semantics beyond what's in the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('creates or updates') and resource ('Postman environment with environment variables'). It distinguishes from the sibling tool 'rest_to_postman_collection' by focusing on environments rather than collections, providing clear differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context ('helps synchronize your REST application's environment configuration with Postman') but doesn't explicitly state when to use this tool versus alternatives. No guidance is provided on prerequisites, error conditions, or specific scenarios where this tool is preferred over manual configuration or other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
rest_to_postman_collection - First observed
rest_to_postman_env
TDQS
Scored across 2 tools
The two tools have completely distinct purposes: one handles Postman collections (API endpoint configurations), while the other handles Postman environments (environment variables). There is no overlap in functionality, making it impossible to confuse them.
Both tools follow a perfect 'rest_to_postman_' prefix pattern with descriptive suffixes ('collection' and 'env'). The naming is completely consistent in style and structure throughout the set.
With only 2 tools, this server feels severely under-scoped for a REST-to-Postman integration purpose. A complete synchronization system would typically need tools for operations like listing collections/environments, deleting resources, or handling authentication flows, not just create/update operations.
The toolset is significantly incomplete for REST-to-Postman synchronization. While create/update operations exist for collections and environments, there are no tools for reading existing resources, deleting them, managing workspaces, or handling more complex Postman features like monitors or mocks. This creates dead ends for agents trying to perform full lifecycle management.
Maintenance
Related MCP Connectors
AI-callable tools for API mocking, testing, monitoring, security, and automation.
End-to-end API testing — generate and run tests from OpenAPI, curl, Postman, or real user traffic.
Give your AI agents trusted access to the full Postman platform.
Discover, compare, and monitor 1,400+ APIs directly from your AI coding agent.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAutomatically converts Postman API collections into MCP-compatible tools for AI assistants. Enables users to interact with any API through natural language by generating JavaScript tools from Postman requests.-
- AlicenseNot gradedqualityCmaintenanceAnalyzes API codebases from GitHub and Bitbucket repositories to generate Postman collections, business reports, and detailed code insights. Supports multiple frameworks including FastAPI, Spring Boot, Flask, Express, and OpenAPI/Swagger specifications.MIT
- AlicenseAqualityDmaintenanceIntegrates Postman with Cursor IDE to manage collections and requests through natural language. It features specialized tools for automatically migrating API endpoints and metadata directly from .NET controller code into Postman collections.8132 npmMIT
- AlicenseBqualityDmaintenanceAutomatically generates Postman collections from code directories by analyzing API endpoints and parameters, enabling easy testing, documentation, and sharing.143MIT