
marlonbaufestpe/mcp-client-demo
Developer toolsEjemplo de uso de MCP Server del tipo
Overview
Servicio MCP (Model Context Protocol) que proporciona una API para consultar una base de datos de libros a través del protocolo STDIO. Este servicio MCP implementa las siguientes herramientas: - : Obtiene información básica de un libro por título - : Obtiene información detallada de un libro por ISBN - : Obtiene información de múltiples libros por títulos - : Obtiene información detallada de múltiples libros por ISBNs Las dependencias necesarias son: - @modelcontextprotocol/sdk: SDK oficial del Model Context Protocol - zod: Librería para validación de esquemas En la raíz del proyecto, o en la carpeta .vscode/, crea un archivo llamado mcp.json: - servers: Objeto que contiene la configuración de todos los servidores MCP - "book-database": Nombre identificador del servidor (puede personalizarse) - command: Comando para ejecutar el servidor (en este caso, Node.
README
Cliente de servicio MCP modo STDIO
Servicio MCP (Model Context Protocol) que proporciona una API para consultar una base de datos de libros a través del protocolo STDIO.
Descripción del Servicio
Este servicio MCP implementa las siguientes herramientas:
- get-book-by-title: Obtiene información básica de un libro por título
- get-book-by-isbn: Obtiene información detallada de un libro por ISBN
- get-books-by-titles: Obtiene información de múltiples libros por títulos
- get-books-by-isbn-list: Obtiene información detallada de múltiples libros por ISBNs
Requisitos Previos
- Node.js: v18 o superior
- npm: v9 o superior
Pasos para Levantar el Servicio MCP en un Nuevo Proyecto
1. Clonar o Copiar el Proyecto
git clone tu-proyecto
cd tu-proyecto
2. Instalar Dependencias
npm install
Las dependencias necesarias son:
@modelcontextprotocol/sdk: SDK oficial del Model Context Protocolzod: Librería para validación de esquemas
3. Crear el Archivo de Configuración MCP (mcp.json)
En la raíz del proyecto, o en la carpeta .vscode/, crea un archivo llamado mcp.json:
Ubicación: .vscode/mcp.json
{
"servers": {
"book-database": {
"command": "node",
"args": ["build/index.js"],
"cwd": "${workspaceFolder}"
}
}
}
Explicación de los campos:
servers: Objeto que contiene la configuración de todos los servidores MCP"book-database": Nombre identificador del servidor (puede personalizarse)command: Comando para ejecutar el servidor (en este caso, Node.js)args: Argumentos para el comando (ruta al archivo compilado)cwd: Directorio de trabajo (${workspaceFolder} apunta a la raíz del proyecto)
4. Compilar el Código TypeScript (si aplica)
Si el proyecto incluye código TypeScript en la carpeta src/, compílalo:
npm run build
5. Iniciar el Servidor MCP
npm start
O manualmente:
node build/index.js
El servidor debería mostrar en la consola:
Book database MCP Server running on stdio
6. Verificar que el Servidor Está Activo
El servidor se comunica a través de STDIO (entrada/salida estándar) con VS Code o el cliente MCP.
Estructura del Proyecto
.
├── .vscode/
│ └── mcp.json # Configuración MCP
├── build/
│ ├── index.js # Archivo compilado del servidor
│ └── data/
│ ├── books.json # Base de datos de libros (información básica)
│ └── books-details.json # Base de datos de libros (información detallada)
├── package.json # Dependencias y scripts de Node.js
└── README.md # Documentación
Integración con VS Code
Una vez configurado el archivo .vscode/mcp.json, VS Code reconocerá automáticamente el servidor MCP y podrás usar sus herramientas a través de:
- GitHub Copilot Chat
- Extensiones que soporten MCP
- APIs de cliente MCP
Ejemplo de Uso
Para buscar un libro por título usando la herramienta get-book-by-title:
Entrada: title = "The Hobbit"
Salida:
ISBN: 0547928227
title: The Hobbit
author: J.R.R. Tolkien
Campos de Datos
books.json
ISBN: Identificador único del librotitle: Título del libroauthor: Autor del libro
books-details.json
ISBN: Identificador único del librosummary: Resumen o sinopsis del librodate: Fecha de publicaciónauthor: Autor del libro
Solución de Problemas
Error: “Cannot find package ‘@modelcontextprotocol/sdk’”
Solución: Ejecuta npm install para instalar todas las dependencias.
Error: “Cannot find module ‘./data/books.json’”
Solución: Verifica que los archivos de datos existan en build/data/.
Servidor no inicia
Solución: Asegúrate de:
- Tener Node.js instalado correctamente
- Haber ejecutado
npm install - El archivo
build/index.jsexiste y es válido
Licencia
Este proyecto está bajo licencia MIT.
Install
This server does not publish a one-line install command.
Open the repository installation guide New to MCP? Start with the mcpskill.org guide →