Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AIFire in da houseCheck it out free

mcp-rest-api

MCP.Pizza Chef: dkmaker

The mcp-rest-api is a TypeScript-based MCP server designed to facilitate testing and interaction with REST API endpoints directly from your development environment. It integrates with Cline, enabling developers to send requests, inspect responses, and debug RESTful services efficiently. This server streamlines API testing workflows by embedding REST API capabilities into the MCP ecosystem, supporting rapid development and troubleshooting. Installation is straightforward via Smithery or npm, making it accessible for developers working with various LLM-powered tools and environments.

Use This MCP server To

Test REST API endpoints from development environment Interact with REST APIs during AI-assisted workflows Debug and inspect API responses in real time Integrate REST API testing into MCP-powered agents Automate REST API calls within AI copilots Validate API behavior during development cycles

README

MCP REST API Tester

License: MIT NPM Package smithery badge

A TypeScript-based MCP server that enables testing of REST APIs through Cline. This tool allows you to test and interact with any REST API endpoints directly from your development environment.

Installation

Installing via Smithery

To install REST API Tester for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install dkmaker-mcp-rest-api --client claude

Installing Manually

  1. Install the package globally:
npm install -g dkmaker-mcp-rest-api
  1. Configure Cline Custom Instructions:

To ensure Cline understands how to effectively use this tool, add the following to your Cline custom instructions (Settings > Custom Instructions):

# REST API Testing Instructions

The `test_request` tool enables testing, debugging, and interacting with REST API endpoints. The tool provides comprehensive request/response information and handles authentication automatically.

## When to Use

- Testing specific API endpoints
- Debugging API responses
- Verifying API functionality
- Checking response times
- Validating request/response formats
- Testing local development servers
- Testing API sequences
- Verifying error handling

## Key Features

- Supports GET, POST, PUT, DELETE methods
- Handles authentication (Basic, Bearer, API Key)
- Normalizes endpoints automatically
- Provides detailed response information
- Configurable SSL verification and response limits

## Resources

The following resources provide detailed documentation:

- examples: Usage examples and common patterns
- response-format: Response structure and fields
- config: Configuration options and setup guide

Access these resources to understand usage, response formats, and configuration options.

## Important Notes

- Review API implementation for expected behavior
- Handle sensitive data appropriately
- Consider rate limits and API constraints
- Restart server after configuration changes
  1. Add the server to your MCP configuration:

While these instructions are for Cline, the server should work with any MCP implementation. Configure based on your operating system:

Windows

⚠️ IMPORTANT: Due to a known issue with Windows path resolution (issue #40), you must use the full path instead of %APPDATA%.

Add to C:\Users\<YourUsername>\AppData\Roaming\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json:

{
  "mcpServers": {
    "rest-api": {
      "command": "node",
      "args": [
        "C:/Users/<YourUsername>/AppData/Roaming/npm/node_modules/dkmaker-mcp-rest-api/build/index.js"
      ],
      "env": {
        "REST_BASE_URL": "https://api.example.com",
        // Basic Auth
        "AUTH_BASIC_USERNAME": "your-username",
        "AUTH_BASIC_PASSWORD": "your-password",
        // OR Bearer Token
        "AUTH_BEARER": "your-token",
        // OR API Key
        "AUTH_APIKEY_HEADER_NAME": "X-API-Key",
        "AUTH_APIKEY_VALUE": "your-api-key",
        // SSL Verification (enabled by default)
        "REST_ENABLE_SSL_VERIFY": "false", // Set to false to disable SSL verification for self-signed certificates
        // Response Size Limit (optional, defaults to 10000 bytes)
        "REST_RESPONSE_SIZE_LIMIT": "10000", // Maximum response size in bytes
        // Custom Headers (optional)
        "HEADER_X-API-Version": "2.0",
        "HEADER_Custom-Client": "my-client",
        "HEADER_Accept": "application/json"
      }
    }
  }
}

macOS

Add to ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:

{
  "mcpServers": {
    "rest-api": {
      "command": "npx",
      "args": [
        "-y",
        "dkmaker-mcp-rest-api"
      ],
      "env": {
        "REST_BASE_URL": "https://api.example.com",
        // Basic Auth
        "AUTH_BASIC_USERNAME": "your-username",
        "AUTH_BASIC_PASSWORD": "your-password",
        // OR Bearer Token
        "AUTH_BEARER": "your-token",
        // OR API Key
        "AUTH_APIKEY_HEADER_NAME": "X-API-Key",
        "AUTH_APIKEY_VALUE": "your-api-key",
        // SSL Verification (enabled by default)
        "REST_ENABLE_SSL_VERIFY": "false", // Set to false to disable SSL verification for self-signed certificates
        // Custom Headers (optional)
        "HEADER_X-API-Version": "2.0",
        "HEADER_Custom-Client": "my-client",
        "HEADER_Accept": "application/json"
      }
    }
  }
}

Note: Replace the environment variables with your actual values. Only configure one authentication method at a time:

  1. Basic Authentication (username/password)
  2. Bearer Token (if Basic Auth is not configured)
  3. API Key (if neither Basic Auth nor Bearer Token is configured)

Features

  • Test REST API endpoints with different HTTP methods

  • Support for GET, POST, PUT, and DELETE requests

  • Detailed response information including status, headers, and body

  • Custom Headers:

    • Global headers via HEADER_* environment variables
    • Case-insensitive prefix (HEADER_, header_, HeAdEr_)
    • Case preservation for header names
    • Priority-based application (per-request > auth > custom)
  • Request body handling for POST/PUT methods

  • Response Size Management:

    • Automatic response size limiting (default: 10KB/10000 bytes)
    • Configurable size limit via REST_RESPONSE_SIZE_LIMIT environment variable
    • Clear truncation metadata when responses exceed limit
    • Preserves response structure while only truncating body content
  • SSL Certificate Verification:

    • Enabled by default for secure operation
    • Can be disabled for self-signed certificates or development environments
    • Control via REST_ENABLE_SSL_VERIFY environment variable
  • Multiple authentication methods:

    • Basic Authentication (username/password)
    • Bearer Token Authentication
    • API Key Authentication (custom header)

Usage Examples

Once installed and configured, you can use the REST API Tester through Cline to test your API endpoints:

// Test a GET endpoint
use_mcp_tool('rest-api', 'test_request', {
  "method": "GET",
  "endpoint": "/users"
});

// Test a POST endpoint with body
use_mcp_tool('rest-api', 'test_request', {
  "method": "POST",
  "endpoint": "/users",
  "body": {
    "name": "John Doe",
    "email": "john@example.com"
  }
});

// Test with custom headers
use_mcp_tool('rest-api', 'test_request', {
  "method": "GET",
  "endpoint": "/products",
  "headers": {
    "Accept-Language": "en-US",
    "X-Custom-Header": "custom-value"
  }
});

Development

  1. Clone the repository:
git clone https://github.com/zenturacp/mcp-rest-api.git
cd mcp-rest-api
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

For development with auto-rebuild:

npm run watch

License

This project is licensed under the MIT License - see the LICENSE file for details.

mcp-rest-api FAQ

How do I install the mcp-rest-api server?
You can install it easily via Smithery using 'npx -y @smithery/cli install dkmaker-mcp-rest-api --client claude' or via npm from the package dkmaker-mcp-rest-api.
Can I use mcp-rest-api with LLMs other than Claude?
Yes, while installation examples use Claude, mcp-rest-api is compatible with other LLM providers like OpenAI and Gemini through the MCP protocol.
What programming language is mcp-rest-api written in?
It is implemented in TypeScript, ensuring strong typing and compatibility with modern JavaScript environments.
Does mcp-rest-api support testing all types of REST API methods?
Yes, it supports standard REST methods such as GET, POST, PUT, DELETE, and others, allowing comprehensive API testing.
How does mcp-rest-api integrate with development environments?
It acts as an MCP server exposing REST API endpoints to MCP clients, enabling direct interaction and testing within IDEs or AI copilots.
Is mcp-rest-api open source and under what license?
Yes, it is open source and licensed under the MIT License, allowing free use and modification.
Can I automate API testing workflows using mcp-rest-api?
Absolutely, it can be integrated into automated workflows and AI agents to perform API calls and validations programmatically.