一个用于通过AI模型(如Claude)控制TeamSpeak的Model Context Protocol (MCP) 服务器。
TeamSpeak MCP提供了多种集成方法以适应您的设置和偏好:
# 安装
uvx install teamspeak-mcp
# 使用
uvx teamspeak-mcp --host your-server.com --user your-user --password your-password
# Claude Desktop配置(CLI参数)
{
"mcpServers": {
"teamspeak": {
"command": "uvx",
"args": ["teamspeak-mcp", "--host", "your-server.com", "--user", "your-user", "--password", "your-password"]
}
}
}
💡 注意:我们使用
-e标志而不是"env": {}字段,因为Claude Desktop的环境变量处理可能不可靠。参数方法确保一致的变量传递。
# 安装
docker pull ghcr.io/marlburrow/teamspeak-mcp:latest
# Claude Desktop配置(环境变量在参数中)
{
"mcpServers": {
"teamspeak": {
"command": "docker",
"args": [
"run", "--rm", "-i",
"-e", "TEAMSPEAK_HOST=your-server.com",
"-e", "TEAMSPEAK_USER=your-user",
"-e", "TEAMSPEAK_PASSWORD=your-password",
"ghcr.io/marlburrow/teamspeak-mcp:latest"
]
}
}
}
# 安装
git clone https://github.com/MarlBurroW/teamspeak-mcp.git
cd teamspeak-mcp && pip install -r requirements.txt
# Claude Desktop配置(Python模块)
{
"mcpServers": {
"teamspeak": {
"command": "python",
"args": ["-m", "teamspeak_mcp.server", "--host", "your-server.com", "--user", "your-user", "--password", "your-password"]
}
}
}
# 安装
git clone https://github.com/MarlBurroW/teamspeak-mcp.git
cd teamspeak-mcp && docker build -t teamspeak-mcp .
# Claude Desktop配置(本地镜像)
{
"mcpServers": {
"teamspeak": {
"command": "docker",
"args": [
"run", "--rm", "-i",
"-e", "TEAMSPEAK_HOST=your-server.com",
"-e", "TEAMSPEAK_USER=yourn-user",
"-e", "TEAMSPEAK_PASSWORD=your-password",
"teamspeak-mcp"
]
}
}
}
| 使用场景 | 推荐方法 | 为什么 |
|---|---|---|
| 首次使用者 | PyPI 包 (uvx) | 最简单的设置,标准MCP模式 |
| 生产部署 | 预构建的Docker | 可靠,有版本,无依赖 |
| CI/CD环境 | 预构建的Docker | 一致,快速部署 |
| 开发/贡献 | 本地Python | 完全访问源代码 |
| 自定义修改 | 本地Docker构建 | 控制构建过程 |
| 企业环境 | 本地Docker构建 | 无外部依赖 |
最快(PyPI):
uvx install teamspeak-mcp
# 添加到Claude Desktop配置中的CLI参数
最可靠(Docker):
docker pull ghcr.io/marlburrow/teamspeak-mcp:latest
# 添加到Claude Desktop配置中的环境变量参数
最灵活(本地):
git clone https://github.com/MarlBurroW/teamspeak-mcp.git
cd teamspeak-mcp && pip install -r requirements.txt
# 添加到Claude Desktop配置中的Python模块
python install.py
python test_mcp.py
# 构建镜像
docker build -t teamspeak-mcp .
# 使用Docker测试
docker run --rm -it \
-e TEAMSPEAK_HOST=your-server.com \
-e TEAMSPEAK_USER=your-user \
-e TEAMSPEAK_PASSWORD=your-password \
teamspeak-mcp test
在使用TeamSpeak MCP之前,您需要配置TeamSpeak服务器凭据:
| 参数 | 描述 | 示例 |
|---|---|---|
| TEAMSPEAK_HOST | 您的服务器IP或域名 | ts.example.com 或 192.168.1.100 |
| TEAMSPEAK_PORT | ServerQuery端口(默认:10011) | 10011 |
| TEAMSPEAK_USER | ServerQuery用户名 | mcp_user |
| TEAMSPEAK_PASSWORD | ServerQuery密码 | secure_password123 |
| TEAMSPEAK_SERVER_ID | 虚拟服务器ID(通常为1) | 1 |
在您的TeamSpeak服务器上,确保已启用ServerQuery:
ts3server.ini:query_port=10011token=AAAA...连接到ServerQuery并创建专用用户:
# 通过telnet或putty连接到您的服务器:10011
telnet your-server.example.com 10011
# 使用管理员登录
login serveradmin YOUR_ADMIN_PASSWORD
# 为MCP创建专用用户
serverqueryadd client_login_name=mcp_user client_login_password=secure_password123
# 授予必要的权限(可选 - 根据需要调整)
servergroupaddclient sgid=6 cldbid=USER_DB_ID
# 使用我们的连接脚本测试
python test_mcp.py
# 或使用Docker
docker run --rm -it \
-e TEAMSPEAK_HOST=your-server.example.com \
-e TEAMSPEAK_USER=mcp_user \
-e TEAMSPEAK_PASSWORD=secure_password123 \
ghcr.io/marlburrow/teamspeak-mcp:latest test
对于PyPI安装:
{
"mcpServers": {
"teamspeak": {
"command": "uvx",
"args": ["teamspeak-mcp", "--host", "your-server.example.com", "--user", "mcp_user", "--password", "secure_password123"]
}
}
}
对于Docker安装:
{
"mcpServers": {
"teamspeak": {
"command": "docker",
"args": [
"run", "--rm", "-i",
"-e", "TEAMSPEAK_HOST=your-server.example.com",
"-e", "TEAMSPEAK_USER=mcp_user",
"-e", "TEAMSPEAK_PASSWORD=secure_password123",
"ghcr.io/marlburrow/teamspeak-mcp:latest"
]
}
}
}
⚠️ 安全提示:创建一个具有最小权限的专用ServerQuery用户。切勿使用您的管理员账户进行自动化工具。
一旦配置好,您可以使用这些命令与Claude交互:
set_channel_talk_power预设“静音”set_channel_talk_power预设“受监控”update_channelchannel_infoclient_info_detailedmanage_channel_permissions操作“列出”manage_channel_permissions操作“添加”update_server_settingsupdate_server_settingsmanage_user_permissions操作“添加组”manage_user_permissions操作“移除组”manage_user_permissions操作“列出组”manage_user_permissions操作“添加权限”diagnose_permissionsdiagnose_permissionsconnect_to_server : 连接到TeamSpeak服务器send_channel_message : 向频道发送消息send_private_message : 发送私信poke_client : 向用户发送提醒通知 - 比私信更吸引注意力list_clients : 列出连接的客户端list_channels : 列出频道create_channel : 创建新频道delete_channel : 删除频道move_client : 将客户端移动到另一个频道kick_client : 踢出客户端ban_client : 封禁客户端server_info : 获取服务器信息update_channel : 更新频道属性(名称、描述、密码、发言权、限制等)set_channel_talk_power : 使用预设快速设置AFK/静音/受监控频道channel_info : 获取详细的频道信息(权限、编码器、类型等)manage_channel_permissions : 细粒度权限控制(添加/删除/列出)client_info_detailed : 获取全面的客户端详情(平台、版本、状态等)update_server_settings : 更新虚拟服务器设置(名称、欢迎消息、最大客户端数、密码、主机消息、默认组)manage_user_permissions : 完整的用户权限管理(添加/删除服务器组、设置个人权限、列出分配)diagnose_permissions : 诊断当前连接权限并解决故障list_server_groups : 列出所有可用的服务器组assign_client_to_group : 将客户端添加或移除到服务器组create_server_group : 创建具有自定义设置的新服务器组manage_server_group_permissions : 管理服务器组的权限list_bans : 列出服务器上的所有活跃封禁规则manage_ban_rules : 创建、删除或管理封禁规则(基于IP、名称、UID)list_complaints : 列出针对用户的投诉search_clients : 按名称模式或唯一标识符搜索客户端find_channels : 按名称模式搜索频道list_privilege_tokens : 列出所有可用的特权密钥/令牌create_privilege_token : 创建新的特权令牌以访问服务器/频道list_files : 列出频道文件库中的文件get_file_info : 获取特定文件的详细信息manage_file_permissions : 列出和管理活动文件传输view_server_logs : 查看服务器日志中的最新条目add_log_entry : 向服务器日志添加自定义条目get_connection_info : 获取详细的连接信息create_server_snapshot : 创建服务器配置的快照deploy_server_snapshot : 部署/恢复来自快照的服务器配置# 安装开发依赖
pip install -r requirements.txt
# 运行测试
python test_m_ mcp.py
# 启动MCP服务器
python -m teamspeak_mcp.server
# 构建
docker build -t teamspeak-mcp .
# 测试
docker run --rm -it teamspeak-mcp