Enables running the MCP server in a containerized environment with Docker, allowing for isolated and portable deployment of the MCP Everything test server.
Extracted from the modelcontextprotocol/servers GitHub repository to create a standalone implementation, with source code available on GitHub.
Supports installation and distribution through npm, including global installation and execution via npx commands.
MCP Everything
Note: This project was extracted from https://github.com/modelcontextprotocol/servers/tree/main/src/everything to create a standalone implementation.
This MCP server project demonstrates various features of the Model Context Protocol (MCP). It includes server implementations in TypeScript and Python, serving as test servers for MCP client builders. Both implementations aim for functional parity, showcasing capabilities like prompts, tools, resources, sampling, logging, and more.
Common Features
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 numberb
(number): Second number
- Returns: Text result of the addition
longRunningOperation
- Demonstrates progress notifications for long operations
- Inputs:
duration
(number, default: 10): Duration in secondssteps
(number, default: 5): Number of progress steps
- Returns: Completion message with duration and steps
- Sends progress notifications during execution
sampleLLM
- Demonstrates LLM sampling capability using MCP sampling feature
- Inputs:
prompt
(string): The prompt to send to the LLMmaxTokens
(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
printEnv
- Prints all environment variables
- Useful for debugging MCP server configuration
- No inputs required
- Returns: JSON string of all environment variables
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 patternsincludeImage
(boolean, default: false): Whether to include an example image
- Returns: Content with varying annotations
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
Logging
The server sends random-leveled log messages every 15 seconds to demonstrate the logging capabilities of MCP.
TypeScript Implementation
Location: typescript/
Installation
Local Development
Global Installation
Note: Global installation functionality and the exact command depend on the bin
configuration within typescript/package.json
.
Docker
Usage with MCP Clients (e.g., Claude Desktop)
Add to your client's MCP server configuration. Paths might need adjustment.
If using npx
with a published package (e.g., mcp-everything-ts
):
If running from a local build (ensure cwd
is the typescript
directory):
Replace "path/to/mcp-everything/typescript"
with the correct path.
Python Implementation
Location: python/
Installation & Setup
- From the repository root, navigate to the Python directory:
- (Recommended) Create and activate a virtual environment:
- Install dependencies:
Running the Server
From within the python
directory (and with the virtual environment activated if used):
The server listens for MCP messages over stdio.
Usage with MCP Clients (e.g., Claude Desktop)
Example configuration:
Replace "path/to/mcp-everything/python"
with the correct path.
Testing the Server via GitHub Actions
Note: Implementation is in progress. The server is not yet fully functional.
- Test 1
- Test 2
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
A test server implementing all features of the MCP protocol, including prompts, tools, resources, and sampling, designed for testing MCP clients rather than practical applications.
Related MCP Servers
- AsecurityFlicenseAqualityA testing server that demonstrates Model Context Protocol features, providing access to user data, todos, and system information through resources, tools for user management and calculations, and prompt templates for various analyses.Last updated -4
- -securityFlicense-qualityA lightweight MCP test server for verifying client connectivity, providing tools, resources, and prompts for integration.Last updated -4