KS-GEN-AI

Web Request MCP Server

Community KS-GEN-AI
Updated

Ability to send a simple web request from a LLM

Web Request MCP Server

Execute HTTP requests via MCP (Model Context Protocol)

This is a TypeScript-based MCP server that provides a flexible tool to execute HTTP requests with custom methods, headers, and body content. It enables AI assistants to interact with web APIs and endpoints seamlessly.

Features

http_request

A versatile tool for making HTTP requests with full control over all parameters.

  • Purpose: Execute HTTP requests with custom configuration
  • Parameters:
    • url (required): The target URL (e.g., "https://api.example.com/endpoint")
    • method (optional): HTTP method - GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS (defaults to GET)
    • headers (optional): Custom headers as key-value pairs
    • body (optional): Request body (string or object, automatically JSON stringified for objects)
    • params (optional): URL query parameters as key-value pairs
  • Behavior:
    • Automatic Content-Type detection for JSON bodies
    • Response truncation for large responses (max 50,000 characters)
    • Comprehensive error handling with status codes
    • Returns full response including status, headers, and data

Example requests:

// Simple GET request
{ url: "https://api.github.com/users/octocat" }

// POST with JSON body
{
  url: "https://api.example.com/data",
  method: "POST",
  headers: { "Authorization": "Bearer token123" },
  body: { name: "John", email: "[email protected]" }
}

// GET with query parameters
{
  url: "https://api.example.com/search",
  params: { q: "search term", limit: "10" }
}

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Installation

Using with Claude Desktop

To use with Claude Desktop, add the server config:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.jsonOn Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "webrequest": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/webrequest-mcp-server/build/index.js"]
    }
  }
}

Using with Cursor

Add to your Cursor MCP settings configuration file:

{
  "mcpServers": {
    "webrequest": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/webrequest-mcp-server/build/index.js"]
    }
  }
}

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Configuration

The server configuration:

  • Max response size: 50,000 characters (responses larger than this are truncated)
  • Supported methods: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS
  • Content types: Automatic JSON handling, supports any content type via headers

Use Cases

This MCP server is useful for:

  • Testing and interacting with REST APIs
  • Fetching data from web services
  • Automating HTTP requests in AI workflows
  • Prototyping API integrations
  • Debugging web endpoints

License

MIT License - see LICENSE file for details

MCP Server ยท Populars

MCP Server ยท New