The Echo MCP Server is a simple utility that allows you to:
Echo Messages: Send messages using the
echo_tooland receive the same message back from the serverTest MCP Clients: Ideal for integration testing by simulating server responses
Develop New Servers: Use it as a template for building custom MCP Servers
Configure as Needed: Customize server settings via environment variables like
SECRET_KEY
It supports development workflows with formatting, linting, and version management capabilities.
Supports version control and release management through Git tags that follow semantic versioning
Provides integration with GitHub for releasing new versions of the package by pushing Git tags, which trigger automated workflows
Enables automated build and publishing workflows that are triggered when a new Git tag is pushed to release new versions of the package
Facilitates automated package publishing to PyPI when new versions are tagged, supporting Python package distribution
Used for code formatting and linting to maintain code quality in the MCP server implementation
echo-mcp-server-for-testing
A simple echo MCP (Model Context Protocol) Server with a simple echo_tool for testing MCP Clients.
It is also great as a template for new MCP Servers.
Usage
Install uv and add the server to an MCP config using uvx:
or clone the repo and use uv with a directory:
Related MCP server: Hello World MCP Server
Development
Testing
Clone the repo and use mcp-client-for-testing to test the tools of the server.
Formatting and Linting
The code is formatted and linted with ruff:
Building with uv
Build the package using uv:
Releasing a New Version
To release a new version of the package to PyPI, create and push a new Git tag:
Checkout the main branch and get the current version:
git checkout main git pull origin main git describe --tagsCreate and push a new Git tag:
git tag v0.2.0 git push origin v0.2.0
The GitHub Actions workflow will automatically build and publish the package to PyPI when a new tag is pushed. The python package version number will be derived directly from the Git tag.
License
This project is licensed under the MIT License. See the LICENSE file for details.