ASD

Mcp-Go

mark3labsmcp-go

Biblioteca en Go para construir servidores MCP con soporte de herramientas, recursos, prompts, tareas asíncronas y transportes stdio, SSE y HTTP.

stdiohttpsse
Estrellas
9k

del repositorio

Actualizado
anteayer

último commit

Herramientas

no documentadas

Transporte
stdio · http · sse

cómo conecta

Forks
864
Issues
23

abiertos

Instalación

go get github.com/mark3labs/mcp-go

Qué es Mcp-Go

mcp-go es una implementación en Go del Model Context Protocol (MCP), el estándar que permite que aplicaciones LLM se conecten con fuentes de datos y herramientas externas de forma segura. No es un servidor concreto, sino el SDK con el que se construyen servidores MCP propios en Go, ocupándose de los detalles del protocolo y la gestión de conexiones.

Con esta biblioteca defines Tools (acciones con efectos secundarios, como llamadas HTTP o consultas a bases de datos), Resources (datos expuestos de forma estática o mediante plantillas de URI) y Prompts (plantillas reutilizables de interacción, incluso con recursos embebidos). También soporta herramientas asíncronas basadas en tareas (task-augmented tools) que devuelven resultados mediante polling, útiles para operaciones largas.

Además incluye gestión de sesiones por cliente, filtrado de herramientas y prompts según la sesión, middleware para handlers de tools y prompts, hooks de ciclo de vida de las peticiones, autocompletado contextual para argumentos de prompts y recursos, metadatos OAuth (RFC 9728), CORS configurable para clientes basados en navegador y protección contra ataques de DNS rebinding en servidores locales.

Instalar el paquete solo requiere go get; a partir de ahí, el desarrollador escribe su propio main.go definiendo el servidor, sus tools/resources/prompts y el transporte (stdio, SSE o streamable-HTTP) que quiera exponer.

Qué le permite hacer a tu agente

  • Provee una API de alto nivel en Go para definir tools, resources y prompts de MCP con mínimo código repetitivo
  • Soporta herramientas asíncronas basadas en tareas (task-augmented tools) con modos opcional, requerido o prohibido
  • Gestiona sesiones por cliente, incluyendo herramientas y prompts personalizados por sesión y filtrado según contexto
  • Ofrece transportes stdio, SSE y streamable-HTTP, con soporte de CORS, metadatos OAuth y protección contra DNS rebinding
  • Permite añadir middleware y hooks al ciclo de vida de las peticiones para telemetría y observabilidad

Úsalo cuando

  • Necesitas construir un servidor MCP desde cero en Go con control total sobre tools, resources y prompts
  • Quieres exponer operaciones de larga duración como tareas asíncronas consultables por polling
  • Necesitas un servidor MCP que soporte múltiples clientes con sesiones y herramientas por sesión
  • Vas a exponer tu servidor MCP vía HTTP/SSE a clientes de navegador y necesitas CORS u OAuth

Detalles

Publicado por
mark3labs
Licencia
MIT
Versión
v1.0.0-beta.1
Repositorio
mark3labs/mcp-go
Transporte
stdio, http, sse

Etiquetas

  • go
  • sdk
  • protocolo-mcp
  • tareas-asincronas
  • sesiones

¿Este servidor es tuyo? Reclama el listado para corregir cualquier dato, añadir un logo y enlazar tu documentación.

Más servidores de Herramientas para desarrolladores

Instala en tu agente de código un conjunto de skills y una metodología completa de desarrollo de software, desde el diseño hasta el TDD y las revisiones de código.

Último commit
ayer
Credenciales
herramientas desarrollo

Ruflo

67.8k

Conecta Claude Code y Codex con una capa de orquestación que despliega swarms de agentes, memoria vectorial persistente y comunicación federada entre máquinas.

Herramientas expuestas
8 herramientas
Transporte
stdio
Último commit
ayer
herramientas desarrollo

Framework de desarrollo guiado por especificaciones que estructura el trabajo con asistentes de IA en propuestas, specs, diseño y tareas antes de escribir código.

Último commit
anteayer
herramientas desarrollo

Ver toda la categoría →