mcp-rest-api

test_request

Test a REST API endpoint and get detailed response information. Base URL: https://api.example.org/v2 | SSL Verification enabled (see config resource for SSL settings) | Authentication: No authentication configured | No custom headers defined (see config resource for headers) | The tool automatically: - Normalizes endpoints (adds leading slash, removes trailing slashes) - Handles authentication header injection - Applies custom headers from HEADER_* environment variables - Accepts any HTTP status code as valid - Limits response size to 10000 bytes (see config resource for size limit settings) - Returns detailed response information including: * Full URL called * Status code and text * Response headers * Response body * Request details (method, headers, body) * Response timing * Validation messages | Error Handling: - Network errors are caught and returned with descriptive messages - Invalid status codes are still returned with full response details - Authentication errors include the attempted auth method | See the config resource for all configuration options, including header configuration.

Input Schema

NameRequiredDescriptionDefault
bodyNoOptional request body for POST/PUT requests
endpointYesEndpoint path (e.g. "/users"). Do not include full URLs - only the path. Example: "/api/users" will resolve to "https://api.example.org/v2/api/users"
headersNoOptional request headers for one-time use. IMPORTANT: Do not use for sensitive data like API keys - those should be configured via environment variables. This parameter is intended for dynamic, non-sensitive headers that may be needed for specific requests.
methodYesHTTP method to use

Input Schema (JSON Schema)

{ "properties": { "body": { "description": "Optional request body for POST/PUT requests", "type": "object" }, "endpoint": { "description": "Endpoint path (e.g. \"/users\"). Do not include full URLs - only the path. Example: \"/api/users\" will resolve to \"https://api.example.org/v2/api/users\"", "type": "string" }, "headers": { "additionalProperties": { "type": "string" }, "description": "Optional request headers for one-time use. IMPORTANT: Do not use for sensitive data like API keys - those should be configured via environment variables. This parameter is intended for dynamic, non-sensitive headers that may be needed for specific requests.", "type": "object" }, "method": { "description": "HTTP method to use", "enum": [ "GET", "POST", "PUT", "DELETE" ], "type": "string" } }, "required": [ "method", "endpoint" ], "type": "object" }

You must be authenticated.

Other Tools