Discover Awesome MCP Servers

Extend your agent with 14,392 capabilities via MCP servers.

All14,392
Domo MCP Server

Domo MCP Server

Bitcoin Price MCP Server

Bitcoin Price MCP Server

Proporciona a Claude AI acceso en tiempo real a datos del precio de Bitcoin, incluyendo el precio actual en USD, el porcentaje de cambio en 24 horas e información sobre la capitalización de mercado.

MCP OmniFocus

MCP OmniFocus

A Model Context Protocol server that enables automation and management of OmniFocus tasks, projects, and tags using natural language and programmable interfaces from VS Code, command line, or any MCP-compatible client.

Refunc MCP Server

Refunc MCP Server

Servidor de Protocolo de Contexto del Modelo Refunc

WhatsApp Business API MCP Server

WhatsApp Business API MCP Server

🔒 Minimal GitHub OAuth-enabled MCP Server

🔒 Minimal GitHub OAuth-enabled MCP Server

Claro, aquí tienes una demostración rápida de un servidor MCP (Minecraft Protocol) que utiliza GitHub OAuth para autenticar usuarios. Ten en cuenta que esto es un ejemplo simplificado y requerirá ajustes para un uso en producción. **Conceptos Clave:** * **MCP (Minecraft Protocol):** El protocolo de comunicación entre el cliente de Minecraft y el servidor. * **GitHub OAuth:** Un mecanismo para permitir que los usuarios se autentiquen en tu servidor utilizando sus cuentas de GitHub. * **UUID (Universally Unique Identifier):** Un identificador único para cada jugador. Minecraft utiliza UUIDs para identificar a los jugadores de forma consistente. **Advertencia:** Este código es un ejemplo simplificado y no está listo para producción. Necesitarás implementar manejo de errores, seguridad robusta y persistencia de datos. **Pasos Generales:** 1. **Registrar una Aplicación OAuth en GitHub:** * Ve a [https://github.com/settings/developers](https://github.com/settings/developers) * Haz clic en "New OAuth App". * Completa los detalles: * **Application name:** Un nombre para tu aplicación (ej. "Mi Servidor Minecraft"). * **Homepage URL:** La URL de tu servidor o sitio web. * **Authorization callback URL:** La URL a la que GitHub redirigirá al usuario después de la autorización. Por ejemplo: `http://tu-servidor.com/auth/github/callback` (reemplaza con tu URL real). * Obtén el **Client ID** y el **Client Secret**. Guarda estos valores de forma segura. 2. **Estructura del Proyecto (Ejemplo en Python):** ``` mi_servidor_mcp/ ├── server.py # Lógica principal del servidor ├── auth.py # Manejo de la autenticación OAuth └── config.py # Archivo de configuración ``` 3. **Archivo `config.py`:** ```python GITHUB_CLIENT_ID = "TU_CLIENT_ID" # Reemplaza con tu Client ID de GitHub GITHUB_CLIENT_SECRET = "TU_CLIENT_SECRET" # Reemplaza con tu Client Secret de GitHub GITHUB_CALLBACK_URL = "http://tu-servidor.com/auth/github/callback" # Reemplaza con tu URL de callback SERVER_PORT = 25565 # Puerto del servidor Minecraft ``` 4. **Archivo `auth.py` (Manejo de Autenticación OAuth):** ```python import requests import config def get_github_access_token(code): """Obtiene el token de acceso de GitHub usando el código de autorización.""" data = { 'client_id': config.GITHUB_CLIENT_ID, 'client_secret': config.GITHUB_CLIENT_SECRET, 'code': code } headers = {'Accept': 'application/json'} response = requests.post('https://github.com/login/oauth/access_token', data=data, headers=headers) response.raise_for_status() # Lanza una excepción si hay un error return response.json().get('access_token') def get_github_user_info(access_token): """Obtiene la información del usuario de GitHub usando el token de acceso.""" headers = {'Authorization': f'token {access_token}'} response = requests.get('https://api.github.com/user', headers=headers) response.raise_for_status() return response.json() def get_minecraft_uuid(username): """Obtiene el UUID de Minecraft para un nombre de usuario.""" response = requests.get(f'https://api.mojang.com/users/profiles/minecraft/{username}') if response.status_code == 200: return response.json().get('id') else: return None ``` 5. **Archivo `server.py` (Ejemplo Simplificado del Servidor):** ```python import socket import threading import auth import config import uuid # Para generar UUIDs si no se encuentra el usuario en Mojang def handle_client(client_socket): """Maneja la conexión de un cliente.""" try: # Simulación de la recepción de un "código" de GitHub (en la realidad, esto vendría de la URL de callback) # **IMPORTANTE:** En un escenario real, el cliente (Minecraft) *no* interactúa directamente con GitHub. # El flujo sería: # 1. El usuario hace clic en un enlace en el juego que lo redirige a GitHub para la autorización. # 2. GitHub redirige al usuario de vuelta a *tu servidor web* (la callback URL). # 3. *Tu servidor web* recibe el código de autorización. # 4. *Tu servidor web* usa el código para obtener el token de acceso de GitHub. # 5. *Tu servidor web* usa el token de acceso para obtener la información del usuario de GitHub. # 6. *Tu servidor web* envía la información del usuario (o un token de sesión) al cliente de Minecraft. # **ESTO ES SOLO UNA SIMULACIÓN PARA DEMOSTRAR EL CONCEPTO:** github_auth_code = "SIMULATED_GITHUB_AUTH_CODE" # Reemplaza con el código real obtenido del callback # Obtener el token de acceso de GitHub access_token = auth.get_github_access_token(github_auth_code) # Obtener la información del usuario de GitHub user_info = auth.get_github_user_info(access_token) github_username = user_info.get('login') # Obtener el UUID de Minecraft minecraft_uuid = auth.get_minecraft_uuid(github_username) if minecraft_uuid: print(f"Usuario {github_username} autenticado con UUID: {minecraft_uuid}") client_socket.send(f"Autenticado con UUID: {minecraft_uuid}\n".encode()) else: # Si el usuario de GitHub no tiene una cuenta de Minecraft asociada con el mismo nombre, # puedes generar un UUID aleatorio (NO RECOMENDADO para producción, ya que no es persistente). # En un escenario real, deberías tener un sistema para vincular cuentas de GitHub a cuentas de Minecraft. new_uuid = str(uuid.uuid4()) print(f"Usuario {github_username} no encontrado en Mojang. Generando UUID temporal: {new_uuid}") client_socket.send(f"Usuario no encontrado. UUID temporal: {new_uuid}\n".encode()) client_socket.close() except Exception as e: print(f"Error al manejar el cliente: {e}") client_socket.close() def start_server(): """Inicia el servidor.""" server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_address = ('localhost', config.SERVER_PORT) server_socket.bind(server_address) server_socket.listen(5) print(f"Servidor escuchando en {server_address}") while True: client_socket, client_address = server_socket.accept() print(f"Conexión de {client_address}") client_thread = threading.Thread(target=handle_client, args=(client_socket,)) client_thread.start() if __name__ == "__main__": start_server() ``` **Explicación:** * **`config.py`:** Almacena la configuración, incluyendo las credenciales de GitHub OAuth. **Nunca subas este archivo a un repositorio público con tus credenciales reales.** * **`auth.py`:** * `get_github_access_token(code)`: Intercambia el código de autorización (obtenido después de que el usuario autoriza tu aplicación en GitHub) por un token de acceso. * `get_github_user_info(access_token)`: Utiliza el token de acceso para obtener información del usuario de GitHub (como su nombre de usuario). * `get_minecraft_uuid(username)`: Busca el UUID de Minecraft asociado con el nombre de usuario de GitHub. Esto asume que el nombre de usuario de GitHub es el mismo que el nombre de usuario de Minecraft. * **`server.py`:** * `handle_client(client_socket)`: Maneja la conexión de un cliente. **Este es el punto donde la simulación de GitHub OAuth ocurre.** En un escenario real, este código recibiría un token de sesión o información del usuario de un servidor web que ya ha completado el flujo de OAuth. * `start_server()`: Inicia el servidor de socket. **Cómo Ejecutar:** 1. **Instala las dependencias:** ```bash pip install requests ``` 2. **Reemplaza los valores en `config.py`** con tu Client ID, Client Secret y Callback URL de GitHub. 3. **Ejecuta `server.py`:** ```bash python server.py ``` **Limitaciones y Mejoras:** * **Simulación de OAuth:** El código `server.py` simula el flujo de OAuth. En un escenario real, necesitarás un servidor web (ej. usando Flask o Django) para manejar el callback de GitHub y la comunicación con el cliente de Minecraft. * **Seguridad:** Este código es *extremadamente* básico en términos de seguridad. Necesitarás implementar medidas de seguridad robustas, como: * Validación de entradas. * Protección contra ataques de inyección. * Almacenamiento seguro de credenciales. * Uso de HTTPS. * **Persistencia de Datos:** El UUID generado si el usuario no se encuentra en Mojang es temporal. Necesitarás una base de datos para almacenar la información del usuario y los UUIDs de forma persistente. * **Manejo de Errores:** El manejo de errores es muy básico. Necesitas implementar un manejo de errores más robusto. * **Comunicación con el Cliente de Minecraft:** Este ejemplo solo envía un mensaje de texto al cliente. Necesitarás implementar el protocolo MCP completo para comunicarte correctamente con el cliente de Minecraft. * **Vinculación de Cuentas:** La suposición de que el nombre de usuario de GitHub es el mismo que el nombre de usuario de Minecraft es poco realista. Necesitarás un sistema para que los usuarios vinculen sus cuentas de GitHub a sus cuentas de Minecraft. **Flujo de Autenticación Real (Esquema):** 1. **El usuario se conecta al servidor de Minecraft.** 2. **El servidor de Minecraft envía un mensaje al cliente pidiéndole que se autentique.** Este mensaje podría incluir un enlace a la página de autorización de GitHub. 3. **El usuario hace clic en el enlace y es redirigido a GitHub.** 4. **El usuario autoriza tu aplicación en GitHub.** 5. **GitHub redirige al usuario de vuelta a tu servidor web (la callback URL).** 6. **Tu servidor web recibe el código de autorización.** 7. **Tu servidor web usa el código para obtener el token de acceso de GitHub.** 8. **Tu servidor web usa el token de acceso para obtener la información del usuario de GitHub.** 9. **Tu servidor web vincula la cuenta de GitHub a una cuenta de Minecraft (si es necesario).** 10. **Tu servidor web genera un token de sesión y lo envía al cliente de Minecraft.** 11. **El cliente de Minecraft envía el token de sesión al servidor de Minecraft.** 12. **El servidor de Minecraft valida el token de sesión y permite que el usuario juegue.** Este ejemplo te da un punto de partida. La implementación completa de un sistema de autenticación con GitHub OAuth para un servidor de Minecraft es un proyecto más complejo que requiere un servidor web y un conocimiento profundo del protocolo MCP.

FileScopeMCP

FileScopeMCP

A TypeScript tool that ranks files in your codebase by importance, tracks dependencies, and provides file summaries to help understand code structure through Cursor's Model Context Protocol.

MSSQL Database Connector

MSSQL Database Connector

Un servidor de Protocolo de Contexto de Modelo que permite ejecutar consultas SQL y administrar conexiones con bases de datos de Microsoft SQL Server.

SF Cleaning Service

SF Cleaning Service

Enables booking cleaning services in San Francisco by collecting customer details and automatically sending booking requests via email to service partners.

mcp-rubber-duck

mcp-rubber-duck

An MCP server that acts as a bridge to query multiple OpenAI-compatible LLMs with MCP tool access. Just like rubber duck debugging, explain your problems to various AI "ducks" who can actually research and get different perspectives!

Fetch MCP Server

Fetch MCP Server

Proporciona funcionalidad para obtener contenido web en varios formatos, incluyendo HTML, JSON, texto plano y Markdown.

Pixabay MCP Server

Pixabay MCP Server

Un servidor de Protocolo de Contexto de Modelo que permite buscar imágenes en Pixabay con parámetros de consulta y devuelve resultados formateados con URLs de imágenes y metadatos.

Kolada MCP Server

Kolada MCP Server

Un servidor MCP para Kolada.

Whissle MCP Server

Whissle MCP Server

Un servidor basado en Python que proporciona acceso a los puntos finales de la API de Whissle para la conversión de voz a texto, la diarización, la traducción y el resumen de texto.

GoHighLevel MCP Server

GoHighLevel MCP Server

A Model Context Protocol server providing comprehensive integration with GoHighLevel's CRM, marketing automation, and business management tools, enabling AI assistants to interact with contacts, conversations, calendars, opportunities, payments, and workflows.

storybook-mcp

storybook-mcp

A Model Context Protocol (MCP) server for Storybook.

HomeHarvest MCP Server

HomeHarvest MCP Server

An MCP server built with Smithery that provides a foundation for real estate data harvesting capabilities. Currently includes example functionality for testing and development purposes.

eDistrict Odisha ServicePlus MCP Server

eDistrict Odisha ServicePlus MCP Server

An MCP Server that enables interaction with Odisha's eDistrict services through the API Setu interface, allowing users to access and utilize Odisha government digital services through natural language.

MCP Python Function Generator Server

MCP Python Function Generator Server

yop-mcp

yop-mcp

yop-mcp 是一个专为易宝支付开放平台(YOP)设计的 MCP (Model Context Protocol) Server,提供了一套完整的工具函数,帮助开发者通过AI助手(如Claude、Cursor等)更便捷地获取YOP平台的相关信息、生成密钥对、下载证书等操作。

geeknews-mcp-server

geeknews-mcp-server

Este proyecto es un servidor de Protocolo de Contexto de Modelo (MCP) que obtiene artículos de GeekNews. Está implementado en Python y realiza web scraping utilizando BeautifulSoup.

Lightning Tools MCP Server

Lightning Tools MCP Server

Permite la interacción con direcciones Lightning y herramientas comunes de Lightning a través de tu LLM, proporcionando funcionalidad de la Red Lightning a través del lenguaje natural.

Swagger MCP

Swagger MCP

Un servidor MCP que se conecta a una especificación Swagger y ayuda a una IA a construir todos los modelos requeridos para generar un servidor MCP para ese servicio.

Remote MCP Server (Authless)

Remote MCP Server (Authless)

A Cloudflare Workers-based MCP server that enables AI models to use custom tools without requiring authentication.

🏓 MCP Ping-Pong Server by Remote Call

🏓 MCP Ping-Pong Server by Remote Call

🏓 Una aplicación experimental y educativa para un servidor de Ping-pong que demuestra llamadas remotas MCP (Protocolo de Contexto de Modelo).

Lara Translate MCP Server

Lara Translate MCP Server

Un servidor MCP que proporciona capacidades de traducción automática a través de la API Lara Translate, con detección de idiomas y traducciones sensibles al contexto entre numerosos pares de idiomas.

Unstructured API Server

Unstructured API Server

Una implementación de servidor MCP que permite la interacción con la API de Unstructured, proporcionando herramientas para listar, crear, actualizar y administrar fuentes, destinos y flujos de trabajo.

tabular-mcp

tabular-mcp

tabular-mcp

简介

简介

RAGmonsters Custom PostgreSQL MCP Server

RAGmonsters Custom PostgreSQL MCP Server

A domain-specific MCP server that provides optimized API access to the RAGmonsters fictional monster dataset, enabling more efficient and secure interactions compared to generic SQL queries.