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 特性定义,比如服务器的版本、能力、工具、提示词等管理
相关推荐
vx_bscxy3221 分钟前
springboot排课系统 -计算机毕业设计源码-23791
spring boot·后端·课程设计
南雨北斗20 分钟前
linux上TP6安装PHPMailer
后端
掘金一周21 分钟前
Figma Dev Mode MCP:大人,时代变了 | 掘金一周7.10
前端·人工智能·mcp
大菠萝学姐1 小时前
基于Spring Boot和Vue的高校图书馆座位预约系统的设计与实现
java·vue.js·spring boot·后端·python·mysql·vue
南雨北斗1 小时前
PHP fileinfo扩展的作用
后端
Re2751 小时前
快速理解Spring Bean 实例化与初始化全过程
后端·spring
paopaokaka_luck3 小时前
基于Spring Boot+Vue的DIY手工社预约管理系统(Echarts图形化、腾讯地图API)
java·spring boot·后端
kk_stoper3 小时前
使用Ruby接入实时行情API教程
java·开发语言·javascript·数据结构·后端·python·ruby
我会冲击波3 小时前
告别flag与status:如何为你的布尔值(boolean)变量优雅命名?
java·后端
工藤学编程3 小时前
分库分表之实战-sharding-JDBC水平分库+分表后:查询与删除操作实战
数据库·spring boot·后端·sql·mysql