MCP POC
A proof-of-concept MCP server built with Node.js and TypeScript, compatible with Claude Desktop.
MCP POC - Model Context Protocol Server
Un servidor MCP (Model Context Protocol) desarrollado en Node.js/TypeScript con arquitectura modular que es compatible con Claude Desktop.
¿Qué es MCP?
El Model Context Protocol (MCP) es un protocolo abierto desarrollado por Anthropic que permite a los modelos de IA interactuar de forma segura con herramientas y fuentes de datos externas. Piensa en MCP como el "USB-C" de las integraciones de IA: un estándar único que conecta muchos servicios.
Componentes de MCP:
- Servidores MCP: Actúan como puentes hacia APIs, bases de datos o código
- Clientes MCP: Utilizan el protocolo para interactuar con los servidores
- Hosts MCP: Sistemas que gestionan la comunicación (como Claude Desktop)
Características
Este servidor MCP incluye tres herramientas de ejemplo:
- greeting - Genera saludos personalizados en español (formal/informal)
- calculator - Realiza operaciones matemáticas básicas (suma, resta, multiplicación, división)
- get_current_datetime - Obtiene la fecha y hora actual en diferentes formatos
Instalación
🚀 Opción 1: Desde NPM (Recomendado)
# Instalar globalmente
npm install -g @sokardys/mcp-poc
# O usar npx (sin instalación)
npx sokardys-mcp-poc
💻 Opción 2: Desarrollo local
git clone <tu-repositorio>
cd mcp-poc
npm install
npm run build
3. Configurar Claude Desktop
Edita el archivo de configuración de Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Añade la configuración del servidor:
Para instalación NPM:
{
"mcpServers": {
"mcp-poc": {
"command": "npx",
"args": ["@sokardys/mcp-poc@latest"],
"env": {
}
}
}
}
Para desarrollo local:
{
"mcpServers": {
"mcp-poc": {
"command": "node",
"args": [
"/ruta/completa/a/tu/proyecto/mcp-poc/build/index.js"
]
}
}
}
Importante: Para desarrollo local, cambia /ruta/completa/a/tu/proyecto/mcp-poc/ por la ruta real donde clonaste el proyecto.
4. Reiniciar Claude Desktop
Cierra y vuelve a abrir Claude Desktop para cargar la nueva configuración.
Uso
Una vez configurado, puedes usar las herramientas en Claude Desktop:
Ejemplos de uso:
- Saludo: "Saluda a María de forma formal" → Usa
greeting - Cálculo: "Calcula 15 × 8" → Usa
calculator - Fecha: "¿Qué hora es?" → Usa
get_current_datetime
Herramientas disponibles:
| Herramienta | Descripción | Parámetros |
|---|---|---|
greeting | Saludos personalizados | name (string), formal (boolean) |
calculator | Operaciones matemáticas | operation (add/subtract/multiply/divide), a (number), b (number) |
get_current_datetime | Fecha y hora actual | format (short/long/iso) |
Scripts disponibles
# Compilar el proyecto
npm run build
# Modo desarrollo (recompilación automática)
npm run dev
# Ejecutar directamente (después de compilar)
npm start
# Inspeccionar el servidor MCP
npm run inspector
# Testing
npm test # Ejecutar todos los tests
npm run test:watch # Tests en modo watch
npm run test:ui # Interfaz visual de tests
npm run test:coverage # Tests con cobertura de código
Testing
Este proyecto incluye un suite completo de tests usando Vitest y mcpgod:
Ejecutar tests
# Tests básicos
npm test
# Tests en modo watch (reejecutar al cambiar código)
npm run test:watch
# Interfaz visual para tests
npm run test:ui
# Tests con reporte de cobertura
npm run test:coverage
Qué se testea
Los tests validan:
✅ Lista de herramientas - Verifica que todas las herramientas están disponibles ✅ Herramienta greeting - Formatos formal e informal, nombres personalizados ✅ Calculadora - Suma, resta, multiplicación, división con validación Zod ✅ Manejo de errores - División por cero, parámetros faltantes, McpError apropiados ✅ Fecha y hora - Diferentes formatos (corto, largo, ISO), zonas horarias ✅ Validación de entrada - Schemas Zod, tipos incorrectos, parámetros requeridos ✅ Arquitectura modular - Separación resolver/usecase, orquestador central
Pruebas manuales con mcpgod
# Listar herramientas disponibles
npx mcpgod tools build/index.js
# Probar herramientas específicas
npx mcpgod tool build/index.js greeting name="Ana" formal=true
npx mcpgod tool build/index.js calculator operation="add" a=15 b=25
npx mcpgod tool build/index.js get_current_datetime format="long"
Recursos adicionales
- Documentación oficial de MCP
- Servidor de referencia de Anthropic
- SDK de TypeScript
- Vitest - Framework de testing
- mcpgod - CLI para MCP
Licencia
MIT - consulta el archivo LICENSE para más detalles.
¡Disfruta construyendo herramientas increíbles con MCP! 🚀
เซิร์ฟเวอร์ที่เกี่ยวข้อง
Scout Monitoring MCP
ผู้สนับสนุนPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
ผู้สนับสนุนAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Testomat.io
Integrate Testomat.io API with AI assistants for test management.
TypeScript Migrator MCP
Migrate JavaScript files to TypeScript with customizable conversion rules.
MCP HTTP Requests
A comprehensive HTTP client for API testing, web automation, and security testing with detailed logging.
Luma AI MCP Server
Generate and manipulate AI videos and images using Luma AI's Dream Machine API.
BlenderMCP
Integrates with Blender to enable text and image-based 3D model editing using the Model Context Protocol.
Ghidra MCP Server
Exposes binary analysis data from Ghidra, including functions and pseudocode, to LLMs.
Wordware
Run your Wordware apps locally with an interactive setup.
AAP Enterprise MCP Server
An MCP server that allows AI assistants to interact with Ansible Automation Platform (AAP) and Event-Driven Ansible (EDA) infrastructure.
s&box MCP Server
Enables AI assistants to interact with s&box game objects and components via WebSocket communication.
Streamable HTTP Server Example
An example MCP server demonstrating streamable HTTP responses using Node.js.