Hello World MCP Server

Un servidor MCP simple de Hello World construido con FastMCP, que sirve como ejemplo básico.

Documentación

Servidor MCP Hello World

Un servidor MCP (Protocolo de Contexto de Modelo) "Hello World" simple, construido con FastMCP. Este servidor demuestra la funcionalidad básica de MCP con varias herramientas de ejemplo.

Inicio Rápido

Usando uvx con GitHub (Recomendado)

Puedes ejecutar este servidor MCP directamente desde GitHub usando uvx:

uvx --from git+https://github.com/macsymwang/hello-mcp-server.git hello-mcp-server

Configuración del Cliente MCP

Añade esto a la configuración de tu cliente MCP:

{
  "mcpServers": {
    "hello-world": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/macsymwang/hello-mcp-server.git", "hello-mcp-server"]
    }
  }
}

Características

  • say_hello: Saluda a alguien con un mensaje personalizado
  • get_server_info: Obtiene información sobre el servidor MCP
  • echo_message: Devuelve cualquier mensaje que envíes
  • count_words: Analiza texto y cuenta palabras/caracteres

Instalación

Usando uvx con GitHub (Recomendado)

Puedes ejecutar este servidor MCP directamente desde GitHub usando uvx:

uvx --from git+https://github.com/macsymwang/hello-mcp-server.git hello-mcp-server

Usando uvx desde PyPI (si está publicado)

uvx hello-mcp-server

Instalación Local

  1. Clona o descarga este repositorio
  2. Instala el paquete:
pip install .
  1. Ejecuta el servidor:
hello-mcp-server

Instalación para Desarrollo

Para desarrollo, instala en modo editable:

pip install -e .

Uso

Registro como Protocolo Stdio

Este servidor MCP está diseñado para funcionar con el protocolo de transporte stdio, que es la forma estándar en que los servidores MCP se comunican con los clientes. El servidor lee mensajes JSON-RPC desde stdin y escribe respuestas en stdout.

Configuración del Cliente MCP

Claude Desktop

Añade esta configuración a tu archivo de configuración de Claude Desktop (normalmente ubicado en ~/.config/claude/claude_desktop_config.json en Linux/Mac o %APPDATA%\Claude\claude_desktop_config.json en Windows):

{
  "mcpServers": {
    "hello-world": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/macsymwang/hello-mcp-server.git", "hello-mcp-server"]
    }
  }
}

IDE Cursor

Añade esto a tu configuración MCP de Cursor:

{
  "mcpServers": {
    "hello-world": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/macsymwang/hello-mcp-server.git", "hello-mcp-server"],
      "transport": {
        "type": "stdio"
      }
    }
  }
}

Cliente MCP Genérico

Para otros clientes MCP, usa esta configuración:

{
  "mcpServers": {
    "hello-world": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/macsymwang/hello-mcp-server.git", "hello-mcp-server"],
      "env": {},
      "transport": {
        "type": "stdio"
      }
    }
  }
}

Ejecutando el Servidor Manualmente

El servidor también se puede iniciar manualmente para pruebas:

  1. Usando uvx (recomendado):

    uvx hello-mcp-server
    
  2. Usando el comando instalado:

    hello-mcp-server
    
  3. Usando el módulo de Python:

    python -m hello_mcp_server.server
    
  4. Ejecución directa:

    python hello_mcp_server/server.py
    

Cuando se ejecuta manualmente, el servidor esperará mensajes JSON-RPC en stdin. Puedes probarlo enviando mensajes del protocolo MCP, pero normalmente se usa a través de clientes MCP.

Herramientas Disponibles

say_hello

Saluda a alguien con un mensaje personalizado.

Parámetros:

  • name (opcional): Nombre de la persona a saludar (por defecto: "World")

Ejemplo:

{
  "name": "Alice"
}

get_server_info

Devuelve información sobre el servidor MCP.

Parámetros: Ninguno

echo_message

Devuelve el mensaje proporcionado.

Parámetros:

  • message (obligatorio): El mensaje a devolver

count_words

Analiza texto y proporciona estadísticas de palabras/caracteres.

Parámetros:

  • text (obligatorio): El texto a analizar

Configuración

Protocolo Stdio

Este servidor MCP utiliza el protocolo de transporte stdio, lo que significa:

  • Entrada: El servidor lee mensajes JSON-RPC desde la entrada estándar (stdin)
  • Salida: El servidor escribe respuestas JSON-RPC en la salida estándar (stdout)
  • Registro: Los mensajes de error y registros se escriben en el error estándar (stderr)

Este es el protocolo estándar para servidores MCP y garantiza compatibilidad con todos los clientes MCP.

Configuración del Transporte

El servidor se configura automáticamente para el transporte stdio al iniciarse. No se necesita configuración adicional para la capa de transporte.

Para opciones avanzadas de configuración de FastMCP, consulta la documentación de FastMCP.

Requisitos

  • Python 3.8+
  • fastmcp>=0.1.0

Estructura del Proyecto

hello-mcp-server/
├── hello_mcp_server/
│   ├── __init__.py
│   └── server.py
├── pyproject.toml
└── README.md

Desarrollo

Para contribuir a este proyecto:

  1. Haz un fork del repositorio
  2. Crea una rama de funcionalidad
  3. Realiza tus cambios
  4. Añade pruebas si corresponde
  5. Envía una solicitud de extracción

Licencia

Este proyecto es de código abierto. Consulta el archivo de licencia para más detalles.

Soporte

Para problemas y preguntas, abre un issue en el repositorio del proyecto.