Discover Awesome MCP Servers

Extend your agent with 13,006 capabilities via MCP servers.

All13,006
Dify as MCP Server

Dify as MCP Server

Expone las aplicaciones de Dify (tanto Chatflow como Workflow) como servidores MCP (Protocolo de Contexto de Modelo), permitiendo que Claude y otros clientes MCP interactúen directamente con las aplicaciones de Dify a través de un protocolo estandarizado.

binance-p2p-mcp-server

binance-p2p-mcp-server

Here are a few options, depending on the specific nuance you want to convey: **Option 1 (Most Direct):** * **Binance (con enfoque en P2P primero) Protocolo de Servidor de Contexto de Modelo** **Option 2 (Slightly more descriptive):** * **Binance (priorizando P2P) Protocolo de Servidor de Contexto de Modelo** **Option 3 (If "Model Context Protocol Server" is a well-known term, you might leave it in English):** * **Binance (con enfoque en P2P primero) Model Context Protocol Server** (This assumes the target audience understands the English term.) **Explanation of Choices:** * **Binance:** This remains the same as it's a proper noun. * **focus in P2P firstly:** * `con enfoque en P2P primero`: "with a focus on P2P first" - This is a very literal and common translation. * `priorizando P2P`: "prioritizing P2P" - This is a bit more concise and emphasizes the priority. * **Model Context Protocol Server:** This is the trickiest part. Without more context, it's hard to know if this is a standard term that should be left in English, or if it needs translation. If it needs translation, it would be something like: * `Protocolo de Servidor de Contexto de Modelo` - This is a direct translation. Whether it makes sense to a Spanish-speaking audience depends on their familiarity with the concept. **Recommendation:** I would lean towards **Option 1: Binance (con enfoque en P2P primero) Protocolo de Servidor de Contexto de Modelo** unless you know for sure that "Model Context Protocol Server" is a term commonly used and understood in English by your target audience. If you know the audience is familiar with the English term, then **Option 3** is best. To give you the *best* translation, I need more context. What is this *exactly*? Who is the target audience? Knowing this will help me choose the most appropriate and understandable translation.

MCP Dockmaster

MCP Dockmaster

MCP Dockmaster allows you to easily install and manage MCP servers. Available for Mac, Windows and Linux as a Desktop App, CLI and a library.

mcp-clj

mcp-clj

A MCP server written in clojure

🚀 Payload CMS 3.0 MCP Server

🚀 Payload CMS 3.0 MCP Server

Permite la gestión de proyectos Payload CMS a través de comandos en lenguaje natural, lo que permite a los desarrolladores crear, configurar e implementar modelos de contenido con IA conversacional.

g4f-mcp-server

g4f-mcp-server

gpt4free mcp server

Taiga MCP Bridge

Taiga MCP Bridge

Un puente de protocolo que conecta sistemas de IA con la plataforma de gestión de proyectos Taiga, permitiendo que las herramientas de IA creen y gestionen proyectos, épicas, historias de usuario, tareas, incidencias y sprints.

Govee MCP Server

Govee MCP Server

Mirror of

Place ID MCP Server

Place ID MCP Server

Serveur MCP connecté à l'API Google Places pour récupérer dynamiquement des photos de lieux et les intégrer dans Cursor via Smithery

MCP Go

MCP Go

Server side MCP implementation for Golang

GitHub MCP Server Practice Repository

GitHub MCP Server Practice Repository

Mirror of

Firecrawl MCP Server

Firecrawl MCP Server

Espejo de

DevRev MCP server

DevRev MCP server

Mirror of

FastMCP 🚀

FastMCP 🚀

The fast, Pythonic way to build Model Context Protocol servers 🚀

Modern Control Protocol (MCP) Server

Modern Control Protocol (MCP) Server

A modern, scalable MCP server implementation with support for multiple AI providers, advanced monitoring, and robust conversation management.

s3-mcp-serverwhat is s3-mcp-server?how to use s3-mcp-server?key features of s3-mcp-server?use cases of s3-mcp-server?FAQ from s3-mcp-server?

s3-mcp-serverwhat is s3-mcp-server?how to use s3-mcp-server?key features of s3-mcp-server?use cases of s3-mcp-server?FAQ from s3-mcp-server?

E2B MCP Server

E2B MCP Server

Mirror of

mcp-rb-template

mcp-rb-template

Documentation Retrieval MCP Server (DOCRET)

Documentation Retrieval MCP Server (DOCRET)

Un servidor MCP que permite a los asistentes de IA acceder a documentación actualizada de bibliotecas de Python como LangChain, LlamaIndex y OpenAI mediante la obtención dinámica desde fuentes oficiales.

ModelContextProtocol (MCP) Java SDK v0.8.0 Specification

ModelContextProtocol (MCP) Java SDK v0.8.0 Specification

Okay, here's a breakdown of instructions for an AI on how to create a Java-based Minecraft Protocol (MCP) server and client. This is a complex task, so the instructions are broken down into manageable steps. The AI should be able to follow these instructions, assuming it has access to Java development tools and Minecraft protocol documentation. **I. Understanding the Goal and Prerequisites** * **Goal:** Create a basic Java application that can act as both a Minecraft server (handling client connections and basic world data) and a Minecraft client (connecting to a server and sending/receiving data). This will *not* be a full-fledged Minecraft server or client, but a simplified version for learning and experimentation. * **Prerequisites:** * **Java Development Kit (JDK):** The AI needs to have access to a JDK (version 8 or higher is recommended). * **Integrated Development Environment (IDE):** An IDE like IntelliJ IDEA, Eclipse, or NetBeans is highly recommended for code editing, debugging, and project management. * **Minecraft Protocol Documentation:** The AI *must* have access to up-to-date Minecraft protocol documentation. This is crucial for understanding the packet structure and handshake process. A good starting point is the Wiki.vg Minecraft Protocol page (search for "Wiki.vg Minecraft Protocol"). The AI should be able to access and parse this documentation. * **Networking Knowledge:** The AI should have a basic understanding of TCP/IP networking, sockets, and streams. * **Data Serialization/Deserialization:** The AI needs to understand how to serialize and deserialize data into byte streams for network transmission and back into Java objects. * **Compression/Encryption (Optional):** For a more realistic implementation, the AI should understand how to implement compression (zlib) and encryption (AES) as used in the Minecraft protocol. **II. Project Setup** 1. **Create a New Java Project:** * Create a new Java project in the chosen IDE. * Name the project something like "SimpleMinecraft." * Set up the project structure with appropriate packages (e.g., `server`, `client`, `protocol`, `util`). 2. **Dependencies (if needed):** * If using external libraries for networking or data handling, add them as dependencies to the project. For example, libraries for handling UUIDs or JSON might be useful. Maven or Gradle can be used for dependency management. **III. Server Implementation** 1. **Server Socket Setup:** * Create a `ServerSocket` to listen for incoming client connections on a specific port (e.g., 25565, the default Minecraft port). * Use a `while` loop to continuously accept new client connections. * For each new connection, create a new `Thread` to handle the client's communication. 2. **Client Connection Handling (within the Thread):** * Get the `Socket` from the accepted connection. * Create `InputStream` and `OutputStream` objects for reading data from and writing data to the client. 3. **Handshake:** * **Read the Handshake Packet (ID 0x00):** Parse the incoming data stream to extract the protocol version, server address, and next state (1 for status, 2 for login). Refer to the Minecraft protocol documentation for the exact packet structure. * **Handle Status Request (State 1):** * **Respond with Status Response Packet (ID 0x00):** Create a JSON string containing server information (e.g., MOTD, player count, protocol version). Serialize this JSON string into a packet and send it to the client. * **Handle Ping Request Packet (ID 0x01):** Read the ping payload from the client. * **Respond with Ping Response Packet (ID 0x01):** Send the same ping payload back to the client. * Close the connection. * **Handle Login Request (State 2):** * **Read Login Start Packet (ID 0x00):** Parse the player's username from the packet. * **Authentication (Simplified):** For this simplified server, skip full authentication. Just assign a UUID to the player. * **Send Login Success Packet (ID 0x02):** Send a packet containing the player's UUID and username. * **Send Join Game Packet (ID 0x26 (1.16.5) - Packet ID changes with version)):** Send a packet containing information about the game (e.g., entity ID, gamemode, dimension). This packet's structure is version-dependent. * **Send other necessary packets:** Depending on the desired functionality, send packets like `SpawnPosition`, `PlayerAbilities`, `HeldItemChange`, `ChunkData`, `EntityMetadata`, etc. These packets are crucial for setting up the player's initial state in the world. 4. **Game Loop (Basic):** * After the login sequence, enter a basic game loop. * **Receive Packets:** Continuously read packets from the client. * **Process Packets:** Handle incoming packets (e.g., chat messages, player movement). For a simple server, you might only handle chat messages and ignore movement. * **Send Updates:** Send updates to the client (e.g., chat messages from other players, changes in the world). **IV. Client Implementation** 1. **Socket Connection:** * Create a `Socket` to connect to the server's IP address and port. * Create `InputStream` and `OutputStream` objects for reading data from and writing data to the server. 2. **Handshake:** * **Create and Send Handshake Packet (ID 0x00):** Construct the handshake packet with the correct protocol version, server address, and next state (2 for login). * **Create and Send Login Start Packet (ID 0x00):** Construct the login start packet with the desired username. 3. **Login Handling:** * **Receive Login Success Packet (ID 0x02):** Parse the player's UUID and username from the packet. * **Receive Join Game Packet (ID 0x26 (1.16.5)):** Parse the game information from the packet. 4. **Game Loop (Basic):** * After the login sequence, enter a basic game loop. * **Receive Packets:** Continuously read packets from the server. * **Process Packets:** Handle incoming packets (e.g., chat messages, world updates). * **Send Packets:** Send packets to the server (e.g., chat messages, player movement). **V. Protocol Handling (Crucial)** 1. **Packet Structure:** * The AI *must* understand the structure of Minecraft packets. Each packet consists of: * **Length:** A variable-length integer (VarInt) indicating the length of the packet data that follows. * **ID:** A VarInt indicating the packet ID. * **Data:** The packet-specific data, formatted according to the packet ID. 2. **VarInt Encoding/Decoding:** * Implement methods to encode and decode VarInts. VarInts are used extensively in the Minecraft protocol. They are variable-length integers that use a variable number of bytes to represent the integer value. 3. **Data Types:** * Understand and implement methods for reading and writing the following data types: * `byte` * `short` * `int` * `long` * `float` * `double` * `boolean` * `String` (UTF-8 encoded) * `UUID` * `VarInt` * Arrays of the above types 4. **Packet Classes:** * Create Java classes to represent each packet type. Each class should have fields corresponding to the packet's data fields. * Implement methods in each packet class to serialize the data into a byte stream and deserialize the data from a byte stream. **VI. Error Handling and Logging** * Implement proper error handling to catch exceptions (e.g., `IOException`, `SocketException`). * Use a logging framework (e.g., `java.util.logging`, Log4j) to log important events and errors. **VII. Version Compatibility** * The Minecraft protocol changes frequently. The AI *must* be aware of the protocol version it is targeting. * Consider using a configuration file or command-line argument to specify the protocol version. * Implement version-specific packet handling logic. **VIII. Code Structure and Design** * Use a modular design to separate concerns. * Create classes for: * `MinecraftServer` * `MinecraftClient` * `ClientConnection` (for handling individual client connections on the server) * `Packet` (abstract class for all packets) * `PacketHandshakingInSetProtocol` * `PacketLoginInStart` * `PacketLoginOutSuccess` * `PacketStatusOutServerInfo` * `PacketStatusInPing` * `PacketStatusOutPong` * `VarInt` (utility class for VarInt encoding/decoding) * `DataUtil` (utility class for reading/writing data types) **IX. Testing** * Thoroughly test the server and client to ensure they can connect, authenticate, and exchange data correctly. * Use a real Minecraft client to connect to the server and verify that it works as expected. **Example Code Snippets (Illustrative - Not Complete)** ```java // Example: Reading a VarInt public static int readVarInt(InputStream in) throws IOException { int numRead = 0; int result = 0; byte read; do { read = (byte) in.read(); int value = (read & 0x7f); result |= (value << (7 * numRead)); numRead++; if (numRead > 5) { throw new RuntimeException("VarInt is too big"); } } while ((read & 0x80) != 0); return result; } // Example: Writing a VarInt public static void writeVarInt(OutputStream out, int value) throws IOException { while (true) { if ((value & ~0x7F) == 0) { out.write(value); return; } out.write((value & 0x7F) | 0x80); value >>>= 7; } } // Example: Handshake Packet (Simplified) public class PacketHandshakingInSetProtocol extends Packet { private int protocolVersion; private String serverAddress; private int serverPort; private int nextState; public PacketHandshakingInSetProtocol(InputStream in) throws IOException { // Read data from the input stream based on the protocol // version and packet structure. Use readVarInt and other // data reading methods. protocolVersion = DataUtil.readVarInt(in); serverAddress = DataUtil.readString(in); serverPort = in.read(); //Simplified, should be short nextState = DataUtil.readVarInt(in); } // Getters for the fields } ``` **Important Considerations for the AI:** * **Protocol Version:** The AI *must* be able to handle different Minecraft protocol versions. The packet IDs and data structures change between versions. * **Security:** This is a simplified implementation. A real Minecraft server needs to handle authentication and encryption properly to prevent security vulnerabilities. * **Performance:** This implementation is not optimized for performance. A real Minecraft server needs to handle a large number of concurrent connections efficiently. * **World Generation:** This implementation does not include world generation. A real Minecraft server needs to generate and manage the game world. * **Game Logic:** This implementation only includes basic game logic. A real Minecraft server needs to implement all of the game's rules and mechanics. This detailed breakdown should provide the AI with a solid foundation for creating a Java-based Minecraft protocol server and client. Remember that this is a complex project, and the AI will need to consult the Minecraft protocol documentation frequently. Good luck!

Sefaria Jewish Library MCP Server

Sefaria Jewish Library MCP Server

Espejo de

NetBox MCP Server

NetBox MCP Server

Servidor de Protocolo de Contexto del Modelo (MCP) para la interacción de solo lectura con datos de NetBox en LLMs.

MCP Server Docker TypeScript

MCP Server Docker TypeScript

TypeScript version of MCP server Docker with remote connection support

Loveable.dev MCP Server

Loveable.dev MCP Server

A Model Context Protocol server that enables users to create, check status, and get details of projects on Loveable.dev, a platform for quickly creating applications.

PineScript MCP Project

PineScript MCP Project

A Model Context Protocol (MCP) server for working with TradingView PineScript

Gentoro MCP Server

Gentoro MCP Server

Mirror of

GitLab-MCP-Server

GitLab-MCP-Server

Es un servidor del Protocolo de Contexto de Modelos (MCP) que proporciona funciones de integración con GitLab. Obtiene información sobre fallos en pipelines e incidencias en solicitudes de fusión de proyectos específicos de GitLab y la proporciona a un asistente de IA.

Remote MCP Server on Cloudflare

Remote MCP Server on Cloudflare

Simple Weather MCP Server example from Quickstart

Simple Weather MCP Server example from Quickstart

Aquí tienes un ejemplo sencillo de un servidor MCP (Minecraft Coder Pack) para el clima: **Título:** Ejemplo Simple de Servidor MCP para el Clima **Descripción:** Este es un ejemplo básico que muestra cómo modificar el clima en un servidor de Minecraft usando MCP. **Código (Java):** ```java package com.example.weather; import net.minecraft.server.MinecraftServer; import net.minecraft.world.WorldServer; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; @Mod(modid = "simpleweather", name = "Simple Weather Mod", version = "1.0") public class SimpleWeatherMod { @Mod.EventHandler public void serverStarting(FMLServerStartingEvent event) { event.registerServerCommand(new WeatherCommand()); } public static class WeatherCommand extends net.minecraft.command.CommandBase { @Override public String getCommandName() { return "weather"; } @Override public String getCommandUsage(net.minecraft.command.ICommandSender sender) { return "commands.weather.usage"; // Puedes definir esto en un archivo de idioma } @Override public void execute(MinecraftServer server, net.minecraft.command.ICommandSender sender, String[] args) throws net.minecraft.command.CommandException { if (args.length != 1) { throw new net.minecraft.command.WrongUsageException("commands.weather.usage"); } String weatherType = args[0]; WorldServer world = server.getWorld(0); // Obtiene el primer mundo (overworld) switch (weatherType) { case "clear": world.setRainStrength(0); world.setThunderStrength(0); world.rainingTime = 0; world.thunderingTime = 0; world.isRaining = false; world.isThundering = false; notifyCommandListener(sender, this, "commands.weather.clear.success"); // Puedes definir esto en un archivo de idioma break; case "rain": world.setRainStrength(1); world.setThunderStrength(0); world.rainingTime = 12000; // Duración de la lluvia en ticks (10 minutos) world.thunderingTime = 0; world.isRaining = true; world.isThundering = false; notifyCommandListener(sender, this, "commands.weather.rain.success"); // Puedes definir esto en un archivo de idioma break; case "thunder": world.setRainStrength(1); world.setThunderStrength(1); world.rainingTime = 12000; // Duración de la lluvia en ticks (10 minutos) world.thunderingTime = 12000; // Duración del trueno en ticks (10 minutos) world.isRaining = true; world.isThundering = true; notifyCommandListener(sender, this, "commands.weather.thunder.success"); // Puedes definir esto en un archivo de idioma break; default: throw new net.minecraft.command.WrongUsageException("commands.weather.usage"); } } @Override public int getRequiredPermissionLevel() { return 2; // Requiere permisos de operador (nivel 2) } } } ``` **Explicación:** 1. **`@Mod`:** Anotación que define la clase principal del mod. * `modid`: Un identificador único para tu mod. * `name`: El nombre visible del mod. * `version`: La versión del mod. 2. **`serverStarting(FMLServerStartingEvent event)`:** Este método se llama cuando el servidor está iniciando. Aquí registramos nuestro comando. 3. **`WeatherCommand`:** Una clase interna que extiende `net.minecraft.command.CommandBase` y define nuestro comando `/weather`. * **`getCommandName()`:** Devuelve el nombre del comando ("weather"). * **`getCommandUsage()`:** Devuelve el mensaje de uso del comando (se muestra si el usuario lo usa incorrectamente). Deberías definir los mensajes en un archivo de idioma (como `en_US.lang`). * **`execute()`:** La lógica principal del comando. * Obtiene el mundo del servidor (`server.getWorld(0)`). `0` es el overworld. * Analiza los argumentos del comando (`args`). En este caso, espera un solo argumento: "clear", "rain", o "thunder". * Usa `world.setRainStrength()`, `world.setThunderStrength()`, `world.rainingTime`, `world.thunderingTime`, `world.isRaining`, y `world.isThundering` para modificar el clima. * `notifyCommandListener()`: Envía un mensaje al usuario que ejecutó el comando para confirmar que se realizó con éxito. De nuevo, estos mensajes deberían estar en un archivo de idioma. * **`getRequiredPermissionLevel()`:** Define el nivel de permiso requerido para usar el comando. `2` significa que se requiere ser operador del servidor. **Cómo usarlo:** 1. **Configura tu entorno de desarrollo MCP:** Asegúrate de tener un entorno de desarrollo MCP configurado correctamente para la versión de Minecraft que estás usando. 2. **Crea un nuevo proyecto:** Crea un nuevo proyecto Java en tu IDE (Eclipse, IntelliJ IDEA, etc.). 3. **Agrega las dependencias de Minecraft:** Agrega las dependencias necesarias de Minecraft a tu proyecto. Esto generalmente se hace configurando el `build.gradle` o el archivo de configuración de tu IDE para que apunte a las bibliotecas de Minecraft. 4. **Crea la estructura de carpetas:** Crea la estructura de carpetas correcta para tu mod: * `src/main/java/com/example/weather` (o la estructura de paquetes que elijas) 5. **Copia el código:** Copia el código Java anterior en un archivo llamado `SimpleWeatherMod.java` dentro de la estructura de carpetas que creaste. 6. **Crea un archivo `mcmod.info` (opcional pero recomendado):** Crea un archivo `mcmod.info` en la carpeta raíz de tu proyecto (generalmente `src/main/resources`). Este archivo contiene metadatos sobre tu mod. Un ejemplo: ```json [ { "modid": "simpleweather", "name": "Simple Weather Mod", "description": "A simple mod to control the weather.", "version": "1.0", "mcversion": "1.12.2", // Reemplaza con tu versión de Minecraft "authorList": ["Your Name"], "credits": "Based on MCP and Forge.", "dependencies": [] } ] ``` 7. **Crea archivos de idioma (opcional pero recomendado):** Crea un archivo `en_US.lang` (o el idioma que prefieras) en la carpeta `src/main/resources/assets/simpleweather/lang`. Define los mensajes que usas en `notifyCommandListener()` y `getCommandUsage()`: ``` commands.weather.usage=Uso: /weather <clear|rain|thunder> commands.weather.clear.success=El clima ha sido despejado. commands.weather.rain.success=Está lloviendo. commands.weather.thunder.success=Está tronando. ``` 8. **Construye el mod:** Construye tu proyecto para crear un archivo `.jar`. 9. **Instala el mod:** Copia el archivo `.jar` en la carpeta `mods` de tu servidor de Minecraft. 10. **Inicia el servidor:** Inicia tu servidor de Minecraft. 11. **Usa el comando:** En la consola del servidor o en el juego (si eres operador), usa el comando `/weather clear`, `/weather rain`, o `/weather thunder`. **Consideraciones importantes:** * **Versión de Minecraft:** Asegúrate de que el código sea compatible con la versión de Minecraft que estás usando. Las APIs de Minecraft cambian entre versiones. * **Forge:** Este ejemplo usa Forge. Debes tener Forge instalado en tu servidor. * **MCP:** MCP proporciona los nombres legibles de los métodos y campos de Minecraft. Asegúrate de que tu entorno MCP esté configurado correctamente. * **Archivos de idioma:** Usar archivos de idioma es una buena práctica para la internacionalización y para mantener tu código limpio. * **Manejo de errores:** Este ejemplo tiene un manejo de errores básico. Considera agregar un manejo de errores más robusto. * **Duración del clima:** Los valores de `rainingTime` y `thunderingTime` están en *ticks*. Hay 20 ticks por segundo. Este es un ejemplo muy simple. Puedes expandirlo para agregar más características, como: * Un comando para consultar el clima actual. * Opciones de configuración para la duración del clima. * Integración con otros mods. Recuerda que el desarrollo de mods de Minecraft requiere un conocimiento sólido de Java y de la API de Minecraft Forge.

MCP server for io.livecode.ch

MCP server for io.livecode.ch

Run io.livecode.ch as an MCP server