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 特性定义,比如服务器的版本、能力、工具、提示词等管理
相关推荐
caihuayuan54 小时前
升级element-ui步骤
java·大数据·spring boot·后端·课程设计
Kookoos6 小时前
ABP vNext + EF Core 实战性能调优指南
数据库·后端·c#·.net·.netcore
揣晓丹7 小时前
JAVA实战开源项目:健身房管理系统 (Vue+SpringBoot) 附源码
java·vue.js·spring boot·后端·开源
豌豆花下猫8 小时前
Python 3.14 新特性盘点,更新了些什么?
后端·python·ai
caihuayuan59 小时前
Vue生命周期&脚手架工程&Element-UI
java·大数据·spring boot·后端·课程设计
明月与玄武12 小时前
Spring Boot中的拦截器!
java·spring boot·后端
菲兹园长12 小时前
SpringBoot统一功能处理
java·spring boot·后端
muxue17812 小时前
go语言封装、继承与多态:
开发语言·后端·golang
开心码农1号12 小时前
Go语言中 源文件开头的 // +build 注释的用法
开发语言·后端·golang
北极象12 小时前
Go主要里程碑版本及其新增特性
开发语言·后端·golang