@modelcontextprotocol/server-everything
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.
Markdown Content: 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
echo
* Simple tool to echo back input messages
* Input:
* `message` (string): Message to echo back
* Returns: Text content with echoed message
add
* Adds two numbers together
* Inputs:
* `a` (number): First number
* `b` (number): Second number
* Returns: Text result of the addition
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
printEnv
* Prints all environment variables
* Useful for debugging MCP server configuration
* No inputs required
* Returns: JSON string of all environment variables
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
getTinyImage
* Returns a small test image
* No inputs required
* Returns: Base64 encoded PNG image data
annotatedMessage
* Demonstrates how annotations can be used to provide metadata about content
* Inputs:
* `messageType` (enum: "error" | "success" | "debug"): Type of message to demonstrate different annotation patterns
* `includeImage` (boolean, default: false): Whether to include an example image
* Returns: Content with varying annotations:
* Error messages: High priority (1.0), visible to both user and assistant
* Success messages: Medium priority (0.7), user-focused
* Debug messages: Low priority (0.3), assistant-focused
* Optional image: Medium priority (0.5), user-focused
* Example annotations: {
"priority": 1.0, "audience": ["user", "assistant"] }
getResourceReference
* Returns a resource reference that can be used by MCP clients
* Inputs:
* `resourceId` (number, 1-100): ID of the resource to reference
* Returns: A resource reference with:
* Text introduction
* Embedded resource with `type: "resource"`
* Text instruction for using the resource URI
startElicitation
* Initiates an elicitation (interaction) within the MCP client.
* Inputs:
* `color` (string): Favorite color
* `number` (number, 1-100): Favorite number
* `pets` (enum): Favorite pet
* Returns: Confirmation of the elicitation demo with selection summary.
structuredContent
-
Demonstrates a tool returning structured content using the example in the specification
-
Provides an output schema to allow testing of client SHOULD advisory to validate the result using the schema
-
Inputs:
location(string): A location or ZIP code, mock data is returned regardless of value
-
Returns: a response with
structuredContentfield conformant to the output schema- A backward compatible Text Content field, a SHOULD advisory in the specification
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
simple_prompt
* Basic prompt without arguments
* Returns: Single message exchange
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
resource_prompt
* Demonstrates embedding resource references in prompts
* Required arguments:
* `resourceId` (number): ID of the resource to embed (1-100)
* Returns: Multi-turn conversation with an embedded resource reference
* Shows how to include resources directly in prompt messages
Logging
The server sends random-leveled log messages every 15 seconds, e.g.:
{ "method": "notifications/message", "params": { "level": "info", "data": "Info-level message" } }
Usage with Claude Desktop (uses stdio Transport)
Add to your claude_desktop_config.json:
{ "mcpServers": { "everything": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-everything" ] } } }
Usage with VS Code
For quick installation, use of of the one-click install buttons below...
For manual installation, add the following JSON block to your User Settings (JSON) file in VS Code. You can do this by pressing Ctrl + Shift + P and typing Preferences: Open User Settings (JSON).
Optionally, you can add it to a file called .vscode/mcp.json in your workspace. This will allow you to share the configuration with others.
Note that the
mcpkey is not needed in the.vscode/mcp.jsonfile.
NPX
{ "mcp": { "servers": { "everything": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-everything"] } } } }
Running from source with HTTP+SSE Transport (deprecated as of 2025-03-26)
cd src/everything npm install npm run start:sse
Run from source with Streamable HTTP Transport
cd src/everything npm install npm run start:streamableHttp
Running as an installed package
Install
npm install -g @modelcontextprotocol/server-everything@latest
Run the default (stdio) server
npx @modelcontextprotocol/server-everything
Or specify stdio explicitly
npx @modelcontextprotocol/server-everything stdio
Run the SSE server
npx @modelcontextprotocol/server-everything sse
Run the streamable HTTP server
npx @modelcontextprotocol/server-everything streamableHttp
Recommend MCP Servers 💡
godot-rag
An MCP server designed to provide Godot documentation as context for a Godot RAG model.
apple-books-mcp
An MCP server that allows large language models to interact with your Apple Books library, enabling tasks like summarizing highlights, organizing books by genre, recommending similar books, and comparing notes.
needle
Needle MCP Server organizes and stores documents, enabling powerful semantic search and retrieval for LLMs via Claude's Desktop Application, acting as long-term memory for RAG.
@hannesrudolph/mcp-ragdocs
An MCP server implementation that provides tools for retrieving and processing documentation through vector search, enabling AI assistants to augment their responses with relevant documentation context.
MaxMSP-MCP-Server
MCP (Model Context Protocol) Server for Max (Max/MSP/Jitter)
mcp-foundation-models
An MCP server that provides text generation capabilities using Apple's Foundation Models framework for secure, private on-device text generation