MCP:基于Java SDK 实现一个 Mcp Server

在上一篇文章中介绍了 Java SDK Client 源码,并实现一个 Mcp Client 调用现成的 @modelcontextprotocol/server-filesystem,本文将实现一个 Mcp Server。

什么 Mcp Server

Mcp Server 是一个轻量级程序,每个程序都通过标准化的 Model Context Protocol 公开特定功能。可以向Mcp Client 三项核心能力 tools、resources 以及 templates。

Mcp Server 三项核心能力

能力 说明
tools 工具,提供给应用使用
resources 资源,提供数据,提供给大模型使用,比如数据库、文件等
templates 模版,提供给用户使用

Mcp Server 提供通信方式

  • stdio
  • sse

Java SDK 源码

  • transport 通信协议
    • HttpServletSseServerTransport sse方式
    • StdioServerTransport 本地标准方式
  • Mcp Server Mcp server 通用接口 内部 AsyncSpec 和 SyncSpec 类分别创建异步和同步 Mcp Server
  • McpAsyncServer 创建异步 mcp server
  • McpSyncServer 创建同步 mcp server
  • McpServerFeatures Mcp Server 特性定义,比如服务器的版本、能力、工具、提示词等管理
相关推荐
无名之逆11 分钟前
Hyperlane:轻量、高效、安全的 Rust Web 框架新选择
开发语言·前端·后端·安全·rust·github·ssl
Asthenia041213 分钟前
当Spring服务接入ElasticSearch:如何优雅的CRUD呢?
后端
小诸葛的博客26 分钟前
开发一个go模块并在其他项目中引入
开发语言·后端·golang
Emma歌小白26 分钟前
初步使用UML设计代码结构
后端
剽悍一小兔1 小时前
Java8默认方法の终极奥义
后端
Emma歌小白1 小时前
UML(Unified Modeling Language,统一建模语言)应用方向
后端
雷渊1 小时前
mybatis底层为什么设计二层缓存?
java·后端·面试
祝瑾萱1 小时前
Go语言的负载均衡
开发语言·后端·golang
qq_13948428821 小时前
springboot441-基于SpringBoot的校园自助交易系统(源码+数据库+纯前后端分离+部署讲解等)
java·spring boot·后端·mysql·spring·vue·intellij-idea
耿玉1 小时前
大模型应用中我们为什么需要MCP
前端·deepseek·mcp