Skip to main content
Glama
room202

Echo Hello MCP Server

by room202

MCPサーバーのサンプル

動作環境

  • Windows11 Pro 23H2

  • Python 3.13.2

  • uv 0.6.12

Related MCP server: Hello World MCP Server

事前準備

  • Visual Studio Codeのインストール

  • Pythonのインストール

  • uvコマンドのインストール

uvコマンドのインストール

PowerShellから下記コマンドを実行する

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

初回のプロジェクト作成

# プロジェクトの新規作成
uv init echo_hello
cd echo_hello

# Python仮想環境を使用
uv venv
.venv\Scripts\activate

# 依存関係をインストールする
uv add mcp[cli] httpx

# MCPサーバーのソースコード作成
# 今回は「hello.py」とする
new-item hello.py

MCPサーバー本体をPythonで作成

from typing import Any
import httpx
from mcp.server.fastmcp import FastMCP

# FastMCPサーバーの初期化
mcp = FastMCP("echo_hello")

# FastMCPサーバーが呼び出された時の処理
@mcp.tool()
async def echo_hello(name: str) -> str:
    # 今回は「コンニチハ、{プロンプトから渡された値}!!!!」と返すだけ
    return f"コンニチハ, {name}!!!!"

if __name__ == "__main__":
    # 初期化とサーバー実行
    mcp.run(transport='stdio')

MCPサーバーの登録

ファイル:C:\Users\%USERPROFILE%\AppData\Roaming\Code\User\settings.json

~省略~
"mcp": {
    "inputs": [],
    "servers": {
        "echo_hello": {
            "command": "uv",
            "args": [
                "--directory",
                "C:\\Workspace\\mcp\\mcp_server_demo\\echo_hello",
                "run",
                "echo_hello.py"
            ]
        }
    }
},

Available Tools

1 tool
echo_helloC

Echo a hello message

NameRequiredDescriptionDefault
nameYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are supplied, so the description carries the full behavioral burden. It doesn't disclose the return value's shape, whether the provided name is interpolated into the greeting, or whether the call has any side effects; "echo" hints at a read-only echo but nothing is confirmed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is a single short sentence with no wasted words, and the intent is front-loaded. Its brevity reflects under-specification rather than tight writing, so it does not fully earn a high mark.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple one-parameter tool with no annotations and no output schema, so the description needed to explain the parameter and the expected response. It does neither, leaving the agent without enough information to invoke it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter has 0% schema description coverage and the description never mentions "name" at all. An agent cannot tell from the definition whether name is the person to greet, a message to repeat, or a label, so the meaning is not added beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Echo a hello message" pairs a verb (echo) with an object (a hello message), so the general intent is inferable. However, it essentially restates the tool name and gives no detail on what is echoed or how the input factors in, leaving the purpose only vaguely specified.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no preconditions, and no alternatives named (there are no siblings, but the description still doesn't indicate the intended context such as testing connectivity or greeting a user). The agent must guess entirely.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev0.1.0
    • First observedecho_hello

TDQS

C2.7/5.0

Scored across 1 tool

Disambiguation5/5

There is only one tool, so there is no possibility of an agent confusing it with another. Its purpose (echoing a hello message) is unambiguous.

Naming Consistency4/5

The single name echo_hello follows a readable verb_noun snake_case pattern. With only one tool there is no cross-tool consistency to evaluate, so it can't earn a full 5.

Tool Count1/5

A single trivial echo tool offers essentially no functional surface. The count is an extreme mismatch for anything resembling a useful server scope.

Completeness3/5

The tool does exactly what its stated purpose claims, so it isn't a dead end within its own tiny domain. However, there are no adjacent operations (e.g., configurable messages, other greetings) that would make it a real capability surface.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • -
    license
    C
    quality
    Not graded
    maintenance
    A simple boilerplate MCP server that provides a basic greeting tool for demonstration purposes. Serves as a starting template for developers to quickly create and deploy custom MCP servers.
    1
    5 npm
    -
  • A
    license
    C
    quality
    D
    maintenance
    A simple MCP server that provides a basic greeting tool for saying hello with customizable names. Serves as a boilerplate template for developers to quickly create and deploy new MCP servers.
    1
    5 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A minimal demonstration MCP server built with FastMCP that exposes a simple greeting tool, showcasing basic server setup and remote deployment capabilities.
    -