{"id":24082493,"url":"https://github.com/dkmaker/mcp-rest-api","last_synced_at":"2025-09-16T15:31:41.515Z","repository":{"id":269203863,"uuid":"906716908","full_name":"dkmaker/mcp-rest-api","owner":"dkmaker","description":"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.","archived":false,"fork":false,"pushed_at":"2025-07-10T23:20:26.000Z","size":89,"stargazers_count":71,"open_issues_count":0,"forks_count":11,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-13T18:25:48.666Z","etag":null,"topics":["anthropic","claude-code","claude-code-mcp","cline","mcp","mcp-server","mcp-servers"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dkmaker.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-21T17:39:37.000Z","updated_at":"2025-09-11T12:20:59.000Z","dependencies_parsed_at":"2025-04-30T17:48:21.165Z","dependency_job_id":"644c032d-cf72-4f24-9348-e5ff422a9d0a","html_url":"https://github.com/dkmaker/mcp-rest-api","commit_stats":null,"previous_names":["zenturacp/mcp-rest-api","dkmaker/mcp-rest-api"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/dkmaker/mcp-rest-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkmaker%2Fmcp-rest-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkmaker%2Fmcp-rest-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkmaker%2Fmcp-rest-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkmaker%2Fmcp-rest-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dkmaker","download_url":"https://codeload.github.com/dkmaker/mcp-rest-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkmaker%2Fmcp-rest-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275055883,"owners_count":25397746,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-14T02:00:10.474Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["anthropic","claude-code","claude-code-mcp","cline","mcp","mcp-server","mcp-servers"],"created_at":"2025-01-09T23:47:01.848Z","updated_at":"2025-09-16T15:31:41.487Z","avatar_url":"https://github.com/dkmaker.png","language":"JavaScript","readme":"[![MseeP.ai Security Assessment Badge](https://mseep.net/pr/dkmaker-mcp-rest-api-badge.png)](https://mseep.ai/app/dkmaker-mcp-rest-api)\n\n# MCP REST API Tester\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\r\n[![NPM Package](https://img.shields.io/npm/v/dkmaker-mcp-rest-api.svg)](https://www.npmjs.com/package/dkmaker-mcp-rest-api)\r\n[![smithery badge](https://smithery.ai/badge/dkmaker-mcp-rest-api)](https://smithery.ai/server/dkmaker-mcp-rest-api)\r\n\r\nA 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.\r\n\r\n\u003ca href=\"https://glama.ai/mcp/servers/izr2sp4rqo\"\u003e\r\n  \u003cimg width=\"380\" height=\"200\" src=\"https://glama.ai/mcp/servers/izr2sp4rqo/badge?refresh=1234\" /\u003e\r\n\u003c/a\u003e\r\n\r\n## Installation\r\n\r\n### Installing via Smithery\r\n\r\nTo install REST API Tester for Claude Desktop automatically via [Smithery](https://smithery.ai/server/dkmaker-mcp-rest-api):\r\n\r\n```bash\r\nnpx -y @smithery/cli install dkmaker-mcp-rest-api --client claude\r\n```\r\n\r\n### Installing Manually\r\n1. Install the package globally:\r\n```bash\r\nnpm install -g dkmaker-mcp-rest-api\r\n```\r\n\r\n2. Configure Cline Custom Instructions:\r\n\r\nTo ensure Cline understands how to effectively use this tool, add the following to your Cline custom instructions (Settings \u003e Custom Instructions):\r\n\r\n```markdown\r\n# REST API Testing Instructions\r\n\r\nThe `test_request` tool enables testing, debugging, and interacting with REST API endpoints. The tool provides comprehensive request/response information and handles authentication automatically.\r\n\r\n## When to Use\r\n\r\n- Testing specific API endpoints\r\n- Debugging API responses\r\n- Verifying API functionality\r\n- Checking response times\r\n- Validating request/response formats\r\n- Testing local development servers\r\n- Testing API sequences\r\n- Verifying error handling\r\n\r\n## Key Features\r\n\r\n- Supports GET, POST, PUT, DELETE, PATCH methods\r\n- Handles authentication (Basic, Bearer, API Key)\r\n- Normalizes endpoints automatically\r\n- Provides detailed response information\r\n- Configurable SSL verification and response limits\r\n\r\n## Resources\r\n\r\nThe following resources provide detailed documentation:\r\n\r\n- examples: Usage examples and common patterns\r\n- response-format: Response structure and fields\r\n- config: Configuration options and setup guide\r\n\r\nAccess these resources to understand usage, response formats, and configuration options.\r\n\r\n## Important Notes\r\n\r\n- Review API implementation for expected behavior\r\n- Handle sensitive data appropriately\r\n- Consider rate limits and API constraints\r\n- Restart server after configuration changes\r\n```\r\n\r\n3. Add the server to your MCP configuration:\r\n\r\nWhile these instructions are for Cline, the server should work with any MCP implementation. Configure based on your operating system:\r\n\r\n### Windows\r\n⚠️ **IMPORTANT**: Due to a known issue with Windows path resolution ([issue #40](https://github.com/modelcontextprotocol/servers/issues/40)), you must use the full path instead of %APPDATA%.\r\n\r\nAdd to `C:\\Users\\\u003cYourUsername\u003e\\AppData\\Roaming\\Code\\User\\globalStorage\\saoudrizwan.claude-dev\\settings\\cline_mcp_settings.json`:\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"rest-api\": {\r\n      \"command\": \"node\",\r\n      \"args\": [\r\n        \"C:/Users/\u003cYourUsername\u003e/AppData/Roaming/npm/node_modules/dkmaker-mcp-rest-api/build/index.js\"\r\n      ],\r\n      \"env\": {\r\n        \"REST_BASE_URL\": \"https://api.example.com\",\r\n        // Basic Auth\r\n        \"AUTH_BASIC_USERNAME\": \"your-username\",\r\n        \"AUTH_BASIC_PASSWORD\": \"your-password\",\r\n        // OR Bearer Token\r\n        \"AUTH_BEARER\": \"your-token\",\r\n        // OR API Key\r\n        \"AUTH_APIKEY_HEADER_NAME\": \"X-API-Key\",\r\n        \"AUTH_APIKEY_VALUE\": \"your-api-key\",\r\n        // SSL Verification (enabled by default)\r\n        \"REST_ENABLE_SSL_VERIFY\": \"false\", // Set to false to disable SSL verification for self-signed certificates\r\n        // Response Size Limit (optional, defaults to 10000 bytes)\r\n        \"REST_RESPONSE_SIZE_LIMIT\": \"10000\", // Maximum response size in bytes\r\n        // Custom Headers (optional)\r\n        \"HEADER_X-API-Version\": \"2.0\",\r\n        \"HEADER_Custom-Client\": \"my-client\",\r\n        \"HEADER_Accept\": \"application/json\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n### macOS\r\nAdd to `~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`:\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"rest-api\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\r\n        \"-y\",\r\n        \"dkmaker-mcp-rest-api\"\r\n      ],\r\n      \"env\": {\r\n        \"REST_BASE_URL\": \"https://api.example.com\",\r\n        // Basic Auth\r\n        \"AUTH_BASIC_USERNAME\": \"your-username\",\r\n        \"AUTH_BASIC_PASSWORD\": \"your-password\",\r\n        // OR Bearer Token\r\n        \"AUTH_BEARER\": \"your-token\",\r\n        // OR API Key\r\n        \"AUTH_APIKEY_HEADER_NAME\": \"X-API-Key\",\r\n        \"AUTH_APIKEY_VALUE\": \"your-api-key\",\r\n        // SSL Verification (enabled by default)\r\n        \"REST_ENABLE_SSL_VERIFY\": \"false\", // Set to false to disable SSL verification for self-signed certificates\r\n        // Custom Headers (optional)\r\n        \"HEADER_X-API-Version\": \"2.0\",\r\n        \"HEADER_Custom-Client\": \"my-client\",\r\n        \"HEADER_Accept\": \"application/json\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\nNote: Replace the environment variables with your actual values. Only configure one authentication method at a time:\r\n1. Basic Authentication (username/password)\r\n2. Bearer Token (if Basic Auth is not configured)\r\n3. API Key (if neither Basic Auth nor Bearer Token is configured)\r\n\r\n## Features\r\n\r\n- Test REST API endpoints with different HTTP methods\r\n- Support for GET, POST, PUT, DELETE, and PATCH requests\r\n- Detailed response information including status, headers, and body\r\n- Custom Headers:\r\n  - Global headers via HEADER_* environment variables\r\n  - Case-insensitive prefix (HEADER_, header_, HeAdEr_)\r\n  - Case preservation for header names\r\n  - Priority-based application (per-request \u003e auth \u003e custom)\r\n- Request body handling for POST/PUT methods\r\n- Response Size Management:\r\n  - Automatic response size limiting (default: 10KB/10000 bytes)\r\n  - Configurable size limit via REST_RESPONSE_SIZE_LIMIT environment variable\r\n  - Clear truncation metadata when responses exceed limit\r\n  - Preserves response structure while only truncating body content\r\n\r\n- SSL Certificate Verification:\r\n  - Enabled by default for secure operation\r\n  - Can be disabled for self-signed certificates or development environments\r\n  - Control via REST_ENABLE_SSL_VERIFY environment variable\r\n- Multiple authentication methods:\r\n  - Basic Authentication (username/password)\r\n  - Bearer Token Authentication\r\n  - API Key Authentication (custom header)\r\n\r\n## Usage Examples\r\n\r\nOnce installed and configured, you can use the REST API Tester through Cline to test your API endpoints:\r\n\r\n```typescript\r\n// Test a GET endpoint\r\nuse_mcp_tool('rest-api', 'test_request', {\r\n  \"method\": \"GET\",\r\n  \"endpoint\": \"/users\"\r\n});\r\n\r\n// Test a POST endpoint with body\r\nuse_mcp_tool('rest-api', 'test_request', {\r\n  \"method\": \"POST\",\r\n  \"endpoint\": \"/users\",\r\n  \"body\": {\r\n    \"name\": \"John Doe\",\r\n    \"email\": \"john@example.com\"\r\n  }\r\n});\r\n\r\n// Test with custom headers\r\nuse_mcp_tool('rest-api', 'test_request', {\r\n  \"method\": \"GET\",\r\n  \"endpoint\": \"/products\",\r\n  \"headers\": {\r\n    \"Accept-Language\": \"en-US\",\r\n    \"X-Custom-Header\": \"custom-value\"\r\n  }\r\n});\r\n```\r\n\r\n## Development\r\n\r\n1. Clone the repository:\r\n```bash\r\ngit clone https://github.com/zenturacp/mcp-rest-api.git\r\ncd mcp-rest-api\r\n```\r\n\r\n2. Install dependencies:\r\n```bash\r\nnpm install\r\n```\r\n\r\n3. Build the project:\r\n```bash\r\nnpm run build\r\n```\r\n\r\nFor development with auto-rebuild:\r\n```bash\r\nnpm run watch\r\n```\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n","funding_links":[],"categories":["Command Line","APIs and HTTP Requests"],"sub_categories":["How to Submit"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdkmaker%2Fmcp-rest-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdkmaker%2Fmcp-rest-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdkmaker%2Fmcp-rest-api/lists"}