关于 Holster
Holster 是用于在 Claude Desktop 中管理 MCP 服务配置的 Python 工具,适合希望直接通过 Claude 操作配置的用户。它可查看、创建、启用、停用和删除服务条目,并处理 JSON 配置。
主要功能
- 01管理 Claude 配置中的 MCP 服务
- 02创建和删除服务配置
- 03查看启用与停用的服务
- 04切换服务启用状态
- 05解析和写入 JSON 配置
适用场景
- 01在 Claude Desktop 中添加服务配置
- 02停用暂时不需要的服务
- 03查看当前启用和停用的服务
- 04删除不再使用的配置条目
MCP 相关
Holster 本身作为 MCP 服务运行,向 Claude 暴露管理 Claude 配置中 MCP 服务条目的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Holster
一个基于 Python 的工具,可直接通过 Claude 桌面应用管理 Claude 配置文件中的 MCP 服务,无需手动修改文本编辑器中的内容。
动机
虽然 Claude 被提示在没有必要时不要使用工具,但它往往过于积极地调用可用工具。不过,谁会想手动添加和移除 MCP 服务呢?
通过文本编辑器管理 MCP 服务非常适合交由大模型完成,但 Claude 目前只会指向配置文件。Holster 旨在通过在 Claude 桌面应用中直接提供无缝的服务管理界面,改善这一体验。
功能
- 🔄 在 Claude 桌面应用中无缝管理服务
- 📝 正确解析和编码 JSON 配置
- 📋 分别跟踪已启用和未启用的服务
- 🛠️ 简单的命令行界面
- ✅ 全面的测试覆盖
安装
- 克隆仓库:
git clone https://github.com/yourusername/holster.git
cd holster
- 创建并激活虚拟环境:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
- 使用
uv安装依赖:
uv pip install -r requirements.txt
配置
默认配置文件位置:
~/Library/Application Support/Claude/claude_desktop_config.json
将以下内容添加到你不断扩充的 MCP 服务列表中:
"holster": {
"command": "uv",
"args": [
"--directory",
"<THIS_DIRECTORY>",
"run",
"holster.py"
]
}
重启 Claude 以重新加载配置。
使用方法
了解 Holster
首先,你可以全面了解 Holster 的工作方式:
# Get detailed explanation of Holster's functionality
explanation = await explain_holster()
print(explanation["overview"])
print(explanation["tools"])
创建新服务
# Create a new server configuration
server_config = await create_server(
name="my_server",
command="uv",
directory="/path/to/server",
script="server.py"
)
查看服务状态
# Get lists of active and inactive servers
servers = await list_servers()
print("Active servers:", list(servers["active"].keys()))
print("Inactive servers:", list(servers["inactive"].keys()))
更新服务状态
# Deactivate servers
result = await update_server_status(
server_names=["server1", "server2"],
active=False
)
print(f"Deactivated {len(result['updated'])} servers")
# Activate servers
result = await update_server_status(
server_names=["server1", "server2"],
active=True
)
print(f"Activated {len(result['updated'])} servers")
删除服务
# Delete servers from both active and inactive lists
result = await delete_servers(["server1", "server2"])
print(f"Deleted {len(result['deleted'])} servers")
print(f"Remaining active: {result['remaining_active']}")
print(f"Remaining inactive: {result['remaining_inactive']}")
健康检查
# Check if Holster server is running
response = await ping()
print(response) # Should print "Pong!"
开发
运行测试
python -m pytest test_holster.py -v
范围
范围内
- 管理 Claude 配置文件中的服务配置
- 跟踪已启用和未启用的服务
- 对服务配置执行基本的增删改查操作
范围外
- 自动发现和下载服务
- 基于 Web 的服务搜索
- 工作区管理
- 服务版本管理
许可证
本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。
作者
June Kim 和 LLM 工具
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。