MCP服务器与客户端开发指南

MCP服务器与客户端开发指南

指导如何使用Java创建基于MCP协议的服务器和客户端。

快速入门

安装

在 Maven 项目中添加以下依赖:

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

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

创建同步客户端

  1. 初始化 McpSyncClient
  2. 使用 readResourcecallTool 调用资源或工具。
  3. 关闭客户端连接。

示例代码:

McpSyncClient client = McpClient.sync(transport)
    .clientInfo(new McpSchema.Implementation("example-client", "1.0.0"))
    .build();

try {
    McpSchema.ReadResourceResult result = client.readResource(new McpSchema.ReadResourceRequest("example://resource"));
    System.out.println(result.contents());
} finally {
    client.close();
}

创建同步服务器

  1. 初始化 McpSyncServer
  2. 注册工具或资源处理逻辑。
  3. 启动服务器。

示例代码:

McpSyncServer server = McpServer.sync(transportProvider)
    .serverInfo(new McpSchema.Implementation("example-server", "1.0.0"))
    .tool(
        new McpSchema.Tool("example-tool", "An example tool", createToolSchema()),
        (exchange, toolArgs) -> {
            return new McpSchema.CallToolResult(List.of(new McpSchema.TextContent("result")), false);
        }
    )
    .build();

System.err.println("Server started");

更多详细信息,请参考文档中的完整实现示例。