Postman MCP Server logo

Postman MCP Server

by freebeiro

The Postman MCP Server is a Node.js Express application for managing Postman collections, creating mock servers, and running API tests using Newman. It provides a simple interface for test scenario management, mock server generation, and API testing.

View on GitHub

Last updated: N/A

Postman MCP Server

A server for managing Postman collections, creating mock servers, and running API tests using Newman.

Overview

The Postman MCP (Mock Collection Processor) Server is a Node.js Express application that provides a simple interface for:

  1. Test Scenario Management - Create and manage test scenarios using Postman collections
  2. Mock Server Generation - Generate mock servers based on Postman collections
  3. API Testing - Run tests against APIs using Newman (Postman's command-line collection runner)

This server is designed to be used in conjunction with test environments for API development and testing.

Getting Started

Prerequisites

  • Node.js (v14 or higher)
  • npm or yarn
  • Postman API key

Installation

  1. Clone the repository:
git clone <repository-url>
cd postman-mcp-server
  1. Install dependencies:
npm install
  1. Copy the example environment file and update with your values:
cp .env.example .env
  1. Update the .env file with your Postman API key and other configuration.

Running the Server

npm start

The server will run on the port specified in your .env file (default: 3000).

API Endpoints

Create Test Scenario

POST /create-scenario

Create a new test scenario based on a Postman collection.

Create Mock Server

POST /create-mock

Create a new mock server based on a Postman collection.

Run Tests

POST /run-tests/:scenarioId

Run tests for a specific scenario using Newman.

Project Structure

postman-mcp-server/
├── .cursor/            # Cursor rules directory
├── data/               # Data storage
├── examples/           # Example requests and collections
├── src/                # Source code
│   ├── config/         # Configuration files
│   ├── controllers/    # Route controllers
│   ├── middleware/     # Express middleware
│   ├── models/         # Data models
│   ├── routes/         # API routes
│   ├── services/       # Business logic
│   ├── utils/          # Utility functions
│   └── index.js        # Application entry point
├── tests/              # Tests
├── .cursorrules        # Main cursor rules file
├── .env                # Environment variables
├── .gitignore          # Git ignore file
├── DEVELOPMENT_GUIDELINES.md # Development guidelines
├── SOLID_PRINCIPLES.md # SOLID principles guide
└── package.json        # Project dependencies

Development Guidelines

This project follows strict development guidelines and SOLID principles to ensure maintainability and high-quality code. Please refer to the following documents before contributing:

Cursor Rules

This project uses Cursor Rules to enforce our critical development guidelines. These rules are automatically applied when using Cursor as your development environment. Key rules include:

  • 150-Line File Limit - Any file exceeding 150 lines should be split (SRP)
  • No Code Duplication - Extract common functionality into utilities
  • Comprehensive Testing - All code must have 95% test coverage
  • API Examples - All endpoints need example requests
  • JSDoc Comments - All public functions require proper documentation
  • SOLID Principles - All code must adhere to SOLID principles

For details, check the .cursorrules file and .cursor/rules/ directory.

Examples

The examples directory contains practical examples showing how to use each API endpoint. These examples include both curl commands and JavaScript code snippets.

License

MIT