Postman MCP Server

Postman MCP Server

Enables interaction with Postman workspaces, collections, requests, responses, and monitors through the Postman API. Allows users to manage API collections, create and update requests/responses, and execute monitors directly from chat.

Category
Visit Server

README

Postman MCP Server

Expose the Postman API as a set of [Model‑Context Protocol (MCP)] tools. This project wraps core Postman API endpoints into well‑typed tools that can be invoked by your favourite MCP host (Codex, Claude Desktop, etc.). Use it to list workspaces, manage collections, edit requests and responses (examples) and even run monitors directly from chat.

Features

Tool Description
listWorkspaces List every workspace the authenticated API key can access. Uses GET /workspaces【260284429113736†screenshot】.
getWorkspace Fetch details of a single workspace by ID. Includes arrays of collections, environments, mocks and monitors【260284429113736†screenshot】.
listCollectionsInWorkspace Given a workspace ID, return the collection references contained in that workspace (UID, name, owner). Internally calls GET /workspaces/{workspaceId} and extracts the collections array.
createCollection Create a new collection from a Postman Collection v2 object. Accepts an optional workspaceId query parameter to save the collection into a specific workspace【516251068010627†screenshot】.
getCollection Retrieve a complete collection definition by its UID using GET /collections/{collectionUid}【260252579404281†screenshot】.
updateCollection Replace an existing collection with a new Collection v2 payload via PUT /collections/{collectionUid}【671023381355334†screenshot】.
createRequest Add a new request to a collection. Sends POST /collections/{collectionId}/requests with a request object, allowing you to append or insert requests into a collection.
getRequest Fetch a single request item from a collection with GET /collections/{collectionId}/requests/{requestId} (path variables: collectionId, requestId)【996776406622354†screenshot】.
updateRequest Replace an existing request definition using PUT /collections/{collectionId}/requests/{requestId}.
createResponse Create a sample response (example) for a request. Uses POST /collections/{collectionId}/responses?request={requestId} and sends a response body.
getResponse Get a response example by ID via GET /collections/{collectionId}/responses/{responseId}.
updateResponse Update an existing example using PUT /collections/{collectionId}/responses/{responseId}.
runMonitor Execute a monitor synchronously. Invokes POST /monitors/{monitorUid}/run, waits for completion and returns run results【322691760681237†screenshot】.

API constraints

  • All endpoints require a valid API key. Set POSTMAN_API_KEY in your environment or .env file.
  • The base URL defaults to https://api.getpostman.com but can be overridden with POSTMAN_BASE_URL (useful for EU or India data regions).
  • When creating or updating collections, the body must conform to the Postman Collection v2 specification. At a minimum include an info object with a name and an item array.

Getting started

Local development

  1. Clone this repository and install dependencies:

    cd postman-mcp
    npm install
    
  2. Copy .env.example to .env and add your Postman API key and (optionally) a default workspace:

    POSTMAN_API_KEY=pmak-xxxxxxxxxxxxxxxxxxxx
    POSTMAN_BASE_URL=https://api.getpostman.com
    DEFAULT_WORKSPACE_ID=
    
  3. Run the server in development mode:

    npm run dev
    

The server listens on stdin/stdout for JSON‑RPC messages from your MCP host.

Docker

Build and run using the provided Dockerfile:

docker compose run -e POSTMAN_API_KEY=pmak-xxx postman-mcp

Integrating with Codex (VS Code)

Add an entry to your ~/.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 = ""

Reload the Codex extension; new tools prefixed with postman will appear in the command palette or chat UI.

Example usage

To list workspaces:

listWorkspaces {}

Create a new collection in a workspace:

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"
}

Add a request to an existing collection:

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"]
      }
    }
  }
}

Create a sample response for the above request:

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\"}"
  }
}

Run a monitor synchronously and view its results:

runMonitor {
  "monitorUid": "9e18469a-2c3d-4a60-8d7f-1234567890ab"
}

Extending

This MCP server intentionally focuses on core Postman entities. You can extend it further by adding tools for:

  • Environments – list, create and update environment variables.
  • Mocks – manage mock servers and their associated examples.
  • Monitors – create, update and delete monitors as well as retrieve run results.
  • User information – read API usage and team membership data.

Feel free to fork and add more endpoints to suit your workflow!

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured