Nerdearla Agenda
STDIOMCP server providing real-time access to Nerdearla conference agenda with intelligent caching system
MCP server providing real-time access to Nerdearla conference agenda with intelligent caching system
Un servidor MCP (Model Context Protocol) que proporciona acceso a la agenda de Nerdearla en tiempo real, siguiendo la arquitectura MCP oficial.
Este MCP Server fue desarrollado como demostración práctica para la charla "Automatizá con flow: IA, n8n y MCP sin morir en el intento" presentada por Manuel Bruña y Carlos Pereyra en Nerdearla 2025.

La charla muestra cómo integrar:
¿Quieres ver la charla? 👉 Ver en Nerdearla
💡 Tip: Este proyecto es un ejemplo real de cómo implementar un MCP Server profesional que puede integrarse con Claude, n8n y otros sistemas de IA.
Este proyecto implementa correctamente la arquitectura MCP con:
¿Buscas la mejor charla de Nerdearla? Prueba la herramienta get_best_talk_recommendation y descubre nuestra recomendación especial... 😉
El MCP Server implementa un sistema de cache avanzado para máximo rendimiento:
# Al arrancar el servidor: [agenda-service] 🚀 Initializing MCP Server - Starting initial cache... [agenda-service] ✅ Initial cache ready! Scraped 45 talks in 8500ms [agenda-service] ⚡ MCP Server ready - All queries will be INSTANT for 24 hours! # En consultas posteriores: [agenda-service] ⚡ Using cached data (15min old, 23h left) - INSTANT response!
# Instalar pnpm si no lo tienes npm install -g pnpm # Instalar dependencias pnpm install
# Servidor MCP para Claude Desktop node src/index.js # O con npm script pnpm start
# Servidor MCP con HTTP transport MCP_TRANSPORT=http node src/index.js # Con puerto específico MCP_TRANSPORT=http PORT=8000 node src/index.js # O con npm script pnpm start:http # Con variables de entorno MCP_TRANSPORT=http MCP_PORT=8000 pnpm start
{ "mcpServers": { "nerdearla-agenda-mcp": { "command": "node", "args": ["/ruta/absoluta/al/proyecto/src/index.js"] } } }
{ "mcpServers": { "nerdearla-agenda-mcp": { "command": "node", "args": ["/ruta/absoluta/al/proyecto/src/index.js", "http", "3000"] } } }
Ubicación del archivo:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json# Inspector MCP (STDIO transport) DANGEROUSLY_OMIT_AUTH=true npx @modelcontextprotocol/inspector node src/index.js # Luego abrir: http://localhost:6274
# Test STDIO transport echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}' | node src/index.js # Test HTTP transport - Health check curl http://localhost:3000/health # Test HTTP transport - Server info curl http://localhost:3000/ # Test MCP endpoint (Streamable HTTP) curl http://localhost:3000/mcp
Para probar con el MCP Inspector oficial:
# Opción 1: Script automático (Recomendado) pnpm run inspector # Opción 2: Manual npx @modelcontextprotocol/inspector npx nerdearla-agenda # Opción 3: Con servidor HTTP # 1. Iniciar el servidor pnpm start:http # 2. En la interfaz del inspector: # Transport Type: Streamable HTTP # URL: http://localhost:3000/mcp
src/
├── index.js          # MCP Server principal con transport layers
├── agenda-service.js # Lógica de negocio (herramientas)
├── scraper.js        # Web scraping con Puppeteer
├── time-utils.js     # Utilidades de tiempo GMT-3
└── mcp-tools.js      # Definición de MCP tools
tools/list para descubrimiento dinámicotools/call para ejecución de herramientasMCP_TRANSPORT, MCP_PORT, etc.{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "get_upcoming_talks", "arguments": { "limit": 3 } } }
Respuesta:
{ "jsonrpc": "2.0", "id": 1, "result": { "content": [ { "type": "text", "text": "{\n \"currentTime\": \"2025-09-23T15:30:00-03:00\",\n \"upcomingTalks\": [...],\n \"total\": 3\n}" } ] } }
# Crear paquete pnpm build # Instalar globalmente pnpm install:global # Usar globalmente npx nerdearla-agenda-mcp npx nerdearla-agenda-mcp http
Versión Actual: v1.2.0 - Sistema de Cache Inteligente
get_cache_info para monitoreo del sistemaVer CHANGELOG.md para historial completo de versiones.
# Ejecutar con Docker Compose (Recomendado) docker-compose up --build # Ejecutar en background docker-compose up -d --build # Solo Docker docker build -t nerdearla-agenda-mcp . docker run -p 3000:3000 nerdearla-agenda-mcp # Con autenticación docker run -p 3000:3000 \ -e MCP_BEARER=mi-token-secreto \ nerdearla-agenda-mcp
Ver DOCKER_GUIDE.md para configuración avanzada.
| Transport | Puerto | Uso | Conexión | 
|---|---|---|---|
| STDIO | - | Claude Desktop | Local | 
| HTTP/SSE | 3000 | Conexiones remotas | Red | 
| Speaker | GitHub | |
|---|---|---|
| Manuel Bruña | @manubruña | |
| Carlos Pereyra | @carlospereyra | 
"Automatizá con flow: IA, n8n y MCP sin morir en el intento"
En esta charla demostramos cómo crear workflows inteligentes que conectan:
Si este MCP Server te resultó útil:
MIT License - Siéntete libre de usar este código en tus propios proyectos.
Desarrollado con ❤️ para la comunidad de Nerdearla 2025