发现优秀的 MCP 服务器

通过 MCP 服务器扩展您的代理能力,拥有 86,267 个能力。

全部86,267
execution-proofs

execution-proofs

Verifies AI agent completion claims by checking that claimed output files exist and are fresh, acting as a lightweight physical telemetry gate.

Schwab Read-Only MCP

Schwab Read-Only MCP

MCP server for read-only access to Charles Schwab market data and account information. It provides quotes, price history, technical indicators, fundamentals, option chains, market hours, movers, and account/transaction data via the official Schwab API.

Resend MCP Server

Resend MCP Server

允许通过标准化的模型上下文协议 (MCP) 接口,使用 Resend 服务发送电子邮件,并提供 TypeScript 支持。

MCP Starter Project

MCP Starter Project

Okay, here's a breakdown of how to set up an MCP (Mod Configuration Protocol) server and client, along with explanations and considerations: **Understanding MCP (Mod Configuration Protocol)** MCP is a protocol used in Minecraft modding to allow mods to communicate configuration information between the server and the client. This is particularly useful for: * **Synchronizing Configuration:** Ensuring that both the server and client are using the same settings for a mod. This prevents inconsistencies and potential errors. * **Server-Side Configuration:** Allowing the server administrator to control certain aspects of a mod's behavior, even for clients. * **Dynamic Configuration:** Enabling mods to change their behavior based on server-side settings. **General Steps (Conceptual)** The exact implementation of MCP varies depending on the modding framework you're using (Forge, Fabric, etc.) and the specific mod. However, the general steps are: 1. **Mod Implementation:** * **Server-Side:** The mod needs to have code that defines the configuration options it wants to synchronize. This code will typically: * Define the configuration options (e.g., using a configuration file or a data structure). * Implement logic to send these configuration options to connected clients. * Handle changes to the configuration on the server. * **Client-Side:** The mod needs to have code that: * Receives the configuration options from the server. * Applies these options to the mod's behavior. * Potentially allows the client to override certain options (if the mod allows it). 2. **Networking:** * MCP relies on a networking channel between the server and the client. This channel is used to send the configuration data. * The mod needs to register a channel with the modding framework (Forge, Fabric) and define how data is serialized and deserialized for transmission. 3. **Configuration Management:** * The mod needs a way to store and manage the configuration options. This could involve: * Configuration files (e.g., `.cfg` files). * In-memory data structures. * Databases (for more complex configurations). **Example (Conceptual - Forge)** This is a simplified example to illustrate the concepts. The actual code will be more complex. **Server-Side (Example - Forge)** ```java import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import net.minecraftforge.fml.common.network.NetworkRegistry; import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper; import net.minecraftforge.fml.relauncher.Side; @Mod(modid = "mymod", name = "My Mod", version = "1.0") public class MyMod { public static SimpleNetworkWrapper network; @Mod.EventHandler public void serverStarting(FMLServerStartingEvent event) { network = NetworkRegistry.INSTANCE.newSimpleChannel("mymod_channel"); network.registerMessage(ConfigMessage.Handler.class, ConfigMessage.class, 0, Side.CLIENT); // Register message for client // Load configuration from file (example) MyConfig.loadConfig(); // Send config to all players when they join (example) event.getServer().getPlayerList().addListener(new ServerPlayerListListener()); } public static class MyConfig { public static int myValue = 10; // Example config value public static void loadConfig() { // Load from config file (implementation omitted) // Example: myValue = ConfigHandler.getInt("myValue", 10); } } } // Message class to send config data public class ConfigMessage implements IMessage { public int myValue; public ConfigMessage() {} // Required empty constructor public ConfigMessage(int myValue) { this.myValue = myValue; } @Override public void fromBytes(ByteBuf buf) { myValue = buf.readInt(); } @Override public void toBytes(ByteBuf buf) { buf.writeInt(myValue); } public static class Handler implements IMessageHandler<ConfigMessage, IMessage> { @Override public IMessage onMessage(ConfigMessage message, MessageContext ctx) { // This is executed on the CLIENT side Minecraft.getMinecraft().addScheduledTask(() -> { MyModClient.myValue = message.myValue; // Update client-side config }); return null; } } } // Listener to send config to players when they join public class ServerPlayerListListener implements IPlayerListListener { @Override public void playerLoggedOut(EntityPlayerMP player) {} @Override public void playerLoggedOut(ITextComponent chatComponent) {} @Override public void playerLoggedIn(EntityPlayerMP player) { // Send the config to the player MyMod.network.sendTo(new ConfigMessage(MyMod.MyConfig.myValue), player); } @Override public void playerLoggedIn(ITextComponent chatComponent) {} } ``` **Client-Side (Example - Forge)** ```java import net.minecraft.client.Minecraft; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.event.FMLInitializationEvent; @Mod(modid = "mymod_client", name = "My Mod Client", version = "1.0", clientSideOnly = true) public class MyModClient { public static int myValue = 0; // Default value @Mod.EventHandler public void init(FMLInitializationEvent event) { // No need to register the channel here, it's already registered on the server. // The ConfigMessage.Handler will be executed when the message is received. } } ``` **Explanation of the Forge Example:** * **`SimpleNetworkWrapper`:** Forge's class for managing network channels. * **`registerMessage`:** Registers a message type (`ConfigMessage`) with the network channel. It specifies the handler class, the message class, a message ID, and the side (client or server) where the handler should run. * **`ConfigMessage`:** A class that implements `IMessage`. It contains the data you want to send (in this case, `myValue`). It also has `fromBytes` and `toBytes` methods to serialize and deserialize the data. * **`ConfigMessage.Handler`:** A class that implements `IMessageHandler`. This is where you handle the received message. In this example, it updates the client-side `myValue` with the value received from the server. **Important:** The handler runs on the *client* side. You need to use `Minecraft.getMinecraft().addScheduledTask()` to ensure that the update happens on the main client thread. * **`ServerPlayerListListener`:** A listener that is triggered when a player joins the server. It sends the current server-side configuration to the newly joined player. * **`sendTo`:** Sends the `ConfigMessage` to a specific player. **Key Considerations:** * **Modding Framework:** The specific classes and methods you use will depend on the modding framework you're using (Forge, Fabric, etc.). Refer to the documentation for your framework. * **Message IDs:** Each message type needs a unique ID. These IDs are used to identify the message when it's received. * **Serialization:** You need to carefully serialize and deserialize the data you're sending. Use the `ByteBuf` class to read and write data. * **Thread Safety:** Minecraft is a multi-threaded environment. Make sure your code is thread-safe, especially when updating client-side data. Use `Minecraft.getMinecraft().addScheduledTask()` to execute code on the main client thread. * **Configuration Files:** Use a configuration library (e.g., Forge's configuration system) to manage your configuration files. * **Error Handling:** Implement proper error handling to catch exceptions and prevent crashes. * **Security:** Be careful about what data you send over the network. Don't send sensitive information. **Fabric Example (Conceptual)** Fabric uses a different approach to networking. Here's a conceptual outline: ```java import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.fabricmc.fabric.api.networking.v1.ClientPlayNetworking; import net.minecraft.util.Identifier; import net.minecraft.network.PacketByteBuf; import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.client.MinecraftClient; public class MyMod implements ModInitializer { public static final String MOD_ID = "mymod"; public static final Identifier CONFIG_SYNC_ID = new Identifier(MOD_ID, "config_sync"); public static int myValue = 10; // Example config value @Override public void onInitialize() { // Server-side ServerPlayNetworking.registerGlobalReceiver(CONFIG_SYNC_ID, (server, player, handler, buf, responseSender) -> { // This is executed on the SERVER thread int receivedValue = buf.readInt(); server.execute(() -> { // Update server-side config (if needed) // MyMod.myValue = receivedValue; // Example }); }); // Client-side ClientPlayNetworking.registerGlobalReceiver(CONFIG_SYNC_ID, (client, handler, buf, responseSender) -> { // This is executed on the CLIENT thread int receivedValue = buf.readInt(); client.execute(() -> { // Update client-side config MyModClient.myValue = receivedValue; }); }); } // Method to send config to a player (server-side) public static void sendConfigToPlayer(ServerPlayerEntity player) { PacketByteBuf buf = new PacketByteBuf(Unpooled.buffer()); buf.writeInt(MyMod.myValue); ServerPlayNetworking.send(player, CONFIG_SYNC_ID, buf); } } // Client-side class public class MyModClient { public static int myValue = 0; } ``` **Explanation of the Fabric Example:** * **`Identifier`:** Used to uniquely identify the network channel. * **`ServerPlayNetworking.registerGlobalReceiver`:** Registers a handler for incoming packets on the server. * **`ClientPlayNetworking.registerGlobalReceiver`:** Registers a handler for incoming packets on the client. * **`PacketByteBuf`:** Fabric's equivalent of Forge's `ByteBuf`. Used for serializing and deserializing data. * **`server.execute()` and `client.execute()`:** Used to execute code on the main server or client thread, respectively. **Steps to Set Up (General):** 1. **Set up your mod development environment:** Install the appropriate modding framework (Forge, Fabric) and set up your IDE (IntelliJ IDEA, Eclipse). 2. **Create your mod project:** Create a new mod project using the framework's tools. 3. **Define your configuration options:** Decide what configuration options you want to synchronize. 4. **Implement the server-side code:** Implement the code to load the configuration, register the network channel, and send the configuration to clients. 5. **Implement the client-side code:** Implement the code to receive the configuration and apply it to the mod's behavior. 6. **Test your mod:** Test your mod in a single-player and multiplayer environment to ensure that the configuration is synchronized correctly. **Important Notes:** * **Refer to the documentation:** The documentation for your modding framework is your best resource for detailed information and examples. * **Start simple:** Start with a simple configuration option and gradually add more complexity. * **Debug carefully:** Use debugging tools to identify and fix any issues. This information should give you a good starting point for setting up an MCP server and client. Remember to adapt the code to your specific needs and the modding framework you're using. Good luck!

memos-api-mcp

memos-api-mcp

MCP server that enables AI assistants to interact with the MemOS API, providing memory search, feedback management, and knowledge base operations via MCP-compliant tools.

Weather MCP Server

Weather MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它使用 Open-Meteo API 获取指定城市的当前天气信息,且无需 API 密钥。

SonarQube MCP Server

SonarQube MCP Server

Enables seamless integration with SonarQube Server or Cloud for code quality and security analysis. Supports querying project metrics, issues, and analyzing code snippets directly within the agent context.

SAP MCP Server

SAP MCP Server

Enables interaction with SAP systems through RESTful APIs via MCP protocol. Supports calling SAP functions like BAPI with parameters and returns structured responses for SAP data operations.

Roam MCP

Roam MCP

MCP server for Roam Research that enables AI assistants like Claude and Cursor to read, write, search, and query your Roam graph with full write access.

portal-api

portal-api

A read-only MCP server for Portal.io that enables browsing proposals, users, contacts, and catalog items through secure HMAC-signed API requests.

zotero-grounded-mcp

zotero-grounded-mcp

An MCP server that gives any MCP-compatible assistant access to your Zotero reference library, enabling search, citation, bibliography generation, and .docx processing while keeping Zotero as the ground truth for references.

threlte-mcp

threlte-mcp

An MCP server for inspecting and manipulating Three.js/Threlte scenes in real-time.

ghost-dev-mcp

ghost-dev-mcp

An MCP server on AWS Lambda that gives AI assistants read-only access to SQS dead-letter queues and CloudWatch logs for fast incident triage.

Infrações Trabalhistas (MTE)

Infrações Trabalhistas (MTE)

Consulta infrações trabalhistas registradas pelo Ministério do Trabalho e Emprego a partir de CPF ou CNPJ. Enables read-only querying of labor infractions for individuals or companies via MCP.

Notion MCP Integration

Notion MCP Integration

Notion MCP 集成是一个轻量级的模型上下文协议 (MCP) 服务器,它与 Notion 的 API 无缝集成,通过 Claude 管理一个极简的个人待办事项列表。该项目提供了专门为简单 Notion 数据库结构量身定制的基本功能,从而实现高效的任务管理,而无需不必要的复杂性。

fortytwo-guide

fortytwo-guide

A semantic-memory MCP server that stores text 'memories' with provenance and enables recall by meaning (vector search), keyword (FTS5), or structured filters.

web-mcp

web-mcp

Worker that turns any URL into agent-callable MCP tools, plus a Chrome extension, open-source adapters, and SDKs. On top of that sits an independent A–F trust graph for the whole MCP ecosystem

Emacs MCP Server

Emacs MCP Server

一个模型上下文协议服务器,它能够在运行中的 Emacs 进程中生成和执行 Elisp 代码,从而允许 AI 助手控制 Emacs 并与之交互。

Slack Lists MCP Server

Slack Lists MCP Server

Enables AI assistants to interact with Slack Lists through comprehensive tools for creating, retrieving, filtering, and managing list items. Supports bulk operations, data export, subtask creation, and all Slack List field types with robust error handling and production-ready implementation.

Vision MCP Server

Vision MCP Server

A local MCP server that gives LLMs eyes for images by performing object detection (YOLOv8) and text recognition (EasyOCR), outputting descriptive statements about objects and text positions without any API key or cloud dependency.

MBBank MCP Server

MBBank MCP Server

MCP server that provides monitoring and analytics capabilities for MBBank accounts, allowing users to check balances, transaction history, card details, and savings information.

MCP-OPENAPI-DOCX

MCP-OPENAPI-DOCX

Enterprise-grade document editing and management server that enables AI-powered operations on Microsoft Word DOCX files, including creating, editing, formatting, and exporting documents through both MCP protocol and RESTful API.

Amazon Connect MCP Server

Amazon Connect MCP Server

An MCP server that enables AI assistants to interact with Amazon Connect contact centers, providing 88 tools, 91 configuration templates, and multi-region support.

Grok Web MCP

Grok Web MCP

Automates Grok web interface to provide chat, web search, and conversation management via MCP, supporting multiple accounts and local/remote deployment.

pysnowball MCP Server

pysnowball MCP Server

MCP server that provides 56 API interfaces covering real-time quotes, financial data, funds, indices, and more from Xueqiu stock data, supporting both MCP and REST protocols.

COBOL Bridge MCP

COBOL Bridge MCP

AI-assisted COBOL to modern stack bridge that parses COBOL programs, maps to Python/Java/Go, generates test harnesses, and plans migration for legacy mainframe modernization.

SQLite Database MCP Server with Google OAuth

SQLite Database MCP Server with Google OAuth

Enables AI assistants to perform CRUD operations on a SQLite database, with all tools protected by Google OAuth 2.0 authentication.

personal-mcp

personal-mcp

Enables Claude to send you a Discord message through a Cloudflare Workers MCP server, triggering a notification with your Discord mention.

pinterest-mcp

pinterest-mcp

Enables AI agents to manage Pinterest boards and pins, create and update pins, and track analytics via the Pinterest API v5.

agent-browser-mcp

agent-browser-mcp

Enables background control of real Chrome browser sessions with persistent session binding and colored tab groups, allowing automation without interfering with user interaction.