项目简介
LivChat Setup提供了一个强大的自动化平台,允许用户通过简单的AI对话来创建、配置、部署和管理云服务器及其上的应用。它将复杂的服务器管理任务抽象为自然语言指令,并通过Model Context Protocol (MCP) 对接大型语言模型(LLM),实现智能控制。后端核心逻辑由Python FastAPI构建,MCP接口则由TypeScript实现。
主要功能点
- AI控制: 通过Claude等LLM客户端,以对话方式管理服务器和应用。
- 一键部署: 支持部署完整的应用栈,如N8N、Portainer、Chatwoot等,并自动处理依赖。
- 自动化依赖管理: 部署应用时,自动识别并安装所需的数据库(如PostgreSQL、Redis)。
- DNS自动化配置: 自动为应用配置域名和SSL证书(通过Traefik和Cloudflare集成)。
- 云服务商集成: 支持Hetzner等云服务商的服务器创建和管理。
- 持久化状态与密钥管理: 使用Ansible Vault安全存储API密钥和敏感信息,并持久化服务器部署状态。
- 异步任务与日志追踪: 后台执行长时间任务,并提供进度和详细日志追踪。
安装步骤
- 安装Python依赖(作为后端API):
pip install livchat-setup - 启动后端API服务器:
这将启动一个FastAPI服务器,默认运行在 'http://127.0.0.1:8000'。livchat-setup serve - 安装MCP服务器(Node.js环境):
请确保你的系统已安装Node.js和npm。npm install -g @pedrohnas/livchat-setup-mcp
MCP客户端服务器配置
在你的MCP客户端(如Claude Desktop)的配置文件(通常是 'claude_desktop_config.json')中,添加以下JSON配置来注册LivChat Setup作为MCP服务器:
{ "mcpServers": { "livchat-setup": { "command": "npx", "args": [ "@pedrohnas/livchat-setup-mcp" ], "description": "通过AI自然语言指令管理云服务器和部署应用,支持创建、配置、删除服务器,部署PostgreSQL、Redis、N8N等应用,以及管理Cloudflare DNS和加密密钥。" } } }
- '"livchat-setup"': 这是你在MCP客户端中识别此服务器的名称。
- '"command": "npx"': 用于启动MCP服务器的命令。'npx' 是Node.js包运行器,可以直接运行npm包中的可执行文件。
- '"args": ["@pedrohnas/livchat-setup-mcp"]': 传递给 'npx' 命令的参数,这里是LivChat Setup MCP服务器的npm包名。
- '"description"': 对该MCP服务器功能的简要描述,LLM客户端会根据此描述了解其能力和用途。
环境变量配置提示:
- 如果你的LivChat Setup后端API服务器不在默认地址 ('http://127.0.0.1:8000') 运行,你需要在启动MCP服务器前设置 'LIVCHAT_API_URL' 环境变量。例如: 'LIVCHAT_API_URL=http://your_api_host:your_api_port npx @pedrohnas/livchat-setup-mcp'
- 如果你的后端API服务器需要API Key进行认证,你需要在启动MCP服务器前设置 'LIVCHAT_API_KEY' 环境变量。
基本使用方法
配置完成后,你可以在支持MCP的LLM客户端中直接使用自然语言指令与LivChat Setup MCP服务器交互。以下是一些常用指令示例:
- 列出可用云服务商信息: 'get provider info for hetzner all'
- 设置Hetzner API Token: 'manage secrets set key='hetzner_token' value='YOUR_HETZNER_API_TOKEN''
- 创建新的云服务器: 'create server name='prod-server-01' server_type='cx21' region='nbg1''
- 查看所有已管理服务器: 'list servers'
- 配置服务器的DNS信息: 'update server dns server_name='prod-server-01' zone_name='example.com' subdomain='prod''
- 执行服务器基础设置(包括Docker、Swarm和DNS配置): 'setup server name='prod-server-01' zone_name='example.com' subdomain='prod' ssl_email='[email protected]''
- 部署N8N应用(会自动安装PostgreSQL和Redis): 'deploy app app_name='n8n' server_name='prod-server-01' environment={'N8N_BASIC_AUTH_USER': 'admin', 'N8N_BASIC_AUTH_PASSWORD': 'mypassword'}'
- 列出服务器上已部署的应用: 'list deployed apps server_name='prod-server-01''
- 查看任务状态: 'get job status job_id='create_server-abc123''
- 删除云服务器: 'delete server server_name='prod-server-01' confirm=true'
信息
分类
开发者工具