这是一个模型上下文协议(MCP)服务器,它允许 Claude Desktop(或任何 MCP 客户端)通过 TrueNAS API 与 TrueNAS Core 系统进行交互。
git clone https://github.com/vespo92/TrueNasCoreMCP.git
cd truenas-core-mcp
python -m venv venv
# 在 Windows 上:
venv\Scripts\activate
# 在 Linux/Mac 上:
source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# 使用你的 TrueNAS 详细信息编辑 .env 文件
编辑 .env 文件,填入你的 TrueNAS 连接详细信息:
TRUENAS_URL=https://192.168.1.100 # 你的 TrueNAS IP 地址或主机名
TRUENAS_API_KEY=1-your-api-key-here
TRUENAS_VERIFY_SSL=false # 如果使用有效的 SSL 证书,请设置为 true
python truenas_mcp_server.py
claude_desktop_config.json 文件中:{
"mcpServers": {
"truenas": {
"command": "python",
"args": [
"C:\\path\\to\\truenas_mcp_server.py"
],
"env": {
"TRUENAS_URL": "https://your-truenas-ip",
"TRUENAS_API_KEY": "your-api-key",
"TRUENAS_VERIFY_SSL": "false"
}
}
}
}
list_users() - 列出系统中的所有用户get_user(username) - 获取特定用户的详细信息get_system_info() - 获取 TrueNAS 系统信息list_pools() - 列出所有存储池list_datasets() - 列出所有数据集get_pool_status(pool_name) - 获取特定存储池的详细状态create_dataset(pool, name, compression="lz4", quota=None) - 创建一个新的数据集list_smb_shares() - 列出所有 SMB 共享create_smb_share(path, name, comment="", read_only=False) - 创建一个新的 SMB 共享create_snapshot(dataset, name, recursive=False) - 创建一个 ZFS 快照配置完成后,你可以向 Claude 提出以下请求:
TRUENAS_VERIFY_SSL 设置为 false。本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。