Discover Awesome MCP Servers
Extend your agent with 16,166 capabilities via MCP servers.
- All16,166
- 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
Unified MCP Suite
一套模型上下文协议(MCP)服务器,旨在增强人工智能代理的能力。提供媒体搜索/理解(图像、视频)、网络信息检索、PDF生成和PowerPoint演示文稿创建等工具,使代理能够与各种数据格式和外部资源进行交互。
MCP Clipboard Server
A high-performance server that provides clipboard access for AI assistants, specifically designed to solve the VSCode + WSL2 image clipboard limitation when using Claude.
ShippingTracker
한국 택배 배송 조회를 위한 MCP 서버 MCP Server for Korean Shipment Tracking
Discord Agent MCP
Provides comprehensive Discord bot automation with 71 tools for messaging, channel management, moderation, roles, members, emojis, stickers, scheduled events, auto-moderation, and application commands through AI assistants.
MCP Quickstart Weather Server
Quickstart of MCP server
Remote MCP Server Authless
A serverless implementation that allows deploying a remote Model Context Protocol server on Cloudflare Workers without authentication requirements, enabling AI models to use custom tools.
Smart Warehouse MCP Agent
Claude-powered warehouse management system that coordinates inventory, AGVs, and order processing through specialized agents using Model Context Protocol patterns.
Promethean OS MCP
A unified MCP server with composable tools for GitHub operations, file management, shell execution, kanban boards, Discord messaging, and package management. Features role-based security, HTTP/stdio transports, and a web-based development UI.
163 Email MCP Server
Enables interaction with 163 email accounts through IMAP/SMTP protocols. Supports reading unread emails, sending text/HTML emails with attachments, and saving email attachments through natural language commands.
MCP Knowledge Service
Enables semantic search and management of development knowledge including global rules, project documentation, and references through vector-based search using libSQL. Features Tailscale-secured access control and tools for searching, browsing, and organizing development resources across multiple channels.
QueryCraftMCP
A flexible Model Context Protocol server that enables LLMs to interact with database systems, supporting dynamic schema discovery and query execution across PostgreSQL and SQLite backends.
Nornir MCP Server
A FastMCP server that provides network automation tools by exposing Nornir and NAPALM operations as MCP tools, allowing users to manage and interact with network devices through compatible MCP clients.
MCP-Discord
A Discord MCP server that enables AI assistants to interact with Discord platforms, providing functionalities like sending messages, managing channels, creating forum posts, and handling webhooks.
Etherscan MCP
An MCP server that provides access to Etherscan blockchain data APIs, allowing users to query Ethereum blockchain information through natural language.
Firecrawl Simple MCP Server
用于 Firecrawl Simple 的 MCP 服务器——Firecrawl Simple 是一款网络抓取和站点地图工具,使 LLM 能够访问和处理网络内容。
Hippycampus
一个基于 LangChain 的服务器,支持动态加载 OpenAPI 规范,并通过服务器发送事件 (SSE) 传输实现与 Web 服务的自然语言交互。
MCP BaoStock Server
GOAT MCP Server
一个 MCP 服务器,将 Claude for Desktop 与区块链功能连接,允许用户通过自然语言交互来检查 EVM 和 Solana 链上的余额和发送代币。
MySQL MCP Server by CData
MySQL MCP Server by CData
skykeep-mcp-server
MCP Server for Skykeep Application
MCP Outlook - Microsoft Outlook Integration for Claude
MCP Server and CLI for Microsoft Outlook integration
Solodit MCP Server
A server that allows searching and retrieving Solodit vulnerability reports through Model Context Protocol (MCP).
macOS Notification MCP
macOS Notification MCP
Spring Ai Mcp Deepseek
好的,以下是将 Spring AI 与 MCP 服务(包括 MCP server 和 Deepseek client)整合的步骤和一些关键考虑因素: **理解 MCP 和 Deepseek** * **MCP (Model Control Plane):** 通常指的是一个用于管理、部署和监控机器学习模型的平台。它可能包含模型注册、版本控制、A/B 测试、监控等功能。 具体实现会因供应商而异。你需要了解你使用的 MCP 平台的具体 API 和协议。 * **Deepseek:** Deepseek 是一家提供大语言模型 (LLM) 服务的公司。 Deepseek Client 指的是用于与 Deepseek LLM API 交互的客户端库或 SDK。 **整合步骤 (通用指南)** 由于 MCP 和 Deepseek 的具体实现可能不同,以下是一个通用的整合指南,你需要根据你的具体环境进行调整: 1. **依赖管理:** * **Spring AI:** 在你的 `pom.xml` (Maven) 或 `build.gradle` (Gradle) 文件中添加 Spring AI 的依赖。 确保选择与你的 Spring Boot 版本兼容的 Spring AI 版本。 ```xml <!-- Maven --> <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-core</artifactId> <version>最新版本</version> <!-- 替换为实际版本 --> </dependency> <!-- 如果需要特定的 LLM 提供商集成,例如 OpenAI --> <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-openai</artifactId> <version>最新版本</version> <!-- 替换为实际版本 --> </dependency> ``` ```gradle // Gradle dependencies { implementation 'org.springframework.ai:spring-ai-core:最新版本' // 替换为实际版本 implementation 'org.springframework.ai:spring-ai-openai:最新版本' // 替换为实际版本 (如果需要) } ``` * **Deepseek Client:** 添加 Deepseek 提供的客户端库的依赖。 这可能是一个 Maven 或 Gradle 依赖,或者你需要手动下载 JAR 文件并添加到你的项目中。 查阅 Deepseek 的文档以获取正确的依赖信息。 ```xml <!-- Maven (示例,需要替换为 Deepseek 提供的实际依赖) --> <dependency> <groupId>com.deepseek</groupId> <artifactId>deepseek-client</artifactId> <version>版本号</version> <!-- 替换为实际版本 --> </dependency> ``` ```gradle // Gradle (示例,需要替换为 Deepseek 提供的实际依赖) dependencies { implementation 'com.deepseek:deepseek-client:版本号' // 替换为实际版本 } ``` * **MCP Client:** 添加 MCP 平台提供的客户端库的依赖。 这可能是一个 Maven 或 Gradle 依赖,或者你需要手动下载 JAR 文件并添加到你的项目中。 查阅 MCP 平台的文档以获取正确的依赖信息。 ```xml <!-- Maven (示例,需要替换为 MCP 提供的实际依赖) --> <dependency> <groupId>com.mcp</groupId> <artifactId>mcp-client</artifactId> <version>版本号</version> <!-- 替换为实际版本 --> </dependency> ``` ```gradle // Gradle (示例,需要替换为 MCP 提供的实际依赖) dependencies { implementation 'com.mcp:mcp-client:版本号' // 替换为实际版本 } ``` 2. **配置 Spring AI:** * **`application.properties` 或 `application.yml`:** 配置 Spring AI 以使用 Deepseek LLM。 这通常涉及设置 API 密钥、端点 URL 等。 Spring AI 可能没有直接支持 Deepseek 的集成,因此你可能需要创建一个自定义的 `ChatClient` 实现。 ```properties # application.properties (示例,需要根据 Deepseek 的要求进行调整) spring.ai.deepseek.api-key=你的Deepseek API密钥 spring.ai.deepseek.base-url=Deepseek API 的基本 URL ``` ```yaml # application.yml (示例,需要根据 Deepseek 的要求进行调整) spring: ai: deepseek: api-key: 你的Deepseek API密钥 base-url: Deepseek API 的基本 URL ``` 3. **创建自定义 `ChatClient` (如果 Spring AI 没有直接支持):** * 如果 Spring AI 没有内置的 Deepseek 集成,你需要创建一个自定义的 `ChatClient` 实现。 这涉及实现 `ChatClient` 接口,并使用 Deepseek Client 与 Deepseek API 进行交互。 ```java import org.springframework.ai.chat.ChatClient; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.prompt.Prompt; import com.deepseek.client.DeepseekApiClient; // 假设的 Deepseek Client 类 public class DeepseekChatClient implements ChatClient { private final DeepseekApiClient deepseekApiClient; public DeepseekChatClient(DeepseekApiClient deepseekApiClient) { this.deepseekApiClient = deepseekApiClient; } @Override public ChatResponse call(Prompt prompt) { // 1. 将 Spring AI 的 Prompt 转换为 Deepseek API 期望的格式 String deepseekPrompt = convertToDeepseekPrompt(prompt); // 2. 使用 Deepseek Client 调用 Deepseek API String deepseekResponse = deepseekApiClient.generate(deepseekPrompt); // 3. 将 Deepseek API 的响应转换为 Spring AI 的 ChatResponse ChatResponse chatResponse = convertToChatResponse(deepseekResponse); return chatResponse; } // 实现 convertToDeepseekPrompt 和 convertToChatResponse 方法 private String convertToDeepseekPrompt(Prompt prompt) { // 将 Spring AI 的 Prompt 对象转换为 Deepseek API 期望的字符串格式 // 这可能涉及提取消息、角色等信息,并将其格式化为 Deepseek API 要求的 JSON 或其他格式 return "Deepseek 格式的 Prompt"; } private ChatResponse convertToChatResponse(String deepseekResponse) { // 将 Deepseek API 返回的字符串响应转换为 Spring AI 的 ChatResponse 对象 // 这可能涉及解析 JSON 响应,提取文本内容,并将其封装到 ChatResponse 中 return new ChatResponse("Spring AI 格式的 ChatResponse"); } } ``` 4. **配置 MCP 集成:** * **获取模型信息:** 使用 MCP Client 从 MCP server 获取 Deepseek 模型的部署信息,例如端点 URL、模型版本等。 * **动态配置:** 根据从 MCP 获取的信息,动态配置 DeepseekChatClient 的连接参数。 这允许你根据 MCP 的管理来切换模型版本或端点。 ```java import com.mcp.client.McpClient; // 假设的 MCP Client 类 import com.mcp.client.ModelInfo; @Configuration public class AiConfig { @Autowired private McpClient mcpClient; @Bean public DeepseekChatClient deepseekChatClient() { // 从 MCP 获取模型信息 ModelInfo modelInfo = mcpClient.getModelInfo("deepseek-model"); // 替换为你的模型名称 // 根据模型信息配置 DeepseekApiClient DeepseekApiClient deepseekApiClient = new DeepseekApiClient(modelInfo.getEndpointUrl(), modelInfo.getVersion()); // 假设的 DeepseekApiClient 构造函数 // 创建 DeepseekChatClient return new DeepseekChatClient(deepseekApiClient); } } ``` 5. **使用 Spring AI:** * 在你的 Spring 组件中注入 `ChatClient` (或 `DeepseekChatClient`),并使用它来与 Deepseek LLM 进行交互。 ```java import org.springframework.ai.chat.ChatClient; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class MyService { @Autowired private ChatClient chatClient; // 或者 DeepseekChatClient public String generateResponse(String userPrompt) { Prompt prompt = new Prompt(userPrompt); ChatResponse response = chatClient.call(prompt); return response.getResult().getOutput().getContent(); } } ``` **关键考虑因素:** * **Deepseek Client API:** 仔细阅读 Deepseek Client 的文档,了解如何使用它来与 Deepseek API 进行交互。 你需要了解如何构建请求、处理响应、处理错误等。 * **MCP API:** 仔细阅读 MCP 平台的文档,了解如何使用 MCP Client 获取模型信息。 你需要了解如何认证、查询模型信息、处理错误等。 * **数据格式转换:** Spring AI 的 `Prompt` 和 `ChatResponse` 对象可能与 Deepseek API 期望的格式不同。 你需要实现适当的转换逻辑。 * **错误处理:** 实现健壮的错误处理机制,以处理 Deepseek API 和 MCP API 的错误。 * **安全性:** 安全地存储和管理 API 密钥和其他敏感信息。 考虑使用 Spring Cloud Config 或其他配置管理工具。 * **异步处理:** 如果 Deepseek API 调用是耗时的,考虑使用异步处理来避免阻塞你的应用程序。 可以使用 Spring 的 `@Async` 注解或 Reactive Streams。 * **监控和日志:** 添加监控和日志记录,以便跟踪 API 调用、性能和错误。 * **Spring AI 版本:** 确保你使用的 Spring AI 版本与你的 Spring Boot 版本兼容。 * **依赖冲突:** 注意依赖冲突,特别是当使用多个第三方库时。 **示例代码 (更详细的示例,但仍然需要根据你的具体环境进行调整):** ```java // DeepseekChatClient.java import org.springframework.ai.chat.ChatClient; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.util.Assert; import java.util.List; import java.util.Map; public class DeepseekChatClient implements ChatClient { private final DeepseekApi deepseekApi; public DeepseekChatClient(DeepseekApi deepseekApi) { Assert.notNull(deepseekApi, "DeepseekApi must not be null"); this.deepseekApi = deepseekApi; } @Override public ChatResponse call(Prompt prompt) { DeepseekApi.ChatCompletionRequest request = createRequest(prompt); DeepseekApi.ChatCompletionResponse response = this.deepseekApi.chatCompletion(request); return convertResponse(response); } private DeepseekApi.ChatCompletionRequest createRequest(Prompt prompt) { List<DeepseekApi.ChatMessage> messages = prompt.getInstructions().stream() .map(i -> new DeepseekApi.ChatMessage(i.getRole().name().toLowerCase(), i.getContent())).toList(); return new DeepseekApi.ChatCompletionRequest(messages); } private ChatResponse convertResponse(DeepseekApi.ChatCompletionResponse response) { Generation generation = new Generation(response.choices().get(0).message().content()); return new ChatResponse(List.of(generation)); } // 内部接口,用于模拟 Deepseek API 客户端 interface DeepseekApi { ChatCompletionResponse chatCompletion(ChatCompletionRequest request); record ChatCompletionRequest(List<ChatMessage> messages) { } record ChatMessage(String role, String content) { } record ChatCompletionResponse(List<Choice> choices) { } record Choice(ChatMessage message) { } } // 模拟 Deepseek API 客户端实现 @org.springframework.stereotype.Component static class DeepseekApiClient implements DeepseekApi { @org.springframework.beans.factory.annotation.Value("${deepseek.api.key}") private String apiKey; @Override public ChatCompletionResponse chatCompletion(ChatCompletionRequest request) { // 实际调用 Deepseek API 的代码 // 需要使用 Deepseek 提供的 SDK 或 HTTP 客户端 // 这里只是一个模拟实现 String responseContent = "模拟 Deepseek API 响应: " + request.messages().get(0).content(); ChatMessage chatMessage = new ChatMessage("assistant", responseContent); Choice choice = new Choice(chatMessage); ChatCompletionResponse response = new ChatCompletionResponse(List.of(choice)); return response; } } // 示例配置 @org.springframework.context.annotation.Configuration static class DeepseekConfig { @org.springframework.context.annotation.Bean public DeepseekChatClient deepseekChatClient(DeepseekApi deepseekApi) { return new DeepseekChatClient(deepseekApi); } } public static void main(String[] args) { // 示例用法 org.springframework.context.annotation.AnnotationConfigApplicationContext context = new org.springframework.context.annotation.AnnotationConfigApplicationContext(DeepseekConfig.class); ChatClient chatClient = context.getBean(ChatClient.class); PromptTemplate promptTemplate = new PromptTemplate("请用中文回答: {question}"); Prompt prompt = promptTemplate.create(Map.of("question", "What is Spring AI?")); ChatResponse response = chatClient.call(prompt); System.out.println("Response: " + response.getResult().getOutput().getContent()); } } ``` **总结** 整合 Spring AI 与 MCP 和 Deepseek 需要仔细的规划和实施。 你需要了解每个组件的 API 和协议,并实现适当的转换和错误处理逻辑。 希望这些步骤和考虑因素能帮助你成功地整合这些服务。 请务必查阅 Deepseek 和 MCP 平台的官方文档以获取更详细的信息。
MCP Server SSH Client
OpenAPI MCP Server
A server that implements the Model Context Protocol (MCP) with StreamableHTTP transport, enabling standardized interaction with model services through a RESTful API interface.
PostgreSQL Read-Only MCP Server
A secure MCP server that enables querying PostgreSQL databases through an SSH tunnel with enforced read-only access, connection pooling, and comprehensive data exploration tools.
Enjin API Tool MCP Server
一个允许与 Enjin 平台 API 交互的 MCP 服务器。
LangChain MCP
MCP Hub Documentation
MCP Hub 是一个综合框架,用于构建、管理和部署模型上下文协议 (MCP) 客户端和服务器。它提供工具和配置,以实现端到端 MCP 工作流程的无缝集成和执行。