Multi-service MCP Server
** NOTA: Este proyecto ya no recibe mantenimiento, ya que debido a problemas con la memoria del modelo para modelos más pequeños, mi método preferido para servidores MCP es usar proveedores de servidores contenedorizados individuales en lugar de un proveedor de enrutamiento monolítico. El código se mantiene actualizado por si otros aún desean seguir esta ruta.
Servidor de Protocolo de Contexto de Modelo (MCP)
Un servidor modular que implementa el estándar Model Context Protocol , proporcionando herramientas para GitHub, GitLab, Google Maps, almacenamiento de memoria y automatización web Puppeteer.
Arquitectura
El servidor MCP cuenta con una arquitectura modular, donde cada herramienta se implementa como un módulo independiente. El servidor proporciona una puerta de enlace unificada que dirige las solicitudes a la herramienta correspondiente.

Related MCP server: MCP Toolkit
Características
Puerta de enlace MCP : un punto final unificado para todas las solicitudes de herramientas que siguen el estándar MCP
Manifiesto MCP : un punto final que describe todas las herramientas disponibles y sus capacidades
Acceso directo a las herramientas : se puede acceder directamente a cada herramienta a través de sus propios puntos finales de API
Diseño modular : fácil de agregar o quitar herramientas según sea necesario
Herramientas incluidas
Herramienta de GitHub : interactúe con repositorios, problemas y búsquedas de GitHub
Herramienta GitLab : Interactúe con proyectos, problemas y pipelines de GitLab
Herramienta Google Maps : geocodificación, direcciones y búsqueda de lugares
Herramienta de memoria : almacene y recupere datos de forma persistente
Herramienta Puppeteer : toma capturas de pantalla, genera archivos PDF y extrae contenido de sitios web
Empezando
Prerrequisitos
Python 3.8 o superior
Node.js 14 o superior
Una distribución de Linux basada en Red Hat (RHEL, CentOS, Fedora) o cualquier sistema Linux/macOS
Instalación
Clonar este repositorio:
git clone https://github.com/yourusername/mcp-server.git cd mcp-serverInstalar dependencias de Python:
pip install -r requirements.txtInstalar las dependencias de Node.js:
npm installCrea un archivo
.envcon tu configuración:SECRET_KEY=your-secret-key DEBUG=False # GitHub configuration GITHUB_TOKEN=your-github-token # GitLab configuration GITLAB_TOKEN=your-gitlab-token # Google Maps configuration GMAPS_API_KEY=your-google-maps-api-key # Memory configuration MEMORY_DB_URI=sqlite:///memory.db # Puppeteer configuration PUPPETEER_HEADLESS=true CHROME_PATH=/usr/bin/chromium-browserIniciar el servidor:
python app.py
Implementación en contenedores
Puede ejecutar el servidor utilizando Docker o Podman (el motor de contenedores de Red Hat).
Implementación de Docker
Si ya tiene instalados Docker y docker-compose:
Construya la imagen de Docker:
docker build -t mcp-server .Ejecute el contenedor:
docker run -p 5000:5000 --env-file .env mcp-serverAlternativamente, utilice docker-compose:
Cree un archivo
docker-compose.yml:version: '3' services: mcp-server: build: . ports: - "5000:5000" volumes: - ./data:/app/data env_file: - .env restart: unless-stoppedLuego ejecuta:
docker-compose up -d
Despliegue de Podman
Para sistemas basados en Red Hat (RHEL, CentOS, Fedora) que utilizan Podman:
Construya la imagen del contenedor:
podman build -t mcp-server .Ejecute el contenedor:
podman run -p 5000:5000 --env-file .env mcp-serverSi necesita almacenamiento persistente:
mkdir -p ./data podman run -p 5000:5000 --env-file .env -v ./data:/app/data:Z mcp-serverNota: El sufijo
:Zes importante para los sistemas habilitados para SELinux.Usando Podman Compose (si está instalado):
# Install podman-compose if needed pip install podman-compose # Use the same docker-compose.yml file as above podman-compose up -d
Uso del servidor MCP
Puerta de enlace MCP
MCP Gateway es el punto final principal para acceder a todas las herramientas que utilizan el estándar MCP.
Punto final : POST /mcp/gateway
Formato de solicitud :
{
"tool": "github",
"action": "listRepos",
"parameters": {
"username": "octocat"
}
}Formato de respuesta :
{
"tool": "github",
"action": "listRepos",
"status": "success",
"result": [
{
"id": 1296269,
"name": "Hello-World",
"full_name": "octocat/Hello-World",
"owner": {
"login": "octocat",
"id": 1
},
...
}
]
}Manifiesto del MCP
El Manifiesto MCP describe todas las herramientas disponibles y sus capacidades.
Punto final : GET /mcp/manifest
Formato de respuesta :
{
"manifestVersion": "1.0",
"tools": {
"github": {
"actions": {
"listRepos": {
"description": "List repositories for a user or organization",
"parameters": {
"username": {
"type": "string",
"description": "GitHub username or organization name"
}
},
"returns": {
"type": "array",
"description": "List of repository objects"
}
},
...
}
},
...
}
}Acceso directo a herramientas
También se puede acceder directamente a cada herramienta a través de sus propios puntos finales API:
GitHub:
/tool/github/...GitLab:
/tool/gitlab/...Google Maps:
/tool/gmaps/...Memoria:
/tool/memory/...Titiritero:
/tool/puppeteer/...
Consulte la documentación de la API de cada herramienta para obtener detalles sobre los puntos finales disponibles.
Documentación de herramientas
Herramienta de GitHub
La herramienta GitHub proporciona acceso a la API de GitHub para repositorios, problemas y búsquedas.
Acciones :
listRepos: enumera los repositorios de un usuario u organizacióngetRepo: obtener detalles de un repositorio específicosearchRepos: Buscar repositoriosgetIssues: Obtener problemas para un repositoriocreateIssue: crea un nuevo problema en un repositorio
Herramienta GitLab
La herramienta GitLab proporciona acceso a la API de GitLab para proyectos, problemas y canalizaciones.
Acciones :
listProjects: enumera todos los proyectos accesibles para el usuario autenticadogetProject: Obtener detalles de un proyecto específicosearchProjects: Busca proyectos en GitLabgetIssues: Obtener problemas para un proyectocreateIssue: Crea un nuevo problema en un proyectogetPipelines: Obtener pipelines para un proyecto
Herramienta Google Maps
La herramienta Google Maps proporciona acceso a la API de Google Maps para geocodificación, direcciones y búsqueda de lugares.
Acciones :
geocode: Convertir una dirección en coordenadas geográficasreverseGeocode: Convierte coordenadas geográficas en una direccióngetDirections: obtener direcciones entre dos ubicacionessearchPlaces: busca lugares usando la API de Google PlacesgetPlaceDetails: obtener detalles de un lugar específico
Herramienta de memoria
La herramienta Memoria proporciona un almacén de clave-valor persistente para almacenar y recuperar datos.
Acciones :
get: Obtener un elemento de memoria por claveset: crear o actualizar un elemento de memoriadelete: eliminar un elemento de memoria mediante una teclalist: enumera todos los elementos de memoria, con filtrado opcionalsearch: Buscar elementos de memoria por valor
Herramienta de titiritero
La herramienta Puppeteer proporciona capacidades de automatización web para tomar capturas de pantalla, generar archivos PDF y extraer contenido de sitios web.
Acciones :
screenshot: tomar una captura de pantalla de una página webpdf: Generar un PDF de una página webextract: Extraer contenido de una página web
Contribuyendo
¡Agradecemos sus contribuciones! Aquí le mostramos cómo ampliar el servidor MCP:
Agregar una nueva herramienta
Cree un nuevo archivo en el directorio
tools, por ejemplo,tools/newtool_tool.pyImplementar la herramienta con acciones que sigan el mismo patrón que las herramientas existentes
Agregue la herramienta al manifiesto en
app.pyRegistra el plano de la herramienta en
tools/__init__.py
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
Expresiones de gratitud
Protocolo de contexto del modelo para la especificación estándar
Flask para el marco web
Puppeteer para la automatización web
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables LLM agents to manage GitHub repositories, issues, pull requests, branches, files, and releases through a standardized interface.4528Apache 2.0
- AlicenseNot gradedqualityDmaintenanceA comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.492MIT
- AlicenseNot gradedqualityDmaintenanceA server that implements the Model Context Protocol, providing a standardized way to connect AI models to different data sources and tools.1011MIT
- FlicenseNot gradedqualityDmaintenanceA server implementation demonstrating how AI models can interact with external tools and services through Model Context Protocol, featuring integrations for calculator functions, GitHub repositories, and Google Maps searches.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
Appeared in Searches
- Multi MCP (Model Context Protocol) implementation or management
- Techniques for Scraping Dynamic Websites with JavaScript and Handling CAPTCHA or Proxy Issues
- A service for finding locations and navigation directions
- GitHub repository or chat tool related to MCP
- A Python library for visualizing neural networks
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AdamPippert/multi-service-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server