清洁架构MCP服务器
模型上下文协议服务器 用于搭建和管理Next.js项目中的Clean Architecture。
🎯 特性
此MCP服务器提供3个强大的工具:
initialize_clean_architecture-建立完整的清洁建筑结构create_feature-使用所有图层生成新特征validate_architecture-检查架构违规
🚀 安装
选项1:全局安装(推荐)
# From the mcp-server directory
cd mcp-server
npm install
npm run build
npm link
# Now available globally as 'clean-architecture-mcp'选项2:本地安装
cd mcp-server
npm install
npm run build⚙️ 配置
适用于Cursor/Claude桌面
添加到MCP配置文件中:
Mac/Linux: ~/.config/cursor/mcp.json 或 ~/Library/Application Support/Claude/claude_desktop_config.json
窗户: %APPDATA%\Cursor\mcp.json 或 %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"clean-architecture": {
"command": "node",
"args": ["/absolute/path/to/mcp-server/dist/index.js"]
}
}
}或者,如果全局安装:
{
"mcpServers": {
"clean-architecture": {
"command": "clean-architecture-mcp"
}
}
}重新启动光标/Claude
配置后,重新启动Cursor或Claude Desktop以加载MCP服务器。
📚 用法
工具1:初始化架构
在Next.js项目中初始化干净的架构:
在光标聊天中:
Use the clean-architecture MCP server to initialize the project structure带参数:
Use clean-architecture to initialize with features: products, orders, customers它的作用:
- ✅ 创建完整的目录结构
- ✅ 添加.gitkeep文件
- ✅ 在每一层中创建README.md
- ✅ 更新tsconfig.json路径
- ✅ 设置域/基础设施/组件/测试文件夹
工具2:创建特征
生成一个完整的功能:
在光标聊天中:
Use clean-architecture to create a "products" feature它创造了什么:
src/domain/products/
├── models/product.ts # Zod schema
├── business-rules/ # Pure business logic
├── services/product-service.ts # Use cases
└── ports/product-repository.ts # Interface
src/infra/adapters/
└── product-repository.prisma.ts # Implementation
src/app/api/products/
├── route.ts # GET, POST
└── [id]/route.ts # GET, DELETE工具3:验证架构
检查架构违规:
在光标聊天中:
Use clean-architecture to validate the project它检查什么:
- ❌ Next.js在域层导入
- ❌ React在域层导入
- ❌ 域中直接导入Prisma
- ⚠️ 缺少端口/接口
- ⚠️ 缺少测试
输出:
{
"success": true,
"score": 100,
"issues": [],
"warnings": [],
"message": "✅ Architecture validation passed!"
}🎨 例子
示例1:新项目设置
User: Initialize Clean Architecture in this Next.js project with features: users, products, orders
AI: [Uses initialize_clean_architecture tool]
Result:
✅ Created 45 directories
✅ Created 6 README files
✅ Updated tsconfig.json
✅ Ready to develop!示例2:创建特征
User: Create a "products" feature with fields: name, price, stock
AI: [Uses create_feature tool with featureName: "products"]
Result:
✅ Created models/product.ts
✅ Created business rules
✅ Created service layer
✅ Created repository port
✅ Created Prisma adapter
✅ Created API routes示例3:验证
User: Check if my architecture follows Clean Architecture principles
AI: [Uses validate_architecture tool]
Result:
❌ Found 2 issues:
- src/domain/users/services/create-user.ts: Contains Next.js import
- src/domain/products/models/product.ts: Direct Prisma import
Score: 60/100🛠️ 发展
# Install dependencies
npm install
# Build
npm run build
# Watch mode (during development)
npm run dev
# Test the server
node dist/index.js📋 工具参考
初始化清洁架构
参数:
targetDir(可选):目标目录(默认:当前目录)features(可选):要素名称数组(默认值:['users', 'auth', 'payments'])
退货:
{
success: boolean;
message: string;
created: number;
directories: string[];
features: string[];
}create_feature
参数:
featureName(必填):烤肉串案例中的特征名称targetDir(可选):目标目录(默认:当前目录)fields(可选):自定义模型字段
退货:
{
success: boolean;
message: string;
feature: string;
created: string[];
}validate_architecture
参数:
targetDir(可选):要验证的目录(默认:当前目录)
退货:
{
success: boolean;
score: number;
issues: string[];
warnings: string[];
message: string;
}🔧 故障排除
MCP服务器未出现在游标中
- 检查配置文件路径
- 验证到的绝对路径
dist/index.js - 完全重新启动游标
- 检查游标日志:
Help > Show Logs
“找不到命令”错误
如果全局安装:
npm link
# Verify
which clean-architecture-mcpTypeScript错误
npm run build
# Check for compilation errors工具执行失败
检查你是否在Next.js项目目录中 package.json.
📦 出版
要发布到npm:
npm publish然后用户可以全局安装:
npm install -g clean-architecture-mcp-server🤝 贡献
- 在中添加新工具
src/index.ts - 更新工具架构
- 测试用
npm run build && node dist/index.js - 更新此自述文件
📄 许可证
麻省理工学院
🔗 资源
______________________________________________________________________
由以下材料制成❤️ 面向清洁建筑爱好者
