X MCP Server

# Everything MCP Server This MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities. ## Components ### Tools 1. `echo` - Simple tool to echo back input messages - Input: - `message` (string): Message to echo back - Returns: Text content with echoed message 2. `add` - Adds two numbers together - Inputs: - `a` (number): First number - `b` (number): Second number - Returns: Text result of the addition 3. `longRunningOperation` - Demonstrates progress notifications for long operations - Inputs: - `duration` (number, default: 10): Duration in seconds - `steps` (number, default: 5): Number of progress steps - Returns: Completion message with duration and steps - Sends progress notifications during execution 4. `sampleLLM` - Demonstrates LLM sampling capability using MCP sampling feature - Inputs: - `prompt` (string): The prompt to send to the LLM - `maxTokens` (number, default: 100): Maximum tokens to generate - Returns: Generated LLM response 5. `getTinyImage` - Returns a small test image - No inputs required - Returns: Base64 encoded PNG image data 6. `printEnv` - Prints all environment variables - Useful for debugging MCP server configuration - No inputs required - Returns: JSON string of all environment variables ### Resources The server provides 100 test resources in two formats: - Even numbered resources: - Plaintext format - URI pattern: `test://static/resource/{even_number}` - Content: Simple text description - Odd numbered resources: - Binary blob format - URI pattern: `test://static/resource/{odd_number}` - Content: Base64 encoded binary data Resource features: - Supports pagination (10 items per page) - Allows subscribing to resource updates - Demonstrates resource templates - Auto-updates subscribed resources every 5 seconds ### Prompts 1. `simple_prompt` - Basic prompt without arguments - Returns: Single message exchange 2. `complex_prompt` - Advanced prompt demonstrating argument handling - Required arguments: - `temperature` (number): Temperature setting - Optional arguments: - `style` (string): Output style preference - Returns: Multi-turn conversation with images ## Usage with Claude Desktop Add to your `claude_desktop_config.json`: ```json { "mcpServers": { "everything": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-everything" ] } } } ```