hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Servidores de protocolo de contexto de modelo útiles (MCPS)
Una colección de scripts Python independientes que implementan servidores del Protocolo de Contexto de Modelo (MCP) para diversas funciones de utilidad. Cada servidor proporciona herramientas especializadas que pueden ser utilizadas por asistentes de IA u otras aplicaciones compatibles con el protocolo MCP.
¿Qué es MCP?
El Protocolo de Contexto de Modelo (MCP) es una forma estandarizada para que los asistentes de IA interactúen con herramientas y servicios externos. Permite a los modelos de IA ampliar sus capacidades mediante la invocación de funciones especializadas proporcionadas por los servidores MCP. La comunicación se realiza mediante entrada/salida estándar (stdio) mediante mensajes JSON.
Servidores disponibles
Cada servidor MCP está diseñado para ejecutarse utilizando un administrador de entorno Python como uv
.
Extractor de datos de YouTube ( ytdlp
)
Un servidor que extrae información de los vídeos de YouTube utilizando yt-dlp.
Herramientas:
- Extraer capítulos : obtenga información del capítulo de un video de YouTube.
- Extraer subtítulos : obtén subtítulos de un video de YouTube para capítulos específicos o para todo el video.
Configuración del servidor MCP:
Procesador de documentos de Word ( docx_replace
)
Un servidor para manipular documentos de Word, incluido el procesamiento de plantillas y la conversión de PDF.
Herramientas:
- Plantilla de proceso : reemplace marcadores de posición en plantillas de Word y administre bloques de contenido.
- Obtener claves de plantilla : extrae todas las claves de reemplazo de una plantilla de documento de Word.
- Convertir a PDF : convierte un documento de Word (docx) al formato PDF.
Configuración del servidor MCP:
Representador PlantUML ( plantuml
)
Un servidor para representar diagramas PlantUML utilizando un servidor PlantUML (a menudo ejecutado a través de Docker).
Herramientas:
- Diagrama de renderizado : convierte texto PlantUML en imágenes de diagrama (por ejemplo, PNG).
Configuración del servidor MCP:
(Nota: Requiere un servidor PlantUML en ejecución accesible, potencialmente administrado a través de Docker como se implementa en el servicio).
Renderizador de sirena ( mermaid
)
Un servidor para renderizar diagramas de Mermaid utilizando la API de mermaidchart.com.
Herramientas:
- Renderizar gráfico de sirena : convierta el código de sirena en una imagen PNG creando un documento en mermaidchart.com.
Configuración del servidor MCP:
(Nota: Requiere un token de acceso a la API de Mermaid Chart establecido como una variable de entorno).
Fuente RSS a Markdown ( rss2md
)
Un servidor para convertir el contenido de fuentes RSS al formato Markdown con filtrado de fechas.
Herramientas:
- fetch_rss_to_markdown : obtiene una fuente RSS, filtra artículos por fecha y devuelve artículos coincidentes formateados como una lista Markdown.
Configuración del servidor MCP:
Instalación
- Clonar el repositorio:Copy
- Instalar
uv
: Si no tienesuv
, instálalo:Copy - Dependencias: Las dependencias se administran por MCP a través de
pyproject.toml
.uv run
normalmente se encargará de instalarlas automáticamente en un entorno virtual cuando ejecuta un MCP por primera vez usando--directory
.
Uso
Ejecución de un servidor
Se recomienda ejecutar cada servidor MCP utilizando uv run --directory <path>
apuntando al directorio del MCP específico. uv
maneja el entorno virtual y las dependencias basándose en el pyproject.toml
que se encuentra allí.
Ejemplo (del directorio raíz useful-mcps
):
Como alternativa, configure su cliente MCP (como las configuraciones JSON de ejemplo anteriores) para ejecutar el comando uv run --directory ...
directamente.
Conectarse a un servidor
Configure su aplicación cliente MCP para iniciar el servidor deseado usando la estructura de command
y args
que se muestra en los ejemplos de "Configuración del servidor MCP" para cada servidor. Asegúrese de que el command
apunte a su ejecutable uv
y que los args
especifiquen correctamente --directory
con la ruta a la carpeta de MCP y el nombre del script que se ejecutará. Pase las variables de entorno necesarias (como los tokens de API) usando la propiedad env
.
Ejemplos de uso de herramientas específicas
Estos muestran ejemplos arguments
que enviaría a la función call_tool
del servidor MCP respectivo.
Extractor de datos de YouTube
Extraer capítulos
Extraer subtítulos
Procesador de documentos de Word
Plantilla de proceso
(Nota: template_file
y docx_file
también pueden aceptar cadenas codificadas en base64 en lugar de rutas)
Obtener claves de plantilla
Convertir a PDF
Renderizador PlantUML
Diagrama de renderizado
(Nota: input
también puede ser una ruta a un archivo .puml
)
Renderizador de sirena
Gráfico de sirena renderizado
Desarrollo
Agregar un nuevo servidor MCP
- Cree un nuevo directorio para su MCP (por ejemplo,
my_new_mcp
). - Dentro del directorio, crea:
pyproject.toml
: define los metadatos del proyecto, las dependencias y el punto de entrada del script (por ejemplo, la sección[project.scripts]
que asignamy_new_mcp = "my_new_mcp:main"
).pyrightconfig.json
: (opcional) para verificación de tipos.- Su archivo Python principal (por ejemplo,
my_new_mcp.py
): implemente la lógica MCP utilizando la bibliotecamcp
(ver la plantilla a continuación).
- Implementar las clases y funciones requeridas (
serve
,list_tools
,call_tool
).
Plantilla básica ( my_new_mcp.py
):
Pruebas
Ejecute pruebas usando pytest desde el directorio raíz:
(Asegúrese de que las dependencias de prueba estén instaladas, posiblemente mediante uv pip install pytest
o agregando pytest
a las dependencias de desarrollo en uno de los archivos pyproject.toml
).
Licencia
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
This server cannot be installed
Lista de pequeños servidores mcp útiles que incluyen:
- docx_replace: reemplazar etiqueta en un documento de Word
- yt-dlp: extrae capítulos y subtítulos según el capítulo
- sirena: genera y renderiza imágenes usando la API de mermaidchart.com