一个完整的 MCP(Model Context Protocol)工具管理系统,包含前后端完整功能。
- 🔐 用户认证系统(默认管理员账号:admin/123456)
- 🛠️ MCP 服务管理
- 🧰 MCP 工具管理(工具名称、提示词等)
- 🔒 MCP 权限管理(IP 白名单/黑名单、调用频率限制)
- 📊 调用日志记录和统计分析
- 📈 数据可视化(柱状图、饼图、折线图)
- 👥 用户管理
- 🎯 系统监控和性能分析
- Go 1.21+
- Gin Web Framework
- GORM (MySQL)
- JWT 认证
- CORS 支持
- Vue 3
- Element Plus UI
- Pinia 状态管理
- Vue Router
- ECharts 图表库
- Axios HTTP 客户端
- MySQL (数据库名:aatest03)
mcptoolsmanager/
├── main.go # 后端入口文件
├── config/ # 配置文件
├── database/ # 数据库初始化
├── models/ # 数据模型
├── handlers/ # API 处理器
├── middleware/ # 中间件
├── routes/ # 路由配置
├── utils/ # 工具函数
├── frontend/ # 前端代码
│ ├── src/
│ │ ├── views/ # 页面组件
│ │ ├── layout/ # 布局组件
│ │ ├── stores/ # Pinia 状态
│ │ ├── router/ # 路由配置
│ │ └── api/ # API 封装
│ ├── package.json
│ └── vite.config.js
└── README.md
默认数据库连接:
Host: 10.212.81.208:3306
Database: aatest03
Username: root
Password: test.123确保 MySQL 服务正在运行,并创建数据库:
CREATE DATABASE aatest03 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;使用提供的启动脚本一键启动所有服务:
# 启动所有服务(后端 + 前端)
./start-all.sh
# 停止所有服务
./stop-all.sh启动成功后:
- 前端地址:http://localhost:33333
- 后端地址:http://localhost:8080
- 默认账号:admin / 123456
# 清理旧的构建
rm -f mcp-server
# 构建后端二进制文件
unset GOROOT
go build -o mcp-server .# 直接运行
./mcp-server
# 或者使用 go run
go run main.go后端服务将在 http://localhost:8080 启动
如果数据库连接失败,系统会自动切换到 Mock 模式运行。
cd frontend
# 开发模式
npm run dev
# 或者构建生产版本
npm run build
npm run preview前端应用将在 http://localhost:33333 启动
系统初始化时会创建默认管理员账户:
- 用户名:
admin - 密码:
123456
POST /api/v1/auth/login- 用户登录
GET /api/v1/services- 获取服务列表POST /api/v1/services- 创建服务GET /api/v1/services/:id- 获取服务详情PUT /api/v1/services/:id- 更新服务DELETE /api/v1/services/:id- 删除服务
GET /api/v1/tools- 获取工具列表POST /api/v1/tools- 创建工具GET /api/v1/tools/:id- 获取工具详情PUT /api/v1/tools/:id- 更新工具DELETE /api/v1/tools/:id- 删除工具
GET /api/v1/permissions- 获取权限列表POST /api/v1/permissions- 创建权限规则PUT /api/v1/permissions/:id- 更新权限规则DELETE /api/v1/permissions/:id- 删除权限规则
GET /api/v1/logs- 获取调用日志POST /api/v1/logs- 记录调用日志GET /api/v1/logs/export- 导出日志
GET /api/v1/stats/dashboard- 仪表盘数据GET /api/v1/stats/services- 服务统计GET /api/v1/stats/tools- 工具统计GET /api/v1/stats/trends- 调用趋势
- 系统概览统计
- 服务调用图表
- 工具使用排行
- 调用趋势分析
- 创建和管理 MCP 服务
- 配置服务端点和参数
- 监控服务状态和性能
- 管理工具名称和描述
- 配置工具提示词
- 参数定义和验证
- IP 白名单/黑名单配置
- 调用频率限制
- 服务访问控制
- 详细调用记录
- 日志搜索和过滤
- 性能监控和分析
- 多维度数据分析
- 可视化图表展示
- 报告导出功能
系统首次启动时会自动创建:
- 1 个管理员账户(admin/123456)
- 20+ 个 MCP 服务示例
- 20+ 个 MCP 工具示例
- 19 条权限配置
- 100 条调用日志记录
可以通过环境变量自定义配置:
# 服务端口
PORT=8080
# 数据库连接
DATABASE_DSN=root:password@tcp(localhost:3306)/aatest03?charset=utf8mb4&parseTime=True&loc=Local
# JWT 密钥
JWT_SECRET=your-secret-key- 在
models/中定义数据模型 - 在
handlers/中实现 API 处理器 - 在
routes/中配置路由 - 在前端创建相应的页面组件
使用 GORM 的 AutoMigrate 功能自动处理数据库结构更新。
MIT License