使用说明
LXD MCP服务器
用于管理LXD容器和虚拟机的模型上下文协议(MCP)服务器。使AI助手能够通过容器生命周期管理、图像操作和服务器监控的标准化界面与LXD进行交互。
先决条件
- LXD:必须在主机上安装并运行守护程序
- Node.js:版本20或更高
- 插座接入:服务器必须在可以访问LXD Unix套接字的LXD主机上运行
安装
选择以下方法之一安装并运行LXD MCP服务器。
以systemd服务运行(推荐)
这是生产使用的推荐方法。该服务在启动时自动运行,并处理日志记录和自动重启。
# Install the server globally
npm install -g lxd-mcp
# Copy the service file to systemd directory
sudo cp lxd-mcp.service /etc/systemd/system/
# Reload systemd to pick up the new service
sudo systemctl daemon-reload
# Start the service
sudo systemctl start lxd-mcp
# Enable auto-start on boot
sudo systemctl enable lxd-mcp
手动运行
如果您更喜欢手动运行服务器(用于开发或测试):
# Install globally
npm install -g lxd-mcp
# Run with default settings
lxd-mcp --port 3000
# Or run directly without installing
npx lxd-mcp --port 3000
⚠️ 重要提示:需要LXD组成员资格
手动运行时(不是作为systemd服务),您的用户 必须是
lxd群组 访问LXD Unix套接字。否则,您将收到“找不到LXD套接字”错误。要将您的用户添加到LXD组:
sudo usermod -a -G lxd $USER重要提示: 您必须注销并重新登录(或运行
newgrp lxd)以使组更改生效。
代理配置
LXD MCP服务器在以下位置公开HTTP端点 /mcp。配置您的AI代理以作为远程MCP服务器连接到它。
开源代码
{
"mcp": {
"servers": {
"lxd": {
"type": "remote",
"url": "http://localhost:3000/mcp",
"enabled": true,
"headers": {
"Authorization": "Bearer {env:ACCESS_TOKEN}"
}
}
}
}
}
克劳德桌面和克劳德代码
Claude通过连接器UI支持远程MCP服务器。首选 设置>连接器 在 claude.ai 添加您的服务器:
- 输入您的MCP服务器URL:
http://localhost:3000/mcp - 对于身份验证,请在高级设置中配置OAuth或API密钥
或者,使用CLI命令(仅限Claude Code):
claude mcp add --transport http lxd http://localhost:3000/mcp --env ACCESS_TOKEN="your-token"
光标
添加到您的 ~/.cursor/mcp.json:
{
"mcpServers": {
"lxd": {
"url": "http://localhost:3000/mcp",
"headers": {
"Authorization": "Bearer your-access-token"
}
}
}
}
注: 替换 http://localhost:3000/mcp 如果远程运行,则使用服务器的实际URL。
示例提示
配置后,尝试询问您的代理:
- “列出所有正在运行的LXD容器”
- “创建一个名为web服务器的新Ubuntu 22.04容器”
- “启动测试容器并在其中运行apt-get-update”
- 显示服务器资源(CPU、内存、磁盘)
- “为具有2个CPU内核和4GB内存的web服务器创建配置文件”
环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
LXD_SOCKET_PATH |
/var/snap/lxd/common/lxd/unix.socket |
LXD Unix套接字的路径 |
ACCESS_TOKEN |
(none) | API身份验证的承载令牌 |
LXD_PROJECTS |
(all) | 逗号分隔的允许项目列表 |
LOG_LEVEL |
info |
日志记录级别: debug, info, error |
PORT |
3000 |
服务器HTTP端口 |
安全
重要:由于套接字访问要求,服务器必须在LXD主机上运行。
- 集
ACCESS_TOKEN启用承载令牌身份验证(建议用于网络暴露) - 使用
LXD_PROJECTS限制对特定项目的访问 - 看 docs/security.md 获取详细的安全指南
文档
- 工具参考 -所有MCP工具定义和参数
- 配置 -环境变量、CLI标志、套接字路径
- 安全 -令牌设置、项目限制、最佳实践
- 故障排除 -常见问题和解决方案
- API 参考 -此服务器使用的LXD API终结点
许可证
MIT许可证-有关详细信息,请参阅许可证文件。
