API Tester MCP Server

# API Tester MCP Server This is a Model Context Protocol (MCP) server that allows Claude to make API requests on your behalf. It provides tools for testing various APIs, including a dedicated integration with OpenAI's APIs. ## Features - Make HTTP requests (GET, POST, PUT, DELETE) to any API - Test OpenAI's GPT models without sharing your API key in the chat - Generate images with DALL-E - Properly formatted responses for easy reading ## Setup ### Prerequisites - Python 3.10 or higher - MCP SDK 1.2.0 or higher ### Installation 1. Install the required dependencies: ```bash pip install "mcp[cli]" httpx python-dotenv ``` 2. Set your OpenAI API key using one of these methods: #### Option 1: Environment Variables ```bash # On Windows (PowerShell) $env:OPENAI_API_KEY = "your-api-key" # On Windows (Command Prompt) set OPENAI_API_KEY=your-api-key # On macOS/Linux export OPENAI_API_KEY="your-api-key" ``` #### Option 2: Using a .env File (Recommended) Create a `.env` file in the project directory (copy from `.env.example`): ``` OPENAI_API_KEY=your_openai_api_key_here ``` ### Running the Server ```bash python main.py ``` ## Using with Claude Once your server is running, you can connect it to Claude for Desktop by configuring it in the Claude Desktop config file. ### Example Prompts #### General API Testing ``` Use the get_request tool to fetch data from https://jsonplaceholder.typicode.com/posts/1 ``` ``` Use the post_request tool to send data to https://jsonplaceholder.typicode.com/posts with this JSON body: {"title": "Test Post", "body": "This is a test", "userId": 1} ``` #### Using OpenAI Tools ``` Use the openai_chat_completion tool with: prompt: "Write a short poem about artificial intelligence" system_message: "You are a helpful assistant that writes creative poetry" model: "gpt-4" ``` ``` Use the openai_image_generation tool with: prompt: "A futuristic city with flying cars and tall glass buildings at sunset" size: "1024x1024" ``` ## Available Tools ### General API Tools - `get_request`: Make GET requests to any URL - `post_request`: Make POST requests with JSON bodies - `put_request`: Make PUT requests with JSON bodies - `delete_request`: Make DELETE requests ### OpenAI-Specific Tools - `openai_chat_completion`: Generate text using OpenAI's chat models - `openai_image_generation`: Generate images using DALL-E ## Security Notes - Your OpenAI API key is stored in the server and not exposed in the chat - API usage will count against your OpenAI quota and may incur charges - For production use, always set the API key as an environment variable or use a `.env` file - The `.env` file is included in `.gitignore` to prevent accidentally committing your API key