使用说明
MCP服务器工厂
一种基于Java的模型上下文协议(MCP)服务器,旨在帮助理解和构建其他MCP服务器。
项目概述
该项目既是学习工具,也是构建MCP服务器的指南。它侧重于提供:
-
了解MCP组件:
- 工具(执行操作的可执行函数)
- 资源(提供信息的数据源)
- 提示(生成响应的结构化模板)
-
模板和最佳实践 用于构建MCP服务器
特性
-
工具部分:
explain_concept-提供MCP概念的详细解释(工具、资源、提示、服务器、客户端)- 任务计划工具:
code_cleanup_planner-为代码清理目标生成任务计划feature_implementation_planner-为功能实现目标生成任务计划general_task_planner-为总体目标生成任务计划local_mcp_deployment_planner-生成部署本地MCP服务器的任务计划,其中包含关键的清理和测试步骤,这些步骤在失败时中止部署
-
资源科:
mcp://factory/documentation/{topic}-MCP主题文档(入门、最佳实践、故障排除)
-
提示部分:
tool_implementation_guide-用不同语言实现MCP工具的分步指南
建筑
MCP服务器工厂是使用以下方式构建的:
- 带Spring框架的Java(不是Spring Boot)
- log4j2日志实现
- Maven用于构建管理
遵循设计原则:
- KISS(保持简单,愚蠢)
- DRY(不要重复自己)
- YAGNI(你不需要它)
- SOLID(单责任、开闭、Liskov替换、接口隔离、依赖反转)
项目结构
-
src/main/java/user/jakecarr/-主要源代码.../config/-弹簧配置.../main/-具有主要方法的类.../model/-域模型和接口.../model/impl/-MCP组件的实现.../service/-业务逻辑和服务
-
docs/api/-API文件prompts.md-支持提示的文档resources.md-支持资源的文档tools.md-支持工具的文档
代码质量
代码库遵循高质量标准:
- 结构良好的代码 明确分离关注点
- 全面的文件 所有类和方法都有Javadoc注释
- 模块化设计 具有抽象基类和接口
- 一致的错误处理 正确记录
- 可维护架构 使用提取的方法和辅助函数
- 干净的代码实践 包括:
- 描述性命名约定
- 单一职责原则
- DRY(不要重复自己)原则
- 正确封装
建立和运行
先决条件
- Java 21或更高版本
- Maven 3.6或更高版本
- MCP Java SDK 0.8.1(位于
C:/Users/jayes/vscode/java-sdk-0.8.1/java-sdk-0.8.1.jar)
建设项目
# Clone the repository
git clone https://github.com/yourusername/mcp-server-factory.git
cd mcp-server-factory
# Build the project
mvn clean package
运行服务器
# Run the server
java -jar target/mcp-server-factory-1.0-SNAPSHOT-jar-with-dependencies.jar
运行测试
# Run the tests
mvn test
开发指南
- 核心业务逻辑不得依赖于Spring
- Spring注释仅在配置包中
- src/main/java中没有模拟
- 无递归
- 测试应包括超时
贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 运行测试
- 提交拉取请求
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。