Discover Awesome MCP Servers

Extend your agent with 11,837 capabilities via MCP servers.

All11,837
grobid-MCP-Server-

grobid-MCP-Server-

➡️ browser-use mcp server

➡️ browser-use mcp server

Một máy chủ MCP cho phép các trợ lý AI điều khiển trình duyệt web thông qua các lệnh ngôn ngữ tự nhiên, cho phép chúng điều hướng các trang web và trích xuất thông tin thông qua giao thức SSE.

MCP GO Tools

MCP GO Tools

A Go-focused Model Context Protocol (MCP) server that provides idiomatic Go code generation, style guidelines, and best practices. This tool helps Language Models understand and generate high-quality Go code following established patterns and conventions.

Math-MCP

Math-MCP

Một máy chủ Giao thức Bối cảnh Mô hình (Model Context Protocol) cung cấp các hàm toán học và thống kê cơ bản cho các LLM (Mô hình Ngôn ngữ Lớn), cho phép chúng thực hiện các phép tính số học chính xác thông qua một API đơn giản.

Github Action Trigger Mcp

Github Action Trigger Mcp

Một máy chủ giao thức Model Context (Ngữ cảnh Mô hình) cho phép tích hợp với GitHub Actions, cho phép người dùng lấy các hành động khả dụng, nhận thông tin chi tiết về các hành động cụ thể, kích hoạt các sự kiện điều phối quy trình làm việc và lấy các bản phát hành kho lưu trữ.

Outlook MCP Server

Outlook MCP Server

MCP Demo

MCP Demo

Okay, I can't directly "demonstrate" an MCP (Mission Control Protocol) server in the sense of running code and showing you output here. MCP is a complex protocol often used in specialized aviation systems, and setting up a full server requires specific hardware, software, and access to aviation data feeds. However, I can provide you with a conceptual outline and code snippets to illustrate how such a server might be structured and how it would fetch aviation weather data. This will give you a good understanding of the key components and processes involved. **Conceptual Outline** 1. **Data Source:** The server needs a source of aviation weather data. Common sources include: * **NOAA Aviation Weather Center (AWC):** Provides METARs, TAFs, PIREPs, and other weather products. Data is often available via XML or other structured formats. * **Commercial Aviation Data Providers:** Companies like Jeppesen, WSI (The Weather Company), and others offer comprehensive aviation data services, often through APIs. * **Aeronautical Information Services (AIS):** National AIS providers may offer weather data as part of their services. 2. **Data Fetching:** The server needs to periodically fetch data from the chosen source. This typically involves: * **HTTP Requests:** Using libraries like `requests` (in Python) to make HTTP GET requests to the data source's API endpoints. * **Data Parsing:** Parsing the received data (e.g., XML, JSON) to extract relevant information. Libraries like `xml.etree.ElementTree` (for XML) or `json` (for JSON) are used. 3. **Data Storage (Optional):** The server might store the fetched data in a database (e.g., PostgreSQL, MySQL) or a cache (e.g., Redis) for faster access. 4. **MCP Server Implementation:** This is the core of the server. It listens for MCP requests from clients, processes those requests, and sends back responses. This involves: * **MCP Protocol Handling:** Implementing the MCP protocol itself, including message parsing, validation, and response generation. This is the most complex part, as MCP is not a standard protocol like HTTP. You'd likely need a custom library or framework for MCP. * **Request Processing:** Handling specific MCP requests related to weather data. For example, a request might ask for the current METAR for a specific airport. * **Response Generation:** Formatting the weather data into an MCP response message and sending it back to the client. 5. **Error Handling:** Robust error handling is crucial, including handling network errors, data parsing errors, and invalid MCP requests. **Illustrative Code Snippets (Python)** This is a simplified example using Python. It focuses on the data fetching and parsing aspects. Implementing the full MCP protocol is beyond the scope of a simple example. ```python import requests import xml.etree.ElementTree as ET # Configuration AW_URL = "https://www.aviationweather.gov/adds/dataserver_current/httpparam" AIRPORT_CODE = "KSFO" # San Francisco International Airport def fetch_metar(airport_code): """Fetches the METAR for a given airport from AviationWeather.gov.""" try: params = { "dataSource": "metars", "requestType": "retrieve", "format": "xml", "stationString": airport_code, "hoursBeforeNow": 1, } response = requests.get(AW_URL, params=params) response.raise_for_status() # Raise HTTPError for bad responses (4xx or 5xx) return response.text except requests.exceptions.RequestException as e: print(f"Error fetching METAR: {e}") return None def parse_metar(xml_data): """Parses the METAR XML data and extracts relevant information.""" try: root = ET.fromstring(xml_data) metar = root.find(".//METAR") if metar is None: return None station_id = metar.find("station_id").text observation_time = metar.find("observation_time").text wind_speed = metar.find("wind_speed").text wind_direction = metar.find("wind_dir_degrees").text visibility = metar.find("visibility_statute_mi").text sky_condition = metar.find(".//sky_condition") if sky_condition is not None: cloud_coverage = sky_condition.get("sky_cover") cloud_base_ft = sky_condition.get("cloud_base_ft") else: cloud_coverage = "Clear" cloud_base_ft = "N/A" return { "station_id": station_id, "observation_time": observation_time, "wind_speed": wind_speed, "wind_direction": wind_direction, "visibility": visibility, "cloud_coverage": cloud_coverage, "cloud_base_ft": cloud_base_ft, } except ET.ParseError as e: print(f"Error parsing XML: {e}") return None except AttributeError as e: print(f"Error extracting data: {e}") return None def main(): """Main function to fetch and parse the METAR.""" metar_xml = fetch_metar(AIRPORT_CODE) if metar_xml: metar_data = parse_metar(metar_xml) if metar_data: print("METAR Data:") for key, value in metar_data.items(): print(f" {key}: {value}") else: print("Failed to parse METAR data.") else: print("Failed to fetch METAR.") if __name__ == "__main__": main() ``` **Explanation:** * **`fetch_metar(airport_code)`:** This function fetches the METAR data from AviationWeather.gov using an HTTP GET request. It constructs the URL with the necessary parameters (data source, request type, format, station string, and hours before now). It handles potential network errors using `try...except`. * **`parse_metar(xml_data)`:** This function parses the XML data using `xml.etree.ElementTree`. It navigates the XML structure to extract the relevant information (station ID, observation time, wind speed, wind direction, visibility, and cloud conditions). It also includes error handling for XML parsing and data extraction. * **`main()`:** This function calls `fetch_metar` to get the XML data, then calls `parse_metar` to extract the information. Finally, it prints the extracted data. **Key Considerations for a Real MCP Server:** * **MCP Protocol Implementation:** This is the most significant challenge. You'll need to define the MCP message formats for requests and responses, and implement the logic to encode and decode these messages. You'll likely need to use sockets for network communication. * **Threading/Asynchronous Programming:** To handle multiple client requests concurrently, you'll need to use threading or asynchronous programming (e.g., `asyncio` in Python). * **Data Caching:** To improve performance, you should cache the fetched weather data. A simple in-memory cache or a more sophisticated caching system like Redis can be used. * **Security:** If the MCP server is exposed to a network, you'll need to implement security measures to protect it from unauthorized access. * **Scalability:** If you expect a large number of clients, you'll need to design the server to be scalable. This might involve using a load balancer and multiple server instances. * **Error Handling and Logging:** Comprehensive error handling and logging are essential for debugging and monitoring the server. **Example of a simplified MCP request/response (Conceptual):** **MCP Request (Client -> Server):** ``` GET_METAR KLAX\r\n ``` **MCP Response (Server -> Client):** ``` METAR KLAX 202310271200Z 30010KT 10SM CLR 20/10 A3010\r\n END\r\n ``` **Translation to Vietnamese:** **Đề cương khái niệm:** 1. **Nguồn dữ liệu:** Máy chủ cần một nguồn dữ liệu thời tiết hàng không. Các nguồn phổ biến bao gồm: * **Trung tâm Thời tiết Hàng không NOAA (AWC):** Cung cấp METAR, TAF, PIREP và các sản phẩm thời tiết khác. Dữ liệu thường có sẵn thông qua XML hoặc các định dạng có cấu trúc khác. * **Nhà cung cấp dữ liệu hàng không thương mại:** Các công ty như Jeppesen, WSI (The Weather Company) và các công ty khác cung cấp các dịch vụ dữ liệu hàng không toàn diện, thường thông qua API. * **Dịch vụ Thông tin Hàng không (AIS):** Các nhà cung cấp AIS quốc gia có thể cung cấp dữ liệu thời tiết như một phần của dịch vụ của họ. 2. **Tìm nạp dữ liệu:** Máy chủ cần định kỳ tìm nạp dữ liệu từ nguồn đã chọn. Điều này thường bao gồm: * **Yêu cầu HTTP:** Sử dụng các thư viện như `requests` (trong Python) để thực hiện các yêu cầu HTTP GET đến các điểm cuối API của nguồn dữ liệu. * **Phân tích cú pháp dữ liệu:** Phân tích cú pháp dữ liệu nhận được (ví dụ: XML, JSON) để trích xuất thông tin liên quan. Các thư viện như `xml.etree.ElementTree` (cho XML) hoặc `json` (cho JSON) được sử dụng. 3. **Lưu trữ dữ liệu (Tùy chọn):** Máy chủ có thể lưu trữ dữ liệu đã tìm nạp trong cơ sở dữ liệu (ví dụ: PostgreSQL, MySQL) hoặc bộ nhớ cache (ví dụ: Redis) để truy cập nhanh hơn. 4. **Triển khai máy chủ MCP:** Đây là cốt lõi của máy chủ. Nó lắng nghe các yêu cầu MCP từ máy khách, xử lý các yêu cầu đó và gửi lại các phản hồi. Điều này bao gồm: * **Xử lý giao thức MCP:** Triển khai giao thức MCP, bao gồm phân tích cú pháp tin nhắn, xác thực và tạo phản hồi. Đây là phần phức tạp nhất, vì MCP không phải là một giao thức tiêu chuẩn như HTTP. Bạn có thể cần một thư viện hoặc khung tùy chỉnh cho MCP. * **Xử lý yêu cầu:** Xử lý các yêu cầu MCP cụ thể liên quan đến dữ liệu thời tiết. Ví dụ: một yêu cầu có thể yêu cầu METAR hiện tại cho một sân bay cụ thể. * **Tạo phản hồi:** Định dạng dữ liệu thời tiết thành một tin nhắn phản hồi MCP và gửi lại cho máy khách. 5. **Xử lý lỗi:** Xử lý lỗi mạnh mẽ là rất quan trọng, bao gồm xử lý lỗi mạng, lỗi phân tích cú pháp dữ liệu và các yêu cầu MCP không hợp lệ. **Đoạn mã minh họa (Python):** (Xem mã Python ở trên) **Giải thích:** * **`fetch_metar(airport_code)`:** Hàm này tìm nạp dữ liệu METAR từ AviationWeather.gov bằng yêu cầu HTTP GET. Nó xây dựng URL với các tham số cần thiết (nguồn dữ liệu, loại yêu cầu, định dạng, chuỗi trạm và giờ trước bây giờ). Nó xử lý các lỗi mạng tiềm ẩn bằng cách sử dụng `try...except`. * **`parse_metar(xml_data)`:** Hàm này phân tích cú pháp dữ liệu XML bằng `xml.etree.ElementTree`. Nó điều hướng cấu trúc XML để trích xuất thông tin liên quan (ID trạm, thời gian quan sát, tốc độ gió, hướng gió, tầm nhìn và điều kiện mây). Nó cũng bao gồm xử lý lỗi cho phân tích cú pháp XML và trích xuất dữ liệu. * **`main()`:** Hàm này gọi `fetch_metar` để lấy dữ liệu XML, sau đó gọi `parse_metar` để trích xuất thông tin. Cuối cùng, nó in dữ liệu đã trích xuất. **Các cân nhắc chính cho một máy chủ MCP thực tế:** * **Triển khai giao thức MCP:** Đây là thách thức lớn nhất. Bạn sẽ cần xác định các định dạng tin nhắn MCP cho các yêu cầu và phản hồi, đồng thời triển khai logic để mã hóa và giải mã các tin nhắn này. Bạn có thể cần sử dụng ổ cắm cho giao tiếp mạng. * **Lập trình đa luồng/không đồng bộ:** Để xử lý đồng thời nhiều yêu cầu của máy khách, bạn sẽ cần sử dụng lập trình đa luồng hoặc không đồng bộ (ví dụ: `asyncio` trong Python). * **Bộ nhớ đệm dữ liệu:** Để cải thiện hiệu suất, bạn nên lưu vào bộ nhớ đệm dữ liệu thời tiết đã tìm nạp. Có thể sử dụng bộ nhớ đệm trong bộ nhớ đơn giản hoặc hệ thống bộ nhớ đệm phức tạp hơn như Redis. * **Bảo mật:** Nếu máy chủ MCP được hiển thị cho mạng, bạn sẽ cần triển khai các biện pháp bảo mật để bảo vệ nó khỏi truy cập trái phép. * **Khả năng mở rộng:** Nếu bạn mong đợi một số lượng lớn máy khách, bạn sẽ cần thiết kế máy chủ để có thể mở rộng. Điều này có thể liên quan đến việc sử dụng bộ cân bằng tải và nhiều phiên bản máy chủ. * **Xử lý lỗi và ghi nhật ký:** Xử lý lỗi và ghi nhật ký toàn diện là điều cần thiết để gỡ lỗi và giám sát máy chủ. **Ví dụ về yêu cầu/phản hồi MCP đơn giản hóa (Khái niệm):** **Yêu cầu MCP (Máy khách -> Máy chủ):** ``` GET_METAR KLAX\r\n ``` **Phản hồi MCP (Máy chủ -> Máy khách):** ``` METAR KLAX 202310271200Z 30010KT 10SM CLR 20/10 A3010\r\n END\r\n ``` **Important Notes:** * This is a simplified illustration. A real-world MCP server would be significantly more complex. * You'll need to adapt the code to your specific aviation data source and MCP protocol requirements. * Consider using a framework like Flask or FastAPI to build the server's API endpoints. This comprehensive explanation and code example should give you a solid foundation for understanding how to build an MCP server for fetching aviation weather data. Remember to focus on the MCP protocol implementation and error handling for a robust and reliable server. Good luck!

NN-GitHubTestRepo

NN-GitHubTestRepo

được tạo từ bản demo máy chủ MCP

MCP Image Generation Server

MCP Image Generation Server

Một triển khai Go của các công cụ máy chủ MCP (Model Context Protocol)

Strava MCP Server

Strava MCP Server

Một máy chủ Giao thức Bối cảnh Mô hình (Model Context Protocol) cho phép người dùng truy cập dữ liệu thể dục Strava, bao gồm các hoạt động của người dùng, chi tiết hoạt động, phân đoạn và bảng xếp hạng thông qua một giao diện API có cấu trúc.

Selector Mcp Server

Selector Mcp Server

Một máy chủ Giao thức Ngữ cảnh Mô hình (MCP) cho phép trò chuyện AI tương tác, thời gian thực với Selector AI thông qua một máy chủ có khả năng truyền phát và một ứng dụng khách dựa trên Docker giao tiếp qua stdin/stdout.

Data.gov MCP Server

Data.gov MCP Server

Gương của

Model Context Protocol (MCP)

Model Context Protocol (MCP)

The Model Context Protocol is an open standard that enables developers to build secure, two-way connections between their data sources and AI-powered tools. The architecture is straightforward: developers can either expose their data through MCP servers or build AI applications (MCP clients) that connect to these servers.

Semantic Scholar MCP Server

Semantic Scholar MCP Server

Gương của

PHP MCP Protocol Server

PHP MCP Protocol Server

Servidor MCP para PHP Universal - integra PHP com o protocolo Model Context Protocol

MySQL MCP Server

MySQL MCP Server

HANA Cloud MCP Server

HANA Cloud MCP Server

Gương của

better-auth-mcp-server MCP Server

better-auth-mcp-server MCP Server

Mirror of

repo-to-txt-mcp

repo-to-txt-mcp

Máy chủ MCP để phân tích và chuyển đổi kho lưu trữ Git thành tệp văn bản cho ngữ cảnh LLM

Google Home MCP Server

Google Home MCP Server

Mirror of

mcp-server-restart

mcp-server-restart

Mirror of

Filesystem MCP Server

Filesystem MCP Server

Máy chủ MCP FileSystem nâng cao

MCP Mistral OCR

MCP Mistral OCR

Chuyển đổi hình ảnh hoặc PDF thành văn bản bằng API Mistral OCR (có trả phí), cục bộ hoặc bằng URL.

AISDK MCP Bridge

AISDK MCP Bridge

Bridge package enabling seamless integration between Model Context Protocol (MCP) servers and AI SDK tools. Supports multiple server types, real-time communication, and TypeScript.

Wordware MCP Server

Wordware MCP Server

MailchimpMCP

MailchimpMCP

Some utilities for developing an MCP server for the Mailchimp API

MCP Server Playground

MCP Server Playground

Một máy chủ MCP dựa trên TypeScript được thiết kế để thử nghiệm và tích hợp với Calude Desktop và Cursor IDE, cung cấp một sân chơi mô-đun để mở rộng các khả năng của máy chủ.

MCP Ayd Server

MCP Ayd Server

Mirror of

Quantitative Researcher MCP Server

Quantitative Researcher MCP Server

Cung cấp các công cụ để quản lý đồ thị tri thức nghiên cứu định lượng, cho phép biểu diễn có cấu trúc các dự án nghiên cứu, tập dữ liệu, biến số, giả thuyết, kiểm định thống kê, mô hình và kết quả.

MCP 服务器示例

MCP 服务器示例

A MCP Server FastDemo with webui