MCP问候服务器
   
提供问候功能的模型上下文协议(MCP)服务器,使用Java 25、Gradle和Spring AI构建。
概述
此服务器实现了模型上下文协议,以提供与问候语相关的工具和资源。它可以与MCP兼容的客户端集成,为AI助手添加问候功能。
安装
来自MCP注册表
此服务器发布在 MCP注册表 可以直接安装:
使用Docker:
{
"mcpServers": {
"greeting": {
"command": "docker",
"args": ["run", "-i", "--rm", "ghcr.io/yotamfreund-eng/mcp-greeting-server:latest"]
}
}
}将此添加到您的Claude Desktop配置文件中:
- 视窗:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
来源
# Build (Windows)
gradlew.bat build
# Run
gradlew.bat bootRun
# Or use convenience scripts
scripts\build.bat
scripts\start.bat特性
- 工具:展示AI助手可以调用的问候功能
- 资源:提供问候模板和模式
- 提示:为各种场景预先配置问候提示
- 采用Spring AI构建,增强AI功能
- 容器化部署支持
技术栈
- Java:OpenJDK 25
- 构建工具:等级9.2.1
- 框架:弹簧靴3.5.7
- 春季AI:1.1.2支持MCP服务器
- 协议:模型上下文协议(MCP)
先决条件
- Java 25(OpenJDK)
- 9.2.1级或更高
安装
克隆存储库:
git clone https://github.com/yourusername/mcp-greeting-server.git
cd mcp-greeting-server建筑
使用Gradle构建项目:
./gradlew build对于Windows:
gradlew.bat build备注:如果您安装了多个Java版本,请运行 scripts\set-java-25.bat 首先在Windows上确保Java 25优先。
构建Docker/OCI镜像
服务器可以打包为Docker/OCI容器映像,以部署到MCP注册表或容器平台。
快速开始
# Build Docker image with full MCP registry labels
scripts\build-image.bat或者直接使用Gradle:
gradlew.bat buildDockerImage这使用Dockerfile,并包括所有MCP注册表元数据标签:
mcp.protocol.versionmcp.server.namemcp.server.versionmcp.transport
运行容器
使用STDIO传输(MCP注册表标准)运行:
docker run -i --rm mcp-greeting-server:latest这 --rm flag在容器停止时自动删除容器(建议用于大多数用例)。
使用HTTP/SSE传输运行:
docker run -p 8080:8080 -e SPRING_PROFILES_ACTIVE=default mcp-greeting-server:latest有关Docker的详细文档,请参阅 .
发布到MCP注册表
构建并测试Docker镜像后,您可以将其发布到MCP注册表,以便用户轻松发现和安装:
# 1. Tag for your container registry (e.g., Docker Hub)
docker tag mcp-greeting-server:1.0.0 YOUR_USERNAME/mcp-greeting-server:1.0.0
# 2. Push to registry
docker push YOUR_USERNAME/mcp-greeting-server:1.0.0
# 3. Submit to MCP Registry at https://modelcontextprotocol.io/registry有关完整的发布说明,请参阅 docs/PUBLISHING.md.
跑步
运行服务器:
./gradlew bootRun或者运行构建的JAR:
java -jar build/libs/mcp-greeting-server-1.0.0.jar发展
以开发模式运行
./gradlew bootRun --args='--spring.profiles.active=dev'运行测试
./gradlew test对于Windows:
gradlew.bat test代码覆盖率
./gradlew jacocoTestReport配置
服务器可以通过以下方式配置 application.yml 或环境变量。
配置示例
server:
port: 8080
spring:
application:
name: mcp-greeting-server
ai:
enabled: true
mcp:
server:
name: greeting
version: 1.0.0用法
MCP客户端配置
将此服务器添加到MCP客户端配置中:
{
"mcpServers": {
"greeting": {
"command": "java",
"args": ["-jar", "path/to/mcp-greeting-server/build/libs/mcp-greeting-server-1.0.0.jar"]
}
}
}可用工具
服务器提供以下工具:
greet:生成个性化问候语farewell:生成告别消息casual_greeting:生成非正式问候语
可用资源
greeting://templates:访问问候语模板greeting://styles:不同的问候风格和格式
项目结构
mcp-greeting-server/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── example/
│ │ │ └── mcpgreeting/
│ │ │ ├── McpGreetingApplication.java
│ │ │ ├── config/ # Configuration classes
│ │ │ ├── controller/ # REST controllers
│ │ │ ├── service/ # Business logic
│ │ │ ├── model/ # Domain models
│ │ │ └── mcp/ # MCP protocol implementation
│ │ └── resources/
│ │ ├── application.yml
│ │ └── templates/
│ └── test/
│ └── java/
├── scripts/ # Build and utility scripts
│ ├── build.bat # Windows build script
│ └── start.bat # Windows start script
├── docs/ # Project documentation
│ └── TESTING.md # Testing guide
├── .github/ # GitHub configuration
│ └── copilot-instructions.md
├── build/ # Build output
├── gradle/
│ └── wrapper/
├── build.gradle # Gradle build configuration
├── settings.gradle # Gradle settings
├── gradlew # Gradle wrapper (Unix)
├── gradlew.bat # Gradle wrapper (Windows)
└── README.md # This fileDocker支持
构建Docker镜像
docker build -t mcp-greeting-server:latest .使用Docker运行
docker run -p 8080:8080 mcp-greeting-server:latest贡献
欢迎投稿!请按照以下步骤操作:
- 分叉存储库
- 创建要素分支(
git checkout -b feature/amazing-feature) - 提交您的更改(
git commit -m 'Add amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
代码的风格
这个项目遵循标准的Java编码约定。请确保您的代码:
- 遵循Java命名约定
- 包括适当的Javadoc注释
- 通过所有测试和检查样式规则
故障排除
Java版本问题
问题:生成失败,出现“不支持的类文件主版本69”或Java版本错误
解决方案确保你使用的是Java 25。如果需要,将JAVA_HOME设置为JAVA 25安装:
set "JAVA_HOME=C:\path\to\your\java-25"
gradlew.bat build或者使用提供的处理环境的构建脚本:
scripts\build.batGradle Daemon问题
问题:由于缓存的守护进程问题,构建失败
解决方案:停止所有Gradle守护进程并重建:
gradlew.bat --stop
gradlew.bat clean build许可证
麻省理工学院
支持
有关问题和疑问,请在GitHub存储库中打开问题。
资源
项目文件
- 测试指导 -如何使用MCP Inspector进行测试
更新日志
版本1.0.0(2026-02-16)
- 初始版本
- 基本问候功能
- 支持多种问候风格
- Spring AI 1.1.2与MCP服务器支持集成
- 弹簧靴3.5.7
- Java 25(OpenJDK)支持
- 完整的MCP协议实施
- STDIO、SSE和HTTP传输支持
@McpTool工具定义的注释
