Discover Awesome MCP Servers
Extend your agent with 12,710 capabilities via MCP servers.
- All12,710
- Developer Tools3,867
- Search1,714
- Research & Data1,557
- AI Integration Systems229
- Cloud Platforms219
- Data & App Analysis181
- Database Interaction177
- Remote Shell Execution165
- Browser Automation147
- Databases145
- Communication137
- AI Content Generation127
- OS Automation120
- Programming Docs Access109
- Content Fetching108
- Note Taking97
- File Systems96
- Version Control93
- Finance91
- Knowledge & Memory90
- Monitoring79
- Security71
- Image & Video Processing69
- Digital Note Management66
- AI Memory Systems62
- Advanced AI Reasoning59
- Git Management Tools58
- Cloud Storage51
- Entertainment & Media43
- Virtualization42
- Location Services35
- Web Automation & Stealth32
- Media Content Processing32
- Calendar Management26
- Ecommerce & Retail18
- Speech Processing18
- Customer Data Platforms16
- Travel & Transportation14
- Education & Learning Tools13
- Home Automation & IoT13
- Web Search Integration12
- Health & Wellness10
- Customer Support10
- Marketing9
- Games & Gamification8
- Google Cloud Integrations7
- Art & Culture4
- Language Translation3
- Legal & Compliance2
LibraryAI
[C#/AI] (LibraryAI/ConsoleAI) Chương trình xử lý dữ liệu và cơ sở tri thức AI
McpRails
MCP servers in your Rails app
feishu-tools-mcp
MCP server provides Feishu related operations to AI encoding agents such as cursor 飞书MCP插件
Shell MCP Server
Mirror of
ts-mcp-server
OpenWeather MCP Server
Dự báo thời tiết MCP Server để dự báo thời tiết
Browser Use MCP
mcp-edge-search
Một máy chủ Giao thức Ngữ cảnh Mô hình (Model Context Protocol - MCP) cho phép các khả năng tìm kiếm trên web cho các ứng dụng khách MCP như Claude Desktop.
MCP Host Project
Showcases how to integrate Spring AI's support for MCP (Model Context Protocol) within Spring Boot applications, covering both server-side and client-side implementations.
MCP_claude
This is to demonstrate how an MCP server can be built for Claude Desktop MCP Client
Symbol MCP Server (REST API tools)
Symbol MCP Server. (REST API tools)
Binance MCP Server
Gương của
XACHE - Crypto Trader Website
Goose AI với máy chủ MCP
Mcp Server Python
cursor_agents
Okay, I understand. You want to use the Microsoft Copilot Studio (formerly Power Virtual Agents) platform (MCP/MCS) to integrate a team of human experts into the agent flow. Here's a breakdown of how you can achieve this, along with considerations and best practices: **Core Concept: Escalation to Human Agent** The fundamental idea is to detect when the bot cannot adequately handle a user's request and then seamlessly transfer the conversation to a human agent. This is often called "escalation" or "handoff." **Steps to Integrate a Team of Experts into your Copilot Studio Flow:** 1. **Identify Escalation Triggers:** * **No Intent Match:** The bot can't understand the user's intent (e.g., no matching topic is found). This is a common trigger. * **Low Confidence Score:** The bot *thinks* it understands, but the confidence level is low. You can set a threshold (e.g., if the confidence score is below 70%, escalate). * **Negative Sentiment:** The user expresses frustration or anger. Sentiment analysis can be integrated to detect this. * **Specific Keywords/Phrases:** The user types something like "I need to talk to a person," "Speak to an agent," "Help me with a complex issue," etc. * **Looping/Repetition:** The user keeps asking the same question or getting the same answer, indicating the bot isn't resolving the issue. * **Complex Scenarios:** Certain topics or scenarios are inherently complex and require human intervention (e.g., legal advice, highly technical support). * **User Request:** The user explicitly asks to speak to a human. 2. **Configure Escalation Topics:** * **Create a Dedicated "Escalate" Topic:** This is the topic that will be triggered when an escalation condition is met. * **Add Trigger Phrases:** Add trigger phrases to this topic that align with your escalation triggers (e.g., "talk to agent," "human assistance"). Even if you're using other triggers (like no intent match), having these phrases ensures the user can *explicitly* request help. * **Escalation Message:** In the topic, display a message to the user indicating that they are being transferred to a human agent. Be clear about the process and expected wait time. Example: "Okay, I'm connecting you to a support agent now. Please wait while I find an available agent. This may take a few minutes." 3. **Choose a Handoff Method (Most Important):** This is where you connect your Copilot Studio bot to your team of experts. You have several options, each with its own pros and cons: * **Option 1: Live Agent Handoff via Microsoft Dynamics 365 Customer Service (Omnichannel for Customer Service):** * **How it works:** This is the *most integrated* and recommended approach if you're already using Dynamics 365 Customer Service. Copilot Studio can seamlessly transfer the conversation to a Dynamics 365 queue, where agents can pick it up. * **Steps:** * **Configure Omnichannel for Customer Service:** Set up your queues, routing rules, and agent profiles in Dynamics 365. * **Connect Copilot Studio to Omnichannel:** In Copilot Studio, use the "Transfer to Agent" node in your escalation topic. Select the appropriate Dynamics 365 queue. * **Context Variables:** Pass relevant context variables from the bot conversation to the agent (e.g., user's name, issue description, conversation history). This gives the agent valuable information upfront. * **Pros:** Seamless integration, rich agent experience, robust routing and queue management, detailed reporting. * **Cons:** Requires a Dynamics 365 Customer Service license. More complex setup. * **Option 2: Live Agent Handoff via Third-Party Live Chat Platforms (e.g., Zendesk, Salesforce Service Cloud, LivePerson):** * **How it works:** Many third-party live chat platforms have APIs that allow you to initiate a chat session from Copilot Studio. * **Steps:** * **Research API Documentation:** Carefully review the API documentation of your chosen live chat platform. * **Use Power Automate (Microsoft Flow):** Create a Power Automate flow that is triggered from your Copilot Studio escalation topic. This flow will use the live chat platform's API to: * Create a new chat session. * Pass the conversation history and context variables. * Redirect the user to the live chat interface (usually a URL). * **Add a "Call a Flow" Node:** In your Copilot Studio escalation topic, add a "Call a Flow" node to trigger the Power Automate flow. * **Pros:** Integrates with existing live chat platforms. * **Cons:** Requires more technical expertise (API integration, Power Automate). The integration may not be as seamless as with Dynamics 365. You'll need to manage the chat session and routing within the third-party platform. * **Option 3: Email Notification:** * **How it works:** The bot sends an email to a designated team of experts when escalation is needed. * **Steps:** * **Create a Power Automate Flow:** Create a Power Automate flow that is triggered from your Copilot Studio escalation topic. This flow will: * Compose an email with the user's information, issue description, and conversation history. * Send the email to the appropriate team email address. * **Add a "Call a Flow" Node:** In your Copilot Studio escalation topic, add a "Call a Flow" node to trigger the Power Automate flow. * **Pros:** Simple to implement. No additional licensing costs. * **Cons:** Not real-time. Slower response time. Requires manual assignment of the issue to an agent. Not ideal for urgent issues. * **Option 4: Microsoft Teams Notification:** * **How it works:** The bot sends a message to a designated Microsoft Teams channel when escalation is needed. * **Steps:** * **Create a Power Automate Flow:** Create a Power Automate flow that is triggered from your Copilot Studio escalation topic. This flow will: * Post a message to a specific Teams channel with the user's information, issue description, and conversation history. * **Add a "Call a Flow" Node:** In your Copilot Studio escalation topic, add a "Call a Flow" node to trigger the Power Automate flow. * **Pros:** Relatively simple to implement. Faster response time than email. * **Cons:** Requires manual assignment of the issue to an agent. Not ideal for urgent issues. Can be noisy if there are many escalations. 4. **Context Passing (Crucial):** * **Importance:** When you transfer the conversation, it's *essential* to pass as much context as possible to the human agent. This includes: * User's name * User's email address (if available) * Description of the issue * Conversation history (what the user has already tried with the bot) * Any relevant data collected by the bot (e.g., order number, account ID) * **How to do it:** * **Dynamics 365:** Use the "Transfer to Agent" node and map Copilot Studio variables to Dynamics 365 context variables. * **Power Automate:** Pass the variables as parameters to your Power Automate flow. The flow can then include this information in the API call to the live chat platform or in the email/Teams message. 5. **Agent Training:** * **Familiarize agents with the bot's capabilities:** Agents should understand what the bot can and cannot do. * **Train agents on how to handle escalated conversations:** They should be able to quickly understand the context of the conversation and provide effective assistance. * **Provide agents with access to the bot's analytics:** This will help them understand how the bot is performing and identify areas for improvement. 6. **Testing and Iteration:** * **Thoroughly test the escalation process:** Simulate different scenarios to ensure that the escalation triggers are working correctly and that the context is being passed to the agents. * **Monitor the performance of the escalation process:** Track metrics such as the number of escalations, the average time to resolution, and customer satisfaction. * **Continuously iterate on the bot and the escalation process:** Use the data you collect to identify areas for improvement and make changes accordingly. **Example Scenario (Using Dynamics 365):** 1. A user types "My order is late." 2. The bot tries to find the order information but fails (no intent match or low confidence). 3. The bot triggers the "Escalate" topic. 4. The "Escalate" topic displays a message: "I'm connecting you to a support agent now. Please wait." 5. The "Transfer to Agent" node in the topic transfers the conversation to the "Order Support" queue in Dynamics 365. 6. The bot passes the user's name, the phrase "My order is late," and the conversation history to Dynamics 365. 7. An agent in Dynamics 365 receives the conversation request with all the context information. **Key Considerations:** * **Licensing:** Be aware of the licensing requirements for Copilot Studio, Dynamics 365 Customer Service, and any third-party platforms you use. * **Security:** Ensure that you are handling user data securely and complying with all relevant privacy regulations. * **User Experience:** Make the escalation process as seamless as possible for the user. Provide clear communication and manage expectations. * **Agent Workload:** Monitor the workload of your human agents and adjust the bot's capabilities accordingly. The goal is to reduce the number of unnecessary escalations. * **Analytics:** Track key metrics to measure the effectiveness of your bot and the escalation process. **In summary, integrating a team of experts into your Copilot Studio flow requires careful planning and configuration. Choose the handoff method that best suits your needs and resources, and prioritize context passing to ensure a smooth and efficient experience for both the user and the agent.**
Prometheus Alertmanager MCP Server
A Model Context Protocol (MCP) server that integrates with Prometheus Alertmanager
Modes MCP Server
Mirror of
Confluence Communication Server MCP Server
Gương của
Bear MCP Server
Mirror of
NYT MCP Server
Một máy chủ Giao thức Tập trung Tin nhắn (MCP) cung cấp một giao diện thống nhất, đơn giản cho các API của tờ New York Times. Máy chủ này đơn giản hóa tương tác với nhiều API của NYT thông qua một điểm cuối duy nhất.
GenAIScript MCP Demo 🚀
Trình diễn các khả năng của MCP Server trong GenAIScript.
spring-mcp-server-sample
MCP Server Sample
dice-thrower
Postgers_MCP_for_AWS_RDS
Đây là máy chủ MCP để truy cập cơ sở dữ liệu Postgres trên AWS RDS.
Weather MCP Server
Chắc chắn, đây là một ví dụ về máy chủ MCP thời tiết bằng Python: ```python import socket import json import random import time # Cấu hình máy chủ HOST = '127.0.0.1' # Địa chỉ IP để lắng nghe (localhost) PORT = 12345 # Cổng để lắng nghe def generate_weather_data(): """Tạo dữ liệu thời tiết ngẫu nhiên.""" temperature = round(random.uniform(15, 35), 1) # Nhiệt độ từ 15 đến 35 độ C humidity = random.randint(40, 90) # Độ ẩm từ 40% đến 90% conditions = random.choice(['Sunny', 'Cloudy', 'Rainy', 'Windy']) # Các điều kiện thời tiết weather_data = { 'temperature': temperature, 'humidity': humidity, 'conditions': conditions } return weather_data def handle_client(conn, addr): """Xử lý kết nối của một máy khách.""" print(f"Đã kết nối bởi {addr}") try: while True: data = conn.recv(1024) # Nhận dữ liệu từ máy khách (tối đa 1024 byte) if not data: break # Nếu không có dữ liệu, kết thúc kết nối message = data.decode('utf-8').strip() # Giải mã dữ liệu thành chuỗi print(f"Đã nhận: {message} từ {addr}") if message.lower() == 'get_weather': weather_data = generate_weather_data() response = json.dumps(weather_data) # Chuyển đổi dữ liệu thành JSON conn.sendall(response.encode('utf-8')) # Gửi dữ liệu JSON đã mã hóa print(f"Đã gửi dữ liệu thời tiết cho {addr}") else: response = "Lệnh không hợp lệ. Hãy thử 'get_weather'." conn.sendall(response.encode('utf-8')) time.sleep(1) # Tạm dừng một chút để tránh quá tải except Exception as e: print(f"Lỗi khi xử lý máy khách: {e}") finally: conn.close() print(f"Đã đóng kết nối với {addr}") def start_server(): """Khởi động máy chủ.""" with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: s.bind((HOST, PORT)) s.listen() print(f"Máy chủ thời tiết đang lắng nghe trên {HOST}:{PORT}") while True: conn, addr = s.accept() # Chấp nhận kết nối mới handle_client(conn, addr) # Xử lý kết nối trong một hàm riêng if __name__ == "__main__": start_server() ``` **Giải thích:** 1. **Import các thư viện:** * `socket`: Để tạo và quản lý các kết nối socket. * `json`: Để mã hóa và giải mã dữ liệu JSON. * `random`: Để tạo dữ liệu thời tiết ngẫu nhiên. * `time`: Để tạm dừng chương trình. 2. **Cấu hình máy chủ:** * `HOST`: Địa chỉ IP mà máy chủ sẽ lắng nghe. `'127.0.0.1'` là localhost (chỉ có thể truy cập từ máy tính đang chạy máy chủ). * `PORT`: Cổng mà máy chủ sẽ lắng nghe. Chọn một cổng không được sử dụng bởi các ứng dụng khác. 3. **`generate_weather_data()`:** * Hàm này tạo ra một từ điển Python chứa dữ liệu thời tiết ngẫu nhiên (nhiệt độ, độ ẩm, điều kiện). * `random.uniform(15, 35)` tạo ra một số thực ngẫu nhiên trong khoảng từ 15 đến 35 (cho nhiệt độ). * `random.randint(40, 90)` tạo ra một số nguyên ngẫu nhiên trong khoảng từ 40 đến 90 (cho độ ẩm). * `random.choice(['Sunny', 'Cloudy', 'Rainy', 'Windy'])` chọn ngẫu nhiên một điều kiện thời tiết từ danh sách. 4. **`handle_client(conn, addr)`:** * Hàm này xử lý kết nối của một máy khách. * `conn`: Đối tượng socket đại diện cho kết nối với máy khách. * `addr`: Địa chỉ của máy khách (IP và cổng). * Hàm này lặp lại để nhận dữ liệu từ máy khách. * `conn.recv(1024)`: Nhận dữ liệu từ máy khách (tối đa 1024 byte). * `data.decode('utf-8')`: Giải mã dữ liệu đã nhận (thường là một chuỗi). * Nếu máy khách gửi `'get_weather'`, hàm sẽ gọi `generate_weather_data()` để lấy dữ liệu thời tiết, chuyển đổi nó thành JSON bằng `json.dumps()`, mã hóa nó thành UTF-8 và gửi lại cho máy khách bằng `conn.sendall()`. * Nếu máy khách gửi một lệnh không hợp lệ, hàm sẽ gửi một thông báo lỗi. * `conn.close()`: Đóng kết nối với máy khách khi hoàn tất. 5. **`start_server()`:** * Hàm này khởi động máy chủ. * `socket.socket(socket.AF_INET, socket.SOCK_STREAM)`: Tạo một socket TCP/IP. * `s.bind((HOST, PORT))`: Liên kết socket với địa chỉ và cổng đã chỉ định. * `s.listen()`: Bắt đầu lắng nghe các kết nối đến. * `s.accept()`: Chấp nhận một kết nối mới. Hàm này chặn cho đến khi một máy khách kết nối. * Hàm này gọi `handle_client()` để xử lý kết nối của máy khách trong một hàm riêng. * Vòng lặp `while True` cho phép máy chủ chấp nhận nhiều kết nối. 6. **`if __name__ == "__main__":`:** * Đảm bảo rằng `start_server()` chỉ được gọi khi tập lệnh được chạy trực tiếp (không phải khi nó được nhập làm mô-đun). **Cách chạy:** 1. Lưu mã trên thành một tệp, ví dụ: `weather_server.py`. 2. Mở một cửa sổ dòng lệnh hoặc terminal. 3. Điều hướng đến thư mục nơi bạn đã lưu tệp. 4. Chạy máy chủ bằng lệnh: `python weather_server.py` **Cách kiểm tra:** Bạn có thể sử dụng một ứng dụng khách socket đơn giản (ví dụ: sử dụng `netcat` hoặc một tập lệnh Python khác) để kết nối với máy chủ và yêu cầu dữ liệu thời tiết. Đây là một ví dụ về ứng dụng khách Python: ```python import socket import json HOST = '127.0.0.1' PORT = 12345 with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: s.connect((HOST, PORT)) s.sendall(b'get_weather') # Gửi yêu cầu 'get_weather' data = s.recv(1024) try: weather_data = json.loads(data.decode('utf-8')) print('Dữ liệu thời tiết đã nhận:') print(json.dumps(weather_data, indent=4)) # In JSON với thụt lề except json.JSONDecodeError: print(f"Đã nhận: {data.decode('utf-8')}") # In phản hồi nếu không phải JSON ``` Lưu mã trên thành một tệp, ví dụ: `weather_client.py`, và chạy nó trong một cửa sổ dòng lệnh hoặc terminal riêng biệt: `python weather_client.py` **Lưu ý:** * Đảm bảo rằng máy chủ đang chạy trước khi bạn chạy ứng dụng khách. * Bạn có thể thay đổi `HOST` và `PORT` trong cả máy chủ và ứng dụng khách để phù hợp với nhu cầu của bạn. * Đây là một ví dụ rất đơn giản. Trong một ứng dụng thực tế, bạn có thể muốn thêm xử lý lỗi, xác thực và các tính năng khác. * MCP (Minecraft Protocol) là một giao thức phức tạp hơn. Ví dụ này chỉ mô phỏng một máy chủ thời tiết đơn giản sử dụng socket. Để tương tác thực sự với Minecraft, bạn cần sử dụng một thư viện được thiết kế cho giao thức Minecraft.
Hello, MCP server.
Một máy chủ MCP cơ bản
Malaysia Prayer Time for Claude Desktop
Máy chủ Giao thức Ngữ cảnh Mô hình (MCP) cho dữ liệu Giờ Cầu nguyện Malaysia
spotify_mcp_server_claude
a custom mcp server built using mcp framework
SQLGenius - AI-Powered SQL Assistant
SQLGenius là một trợ lý SQL được hỗ trợ bởi AI, chuyển đổi ngôn ngữ tự nhiên thành các truy vấn SQL bằng cách sử dụng Gemini Pro của Vertex AI. Được xây dựng bằng MCP và Streamlit, nó cung cấp một giao diện trực quan để khám phá dữ liệu BigQuery với khả năng trực quan hóa và quản lý lược đồ theo thời gian thực.
MCP LLM Bridge
A Simple bridge from Ollama to a fetch url mcp server