当前位置: 首页 > news >正文

纯Java实现STDIO通信的MCP Server与客户端验证

在 MCP 协议中通过 STDIO(标准输入/输出)通信 是一种进程间通信(IPC)方式,服务器与客户端通过标准输入(stdin)和标准输出(stdout)交换数据。

关于STDIO 详细介绍以及如何基于Spring Boot项目实现 STDIO 的MCP服务器 以及如何调用和验证服务器可以参考:

基于Spring Boot实现STDIO通信的MCP Server与验证

Spring Boot 实现MCP Server相对来说更为简单,本篇介绍在不使用Spring Boot的状况下,如何实现实现 STDIO 的MCP服务器以及调用验证。

实例说明

本篇和Spring Boot篇类似,实现一个简单加法的 Tool。

简单起见,仅演示MCP的Tool的功能,为了更简单,该工具实现的功能只是一个简单的加法运算。

在实际的应用中,大模型已经具备了加法等功能,MCP的Tool的功能是为了补全不具备的功能,比如实时查询天气预报,获取内容数据等。

  • 开发工具: VS Code

项目创建

创建一个mcp-pure-java 的项目目录,增加一个 pom.xml 文件,然后创建 src 及相关的子目录,创建完成的项目结构如下:

依赖导入

这里主要导入的是io.modelcontextprotocol.sdk.mcp

        <dependency><groupId>io.modelcontextprotocol.sdk</groupId><artifactId>mcp</artifactId></dependency>

目前的最新版本是0.9.0, 使用dependencyManagement进行管理。

<dependencyManagement><dependencies><dependency><groupId>io.modelcontextprotocol.sdk</groupId><artifactId>mcp-bom</artifactId><version>0.9.0</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>

创建服务器文件

这里添加一个Main 的类,该类有一个主入口main() 方法,简单起见,该演示所有的代码都放在主函数体中。

代码实现服务器的步骤主要有:

  1. 创建服务传输程序
  2. 创建一个工具
  3. 创建同步服务器

完整的代码如下所示:

/*** Description:* Author: XM* Date: 2025-05-03*/
package com.osxm.ai.mcp.purejava;import java.io.IOException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.fasterxml.jackson.databind.ObjectMapper;
import io.modelcontextprotocol.server.McpServer;
import io.modelcontextprotocol

相关文章:

  • 普通 html 项目引入 tailwindcss
  • Go小技巧易错点100例(二十八)
  • 应用层自定义协议序列与反序列化
  • 数据赋能(209)——质量管理——时效性原则
  • 模型测试报错:有2张显卡但cuda.device_count()显示GPU卡数量只有一张
  • 昇腾的CANN是什么?跟英伟达CUDA的有什么联系和区别?【浅谈版】
  • 智能决策支持系统的系统结构:四库架构与融合范式
  • P1537 数字反转(升级版)详解
  • 【unity游戏开发入门到精通——UGUI】整体控制一个UGUI面板的淡入淡出——CanvasGroup画布组组件的使用
  • 深入探索 AAC 编码原理与 ADTS 格式:音频世界的智慧结晶
  • MCP多智能体消息传递机制(Message Passing Between Agents)
  • 注入内部Bean
  • 数据结构---
  • Scrapy框架之【settings.py文件】详解
  • Xilinx FPGA | 管脚约束 / 时序约束 / 问题解析
  • Qwen3:快慢思考融合,一键启停
  • 【Vue】性能优化与调试技巧
  • ipvsadm,是一个什么工具?
  • MySQL 中日期相减的完整指南
  • 【赵渝强老师】TiDB生态圈组件
  • 出现这几个症状,说明你真的老了
  • “名额5分钟抢完”,一场花费上万元:越野赛凭什么这么火?
  • 德雷克海峡发生6.4级地震,震源深度10千米
  • 铁路上海站迎五一假期客流最高峰,今日预计发送77万人次
  • 拍摄《我们这一代》的肖全开展“江浙沪叙事”
  • 伊朗外长:伊美第四轮间接谈判将于5月3日举行