article
README
🚀 MCP 海湾码头
MCP 海湾码头是一个基于 Node.js 的应用程序,它提供了一个模型上下文协议(MCP)服务器,可用于与 Harbor 容器注册表进行交互。
🚀 快速开始
MCP 海湾码头是一个强大的工具,能让你轻松地与 Harbor 容器注册表进行交互。下面为你介绍如何快速上手。
✨ 主要特性
- 提供 MCP 协议接口,用于与 Harbor 注册表交互。
- 支持容器镜像的上传、下载和管理。
- 提供详细的错误处理和日志记录。
📦 安装指南
克隆仓库
git clone https://github.com/nomagicln/mcp-harbor.git
cd mcp-harbor
安装依赖项
npm install
构建项目
npm run build
💻 使用示例
命令行参数
运行服务器
npm start
带调试模式运行
npm start -- --debug
环境变量
设置以下环境变量以配置应用程序:
HARBOR_URL:Harbor 注册表的 URL,默认为http://localhost:80HARBOR_USERNAME:Harbor 用户名HARBOR_PASSWORD:Harbor 密码DEBUG:启用调试模式,值设为true
示例:
export HARBOR_URL=http://harbor.example.com
export HARBOR_USERNAME=admin
export HARBOR_PASSWORD=secret
📚 详细文档
项目结构
mcp-harbor
├── src
│ ├── app.ts # 应用程序主入口(MCP 服务器)
│ ├── definitions
│ │ └── tool.definitions.ts # 工具定义文件(MCP)
│ ├── services
│ │ └── harbor.service.ts # Harbor 服务实现
│ └── types
│ └── index.ts # TypeScript 类型定义
├── test
│ └── harbor.test.ts # 测试用例(Harbor 服务)
├── .env.example # 环境变量示例文件
├── .gitignore # Git 忽略文件
├── .eslintrc.json # ESLint 配置
├── package.json # 项目依赖管理
├── jest.config.js # Jest 测试框架配置
├── tsconfig.test.json # TypeScript 测试配置
├── tsconfig.json # TypeScript 主要配置
├── LICENSE # 项目许可证
└── README.md # 项目文档
🔧 技术细节
先决条件
- Node.js 18.x 或更高版本
- npm 6.x 或更高版本
- Docker 安装并运行
- Harbor 注册表实例
故障排除
常见问题
- 连接失败
错误:无法连接到 Harbor 实例
- 检查
HARBOR_URL是否正确且可访问 - 确保网络连通性
- 验证 Harbor 实例是否在运行
- 身份验证失败
错误:无效凭证
- 检查
HARBOR_USERNAME和HARBOR_PASSWORD是否正确 - 确保用户具有所需权限
- 构建错误
错误:TypeScript 编译失败
- 运行
npm install以确保所有依赖项已安装 - 检查 TypeScript 版本是否兼容
- 清除
dist目录后重新构建
调试模式
启用调试模式:
--debug
或设置环境变量:
DEBUG=true
支持
如需帮助,请参考应用程序日志。
📄 许可证
本项目采用 MIT 许可证,具体内容见 LICENSE 文件。
Scan to join WeChat group