Discover Awesome MCP Servers

Extend your agent with 16,880 capabilities via MCP servers.

All16,880
Python Docs Server

Python Docs Server

Un servidor MCP que permite a los usuarios obtener documentación de Python utilizando la API de Brave Search a través de consultas en lenguaje natural.

JavaScript
Tiny Cryptography MCP Server

Tiny Cryptography MCP Server

Un servidor de Protocolo de Contexto de Modelo construido con Express.js que proporciona herramientas criptográficas incluyendo la generación de pares de claves, la derivación de secretos compartidos y el cifrado/descifrado de mensajes.

JavaScript
Typesense MCP Server

Typesense MCP Server

Una implementación de servidor MCP que permite a los modelos de IA descubrir, buscar y analizar datos almacenados en colecciones de Typesense a través de herramientas para consultar documentos, recuperar elementos específicos y acceder a estadísticas de la colección.

TypeScript
MCP Server Enhanced SSH

MCP Server Enhanced SSH

Un servidor SSH robusto que facilita la ejecución segura de comandos remotos con gestión de sesiones TMUX, soporte multi-ventana y recuperación inteligente de sesiones para una interacción humano-IA mejorada.

Python
MCP Firecrawl Server

MCP Firecrawl Server

Un servidor que proporciona herramientas para rastrear sitios web y extraer datos estructurados de ellos utilizando las API de Firecrawl, que admite tanto el rastreo básico de sitios web en múltiples formatos como la extracción de datos personalizada basada en esquemas.

JavaScript
Mozilla Readability Parser MCP Server

Mozilla Readability Parser MCP Server

Aquí tienes una implementación en Python de un servidor MCP que extrae contenido de páginas web, elimina anuncios y elementos no esenciales, y lo transforma en Markdown limpio optimizado para LLM: ```python import requests from bs4 import BeautifulSoup import markdownify import re from flask import Flask, request, jsonify app = Flask(__name__) def extract_and_clean_content(url): """ Extrae el contenido de una página web, elimina anuncios y elementos no esenciales, y lo transforma en Markdown limpio optimizado para LLM. """ try: response = requests.get(url, timeout=10) response.raise_for_status() # Lanza una excepción para códigos de error HTTP html_content = response.text soup = BeautifulSoup(html_content, 'html.parser') # Eliminar scripts, estilos y otros elementos no esenciales for tag in soup(["script", "style", "meta", "link", "noscript", "iframe", "img", "svg"]): tag.decompose() # Eliminar elementos basados en clases o IDs (ejemplos comunes de anuncios) for tag in soup.find_all(class_=["ad", "advertisement", "adsbygoogle", "sidebar", "related-articles"]): tag.decompose() for tag in soup.find_all(id=["ad-container", "sidebar", "related"]): tag.decompose() # Eliminar comentarios HTML for comment in soup.find_all(string=lambda text: isinstance(text, comment)): comment.extract() # Extraer el contenido principal (ajustar según la estructura del sitio web) # Este es un ejemplo, puede que necesites inspeccionar el HTML de la página # y encontrar el contenedor principal del contenido. main_content = soup.find("div", {"class": "main-content"}) or soup.find("article") or soup.body if not main_content: return "No se pudo encontrar el contenido principal en la página." # Convertir a Markdown markdown = markdownify.markdownify(str(main_content), heading_style="atx") # Limpieza adicional del Markdown (opcional) markdown = re.sub(r'\n{3,}', '\n\n', markdown) # Eliminar líneas en blanco excesivas markdown = re.sub(r' +', ' ', markdown) # Eliminar espacios en blanco excesivos return markdown except requests.exceptions.RequestException as e: return f"Error al acceder a la URL: {e}" except Exception as e: return f"Error durante el procesamiento: {e}" @app.route('/extract', methods=['POST']) def extract_endpoint(): """ Endpoint para recibir una URL y devolver el contenido Markdown limpio. """ data = request.get_json() if not data or 'url' not in data: return jsonify({"error": "Se requiere una URL en el cuerpo de la solicitud JSON."}), 400 url = data['url'] markdown_content = extract_and_clean_content(url) return jsonify({"markdown": markdown_content}) if __name__ == '__main__': app.run(debug=True) ``` **Explicación del código:** 1. **Importaciones:** - `requests`: Para obtener el contenido HTML de la página web. - `BeautifulSoup`: Para analizar el HTML y facilitar la manipulación. - `markdownify`: Para convertir el HTML limpio a Markdown. - `re`: Para realizar limpieza adicional del Markdown con expresiones regulares. - `flask`: Para crear un servidor web simple que exponga un endpoint. 2. **`extract_and_clean_content(url)`:** - **Obtiene el HTML:** Usa `requests.get()` para obtener el contenido HTML de la URL proporcionada. Incluye un `timeout` para evitar que el script se quede colgado si la página no responde. `response.raise_for_status()` lanza una excepción si la solicitud HTTP falla (código de error 4xx o 5xx). - **Analiza el HTML:** Crea un objeto `BeautifulSoup` para analizar el HTML. - **Elimina elementos no esenciales:** - Elimina etiquetas como `<script>`, `<style>`, `<meta>`, `<link>`, `<iframe>`, `<img>`, `<svg>` y `<noscript>` que generalmente no son necesarias para el contenido principal. - Elimina elementos basados en clases e IDs comunes utilizados para anuncios y barras laterales. **Importante:** Esta parte es la que más probablemente necesite ser ajustada para cada sitio web. Inspecciona el HTML de las páginas que quieres procesar y añade o modifica las clases e IDs que se deben eliminar. - Elimina comentarios HTML. - **Extrae el contenido principal:** - Intenta encontrar el contenedor principal del contenido usando `soup.find()`. El código busca un `<div>` con la clase "main-content", un `<article>`, o, si no encuentra ninguno de los anteriores, usa el `<body>` como último recurso. **Esta es la parte más importante que debes adaptar a la estructura de cada sitio web.** Necesitas inspeccionar el HTML de la página y encontrar el elemento que contiene el contenido principal que quieres extraer. - **Convierte a Markdown:** Usa `markdownify.markdownify()` para convertir el HTML limpio a Markdown. `heading_style="atx"` especifica que los encabezados se creen con el estilo "atx" (usando `#` al principio de la línea). - **Limpieza adicional del Markdown (opcional):** - Elimina líneas en blanco excesivas y espacios en blanco redundantes para obtener un Markdown más limpio. - **Manejo de errores:** Incluye bloques `try...except` para capturar excepciones que puedan ocurrir durante la solicitud HTTP o el procesamiento del HTML. Devuelve mensajes de error descriptivos. 3. **`extract_endpoint()`:** - **Endpoint Flask:** Define un endpoint `/extract` que acepta solicitudes `POST`. - **Recibe la URL:** Espera que la URL se envíe en el cuerpo de la solicitud JSON como `{"url": "la_url"}`. - **Llama a `extract_and_clean_content()`:** Llama a la función principal para extraer y limpiar el contenido. - **Devuelve el Markdown:** Devuelve el contenido Markdown limpio en un objeto JSON como `{"markdown": "el_markdown"}`. - **Manejo de errores:** Devuelve un error 400 si la URL no se proporciona en el cuerpo de la solicitud. 4. **`if __name__ == '__main__':`:** - **Ejecuta el servidor:** Inicia el servidor Flask en modo de depuración (`debug=True`). Esto permite que el servidor se reinicie automáticamente cuando se realizan cambios en el código. **Cómo usarlo:** 1. **Instala las dependencias:** ```bash pip install requests beautifulsoup4 markdownify flask ``` 2. **Guarda el código:** Guarda el código como un archivo Python (por ejemplo, `mcp_server.py`). 3. **Ejecuta el servidor:** ```bash python mcp_server.py ``` 4. **Envía una solicitud POST:** Usa `curl`, `Postman` o cualquier otra herramienta para enviar una solicitud POST al endpoint `/extract` con la URL en el cuerpo JSON: ```bash curl -X POST -H "Content-Type: application/json" -d '{"url": "https://es.wikipedia.org/wiki/Inteligencia_artificial"}' http://localhost:5000/extract ``` Reemplaza `"https://es.wikipedia.org/wiki/Inteligencia_artificial"` con la URL que quieras procesar. 5. **Recibe la respuesta:** El servidor devolverá una respuesta JSON con el contenido Markdown limpio: ```json { "markdown": "# Inteligencia artificial\n\nLa **inteligencia artificial** (**IA**), también llamada **inteligencia artificial**, es la inteligencia mostrada por las máquinas. En informática, una máquina «inteligente» ideal es un agente racional que percibe su entorno y lleva a cabo acciones que maximicen sus posibilidades de éxito.\n\nColoquialmente, el término «inteligencia artificial» se aplica cuando una máquina imita las funciones «cognitivas» que los humanos asocian con otras mentes humanas, como por ejemplo: «aprender» y «resolver problemas».\n\n..." } ``` **Puntos importantes a considerar y adaptar:** * **Adaptación a la estructura del sitio web:** La parte más importante es la función `extract_and_clean_content()`. Necesitas inspeccionar el HTML de los sitios web que quieres procesar y ajustar el código para eliminar los elementos no deseados y extraer el contenido principal correctamente. Presta especial atención a las clases e IDs de los elementos que contienen anuncios, barras laterales y otros elementos no esenciales, y al elemento que contiene el contenido principal. * **Manejo de errores:** El código incluye manejo de errores básico, pero puedes mejorarlo para que sea más robusto. Por ejemplo, puedes agregar registro de errores o implementar estrategias de reintento. * **Configuración:** Considera agregar opciones de configuración para personalizar el comportamiento del servidor, como la lista de clases e IDs a eliminar, el estilo de encabezado Markdown, etc. Puedes usar variables de entorno o un archivo de configuración para esto. * **Escalabilidad:** Si planeas procesar muchas páginas web, considera usar un framework asíncrono como `asyncio` y `aiohttp` para mejorar el rendimiento. También puedes usar una cola de mensajes como RabbitMQ o Kafka para distribuir el trabajo entre varios servidores. * **Seguridad:** Si vas a exponer este servidor a Internet, asegúrate de implementar medidas de seguridad adecuadas, como la validación de la entrada del usuario y la protección contra ataques de denegación de servicio. * **Optimización para LLMs:** La limpieza del Markdown es importante para los LLMs. Asegúrate de eliminar cualquier ruido innecesario y de estructurar el contenido de manera clara y concisa. Considera agregar metadatos relevantes al Markdown, como el título de la página, la URL y la fecha de extracción. También puedes experimentar con diferentes estilos de Markdown para ver cuál funciona mejor con tu LLM. * **Robots.txt:** Respeta el archivo `robots.txt` del sitio web para evitar rastrear páginas que no están permitidas. Puedes usar la biblioteca `robotparser` para verificar si una URL está permitida antes de extraerla. Este es un punto de partida. La clave para que funcione bien es la adaptación a los sitios web específicos que quieres procesar. ¡Buena suerte!

Python
Memory Box MCP Server

Memory Box MCP Server

Integración de Cline MCP que permite a los usuarios guardar, buscar y formatear recuerdos con comprensión semántica, proporcionando herramientas para almacenar y recuperar información utilizando incrustaciones vectoriales para la búsqueda basada en el significado.

JavaScript
Meme MCP Server

Meme MCP Server

Un servidor simple de Protocolo de Contexto de Modelo que permite a los modelos de IA generar imágenes de memes utilizando la API de ImgFlip, permitiendo a los usuarios crear memes a partir de indicaciones de texto.

JavaScript
Placid MCP Server

Placid MCP Server

Un servidor para integrarse con la API de Placid.app, que permite listar plantillas y generar creatividades utilizando el Protocolo de Contexto de Modelo con una gestión segura de tokens de API.

TypeScript
StockFlow MCP Server

StockFlow MCP Server

Un servidor de Protocolo de Contexto de Modelo que proporciona datos bursátiles en tiempo real y análisis de opciones a través de Yahoo Finance, permitiendo a los LLM acceder a datos del mercado, analizar acciones y evaluar estrategias de opciones.

Python
Overseerr MCP Server

Overseerr MCP Server

Permite que Claude interactúe con Overseerr, lo que permite a los usuarios buscar, solicitar y administrar contenido multimedia para su biblioteca de Plex a través del lenguaje natural.

TypeScript
Notion MCP Server

Notion MCP Server

Un servidor sencillo que se integra con Claude para permitir consultar y manipular páginas y bases de datos de Notion a través de indicaciones en lenguaje natural.

JavaScript
Twitter MCP Server

Twitter MCP Server

Provides tools for interacting with Twitter to retrieve tweets by ID and post new tweets using the agent-twitter-client library.

JavaScript
Mistral Codestral MCP Server

Mistral Codestral MCP Server

Proporciona finalización de código, corrección de errores y generación de pruebas para múltiples lenguajes de programación, integrándose con la API de Mistral Codestral para mejorar los procesos de desarrollo de código.

TypeScript
MCP Redmine

MCP Redmine

Conecta Claude Desktop a Redmine para una gestión de proyectos y problemas fluida, incluyendo la búsqueda, creación, actualización y seguimiento de tareas utilizando la API de Redmine.

Python
Hacker News MCP Server

Hacker News MCP Server

Agrega una potente integración de Hacker News a los clientes LLM, permitiendo a los usuarios acceder a historias, comentarios, perfiles de usuario y funcionalidad de búsqueda a través del Protocolo de Contexto del Modelo.

JavaScript
Windsurf Supabase MCP Server

Windsurf Supabase MCP Server

Un servidor de Protocolo de Contexto de Modelo optimizado para integrar Supabase con el Editor Windsurf, que proporciona interacciones con la base de datos a través del lenguaje natural con un manejo de errores y un formato de respuesta mejorados.

TypeScript
MCP Weather Server

MCP Weather Server

Proporciona pronósticos del tiempo por hora utilizando la API de AccuWeather, permitiendo a los usuarios acceder a las condiciones climáticas actuales y pronósticos detallados de 12 horas adaptados a ubicaciones específicas.

Python
Monday.com MCP Server

Monday.com MCP Server

Permite a los clientes MCP interactuar con los tableros de Monday.com, permitiendo la creación y gestión de elementos, subelementos, comentarios y la recuperación de información del tablero.

Python
Obsidian MCP Server

Obsidian MCP Server

Este servidor MCP basado en TypeScript permite a los usuarios administrar y resumir notas de texto, proporcionando herramientas para la creación de notas y prompts de resumen.

TypeScript
Todo List MCP Server

Todo List MCP Server

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona herramientas para gestionar elementos de tareas pendientes, incluyendo la creación, actualización, finalización, eliminación, búsqueda y resumen de tareas.

TypeScript
privateGPT MCP Server

privateGPT MCP Server

Una implementación de servidor que permite la comunicación segura entre clientes MCP y privateGPT, permitiendo a los usuarios chatear con privateGPT utilizando bases de conocimiento y gestionar fuentes, grupos y usuarios a través de un Protocolo de Contexto de Modelo estandarizado.

JavaScript
lunchmoney-mcp

lunchmoney-mcp

Un servidor MCP que permite a los asistentes de IA interactuar con tus datos de Lunchmoney, habilitando consultas en lenguaje natural sobre transacciones, presupuestos y patrones de gasto.

TypeScript
MCP Web Tools Server

MCP Web Tools Server

Un servidor de Protocolo de Contexto de Modelo que permite a los LLM interactuar con contenido web a través de herramientas estandarizadas, actualmente compatible con la funcionalidad de web scraping.

Python
MCP Sentry

MCP Sentry

Un servidor de Protocolo de Contexto de Modelo que recupera y analiza incidencias de Sentry.io, permitiendo a los usuarios inspeccionar informes de errores, stacktraces e información de depuración de su cuenta de Sentry.

Python
NebulaGraph MCP Server

NebulaGraph MCP Server

Una implementación de servidor del Protocolo de Contexto de Modelo que permite a los LLM interactuar con la base de datos NebulaGraph para la exploración de grafos, soportando la comprensión del esquema, las consultas y los algoritmos de grafos.

Python
Shopify MCP Server

Shopify MCP Server

Permite la interacción con los datos de la tienda Shopify utilizando la API GraphQL, admitiendo la gestión de productos, clientes y pedidos con un manejo integral de errores.

TypeScript
image-tools-mcp

image-tools-mcp

Image Tools MCP es un servicio de Protocolo de Contexto de Modelo (MCP) que recupera las dimensiones de imágenes y comprime imágenes desde URLs y archivos locales utilizando la API de TinyPNG. Admite la conversión de imágenes a formatos como webp, jpeg/jpg y png, proporcionando información detallada sobre el ancho, la altura, el tipo y la compresión.

TypeScript
Hex API MCP Server

Hex API MCP Server

Un servidor que permite a los asistentes de IA acceder, ver, ejecutar y administrar proyectos de Hex a través de una interfaz estandarizada.

Python
MCP Server Memos

MCP Server Memos

Un paquete de Python que permite a los modelos LLM interactuar con el servidor Memos a través de la interfaz del Protocolo de Contexto del Modelo, permitiendo la búsqueda, creación, recuperación y gestión de memos.

Python