Skip to main content
Glama

Tarea de MCP — Host, dos transportes y una habilidad

Este proyecto cumple con las partes locales de la tarea sin frameworks adicionales:

  • un agente CLI usando Ollama qwen3.5:4b;

  • un host MCP que carga configuración, fusiona herramientas y enruta llamadas;

  • un servidor todo stdio con 3 herramientas, 1 recurso y 1 prompt;

  • el mismo servidor sobre HTTP Streamable local autenticado;

  • carga progresiva de habilidades mediante use_skill;

  • persistencia, validación, errores MCP recuperables y pruebas de integración.

El alojamiento público no se realiza intencionalmente. Consulte PUBLIC_HTTP.md para los pasos exactos de implementación.

Requisitos

  • Node.js 20+

  • Ollama

  • qwen3.5:4b: ollama pull qwen3.5:4b

Related MCP server: Personal OS MCP

Instalar y verificar

npm install
npm test
npm run check

Ejecutar todo localmente

Use la misma clave local en ambas terminales. No está en el repositorio.

Terminal 1 — inicie el servidor HTTP autenticado:

export MCP_KEY="$(openssl rand -hex 32)"
echo "$MCP_KEY"   # copy this value for terminal 2
npm run server:http

Terminal 2 — asegúrese de que Ollama esté ejecutándose, luego inicie el agente:

export MCP_KEY="paste-the-same-value"
ollama serve      # omit if Ollama is already running

En otra terminal, ejecute:

export MCP_KEY="paste-the-same-value"
npm run agent

Pruebe estas solicitudes:

Add "finish MCP homework" using the stdio todo server.
Add "record the demo" using the HTTP todo server.
Standup time — what should I work on today?

La última solicitud debería activar use_skill("daily-plan"), luego llamar a ambos servidores MCP y devolver Today, Later y Blockers.

Probar con MCP Inspector

Stdio:

npx @modelcontextprotocol/inspector node src/servers/stdio.js

HTTP:

export MCP_KEY="a-local-test-key"
npm run server:http
npx @modelcontextprotocol/inspector

En Inspector, seleccione Streamable HTTP, use http://127.0.0.1:3000/mcp y agregue el encabezado Authorization: Bearer a-local-test-key. Verifique:

  1. add_task, list_tasks y complete_task están listados y se pueden llamar.

  2. todo://list se puede leer.

  3. plan_my_day se puede cargar.

  4. Completar un ID desconocido devuelve isError: true.

Mapa del proyecto

config.json                 agent/model/server configuration
skills/daily-plan/SKILL.md on-demand workflow
src/agent/                  MCP host, Ollama loop, and skill loader
src/todo/                   shared todo domain and MCP capabilities
src/servers/stdio.js        stdio entry point
src/servers/http.js         Streamable HTTP entry point
test/                       unit and protocol integration tests

Evidencia de calificación

Requisito

Evidencia

Host del agente

src/agent, config.json; fusiona y enruta herramientas con prefijo

Servidor stdio

src/servers/stdio.js; 3 herramientas + recurso + prompt

HTTP local

src/servers/http.js; HTTP Streamable + health + autenticación bearer

Habilidad en el agente

skills/daily-plan/SKILL.md; indexada y luego cargada por use_skill

Manejo de errores

Validación Zod, isError, bucle de agente acotado, errores HTTP estables

Pruebas

npm test ejercita el repositorio y ambos transportes MCP de extremo a extremo

Lista de verificación de demostración y entrega

Para una demostración corta en YouTube:

  1. Muestre que npm test pasa.

  2. Muestre el servidor stdio en Inspector: herramientas, recurso y prompt.

  3. Muestre el servidor HTTP devolviendo 401 sin la clave, luego conectándose con ella.

  4. En el agente, agregue una tarea a través de cada servidor.

  5. Pregunte “Standup time” y muestre la carga automática de habilidades más las llamadas a ambos servidores.

  6. Abra brevemente config.json y SKILL.md y explique el enrutamiento.

Envíe el enlace de YouTube y el código fuente en Moodle. Si luego lo implementa, envíe también la URL pública /mcp y una clave de calificación temporal.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    A local-stdio MCP server for a single personal Todoist account with env-gated read-only mode and prompt-injection mitigations.
    221 npm
    MIT
  • F
    license
    A
    quality
    B
    maintenance
    MCP server for Personal OS API that enables managing tasks, notes, projects, collections, reviews, and more through typed tools over stdio.
    66
    -
  • F
    license
    Not graded
    quality
    B
    maintenance
    A Model Context Protocol server that provides todo management via stdio, local HTTP, and public HTTPS transports, enabling agents to add, list, and complete tasks, and includes a daily standup skill.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    A demo MCP server exposing an in-memory todo list via tools (add_task, list_tasks, complete_task), a resource, and a prompt, over both stdio and HTTP transports.
    1 npm
    ISC