发现优秀的 MCP 服务器

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

全部14,652
Twitter MCP Tool

Twitter MCP Tool

A Python-based tool that streamlines social media tasks by enabling users to post tweets, track username changes, fetch recent tweets, and send direct messages on Twitter.

pdf-tools-mcp

pdf-tools-mcp

pdf-tools-mcp

MCP Servers Multi-Agent AI Infrastructure

MCP Servers Multi-Agent AI Infrastructure

QuickBooks Online MCP Server by CData

QuickBooks Online MCP Server by CData

QuickBooks Online MCP Server by CData

Setup

Setup

test

test

test

HQ Pool Services Website

HQ Pool Services Website

测试使用 Figma MCP 服务器生成一个池服务页面。

📱 MCP Server for iOS Simulator

📱 MCP Server for iOS Simulator

mcp-server

mcp-server

好的,以下是一些学习制作 Minecraft (MCP) 服务器的资源和步骤: **理解 Minecraft 服务器类型 (Understanding Minecraft Server Types)** 首先,你需要了解不同类型的 Minecraft 服务器: * **Vanilla (原版):** 官方 Minecraft 服务器,使用 Mojang 提供的服务器软件。最简单,但功能最少。 * **Bukkit/Spigot/Paper:** 基于 Vanilla 服务器,但添加了插件 API。允许你使用插件来扩展服务器功能,例如添加经济系统、权限管理、小游戏等。Paper 是 Spigot 的优化版本,性能更好。 * **Forge:** 允许你安装 Mod (模组)。Mod 可以大幅度改变游戏内容,例如添加新的生物、物品、维度等。 * **Fabric:** 另一种 Mod 加载器,通常比 Forge 更轻量级,更新速度更快。 **选择服务器类型 (Choosing a Server Type)** 对于初学者,我建议从 **Paper** 开始。它易于设置,性能好,并且有大量的插件可用。 **步骤 (Steps):** 1. **安装 Java (Install Java):** Minecraft 服务器需要 Java 才能运行。确保你安装了最新版本的 Java Development Kit (JDK)。你可以从 Oracle 网站或 Adoptium (Temurin) 下载 JDK。 * **Oracle JDK:** [https://www.oracle.com/java/technologies/javase-downloads.html](https://www.oracle.com/java/technologies/javase-downloads.html) * **Adoptium (Temurin):** [https://adoptium.net/](https://adoptium.net/) 确保安装的是 JDK,而不是 JRE (Java Runtime Environment)。 2. **下载 Paper 服务器软件 (Download Paper Server Software):** 访问 PaperMC 网站下载最新版本的 Paper 服务器软件。 * **PaperMC:** [https://papermc.io/downloads](https://papermc.io/downloads) 选择与你的 Minecraft 客户端版本相对应的 Paper 版本。 3. **创建服务器文件夹 (Create a Server Folder):** 在你的电脑上创建一个新的文件夹,用于存放服务器文件。例如,你可以命名为 "MinecraftServer"。 4. **将 Paper 服务器软件放入文件夹 (Place Paper Server Software in the Folder):** 将你下载的 Paper .jar 文件放入你创建的服务器文件夹中。 5. **创建启动脚本 (Create a Startup Script):** 创建一个文本文件,并将其重命名为 `start.bat` (Windows) 或 `start.sh` (Linux/macOS)。将以下内容添加到文件中: * **Windows (start.bat):** ```batch java -Xms2G -Xmx4G -jar paper-版本号.jar nogui pause ``` * **Linux/macOS (start.sh):** ```bash #!/bin/bash java -Xms2G -Xmx4G -jar paper-版本号.jar nogui ``` 然后,你需要给 `start.sh` 文件执行权限: `chmod +x start.sh` 将 `paper-版本号.jar` 替换为你下载的 Paper .jar 文件的实际名称。 `-Xms2G` 和 `-Xmx4G` 分别设置服务器的最小和最大内存分配。根据你的电脑配置调整这些值。`nogui` 参数禁用图形界面,使用命令行界面。 6. **运行启动脚本 (Run the Startup Script):** 双击 `start.bat` (Windows) 或在终端中运行 `./start.sh` (Linux/macOS) 来启动服务器。 7. **同意 EULA (Accept the EULA):** 首次运行服务器时,它会生成一个 `eula.txt` 文件。打开该文件,将 `eula=false` 更改为 `eula=true`,以同意 Minecraft 的最终用户许可协议。 8. **再次运行启动脚本 (Run the Startup Script Again):** 再次运行启动脚本以启动服务器。 9. **连接到服务器 (Connect to the Server):** 启动 Minecraft 客户端,选择 "多人游戏",然后点击 "添加服务器"。输入 `localhost` 作为服务器地址,然后点击 "完成"。你应该能够看到你的服务器并连接到它。 **配置服务器 (Configuring the Server)** * **server.properties:** 这个文件包含服务器的各种设置,例如游戏模式、难度、最大玩家数量等。你可以在服务器文件夹中找到它。 * **plugins 文件夹:** 将插件 .jar 文件放入此文件夹中,服务器启动时会自动加载它们。 **学习资源 (Learning Resources):** * **PaperMC 文档:** [https://docs.papermc.io/](https://docs.papermc.io/) * **SpigotMC 论坛:** [https://www.spigotmc.org/](https://www.spigotmc.org/) * **YouTube 教程:** 在 YouTube 上搜索 "Minecraft server tutorial" 可以找到大量的教程视频。 **重要提示 (Important Notes):** * **安全性 (Security):** 确保你的服务器安全。使用强密码,并定期更新服务器软件和插件。 * **端口转发 (Port Forwarding):** 如果你想让其他人从互联网上连接到你的服务器,你需要配置端口转发。这涉及到你的路由器设置。 * **资源 (Resources):** 运行 Minecraft 服务器需要大量的 CPU 和内存。确保你的电脑有足够的资源来支持服务器。 * **备份 (Backups):** 定期备份你的服务器数据,以防止数据丢失。 **中文翻译 (Chinese Translation):** * **Vanilla (原版):** 原版 * **Bukkit/Spigot/Paper:** Bukkit/Spigot/Paper (基于原版,但添加了插件 API) * **Forge:** Forge (允许安装 Mod) * **Fabric:** Fabric (另一种 Mod 加载器) * **插件 (Plugins):** 插件 * **Mod (模组):** 模组 * **Java Development Kit (JDK):** Java 开发工具包 * **Java Runtime Environment (JRE):** Java 运行时环境 * **服务器文件夹 (Server Folder):** 服务器文件夹 * **启动脚本 (Startup Script):** 启动脚本 * **同意 EULA (Accept the EULA):** 同意最终用户许可协议 * **连接到服务器 (Connect to the Server):** 连接到服务器 * **server.properties:** 服务器配置文件 * **plugins 文件夹:** 插件文件夹 * **端口转发 (Port Forwarding):** 端口转发 * **备份 (Backups):** 备份 希望这些信息对你有所帮助!祝你学习愉快!

OpenAI MCP Example

OpenAI MCP Example

这个项目展示了如何将 MCP 协议与 OpenAI 结合使用。它提供了一个简单的示例,演示如何通过 MCP 服务器和客户端无缝地与 OpenAI 的 API 进行交互。

🚀 JMeter MCP Server

🚀 JMeter MCP Server

镜子 (jìng zi)

Crowdlistening

Crowdlistening

Crowdlistening

writers-muse-mcp

writers-muse-mcp

一个MCP服务器,用于分析作者的写作风格并生成一篇博文。 (Alternatively, more literally: 一个分析作者写作风格并生成博文的MCP服务器。)

my-mcp-server

my-mcp-server

🌟 Unsplash MCP Server Repository

🌟 Unsplash MCP Server Repository

🔎 用于 Unsplash 图片搜索的 MCP 服务器。

Bocha Search MCP

Bocha Search MCP

一个以人工智能为中心的搜索引擎,使人工智能应用程序能够访问来自数十亿网页和生态系统内容源的高质量知识,涵盖各种领域,包括天气、新闻、百科全书、医疗信息、火车票和图像。

Microsoft Copilot Studio ❤️ MCP

Microsoft Copilot Studio ❤️ MCP

A lab demonstrating how to deploy a Model Context Protocol (MCP) server that provides joke functionality to Microsoft Copilot Studio and GitHub Copilot.

qBittorrent MCP

qBittorrent MCP

A service that provides programmatic access to qBittorrent's WebUI API, enabling management of torrents, trackers, tags, speed controls, and system information through natural language.

Uncover MCP

Uncover MCP

发现 MCP 服务器 (Fāxiàn MCP fúwùqì)

Google Search MCP Server

Google Search MCP Server

A Model Context Protocol server that provides web and image search capabilities through Google's Custom Search API, allowing AI assistants like Claude to access current information from the internet.

EPSS MCP Server

EPSS MCP Server

A server that retrieves CVE details from the NVD API and fetches EPSS scores to provide comprehensive vulnerability information, including descriptions, CWEs, CVSS scores, and exploitation likelihood percentiles.

semantic-edit-mcp

semantic-edit-mcp

semantic-edit-mcp

Minimal MCP Server

Minimal MCP Server

好的,以下是一个 Model Context Protocol (MCP) 服务器的最小实现,用 Python 编写,并使用 `asyncio` 库进行异步操作。 这个例子展示了如何监听连接,接收消息,并发送简单的响应。 ```python import asyncio import json async def handle_client(reader, writer): """处理单个客户端连接.""" addr = writer.get_extra_info('peername') print(f"连接来自 {addr}") try: while True: data = await reader.read(1024) # 读取最多 1024 字节 if not data: break message = data.decode() print(f"接收到消息: {message}") try: # 尝试解析 JSON request = json.loads(message) # 在这里添加你的 MCP 逻辑 # 例如,根据请求类型执行不同的操作 if "method" in request: method = request["method"] if method == "ping": response = {"result": "pong"} elif method == "get_model_info": response = {"result": {"model_name": "MyModel", "version": "1.0"}} # 示例模型信息 else: response = {"error": "Unknown method"} else: response = {"error": "Invalid request"} response_json = json.dumps(response) writer.write(response_json.encode()) await writer.drain() # 刷新缓冲区 print(f"发送响应: {response_json}") except json.JSONDecodeError: print("接收到无效的 JSON") writer.write(b'{"error": "Invalid JSON"}') await writer.drain() except ConnectionError as e: print(f"连接错误: {e}") finally: print(f"关闭连接 {addr}") writer.close() await writer.wait_closed() async def main(): """启动服务器.""" server = await asyncio.start_server( handle_client, '127.0.0.1', 8888) # 监听本地地址 127.0.0.1 端口 8888 addr = server.sockets[0].getsockname() print(f'服务于 {addr}') async with server: await server.serve_forever() if __name__ == "__main__": asyncio.run(main()) ``` **代码解释:** 1. **`handle_client(reader, writer)` 函数:** - 这是处理每个客户端连接的主要函数。 - `reader` 和 `writer` 是 `asyncio.StreamReader` 和 `asyncio.StreamWriter` 对象,用于读取和写入数据。 - `writer.get_extra_info('peername')` 获取客户端的地址。 - `reader.read(1024)` 从客户端读取最多 1024 字节的数据。 - `data.decode()` 将接收到的字节数据解码为字符串。 - `json.loads(message)` 尝试将接收到的消息解析为 JSON 对象。 - **MCP 逻辑:** 这是代码的核心部分,你需要根据 MCP 协议的要求实现你的逻辑。 在这个例子中,它检查请求中是否存在 "method" 字段,并根据方法名称返回不同的响应。 `ping` 方法返回 `pong`,`get_model_info` 返回一个示例模型信息。 - `json.dumps(response)` 将响应转换为 JSON 字符串。 - `writer.write(response_json.encode())` 将 JSON 字符串编码为字节数据并发送给客户端。 - `await writer.drain()` 刷新缓冲区,确保数据被发送。 - `writer.close()` 关闭连接。 - `await writer.wait_closed()` 等待连接完全关闭。 - 异常处理:包括 `json.JSONDecodeError` 处理无效的 JSON,以及 `ConnectionError` 处理连接错误。 2. **`main()` 函数:** - `asyncio.start_server(handle_client, '127.0.0.1', 8888)` 启动一个 TCP 服务器,监听本地地址 127.0.0.1 的 8888 端口。 `handle_client` 函数将处理每个新的客户端连接。 - `server.serve_forever()` 运行服务器,直到手动停止。 3. **`if __name__ == "__main__":` 块:** - 确保 `asyncio.run(main())` 只在脚本直接运行时执行,而不是作为模块导入时执行。 **如何运行:** 1. **保存代码:** 将代码保存为 `mcp_server.py`。 2. **运行脚本:** 在终端中运行 `python mcp_server.py`。 **如何测试:** 你可以使用 `telnet` 或 `netcat` 等工具来连接服务器并发送 MCP 请求。 例如: ```bash telnet 127.0.0.1 8888 ``` 然后,你可以发送一个 JSON 请求,例如: ```json {"method": "ping"} ``` 服务器应该返回: ```json {"result": "pong"} ``` 或者发送: ```json {"method": "get_model_info"} ``` 服务器应该返回: ```json {"result": {"model_name": "MyModel", "version": "1.0"}} ``` **重要注意事项:** * **错误处理:** 这个例子只包含基本的错误处理。 在实际应用中,你需要添加更完善的错误处理机制,例如记录错误日志,返回更详细的错误信息给客户端。 * **安全性:** 这个例子没有考虑安全性。 在生产环境中,你需要采取安全措施,例如身份验证、授权、加密等。 * **MCP 协议:** 这个例子只是一个框架。 你需要根据 MCP 协议的规范来实现你的 MCP 逻辑。 这包括定义消息格式、方法名称、参数、返回值等。 * **异步编程:** `asyncio` 是一个强大的异步编程库。 如果你不熟悉 `asyncio`,建议先学习一下 `async` 和 `await` 的用法。 * **依赖:** 这个例子只依赖于 Python 的标准库 `asyncio` 和 `json`,不需要安装额外的依赖。 * **扩展性:** 这个例子是一个最小实现。 你可以根据需要扩展它,例如添加多线程支持、使用更高效的序列化方法、支持更多的 MCP 方法等。 **下一步:** 1. **定义你的 MCP 协议:** 明确你的 MCP 协议的规范,包括消息格式、方法名称、参数、返回值等。 2. **实现你的 MCP 逻辑:** 根据你的 MCP 协议,实现 `handle_client` 函数中的 MCP 逻辑。 3. **添加错误处理:** 添加更完善的错误处理机制。 4. **考虑安全性:** 采取安全措施,例如身份验证、授权、加密等。 5. **测试和调试:** 充分测试和调试你的服务器。 这个最小实现为你提供了一个起点。 你可以根据你的具体需求来扩展和修改它。

mcp-test

mcp-test

测试 (cè shì)

LicenseSpring MCP Server

LicenseSpring MCP Server

An MCP server implementation that integrates with LicenseSpring APIs, providing comprehensive license management and customer operations capabilities.

raindrop-mcp

raindrop-mcp

Raindrop.io (书签服务) 的 MCP 服务器

46elks MCP Server

46elks MCP Server

Enables AI assistants and MCP-compatible clients to send and manage SMS messages through the 46elks API, leveraging Swedish telecommunications infrastructure.

ws-mcp

ws-mcp

Model Context Protocol (MCP) Server

Model Context Protocol (MCP) Server

A Python implementation of the MCP server that enables AI models to connect with external tools and data sources through a standardized protocol, supporting tool invocation and resource access via JSON-RPC.

Claude Code DingTalk MCP Server

Claude Code DingTalk MCP Server

Integrates Claude Code with DingTalk (钉钉) robot notifications, allowing users to send task completion alerts and various message formats to DingTalk groups from Claude Code.