天气数据服务

一个基于Java MCP SDK实现的天气数据服务,通过Open-Meteo API提供实时天气数据查询功能。

  • by alwin-joseph
  • Java
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 alwin-joseph/weather-mcp-demo

使用说明

天气mcp演示

使用java MCP SDK实现和验证天气MCP服务器

实现细节

该服务器使用io.modelcontextprotocol.sdk 0.17.1版本在Java中实现。它公开了一个单独的工具get-weather,该工具接受城市名称,并使用Open-Meteo API返回实时天气数据。

关键文件

pom.xml:带有MCP SDK和Jackson依赖关系的Maven配置。 WeatherMcpServer.java:主服务器应用程序。它使用java.net.http。HttpClient从api.open-meo.com获取天气数据。 VerifyClient.java:一个使用StdioClientTransport测试服务器的java验证客户端。

验证

使用自定义Java客户端验证服务器,该客户端生成服务器进程,并使用MCP合规性/客户端SDK通过标准I/O进行通信。

执行的步骤

构建:该项目被打包成一个可执行的JAR文件。

mvn清洁包

验证运行:

VerifyClient执行了以下步骤:

将服务器JAR作为子进程启动。 已初始化MCP连接。 列出可用工具(查找获取天气)。 调用获取天气参数城市=“巴黎”。 收到实时天气数据。

Claude桌面验证

在Claude Desktop中使用MCP客户端(REAL AI)进行测试

  • 在~/库/应用支持/Claude/Claude_desktop_config json中配置MCP
  • 添加MCP服务器: { “mcpServers”:{ “天气mcp”:{ “command”:“java”, “args”:[ “-罐子”, “/AABSOLUTE_PATH/weather-mcp/target/weather-mcp-1.0-SNAPSHOT.jar” ] } } }
  • 重新启动克劳德桌面
  • 在Claude Chat中测试 问:新加坡的天气怎么样 克劳德将:

了解您的MCP工具并提供新加坡的天气。