hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Exposes Bruno API collections as MCP tools, allowing interaction with APIs defined in Bruno collections through automatic conversion of requests to tools. Supports environment management, variable replacements, and custom request parameters.
Servidor MCP de la API de Bruno
Un servidor de Protocolo de Contexto de Modelo (MCP) que expone las colecciones de API de Bruno como herramientas MCP. Este servidor le permite interactuar con sus colecciones de API de Bruno mediante el protocolo MCP, lo que permite que agentes de IA y otros clientes MCP puedan acceder a ellas.
Por qué es importante: el código fuente y los datos trabajan juntos
Cuando los desarrolladores necesitan integrar API, generalmente enfrentan tres desafíos principales:
- Depuración a través de los límites del sistema : diagnosticar problemas en entornos de datos y códigos separados requiere un cambio de contexto constante, lo que hace que la resolución de problemas sea ineficiente.
- Creación de herramientas personalizadas : cada integración de API de terceros requiere la creación y el mantenimiento de herramientas personalizadas, lo que genera sobrecarga de desarrollo y deuda técnica.
- Creación de interfaces de usuario de servicios : desarrollar interfaces de usuario para cada servicio backend agrega una complejidad y costos de mantenimiento significativos.
Este servidor resuelve estos problemas específicos integrando el código fuente con los datos. Transforma las colecciones de la API de Bruno en herramientas del Protocolo de Contexto de Modelo, lo que permite:
- Depuración en entornos previamente separados con contexto completo
- Convierta cualquier API en una herramienta lista para agentes sin desarrollo personalizado adicional
- Cree servicios sin cabeza que puedan controlarse mediante interfaces de IA
Para los equipos de desarrollo que necesitan acelerar la integración de API y al mismo tiempo reducir los costos de mantenimiento, este enfoque cambia fundamentalmente lo que es posible, haciendo que las integraciones que antes eran complejas sean sencillas y accesibles.
Características
- Conversión automática de colecciones de API de Bruno a herramientas MCP
- Gestión del entorno para diferentes configuraciones de API
- HTTP con transporte SSE
- Soporte entre orígenes
- Herramientas integradas para la gestión de recopilaciones de API
Uso
- Instalar dependencias:Copy
- Inicie el servidor con su colección de API de Bruno:Opciones:Copy
--bruno-path
o-b
: Ruta al directorio de colección de API de Bruno (obligatorio)--environment
o-e
: Nombre del entorno a utilizar (opcional)--include-tools
: Lista separada por comas de nombres de herramientas para incluir, filtrando todos los demás (opcional)--exclude-tools
: Lista separada por comas de nombres de herramientas para excluir (opcional)
Ambos formatos son compatibles con las opciones de filtrado de herramientas:
Copy - Conectarse desde los clientes:
- Conexión local:
http://localhost:8000/sse
- De Windows a WSL:
http://<WSL_IP>:8000/sse
- Obtenga su IP WSL con:
hostname -I | awk '{print $1}'
- Conexión local:
Scripts predefinidos
El repositorio incluye varios scripts npm predefinidos para casos de uso comunes:
Desarrollo
Ejecución de pruebas
Ejecutar todas las pruebas:
Ejecutar archivo de prueba específico:
Depuración
El servidor utiliza la biblioteca debug
para el registro detallado. Puede habilitar diferentes espacios de nombres de depuración configurando la variable de entorno DEBUG
:
Espacios de nombres de depuración disponibles:
bruno-parser
: análisis de colecciones de API de Bruno y gestión del entornobruno-request
: Ejecución de solicitudes y manejo de respuestasbruno-tools
: Creación y registro de herramientas con el servidor MCP
Herramientas
Entornos de lista
Enumera todos los entornos disponibles en su colección de API de Bruno:
- No se requieren parámetros
- Devoluciones:
- Lista de entornos disponibles
- Entorno actualmente activo
Eco
Hace eco de un mensaje que envías (útil para realizar pruebas):
- Parámetro:
message
(cadena)
Estructura de la colección de API de Bruno
Su colección de API de Bruno debe seguir la estructura estándar de Bruno:
Cada solicitud de su colección se convertirá automáticamente en una herramienta MCP, lo que la hará disponible para su uso a través del protocolo MCP.
Uso de parámetros personalizados con herramientas
Al llamar a herramientas generadas desde su colección de API de Bruno, puede personalizar la solicitud proporcionando:
Anulación del entorno
Puede especificar un entorno diferente para una solicitud específica:
Esto utilizará las variables del entorno especificado en lugar del predeterminado.
Reemplazos de variables
Puede anular variables específicas para una sola solicitud:
Estas variables se sustituirán en la URL, los encabezados y el cuerpo de la solicitud. Por ejemplo, si la URL de la solicitud es:
Y si proporciona { "variables": { "dealId": "abc123" } }
, la URL real utilizada será:
Parámetros de consulta
Puede agregar o anular parámetros de consulta directamente:
Esto añadirá estos parámetros de consulta a la URL, independientemente de si están definidos en la solicitud original. Por ejemplo, si la URL de la solicitud es:
Y si proporciona { "query": { "limit": "10", "search": "keyword" } }
, la URL real utilizada será:
Este enfoque es más limpio y explícito que usar variables para anular los parámetros de consulta.
Parámetros corporales personalizados
También puede proporcionar parámetros personalizados en el cuerpo de la solicitud:
Ejemplo completo
A continuación se muestra un ejemplo completo que combina los cuatro tipos de personalización:
Licencia
Instituto Tecnológico de Massachusetts (MIT)
This server cannot be installed
Expone las colecciones de API de Bruno como herramientas del Protocolo de contexto de modelo (MCP), lo que permite que los agentes de IA y los clientes de MCP interactúen con sus colecciones de API.