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 特性定义,比如服务器的版本、能力、工具、提示词等管理
相关推荐
程序员爱钓鱼3 分钟前
Go语言实战案例 — 工具开发篇:Go 实现条形码识别器
后端·google·go
期待のcode8 小时前
Spring框架1—Spring的IOC核心技术1
java·后端·spring·架构
Livingbody9 小时前
10分钟完成 ERNIE-4.5-21B-A3B-Thinking深度思考模型部署
后端
python_13610 小时前
MCP模型上下文协议以及交互流程
交互·mcp
胡萝卜的兔10 小时前
go 日志的分装和使用 Zap + lumberjack
开发语言·后端·golang
en-route10 小时前
如何在 Spring Boot 中指定不同的配置文件?
java·spring boot·后端
栀椩11 小时前
springboot配置请求日志
java·spring boot·后端
Swift社区12 小时前
如何解决 Spring Bean 循环依赖
java·后端·spring
爱吃烤鸡翅的酸菜鱼12 小时前
【Redis】常用数据结构之Hash篇:从常用命令到使用场景详解
数据结构·数据库·redis·后端·缓存·哈希算法
bobz96512 小时前
calico vxlan 模式如何实现和公有云一样的 VPC 功能?
后端