Integrations
Used for managing environment variables such as API credentials, with a .env file for configuration of the VoIPBin API key and URL.
Provides containerization support for easy deployment of the MCP server, with Docker Compose configuration and proper security practices for running the container.
Supports testing of the MCP server implementation with a test suite that can be run to verify functionality.
Servidor MCP de VoIPBin
Una implementación de servidor de Protocolo de contexto de modelo (MCP) para la API VoIPBin, que permite que los modelos de IA interactúen con los servicios de VoIP.
Descargo de responsabilidad
Este software se proporciona "tal cual", sin garantías, ni expresas ni implícitas. El autor no garantiza la integridad, fiabilidad ni precisión de este software. El uso de este software se realiza bajo su propia responsabilidad. El autor no se responsabiliza de ningún daño derivado del uso de este software.
Descripción general
Este servidor MCP proporciona una interfaz estandarizada para que los modelos de IA interactúen con los servicios API de VoIPBin. Implementa la especificación del Protocolo de Contexto de Modelo y admite los tipos de transporte SSE y stdio.
Características
- Integración completa de la API de VoIPBin a través del protocolo MCP
- Compatibilidad con los modos de transporte stdio y SSE
- Definiciones completas de herramientas con anotaciones adecuadas
- Manejo de solicitudes y respuestas con seguridad de tipos
- Solicitudes HTTP asincrónicas
- Manejo y validación de errores adecuados
- Compatibilidad con Docker para una implementación sencilla
Herramientas disponibles
Gestión de llamadas
get_calls
: recupera una lista de llamadas con filtrado opcionalget_call
: Obtener detalles de una llamada específicacreate_call
: Crea una nueva llamadaend_call
: Finalizar una llamada activa
Gestión de agentes
get_agents
: recupera una lista de agentesget_agent
: Obtener detalles de un agente específicoupdate_agent_status
: Actualizar el estado de un agente
Gestión de campañas
get_campaigns
: Recuperar una lista de campañasget_campaign
: Obtener detalles de una campaña específicacreate_campaign
: Crea una nueva campaña
Gestión de grabaciones
get_recordings
: recupera una lista de grabaciones de llamadasget_recording
: Obtener detalles de una grabación específica
Gestión de colas
get_queues
: recupera una lista de colas de llamadasget_queue
: Obtener detalles de una cola específica
Gestión de conferencias
get_conferences
: recupera una lista de conferencias activascreate_conference
: Crea una nueva conferencia
Gestión de chat
get_chats
: recupera una lista de conversaciones de chatsend_chat_message
: Envía un mensaje en una conversación de chat
Gestión de facturación
get_billing_info
: Recuperar información de facturación actualget_billing_history
: recupera el historial de facturación con filtrado de fechas opcional
Configuración
Configuración de desarrollo local
- Crear un entorno virtual:
- Instalar dependencias:
- Crea un archivo
.env
:
- Actualice el archivo
.env
con sus credenciales de API de VoIPBin:
Configuración de Docker
- Construya y ejecute usando Docker Compose:
- O bien, construya y ejecute usando Docker directamente:
Ejecución del servidor
Desarrollo local
Modo de E/S estándar
Modo SSE
Estibador
El servidor se ejecuta en modo SSE por defecto al usar Docker. El contenedor expone el puerto 8000 para conexiones SSE.
Ejemplos de uso de herramientas
Creando una llamada
Obtener detalles de la llamada
Creación de una conferencia
Enviar un mensaje de chat
Anotaciones de herramientas
Cada herramienta incluye anotaciones que proporcionan metadatos sobre su comportamiento:
readOnlyHint
: Indica si la herramienta solo lee datosdestructiveHint
: Indica si la herramienta modifica o elimina datosidempotentHint
: Indica si las llamadas repetidas tienen el mismo efecto que una sola llamadaopenWorldHint
: Indica si la herramienta opera en un contexto de mundo abierto
Manejo de errores
El servidor incluye un manejo integral de errores:
- Credenciales de API no válidas
- Problemas de conectividad de red
- Parámetros de solicitud no válidos
- Limitación de velocidad
- Errores del servidor
Desarrollo
Agregar nuevas herramientas
Para agregar una nueva herramienta:
- Agregue la definición de la herramienta en la función
list_tools()
- Implementar el controlador de herramientas en la función
voipbin_tool()
- Actualizar la documentación
Pruebas
Ejecute el conjunto de pruebas:
Seguridad
- Las claves API se almacenan de forma segura en variables de entorno
- Todas las solicitudes están autenticadas
- Se aplica HTTPS para la comunicación API
- La validación de entrada se realiza en todas las solicitudes
- El contenedor Docker se ejecuta como un usuario no root
- Los controles de salud garantizan que el contenedor funcione correctamente
Contribuyendo
- Bifurcar el repositorio
- Crear una rama de características
- Confirme sus cambios
- Empujar hacia la rama
- Crear una solicitud de extracción
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
La Licencia MIT es una licencia permisiva, breve y concisa. Permite a las personas hacer lo que quieran con el código, siempre y cuando se les dé crédito y no se les exija responsabilidad.
Qué puedes hacer con este código:
- Úselo comercialmente
- Modificarlo
- Distribuirlo
- Úselo de forma privada
- Sublicenciarlo
Lo que debes hacer:
- Incluya el aviso de derechos de autor original
- Incluir el texto de la licencia
- Proporcionar una atribución clara a la fuente original.
- Mantener la atribución en cualquier trabajo derivado
Lo que no puedes hacer:
- Hacer responsable al autor de los daños
- Eliminar u ocultar la atribución
- Reclama la obra como tuya
Para obtener más información sobre la licencia MIT, visite choosealicense.com/licenses/mit/ .
This server cannot be installed
Un servidor de protocolo de contexto de modelo que permite que los modelos de IA interactúen con los servicios de VoIP de VoIPBin, admitiendo funciones como gestión de llamadas, gestión de agentes, campañas, conferencias y funcionalidad de chat.