发现优秀的 MCP 服务器

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

全部23,459
System Info MCP Server

System Info MCP Server

Enables comprehensive system monitoring and diagnostics through 18 tools that provide detailed information about CPU, memory, disk usage, network interfaces, running processes, battery status, hardware details, and temperature monitoring. Allows users to query system information and performance metrics through natural language interactions.

MCP Memory Service - TypeScript

MCP Memory Service - TypeScript

A cloud-based vector memory service that provides AI assistants with persistent storage, semantic search, and entity management via the Model Context Protocol. It features multi-tenant isolation and bidirectional synchronization with macOS and Google contacts and calendars.

SMILES Visualizer MCP Server

SMILES Visualizer MCP Server

Enables molecular visualization and analysis from SMILES strings using multiple rendering approaches (RDKit, NetworkX, Plotly, matplotlib), providing detailed molecular properties, validation, and batch processing capabilities for chemical structures.

MCP Claude Shell Server

MCP Claude Shell Server

A Node.js MCP server that wraps the Claude Code CLI to enable parallel execution of AI requests for code generation, editing, and refactoring. It features built-in retry logic, model selection, and JSON validation for structured outputs.

PopHIVE MCP Server

PopHIVE MCP Server

Provides access to comprehensive public health data from Yale's Population Health Information Visual Explorer, including metrics on immunizations, respiratory diseases, and chronic conditions. It enables users to perform state-level comparisons, time-series analysis, and data filtering across authoritative sources like the CDC and Epic Cosmos.

MCP + CrewAI Agentic Integration

MCP + CrewAI Agentic Integration

A FastMCP server providing real-time weather, news retrieval, and local note management tools for autonomous CrewAI agents. It enables context-aware multi-agent workflows with observability and high-speed inference integration.

Listmonk MCP Server

Listmonk MCP Server

An MCP server implementation that enables AI assistants to interact with Listmonk instances, providing programmatic access to newsletter and mailing list management functionality including subscriber, list, and campaign operations.

Google Calendar MCP Server

Google Calendar MCP Server

Enables management of dental appointments through Google Calendar integration. Supports booking, canceling, rescheduling appointments, checking availability, and finding next available slots through natural language.

Scrapbox Cosense MCP Server

Scrapbox Cosense MCP Server

这个服务器方便与 cosense/Scrapbox 项目进行交互,使用户能够检索、列出、搜索和创建页面,同时支持各种查询操作并安全访问私有项目。

coin-mcp-server

coin-mcp-server

Okay, here's a breakdown of how to use Bitget's API to get cryptocurrency information, along with considerations and a basic example. I'll provide both the English explanation and the Chinese translation. **English Explanation** **1. Understanding the Bitget API:** * **REST API:** Bitget primarily uses a RESTful API. This means you'll be making HTTP requests (GET, POST, etc.) to specific URLs (endpoints) to retrieve data or perform actions. * **Authentication:** Some endpoints (especially those dealing with your account or trading) require authentication. This involves using API keys (a public key and a secret key) that you generate on the Bitget platform. Keep your secret key *very* safe. * **Rate Limits:** Bitget, like most exchanges, has rate limits. This restricts the number of requests you can make within a certain time period. Exceeding these limits will result in your requests being temporarily blocked. Check the Bitget API documentation for the specific rate limits. * **Documentation:** The *most important* resource is the official Bitget API documentation. Find it on the Bitget website (usually under "API" or "Developer" sections). The documentation will list all available endpoints, required parameters, response formats, and authentication details. **Always refer to the official documentation first.** **2. Basic Steps:** 1. **Get API Keys (if needed):** If you need to access private data (like your account balance or place orders), create API keys on the Bitget website. Enable the necessary permissions (e.g., "Read," "Trade"). 2. **Choose an Endpoint:** Decide what information you want. Examples: * **Market Data:** Get the current price of Bitcoin (BTC), trading volume, order book, etc. * **Account Information:** Get your account balance, order history, etc. (requires authentication). * **Trading:** Place buy/sell orders (requires authentication). 3. **Construct the Request:** Build the HTTP request to the correct endpoint, including any required parameters. This often involves creating a URL with query parameters. 4. **Send the Request:** Use a programming language (Python, JavaScript, etc.) and an HTTP client library (e.g., `requests` in Python, `axios` in JavaScript) to send the request to the Bitget API. 5. **Parse the Response:** The Bitget API will return a response, usually in JSON format. Parse the JSON to extract the data you need. 6. **Handle Errors:** Check the HTTP status code and the response body for any errors. Implement error handling in your code. **3. Example (Python using `requests` - Market Data - Public Endpoint):** ```python import requests import json # Replace with the actual Bitget API endpoint for ticker information (e.g., BTCUSDT) api_url = "https://api.bitget.com/api/spot/v1/ticker/BTCUSDT_SPBL" #Example endpoint, check documentation try: response = requests.get(api_url) response.raise_for_status() # Raise an exception for bad status codes (4xx or 5xx) data = response.json() print(json.dumps(data, indent=4)) # Pretty print the JSON # Example: Extract the last price last_price = data['data']['close'] print(f"Last price of BTCUSDT: {last_price}") except requests.exceptions.RequestException as e: print(f"Error: {e}") except (KeyError, TypeError) as e: print(f"Error parsing JSON: {e}") ``` **Important Notes:** * **Security:** Never hardcode your secret API key directly into your code. Use environment variables or a secure configuration file. * **Error Handling:** Implement robust error handling to catch network errors, API errors, and JSON parsing errors. * **API Versioning:** Bitget may update its API. Pay attention to the API version in the endpoint URL (e.g., `/api/v1/`, `/api/v2/`) and update your code accordingly when necessary. * **Testing:** Thoroughly test your code in a test environment (if Bitget provides one) before using it with real funds. * **Legal:** Be aware of any legal or regulatory requirements related to using cryptocurrency exchange APIs in your jurisdiction. **Chinese Translation** **1. 理解 Bitget API:** * **REST API:** Bitget 主要使用 RESTful API。 这意味着您将向特定的 URL(端点)发出 HTTP 请求(GET、POST 等)以检索数据或执行操作。 * **身份验证:** 某些端点(尤其是处理您的帐户或交易的端点)需要身份验证。 这涉及使用您在 Bitget 平台上生成的 API 密钥(公钥和私钥)。 请 *非常* 安全地保管您的私钥。 * **速率限制:** 像大多数交易所一样,Bitget 具有速率限制。 这限制了您在特定时间段内可以发出的请求数量。 超过这些限制将导致您的请求被暂时阻止。 请查看 Bitget API 文档以获取具体的速率限制。 * **文档:** *最重要* 的资源是官方 Bitget API 文档。 在 Bitget 网站上找到它(通常在“API”或“开发者”部分下)。 该文档将列出所有可用的端点、必需的参数、响应格式和身份验证详细信息。 **始终首先参考官方文档。** **2. 基本步骤:** 1. **获取 API 密钥(如果需要):** 如果您需要访问私有数据(例如您的帐户余额或下订单),请在 Bitget 网站上创建 API 密钥。 启用必要的权限(例如,“读取”、“交易”)。 2. **选择一个端点:** 确定您想要的信息。 例子: * **市场数据:** 获取比特币 (BTC) 的当前价格、交易量、订单簿等。 * **帐户信息:** 获取您的帐户余额、订单历史记录等(需要身份验证)。 * **交易:** 下买入/卖出订单(需要身份验证)。 3. **构建请求:** 构建到正确端点的 HTTP 请求,包括任何必需的参数。 这通常涉及创建带有查询参数的 URL。 4. **发送请求:** 使用编程语言(Python、JavaScript 等)和 HTTP 客户端库(例如 Python 中的 `requests`,JavaScript 中的 `axios`)将请求发送到 Bitget API。 5. **解析响应:** Bitget API 将返回一个响应,通常为 JSON 格式。 解析 JSON 以提取您需要的数据。 6. **处理错误:** 检查 HTTP 状态代码和响应正文是否有任何错误。 在您的代码中实现错误处理。 **3. 示例(Python 使用 `requests` - 市场数据 - 公共端点):** ```python import requests import json # 替换为实际的 Bitget API 端点以获取行情信息(例如,BTCUSDT) api_url = "https://api.bitget.com/api/spot/v1/ticker/BTCUSDT_SPBL" #示例端点,请查阅文档 try: response = requests.get(api_url) response.raise_for_status() # 为错误的状态代码(4xx 或 5xx)引发异常 data = response.json() print(json.dumps(data, indent=4)) # 漂亮地打印 JSON # 示例:提取最新价格 last_price = data['data']['close'] print(f"BTCUSDT 的最新价格:{last_price}") except requests.exceptions.RequestException as e: print(f"错误:{e}") except (KeyError, TypeError) as e: print(f"解析 JSON 时出错:{e}") ``` **重要提示:** * **安全:** 永远不要将您的秘密 API 密钥直接硬编码到您的代码中。 使用环境变量或安全配置文件。 * **错误处理:** 实现强大的错误处理以捕获网络错误、API 错误和 JSON 解析错误。 * **API 版本控制:** Bitget 可能会更新其 API。 注意端点 URL 中的 API 版本(例如,`/api/v1/`、`/api/v2/`),并在必要时相应地更新您的代码。 * **测试:** 在将您的代码用于真实资金之前,请在测试环境中彻底测试您的代码(如果 Bitget 提供)。 * **法律:** 请注意您所在司法管辖区与使用加密货币交易所 API 相关的任何法律或监管要求。 **Key Takeaways:** * **Read the Documentation:** The Bitget API documentation is your bible. * **Start Simple:** Begin with public endpoints (no authentication required) to get familiar with the API. * **Handle Errors:** Robust error handling is crucial. * **Security First:** Protect your API keys. I hope this comprehensive explanation and example are helpful! Remember to consult the official Bitget API documentation for the most up-to-date information. Good luck!

ChEMBL-MCP-Server

ChEMBL-MCP-Server

REI3 Tickets MCP Server

REI3 Tickets MCP Server

Enables AI assistants to create tickets and worklog entries in REI3 ticket management systems through the REI3 Tickets API. Supports secure authentication and provides natural language interface for ticket operations.

MCP-ArcKnowledge

MCP-ArcKnowledge

有了这个,您可以轻松地管理和查询您的知识库列表(webhook 端点)。您可以通过注册其 URL 来添加新的文档来源,并且可以选择提供描述和 API 密钥。 您还可以列出所有已注册的文档来源并查看其详细信息。 当您...

GitLab MCP Server

GitLab MCP Server

一个 MCP 服务器,能够与 GitLab 仓库进行通信,允许通过自然语言与 GitLab 的 API 交互,从而管理项目、问题和仓库。

Sandbox MCP

Sandbox MCP

Production-ready MCP server for secure Python code execution with artifact capture, virtual environment support, and LM Studio integration.

Cover Letter MCP Server

Cover Letter MCP Server

Generates professional PDF cover letters using LaTeX with advanced folder management capabilities. Integrates with Claude Desktop to create beautifully formatted cover letters with customizable organization by company, role, or industry.

Webpage MCP Server

Webpage MCP Server

Enables querying and retrieving webpage content from websites by parsing sitemap.xml files and fetching HTML content from specified URLs. Includes built-in rate limiting for responsible web scraping.

Date-MCP Server

Date-MCP Server

A Model Context Protocol service that handles date and time conversions for China's timezone (UTC+8), supporting current date retrieval, timestamp conversions, and date-time formatting.

Massive Context MCP

Massive Context MCP

An MCP server that enables processing of massive datasets up to 10M+ tokens using a recursive language model pattern for strategic chunking and analysis. It automates sub-queries and result aggregation using free local inference via Ollama or the Claude API to handle context beyond standard prompt limits.

Session Buddy

Session Buddy

Provides comprehensive session management for Claude Code with automatic initialization/cleanup, quality checkpoints, and local conversation memory with semantic search for capturing learnings across coding sessions.

pentestMCP

pentestMCP

An MCP server that exposes over 20 standard penetration testing utilities, such as Nmap, SQLMap, and OWASP ZAP, as callable tools for AI agents. It enables natural language control over complex security workflows for automated and interactive penetration testing.

MCP-SST

MCP-SST

Enables monitoring and control of the SST development process by streaming dev logs, managing Lambda invocations, and executing lifecycle commands like start, stop, and restart. It provides real-time access to event streams and deployment status directly through the Model Context Protocol.

Stealth Browser MCP Server

Stealth Browser MCP Server

Provides stealth browser capabilities using Playwright with anti-detection techniques, allowing MCP clients to navigate websites and take screenshots while evading common bot detection systems.

OpsNow MCP Asset Server

OpsNow MCP Asset Server

IndexFoundry MCP

IndexFoundry MCP

Creates deterministic, auditable vector databases from any content source with deployable RAG applications. Supports multiple embedding providers and vector databases with fine-grained pipeline control or project-based workflows.

Strudel MCP Server

Strudel MCP Server

Enables AI-powered music generation and live coding by providing direct control over Strudel.cc through browser automation. Supports pattern creation, audio analysis, and pattern storage for TidalCycles/Strudel music patterns.

Postman MCP Generator

Postman MCP Generator

Generates MCP servers from Postman API requests, automatically creating JavaScript tools that enable LLMs to interact with any API documented in Postman collections. Supports authentication configuration and deployment via STDIO or SSE.

Kali SSE MCP Command Executor

Kali SSE MCP Command Executor

Enables secure execution of penetration testing commands on Kali Linux through Server-Sent Events with intelligent command validation, real-time monitoring, and comprehensive audit logging. Designed for authorized security research and penetration testing workflows.

VNStock MCP Server

VNStock MCP Server

Okay, here's a breakdown of how you could create an MCP (presumably meaning a Minimal, Complete, and Verifiable example) server in Python to fetch historical stock prices using the `vnstock` library, along with explanations and considerations: ```python # server.py (or whatever you want to name your server file) from flask import Flask, request, jsonify import vnstock import datetime app = Flask(__name__) @app.route('/historical_stock_data', methods=['GET']) def get_historical_data(): """ Fetches historical stock data for a given ticker symbol and date range using the vnstock library. Query Parameters: ticker (str): The stock ticker symbol (e.g., 'VIC'). Required. start_date (str): The start date in 'YYYY-MM-DD' format. Required. end_date (str): The end date in 'YYYY-MM-DD' format. Defaults to today if not provided. Returns: JSON: A JSON response containing the historical stock data as a list of dictionaries, or an error message if there's an issue. """ ticker = request.args.get('ticker') start_date = request.args.get('start_date') end_date = request.args.get('end_date') if not ticker: return jsonify({'error': 'Missing ticker parameter'}), 400 # Bad Request if not start_date: return jsonify({'error': 'Missing start_date parameter'}), 400 try: datetime.datetime.strptime(start_date, '%Y-%m-%d') # Validate start_date format if end_date: datetime.datetime.strptime(end_date, '%Y-%m-%d') # Validate end_date format else: end_date = datetime.date.today().strftime('%Y-%m-%d') # Default to today except ValueError: return jsonify({'error': 'Invalid date format. Use YYYY-MM-DD.'}), 400 try: data = vnstock.stock_historical_data( symbol=ticker, start_date=start_date, end_date=end_date, period='1D' # Daily data ) # Convert DataFrame to list of dictionaries for JSON serialization data_list = data.to_dict(orient='records') return jsonify(data_list), 200 # OK except Exception as e: print(f"Error fetching data: {e}") # Log the error for debugging return jsonify({'error': f'Error fetching data: {str(e)}'}), 500 # Internal Server Error if __name__ == '__main__': app.run(debug=True, host='0.0.0.0', port=5000) # Important for network access ``` **Explanation and Key Improvements:** 1. **Dependencies:** - Make sure you have the necessary libraries installed: ```bash pip install flask vnstock ``` 2. **Flask Setup:** - `Flask` is a lightweight Python web framework. We create a Flask app instance. 3. **Route Definition (`/historical_stock_data`):** - `@app.route('/historical_stock_data', methods=['GET'])`: This defines a route that listens for GET requests at the `/historical_stock_data` endpoint. GET is appropriate for fetching data. 4. **Query Parameters:** - `request.args.get('ticker')`: This retrieves the `ticker`, `start_date`, and `end_date` from the URL's query parameters. For example: - `http://localhost:5000/historical_stock_data?ticker=VIC&start_date=2023-01-01&end_date=2023-01-10` 5. **Input Validation:** - **Required Parameters:** Checks if `ticker` and `start_date` are provided. Returns a 400 error (Bad Request) if they are missing. - **Date Format Validation:** Uses `datetime.datetime.strptime` to validate that `start_date` and `end_date` are in the correct `YYYY-MM-DD` format. Returns a 400 error if the format is invalid. - **Default `end_date`:** If `end_date` is not provided, it defaults to the current date. 6. **`vnstock.stock_historical_data()` Call:** - `vnstock.stock_historical_data(...)`: This is where the `vnstock` library is used to fetch the historical data. The `symbol`, `start_date`, and `end_date` are passed as arguments. `period='1D'` specifies daily data. 7. **Error Handling:** - `try...except`: A `try...except` block is used to catch potential errors during the `vnstock` data fetching process. This is crucial for a robust server. - **Logging:** `print(f"Error fetching data: {e}")` logs the error to the console. This is very helpful for debugging. In a production environment, you'd want to use a more sophisticated logging system. - **Error Response:** If an error occurs, a JSON response with an error message and a 500 status code (Internal Server Error) is returned. 8. **JSON Response:** - `data.to_dict(orient='records')`: Converts the Pandas DataFrame returned by `vnstock` into a list of dictionaries. This is necessary because Flask's `jsonify` function can easily serialize lists of dictionaries into JSON. - `jsonify(data_list)`: Converts the list of dictionaries into a JSON response. - `return jsonify(data_list), 200`: Returns the JSON response with a 200 status code (OK). 9. **Running the App:** - `if __name__ == '__main__':`: This ensures that the app is only run when the script is executed directly (not when it's imported as a module). - `app.run(debug=True, host='0.0.0.0', port=5000)`: - `debug=True`: Enables debug mode, which provides helpful error messages and automatic reloading when you make changes to the code. **Important:** Disable debug mode in production. - `host='0.0.0.0'`: This makes the server accessible from any IP address on your network. If you only want to access it from your local machine, use `host='127.0.0.1'`. - `port=5000`: Specifies the port number the server will listen on. **How to Run:** 1. **Save:** Save the code as `server.py` (or any name you prefer). 2. **Install:** Make sure you have Flask and vnstock installed (`pip install flask vnstock`). 3. **Run:** Open a terminal or command prompt, navigate to the directory where you saved the file, and run: `python server.py` 4. **Access:** Open a web browser or use a tool like `curl` or `Postman` to access the server. For example: ``` http://localhost:5000/historical_stock_data?ticker=VIC&start_date=2023-01-01&end_date=2023-01-10 ``` **Important Considerations:** * **Error Handling:** The error handling in this example is basic. In a production environment, you'd want to implement more robust error handling, including logging to a file, sending error notifications, and potentially retrying failed requests. * **Security:** This is a very basic example and doesn't include any security measures. If you're deploying this to a public server, you'll need to consider security aspects like authentication, authorization, and input validation to prevent malicious attacks. * **Rate Limiting:** Be mindful of the API usage limits of the `vnstock` library or the underlying data source. Implement rate limiting in your server to avoid being blocked. * **Asynchronous Operations:** For handling multiple concurrent requests efficiently, consider using asynchronous frameworks like `asyncio` and `aiohttp` instead of Flask. * **Configuration:** Use environment variables or a configuration file to store sensitive information like API keys or database credentials. * **Deployment:** Consider using a production-ready web server like Gunicorn or uWSGI to deploy your Flask application. **Chinese Translation of Key Terms:** * **Stock Price:** 股票价格 (gǔpiào jiàgé) * **Historical Data:** 历史数据 (lìshǐ shùjù) * **Ticker Symbol:** 股票代码 (gǔpiào dàimǎ) * **Start Date:** 开始日期 (kāishǐ rìqí) * **End Date:** 结束日期 (jiéshù rìqí) * **Server:** 服务器 (fúwùqì) * **API:** 应用程序接口 (yìngyòng chéngxù jiēkǒu) * **JSON:** JSON 数据格式 (JSON shùjù géshì) * **Error:** 错误 (cuòwù) * **Request:** 请求 (qǐngqiú) * **Response:** 响应 (xiǎngyìng) This comprehensive example should give you a solid foundation for building your stock price API using `vnstock` and Flask. Remember to adapt it to your specific needs and consider the important considerations mentioned above.

mcp-gopls

mcp-gopls

一个模型上下文协议 (MCP) 服务器,它允许像 Claude 这样的 AI 助手与 Go 语言服务器协议 (LSP) 交互,并从高级 Go 代码分析功能中受益。