Discover Awesome MCP Servers

Extend your agent with 84,516 capabilities via MCP servers.

All84,516
qt-mcp

qt-mcp

An MCP server for capturing screenshots of Qt/desktop windows and performing filesystem operations, enabling AI clients to inspect and modify project files.

MCP All-in-One Server

MCP All-in-One Server

A versatile MCP server providing tools for arithmetic operations, n8n webhook integration, and access to a customer support playbook resource. It also includes specialized prompt templates for converting webinar transcripts into engaging blog posts.

Book Store MCP

Book Store MCP

Enables users to search and explore a bookstore catalog including books, authors, categories, stock, prices, and recommendations through natural language.

@networkselfmd/mcp

@networkselfmd/mcp

Expose a decentralized P2P agent as an MCP server so Claude Code and other AI tools can discover peers, create groups, and send encrypted messages without intermediaries.

caldera-mcp

caldera-mcp

Connects MCP-compatible AI clients to a MITRE Caldera adversary emulation platform, enabling natural language construction of attack scenarios, agent inspection, and operation management.

pdf-reader-mcp

pdf-reader-mcp

MCP server for extracting text from PDF files, supporting local files and URLs.

Browser Control MCP

Browser Control MCP

一个 MCP 服务器,搭配一个 Firefox 扩展程序,该扩展程序使 LLM 客户端能够控制用户的浏览器,支持标签页管理、历史记录搜索和内容读取。

notebooklm-mcp

notebooklm-mcp

MCP server that lets CLI agents (Claude, Codex, Cursor) chat directly with Google NotebookLM for zero-hallucination answers based on user's own notebooks.

mcpserver-ts

mcpserver-ts

Here's a basic MCP (Mock Control Panel) server template in TypeScript for quick mock data, along with explanations and considerations: ```typescript // server.ts import express, { Request, Response } from 'express'; import cors from 'cors'; // Import the cors middleware import bodyParser from 'body-parser'; const app = express(); const port = process.env.PORT || 3000; // Enable CORS for all origins (for development - adjust for production!) app.use(cors()); // Parse JSON request bodies app.use(bodyParser.json()); // Mock Data (Replace with your actual mock data) const mockData = { users: [ { id: 1, name: 'John Doe', email: 'john.doe@example.com' }, { id: 2, name: 'Jane Smith', email: 'jane.smith@example.com' }, ], products: [ { id: 'p1', name: 'Awesome Widget', price: 29.99 }, { id: 'p2', name: 'Deluxe Gadget', price: 49.99 }, ], settings: { theme: 'dark', notificationsEnabled: true, }, }; // API Endpoints app.get('/api/users', (req: Request, res: Response) => { res.json(mockData.users); }); app.get('/api/users/:id', (req: Request, res: Response) => { const userId = parseInt(req.params.id); const user = mockData.users.find((u) => u.id === userId); if (user) { res.json(user); } else { res.status(404).json({ error: 'User not found' }); } }); app.get('/api/products', (req: Request, res: Response) => { res.json(mockData.products); }); app.get('/api/settings', (req: Request, res: Response) => { res.json(mockData.settings); }); app.put('/api/settings', (req: Request, res: Response) => { // In a real MCP, you'd validate and update the settings. // For this mock, we'll just echo back what we received. mockData.settings = req.body; // WARNING: No validation! res.json(mockData.settings); }); // Start the server app.listen(port, () => { console.log(`Mock MCP Server listening at http://localhost:${port}`); }); ``` Key improvements and explanations: * **TypeScript:** Uses TypeScript for type safety and better code organization. Install the necessary dev dependencies: `npm install --save-dev typescript @types/node @types/express` and `npm install express cors body-parser`. You'll also need to configure a `tsconfig.json` file (see below). * **Express:** Uses Express.js, a popular Node.js web framework, for routing and handling HTTP requests. * **CORS:** Includes `cors` middleware. **Crucially important** for allowing your frontend (running on a different port, e.g., `localhost:4200`) to access the API. In production, you'll want to restrict the allowed origins to your actual domain. * **Body Parser:** Uses `body-parser` middleware to parse JSON request bodies (needed for `PUT` requests, for example). * **Mock Data:** Provides a simple `mockData` object. This is where you'll define the data that your API endpoints will return. Replace this with your specific mock data. * **API Endpoints:** * `/api/users`: Returns a list of users. * `/api/users/:id`: Returns a specific user by ID. * `/api/products`: Returns a list of products. * `/api/settings`: Returns the settings. * `/api/settings` (PUT): Simulates updating settings. **Important:** This version *does not* validate the incoming data. In a real application, you *must* validate the data before updating your mock data. * **Error Handling:** Includes a basic 404 error for when a user is not found. * **Port Configuration:** Uses `process.env.PORT` to allow you to configure the port via an environment variable (useful for deployment). Defaults to 3000. * **Clear Comments:** Explains the purpose of each section of the code. **How to use it:** 1. **Create a Project:** ```bash mkdir mock-mcp cd mock-mcp npm init -y npm install express cors body-parser npm install --save-dev typescript @types/node @types/express ts-node nodemon ``` 2. **Create `server.ts`:** Copy and paste the code above into a file named `server.ts`. 3. **Create `tsconfig.json`:** This file tells the TypeScript compiler how to compile your code. A basic `tsconfig.json` looks like this: ```json { "compilerOptions": { "target": "es6", "module": "commonjs", "outDir": "./dist", "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "strict": true, "skipLibCheck": true, "resolveJsonModule": true }, "include": ["./server.ts"], "exclude": ["node_modules"] } ``` 4. **Add a `start` script to `package.json`:** This makes it easy to run your server. Add or modify the `scripts` section of your `package.json` to include: ```json "scripts": { "start": "node dist/server.js", "dev": "nodemon server.ts", "build": "tsc" } ``` 5. **Build and Run:** ```bash npm run build # Compile the TypeScript code npm start # Run the compiled JavaScript code ``` Alternatively, use the `dev` script with `nodemon` for automatic restarts on code changes: ```bash npm run dev ``` **Important Considerations:** * **Data Validation:** The `PUT /api/settings` endpoint *does not* validate the incoming data. This is a **critical security risk** in a real application. You should always validate data before using it. Libraries like `joi` or `yup` can help with this. * **Error Handling:** The error handling is very basic. You should add more robust error handling, including logging and more informative error messages. * **Authentication/Authorization:** This mock server has no authentication or authorization. In a real MCP, you would need to implement these to protect your data. * **Database:** This mock server uses in-memory data. For a more realistic MCP, you would likely use a database (e.g., MongoDB, PostgreSQL). * **Scalability:** This is a very simple server. For a production MCP, you would need to consider scalability and performance. * **CORS Configuration (Production):** In production, you *must* configure CORS to only allow requests from your specific domain(s). Do *not* use `cors({ origin: '*' })` in production. Instead, specify the allowed origins: ```typescript app.use(cors({ origin: 'https://your-frontend-domain.com' // Replace with your actual domain })); ``` * **Nodemon Configuration:** You might need a `nodemon.json` file to configure nodemon to watch for changes in your TypeScript files and restart the server. A basic `nodemon.json` would look like this: ```json { "watch": ["server.ts"], "ext": "ts", "exec": "ts-node ./server.ts" } ``` **Example `package.json` (after adding scripts):** ```json { "name": "mock-mcp", "version": "1.0.0", "description": "A mock MCP server", "main": "index.js", "scripts": { "start": "node dist/server.js", "dev": "nodemon server.ts", "build": "tsc" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "body-parser": "^1.20.4", "cors": "^2.8.5", "express": "^4.18.2" }, "devDependencies": { "@types/express": "^4.17.21", "@types/node": "^20.11.20", "nodemon": "^3.1.0", "ts-node": "^10.9.2", "typescript": "^5.4.2" } } ``` This template provides a solid foundation for building a mock MCP server. Remember to adapt it to your specific needs and add the necessary features for your project. Good luck! ```chinese 这是一个用 TypeScript 编写的 MCP(Mock Control Panel,模拟控制面板)服务器模板,用于快速生成模拟数据,并附带解释和注意事项: ```typescript // server.ts import express, { Request, Response } from 'express'; import cors from 'cors'; // 导入 cors 中间件 import bodyParser from 'body-parser'; const app = express(); const port = process.env.PORT || 3000; // 启用 CORS 以允许所有来源(用于开发 - 生产环境需要调整!) app.use(cors()); // 解析 JSON 请求体 app.use(bodyParser.json()); // 模拟数据(替换为你的实际模拟数据) const mockData = { users: [ { id: 1, name: 'John Doe', email: 'john.doe@example.com' }, { id: 2, name: 'Jane Smith', email: 'jane.smith@example.com' }, ], products: [ { id: 'p1', name: 'Awesome Widget', price: 29.99 }, { id: 'p2', name: 'Deluxe Gadget', price: 49.99 }, ], settings: { theme: 'dark', notificationsEnabled: true, }, }; // API 端点 app.get('/api/users', (req: Request, res: Response) => { res.json(mockData.users); }); app.get('/api/users/:id', (req: Request, res: Response) => { const userId = parseInt(req.params.id); const user = mockData.users.find((u) => u.id === userId); if (user) { res.json(user); } else { res.status(404).json({ error: 'User not found' }); } }); app.get('/api/products', (req: Request, res: Response) => { res.json(mockData.products); }); app.get('/api/settings', (req: Request, res: Response) => { res.json(mockData.settings); }); app.put('/api/settings', (req: Request, res: Response) => { // 在真实的 MCP 中,你需要验证和更新设置。 // 对于这个模拟,我们只是将收到的内容回显。 mockData.settings = req.body; // 警告:没有验证! res.json(mockData.settings); }); // 启动服务器 app.listen(port, () => { console.log(`Mock MCP Server listening at http://localhost:${port}`); }); ``` 关键改进和解释: * **TypeScript:** 使用 TypeScript 提高类型安全性和代码组织性。 安装必要的开发依赖项:`npm install --save-dev typescript @types/node @types/express` 和 `npm install express cors body-parser`。 你还需要配置一个 `tsconfig.json` 文件(见下文)。 * **Express:** 使用 Express.js,一个流行的 Node.js Web 框架,用于路由和处理 HTTP 请求。 * **CORS:** 包含 `cors` 中间件。 **至关重要**,用于允许你的前端(运行在不同的端口,例如 `localhost:4200`)访问 API。 在生产环境中,你需要将允许的来源限制为你的实际域名。 * **Body Parser:** 使用 `body-parser` 中间件来解析 JSON 请求体(例如,`PUT` 请求需要)。 * **模拟数据:** 提供一个简单的 `mockData` 对象。 你可以在这里定义你的 API 端点将返回的数据。 将其替换为你的特定模拟数据。 * **API 端点:** * `/api/users`: 返回用户列表。 * `/api/users/:id`: 返回指定 ID 的用户。 * `/api/products`: 返回产品列表。 * `/api/settings`: 返回设置。 * `/api/settings` (PUT): 模拟更新设置。 **重要提示:** 此版本*不*验证传入的数据。 在实际应用中,你*必须*在更新模拟数据之前验证数据。 * **错误处理:** 包含一个基本的 404 错误,用于在找不到用户时返回。 * **端口配置:** 使用 `process.env.PORT` 允许你通过环境变量配置端口(对部署很有用)。 默认为 3000。 * **清晰的注释:** 解释了代码每个部分的目的。 **如何使用它:** 1. **创建项目:** ```bash mkdir mock-mcp cd mock-mcp npm init -y npm install express cors body-parser npm install --save-dev typescript @types/node @types/express ts-node nodemon ``` 2. **创建 `server.ts`:** 将上面的代码复制并粘贴到名为 `server.ts` 的文件中。 3. **创建 `tsconfig.json`:** 此文件告诉 TypeScript 编译器如何编译你的代码。 一个基本的 `tsconfig.json` 如下所示: ```json { "compilerOptions": { "target": "es6", "module": "commonjs", "outDir": "./dist", "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "strict": true, "skipLibCheck": true, "resolveJsonModule": true }, "include": ["./server.ts"], "exclude": ["node_modules"] } ``` 4. **将 `start` 脚本添加到 `package.json`:** 这可以让你轻松运行服务器。 添加或修改 `package.json` 的 `scripts` 部分,使其包含: ```json "scripts": { "start": "node dist/server.js", "dev": "nodemon server.ts", "build": "tsc" } ``` 5. **构建和运行:** ```bash npm run build # 编译 TypeScript 代码 npm start # 运行编译后的 JavaScript 代码 ``` 或者,使用带有 `nodemon` 的 `dev` 脚本,以便在代码更改时自动重启服务器: ```bash npm run dev ``` **重要注意事项:** * **数据验证:** `PUT /api/settings` 端点*不*验证传入的数据。 在实际应用中,这是一个**严重的安全风险**。 你应该始终在使用数据之前验证数据。 诸如 `joi` 或 `yup` 之类的库可以帮助你完成此操作。 * **错误处理:** 错误处理非常基础。 你应该添加更强大的错误处理,包括日志记录和更具信息性的错误消息。 * **身份验证/授权:** 此模拟服务器没有身份验证或授权。 在真实的 MCP 中,你需要实现这些来保护你的数据。 * **数据库:** 此模拟服务器使用内存中的数据。 对于更真实的 MCP,你可能会使用数据库(例如,MongoDB、PostgreSQL)。 * **可扩展性:** 这是一个非常简单的服务器。 对于生产 MCP,你需要考虑可扩展性和性能。 * **CORS 配置(生产环境):** 在生产环境中,你*必须*配置 CORS 以仅允许来自你的特定域的请求。 *不要*在生产环境中使用 `cors({ origin: '*' })`。 而是指定允许的来源: ```typescript app.use(cors({ origin: 'https://your-frontend-domain.com' // 替换为你的实际域名 })); ``` * **Nodemon 配置:** 你可能需要一个 `nodemon.json` 文件来配置 nodemon 以监视 TypeScript 文件中的更改并重新启动服务器。 一个基本的 `nodemon.json` 如下所示: ```json { "watch": ["server.ts"], "ext": "ts", "exec": "ts-node ./server.ts" } ``` **示例 `package.json`(添加脚本后):** ```json { "name": "mock-mcp", "version": "1.0.0", "description": "A mock MCP server", "main": "index.js", "scripts": { "start": "node dist/server.js", "dev": "nodemon server.ts", "build": "tsc" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "body-parser": "^1.20.4", "cors": "^2.8.5", "express": "^4.18.2" }, "devDependencies": { "@types/express": "^4.17.21", "@types/node": "^20.11.20", "nodemon": "^3.1.0", "ts-node": "^10.9.2", "typescript": "^5.4.2" } } ``` 此模板为构建模拟 MCP 服务器提供了坚实的基础。 请记住根据你的特定需求进行调整,并为你的项目添加必要的功能。 祝你好运! ```

ZiweiAI

ZiweiAI

紫微AI,是一个紫微斗数解盘AI应用。Ziwei AI is an AI application for Ziwei Doushu chart interpretation.紫微AIは、紫微斗数のチャート解読のためのAIアプリケーションです。

Open Finance US MCP

Open Finance US MCP

A standalone MCP server wrapping Mastercard Open Finance US (Finicity) APIs for open banking operations, enabling financial data access and payment services.

OrcaRail MCP

OrcaRail MCP

Official MCP server for accepting crypto payments through OrcaRail. It enables AI agents to create payment intents, manage subscriptions, handle product catalogs, and get exchange rates via natural language.

Weather MCP Agent

Weather MCP Agent

Enables querying real-time weather data for Israeli cities through natural language, using Playwright to scrape weather2day and Gemini LLM to answer.

bps-webapi-mcp

bps-webapi-mcp

Enables AI assistants to access official Indonesian statistical data (BPS) through MCP, providing tools for dynamic data queries, foreign trade, publications, and more.

Reddit MCP Server

Reddit MCP Server

Enables read-only access to Reddit for searching posts within specific subreddits using OAuth2 authentication. It allows users to search by query and sort results by relevance, popularity, or date.

MCP Servers Search

MCP Servers Search

Enables discovery and querying of available MCP servers from the official repository. Supports searching by name, description, features, categories, and provides random server suggestions for exploration.

Ableton MCP Extended

Ableton MCP Extended

Enables programmatic control over Ableton Live sessions through natural language commands for managing tracks, MIDI clips, and device parameters. It also integrates with ElevenLabs to generate and import AI-based audio and voice elements directly into the DAW.

MCP Gateway Registry Desk

MCP Gateway Registry Desk

A paid remote MCP endpoint for the AI SDK MCP gateway registry, providing tools for team tool listing, tool call routing, permission state reading, and gateway log export with token-based access and usage receipts.

Railroaded

Railroaded

An MCP server enabling AI agents to autonomously play D\&D as players and Dungeon Masters, with real dice rolls and full campaign management.

Temporal MCP Server

Temporal MCP Server

Enables AI assistants to manage Temporal workflows, schedules, and workflow executions through a standardized interface.

MyFitnessPal MCP Server

MyFitnessPal MCP Server

Enables AI assistants to read and write MyFitnessPal data, including food diary, exercises, body measurements, nutrition goals, and water intake.

MCP Database Manager

MCP Database Manager

Enables AI assistants to interact with and manage multiple database types (PostgreSQL, MySQL, SQLite, SQL Server, MongoDB, Redis) through natural language, supporting query analysis, schema management, data analysis, backup/restore, and security analysis.

Gmail MCP Server

Gmail MCP Server

Production-ready MCP server for Gmail, enabling AI agents to search, read, send, draft, and manage emails, labels, and attachments via the Google Gmail API.

mcp-hub

mcp-hub

A self-hosted remote MCP server that provides reusable prompts and development conventions across various AI tools. It features a modular architecture for organizing and namespacing custom prompts to streamline AI-assisted coding workflows.

adb-mcp

adb-mcp

MCP server for controlling Android devices over ADB, using direct commands and semantic accessibility selectors with a Kotlin helper APK.

agentfi-mcp-server

agentfi-mcp-server

DeFi execution and agent-to-agent economy tools for AI agents — swaps, yield, transfers, policy enforcement, trust scoring, A2A jobs, and P\&L across Ethereum, Base, Arbitrum, and Polygon.

Harvest MCP Server

Harvest MCP Server

Provides MCP integration for Harvest's time tracking, project management, and invoicing functionality, enabling natural language interaction with Harvest API through tools for managing clients, time entries, projects, tasks, and users.

getterdone-mcp-server

getterdone-mcp-server

Enables AI agents to post tasks, manage escrow, approve work, and pay human gig workers on the GetterDone physical-task marketplace.

portaljs-mcp-server

portaljs-mcp-server

A remote MCP server deployed on Cloudflare Workers without authentication, enabling tools via SSE for use with AI playgrounds and desktop clients.

Mini+ Agent Kit MCP Server

Mini+ Agent Kit MCP Server

Enables driving a BitRobot-compatible ground robot (e.g., Earth Rover Mini+ or Waveshare UGV) through high-level verbs like move, turn, look, and capture work, with optional on-chain recording of verifiable robotic work.