发现优秀的 MCP 服务器

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

开发者工具3,065
Chromadb Fastapi Mcp

Chromadb Fastapi Mcp

将 chromadb 转换为 fastapi 应用,并使用 fastapi-mcp 作为 mcp 服务器。

TaskBoardAI

TaskBoardAI

看板看板旨在帮助 AI 代理跟踪多步骤任务。包括人机回路 (HIL) Web UI 和多控制平面 (MCP) 服务器。

Claude MCP Server TestClaude MCP Server Test

Claude MCP Server TestClaude MCP Server Test

一个简单的“即将上线”测试网站 (Yī gè jiǎndān de “jíjiāng shàngxiàn” cèshì wǎngzhàn)

Open MCP Server

Open MCP Server

一个用于众多第三方软件和第三方 API 的模型上下文协议 (MCP)。一旦部署,此服务可以为您的 AI 平台提供增强的支持,例如使您能够使用 Dofi 来完善您的平台。

MCP Unreal Server

MCP Unreal Server

镜子 (jìng zi)

GitHub PR MCP Server

GitHub PR MCP Server

用于 Github 的 Claude MCP 服务器,集成 Linear

Sentry MCP Server

Sentry MCP Server

Sentry 的模型上下文协议 (MCP) 服务器

Workers + Stytch TODO App MCP Server

Workers + Stytch TODO App MCP Server

Workers + Stytch TODO 应用 MCP 服务器

GitHub CLI MCP服务器

GitHub CLI MCP服务器

GitHub CLI 允许你访问私有仓库。 (GitHub CLI yǔnxǔ nǐ fǎngwèn sīyǒu cāngkù.)

Ccxt

Ccxt

Summary

Summary

概念验证:使用 OpenAPI 规范生成工具的 MCP 服务器

Remote MCP Server on Cloudflare

Remote MCP Server on Cloudflare

GitHub MCP Server

GitHub MCP Server

一个带有工具的 MCP 服务器,用于与 Github 上的 Discussions 进行交互

mcp-server-playground

mcp-server-playground

Layer Prompt Manager

Layer Prompt Manager

这可以帮助你创建一个 MCP 服务器,你的 IDE 可以访问该服务器,从而为你的代码库创建和保存提示。

Trello MCP Server (TypeScript)

Trello MCP Server (TypeScript)

镜子 (jìng zi)

Unit Test Generator

Unit Test Generator

Google Drive MCP Server

Google Drive MCP Server

好的,我们来一起创建一个 Google Drive MCP 服务器,首先从 Google Sheets 开始。 (Hǎo de, wǒmen lái yīqǐ chuàngjiàn yī ge Google Drive MCP fúwùqì, shǒuxiān cóng Google Sheets kāishǐ.) Okay, let's create a Google Drive MCP server together, starting with Google Sheets.

Octomind Mcp

Octomind Mcp

Model Context Protocol (MCP) Server for Unity

Model Context Protocol (MCP) Server for Unity

MCP Server Tester

MCP Server Tester

用于模型上下文协议 (MCP) 服务器的自动化测试工具 - 正在进行中

Illustrator MCP Server

Illustrator MCP Server

运行在 Adobe Illustrator 上运行脚本的 MCP 服务器

MCP Chat with Claude

MCP Chat with Claude

Okay, here's a TypeScript example for a web app (acting as the host) connecting to a Node.js MCP (Microcontroller Platform) server. This example focuses on the core communication and assumes you have a basic understanding of TypeScript, web development, and Node.js. **Conceptual Overview** 1. **Web App (Host - TypeScript/HTML/JavaScript):** * Uses WebSockets to establish a persistent connection with the MCP server. * Sends commands/data to the MCP server. * Receives data/responses from the MCP server. * Updates the UI based on the received data. 2. **MCP Server (Node.js):** * Listens for WebSocket connections from the web app. * Receives commands/data. * Processes the commands (e.g., interacts with hardware, performs calculations). * Sends responses back to the web app. **Example Code** **1. MCP Server (Node.js - `mcp-server.js` or `mcp-server.ts`)** ```typescript // mcp-server.ts import { WebSocketServer, WebSocket } from 'ws'; const wss = new WebSocketServer({ port: 8080 }); // Choose your port wss.on('connection', ws => { console.log('Client connected'); ws.on('message', message => { try { const data = JSON.parse(message.toString()); // Parse JSON data console.log('Received:', data); // **Process the received data/command here** // Example: if (data.command === 'getSensorData') { // Simulate sensor data const sensorValue = Math.random() * 100; const response = { type: 'sensorData', value: sensorValue }; ws.send(JSON.stringify(response)); } else if (data.command === 'setLed') { // Simulate setting an LED const ledState = data.state; console.log(`Setting LED to: ${ledState}`); const response = { type: 'ledStatus', state: ledState }; ws.send(JSON.stringify(response)); } else { ws.send(JSON.stringify({ type: 'error', message: 'Unknown command' })); } } catch (error) { console.error('Error parsing message:', error); ws.send(JSON.stringify({ type: 'error', message: 'Invalid JSON' })); } }); ws.on('close', () => { console.log('Client disconnected'); }); ws.on('error', error => { console.error('WebSocket error:', error); }); }); console.log('MCP Server started on port 8080'); ``` **To run the server:** 1. **Install `ws`:** `npm install ws` 2. **If using TypeScript:** * Compile: `tsc mcp-server.ts` * Run: `node mcp-server.js` (or `node mcp-server.ts` if you're using `ts-node`) 3. **If using JavaScript (after compiling from TypeScript):** * Run: `node mcp-server.js` **2. Web App (Host - TypeScript/HTML/JavaScript)** * **HTML (`index.html`):** ```html <!DOCTYPE html> <html> <head> <title>MCP Host</title> </head> <body> <h1>MCP Host</h1> <button id="getSensorData">Get Sensor Data</button> <p>Sensor Value: <span id="sensorValue"></span></p> <button id="ledOn">LED On</button> <button id="ledOff">LED Off</button> <p>LED Status: <span id="ledStatus"></span></p> <script src="app.js"></script> </body> </html> ``` * **TypeScript (`app.ts`):** ```typescript // app.ts const socket = new WebSocket('ws://localhost:8080'); // Replace with your server address socket.addEventListener('open', () => { console.log('Connected to MCP Server'); }); socket.addEventListener('message', event => { try { const data = JSON.parse(event.data); console.log('Received:', data); if (data.type === 'sensorData') { const sensorValueElement = document.getElementById('sensorValue'); if (sensorValueElement) { sensorValueElement.textContent = data.value.toFixed(2); } } else if (data.type === 'ledStatus') { const ledStatusElement = document.getElementById('ledStatus'); if (ledStatusElement) { ledStatusElement.textContent = data.state ? 'On' : 'Off'; } } else if (data.type === 'error') { console.error('Error from server:', data.message); alert(`Error: ${data.message}`); // Or display in a more user-friendly way } } catch (error) { console.error('Error parsing message:', error); } }); socket.addEventListener('close', () => { console.log('Disconnected from MCP Server'); }); socket.addEventListener('error', error => { console.error('WebSocket error:', error); }); // Button event listeners document.getElementById('getSensorData')?.addEventListener('click', () => { socket.send(JSON.stringify({ command: 'getSensorData' })); }); document.getElementById('ledOn')?.addEventListener('click', () => { socket.send(JSON.stringify({ command: 'setLed', state: true })); }); document.getElementById('ledOff')?.addEventListener('click', () => { socket.send(JSON.stringify({ command: 'setLed', state: false })); }); ``` * **Compile TypeScript:** `tsc app.ts` * **JavaScript (`app.js` - the compiled output):** (This will be generated by the TypeScript compiler) **How to Run the Web App:** 1. **Serve the HTML:** You'll need a web server to serve the `index.html` file. You can use a simple one like `http-server` (install with `npm install -g http-server` and then run `http-server .` in the directory containing `index.html`). Alternatively, use any web server you prefer (e.g., a more complex Node.js server, Python's `http.server`, etc.). 2. **Open in Browser:** Open `http://localhost:8080` (or the address your web server is using) in your web browser. **Explanation and Key Points** * **WebSockets:** WebSockets provide a persistent, full-duplex communication channel between the web app and the MCP server. This is ideal for real-time data exchange. * **JSON:** JSON (JavaScript Object Notation) is used to serialize and deserialize data being sent over the WebSocket connection. This makes it easy to work with data in both the web app and the Node.js server. * **Error Handling:** The code includes basic error handling to catch potential issues like invalid JSON or WebSocket errors. Robust error handling is crucial in real-world applications. * **Command Structure:** The example uses a simple command structure where the web app sends JSON objects with a `command` property to indicate the desired action. The server then processes the command and sends back a response. * **TypeScript:** TypeScript adds static typing to JavaScript, which helps catch errors early in the development process and improves code maintainability. * **Event Listeners:** The web app uses event listeners to handle WebSocket events like `open`, `message`, `close`, and `error`. * **DOM Manipulation:** The web app updates the HTML elements (e.g., `sensorValue`, `ledStatus`) to display the data received from the MCP server. * **Server-Side Logic:** The MCP server's `message` handler is where you would implement the core logic for interacting with your microcontroller or other hardware. The example provides placeholders for simulating sensor data and LED control. **Important Considerations for Real-World Applications** * **Security:** If you're dealing with sensitive data, use secure WebSockets (WSS) with TLS/SSL encryption. Implement authentication and authorization mechanisms to protect your MCP server from unauthorized access. * **Scalability:** For high-traffic applications, consider using a more scalable WebSocket server implementation (e.g., using a load balancer and multiple server instances). * **Data Validation:** Validate the data received from the web app and the MCP server to prevent unexpected errors or security vulnerabilities. * **Error Handling:** Implement comprehensive error handling and logging to diagnose and resolve issues quickly. * **Reconnect Logic:** Implement automatic reconnect logic in the web app to handle cases where the WebSocket connection is lost. * **State Management:** Consider using a state management library (e.g., Redux, Zustand) in the web app to manage the application's state more effectively, especially as the application grows in complexity. * **Hardware Interaction:** The MCP server will need to use appropriate libraries or APIs to communicate with your specific microcontroller or hardware. This will vary depending on the hardware platform you're using. * **Message Queues:** For more complex systems, consider using a message queue (e.g., RabbitMQ, Kafka) to decouple the web app and the MCP server and improve reliability and scalability. **Chinese Translation of Key Terms** * **Web App:** 网络应用程序 (wǎngluò yìngyòng chéngxù) * **Host:** 主机 (zhǔjī) * **MCP (Microcontroller Platform):** 微控制器平台 (wēi kòngzhìqì píngtái) * **Server:** 服务器 (fúwùqì) * **WebSocket:** WebSocket (pronounced the same) * **Connection:** 连接 (liánjiē) * **Data:** 数据 (shùjù) * **Command:** 命令 (mìnglìng) * **Sensor:** 传感器 (chuángǎnqì) * **LED:** LED (pronounced the same) or 发光二极管 (fāguāng èrjígǔan) * **Error:** 错误 (cuòwù) * **Message:** 消息 (xiāoxi) * **Client:** 客户端 (kèhùduān) * **JSON:** JSON (pronounced the same) * **Port:** 端口 (duānkǒu) This comprehensive example should give you a solid foundation for building a web app that communicates with a Node.js MCP server using WebSockets and TypeScript. Remember to adapt the code to your specific hardware and application requirements. Good luck!

Remote MCP Server on Cloudflare

Remote MCP Server on Cloudflare

video-transcribe-mcp

video-transcribe-mcp

一个集成了 Optivus 的 MCP 服务器实现,为 LLM 提供视频转录功能(例如 YouTube、Facebook、Tiktok 等)。

Weik.io Integration Expert: MCP Server

Weik.io Integration Expert: MCP Server

基于 Apache Camel 的 Weik.io 集成平台的 MCP 服务器

Python MCP Server

Python MCP Server

**python-mcp-server** 项目是一个基于 Flask 的 Web 服务器,旨在与 Minecraft 交互,很可能是一个用于管理 Minecraft 服务器、插件或玩家数据的更大型系统的一部分。

Notion MCP Server

Notion MCP Server

镜子 (jìng zi)

Model Context Protocol

Model Context Protocol

使用 Anthropic 的 MCP SDK 实现的简单 MCP 服务器

MCP Argo Server

MCP Argo Server

一个用 Go 语言编写的、用于运行 Argo 工作流的 MCP 服务器。