MCP ExplorerExplorer

Echo Mcp Server For Testing

@piebroon a year ago
1 MIT
FreeCommunity
AI Systems
#mcp#mcp-server#testing
A simple echo MCP (Model Context Protocol) Server for testing MCP Clients.

Overview

What is Echo Mcp Server For Testing

echo-mcp-server-for-testing is a simple echo MCP (Model Context Protocol) Server designed for testing MCP Clients. It serves as a basic template for creating new MCP Servers.

Use cases

Use cases include testing MCP Clients, developing new MCP Servers, and providing a simple echo service for debugging and development purposes.

How to use

To use echo-mcp-server-for-testing, install ‘uv’ and configure the server in an MCP config using ‘uvx’. Alternatively, clone the repository and run the server using ‘uv’ with a specified directory.

Key features

Key features include a straightforward echo tool for testing, easy integration with MCP Clients, and the ability to serve as a template for developing new MCP Servers.

Where to use

echo-mcp-server-for-testing can be used in software development environments, particularly for testing and developing applications that utilize the Model Context Protocol.

Content

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:

{
  "name": "echo-mcp-server-for-testing",
  "command": "uvx",
  "args": [
    "echo-mcp-server-for-testing"
  ],
  "env": {
    "SECRET_KEY": "123456789"
  }
}

or clone the repo and use uv with a directory:

{
  "name": "echo-mcp-server-for-testing",
  "command": "uv",
  "args": [
    "--directory",
    "path/to/root/dir/",
    "run",
    "main.py"
  ],
  "env": {
    "SECRET_KEY": "123456789"
  }
}

Development

Testing

Clone the repo and use mcp-client-for-testing to test the tools of the server.

uvx mcp-client-for-testing \
    --config '
    [
        {
            "name": "echo-mcp-server-for-testing",
            "command": "uv",
            "args": [
                "--directory", 
                "path/to/root/dir/", 
                "run", 
                "main.py"
            ],
            "env": {
                "SECRET_KEY": "123456789"
            }
        }
    ]
    ' \
    --tool_call '{"name": "echo_tool", "arguments": {"message": "Hello, world!"}}'

Formatting and Linting

The code is formatted and linted with ruff:

uv run ruff format
uv run ruff check --fix

Building with uv

Build the package using uv:

uv build

Releasing a New Version

To release a new version of the package to PyPI, create and push a new Git tag:

  1. Checkout the main branch and get the current version:

    git checkout main
    git pull origin main
    git describe --tags
    
  2. Create 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.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers