Ejemplo de cliente y servidor JSON-RPC de MCP
Este repositorio contiene un ejemplo sencillo y fácil de usar de un cliente y servidor JSON-RPC inspirado en MCP, implementado en JavaScript. El proyecto demuestra un flujo de comunicación básico utilizando los módulos integrados de Node.js sin dependencias externas.
Descripción general
Servidor (
Escucha en el puerto TCP 4000.
Implementa dos métodos JSON-RPC:
initialize: Devuelve un objeto de capacidades básicas (que anuncia una herramienta "eco").echo: repite los parámetros proporcionados por el cliente.
Cliente (
Se conecta al servidor en el puerto 4000.
Envía una solicitud
initializeseguida de una solicitudecho.Registra las respuestas recibidas del servidor.
Related MCP server: MCP Bone
Prerrequisitos
Node.js instalado en su sistema (se recomienda v10 o posterior).
Empezando
Instalación mediante herrería
Para instalar automáticamente el ejemplo de cliente y servidor JSON-RPC de MCP para Claude Desktop a través de Smithery :
Instalación manual
Clonar el repositorio:
git clone https://github.com/sandy-mount/mcpjs.git cd mcp-jsonrpc-exampleEjecutar el servidor:
Abra una ventana de terminal y ejecute:
node server.jsDeberías ver un mensaje como:
Server listening on port 4000Ejecutar el cliente:
Abra otra ventana de terminal y ejecute:
node client.jsEl cliente se conectará al servidor, enviará las solicitudes de inicialización y eco, y mostrará las respuestas.
Cómo funciona
El servidor escucha las conexiones TCP entrantes en el puerto 4000. Cuando recibe un mensaje JSON-RPC (cada uno terminado en una nueva línea), procesa la solicitud:
Para el método
initialize, devuelve una respuesta JSON-RPC con capacidades básicas e información del servidor.Para el método
echo, devuelve los parámetros que se enviaron en la solicitud.Si se solicita un método desconocido, responde con un error JSON-RPC.
El cliente se conecta al servidor, envía una solicitud
initializeJSON-RPC, espera un breve periodo y luego envía una solicitudecho. Las respuestas del servidor se imprimen en la consola.
Archivos
server.js : la implementación del servidor JSON‑RPC.
client.js : la implementación del cliente JSON‑RPC.
Personalización
Puedes ampliar este ejemplo:
Agregar más métodos JSON-RPC al servidor.
Implementación de manejo y registro de errores adicionales.
Experimentar con diferentes protocolos de transporte o agregar soporte TLS.
Licencia
Este proyecto está licenciado bajo la Licencia MIT. Consulte el archivo de LICENCIA para más detalles.
Contribuyendo
Siéntete libre de abrir problemas o enviar solicitudes de extracción con mejoras o sugerencias.
¡Feliz codificación!