该项目实现了一个独立开发的CipherTrust MCP(模型上下文协议)服务器,允许像Claude或Cursor这样的AI助手通过ksctl CLI与CipherTrust Manager资源进行交互。
这是一个独立的开源项目。请注意:
如需官方CipherTrust Manager支持,请直接联系Thales。
MCP服务器提供了一组工具和端点,供客户端(例如Claude Desktop和Cursor)与CipherTrust资源进行交互。支持的操作包括:
优点:
如果您在Windows上没有安装Git,请按照以下步骤操作:
winget install --id Git.Git -e --source winget
git --version
您应该能看到已安装的Git版本。# 以管理员身份打开PowerShell(可选)
cd $env:USERPROFILE\Downloads
Invoke-WebRequest -Uri "https://www.python.org/ftp/python/3.12.4/python-3.12.4-amd64.exe" -OutFile "python-installer.exe"
.\python-installer.exe /quiet InstallAllUsers=1 PrependPath=1 Include_test=0
打开一个新的终端并运行:
python --version
pip --version
pip install uv
uv --version
git clone https://github.com/sanyambassi/ciphertrust-manager-mcp-server.git
cd ciphertrust-manager-mcp-server
uv venv
.venv\Scripts\activate
uv pip install -e .
winget install --id Python.Python.3.12 --source winget --accept-package-agreements --accept-source-agreements
这确保Python在您的PATH中可用。
python --version
pip --version
pip install uv
uv --version
git clone https://github.com/sanyambassi/ciphertrust-manager-mcp-server.git
cd ciphertrust-manager-mcp-server
uv venv
.venv\Scripts\activate
uv pip install -e .
示例.env:
cp .env.example .env
# 使用您的CipherTrust Manager详细信息编辑.env
您也可以直接设置这些环境变量,而不是使用.env文件。
示例.env内容:
CIPHERTRUST_URL=https://your-ciphertrust-manager.example.com
CIPHERTRUST_USER=admin
CIPHERTRUST_PASSWORD=your-password-here
CIPHERTRUST_NOSSLVERIFY=true
⚠️ 重要提示: 在启动之前,环境变量或.env文件应包含有效的CipherTrust Manager URL。
您有两种主要方式来运行CipherTrust MCP Server:
uv run ciphertrust-mcp-server
这会运行ciphertrust_mcp_server/__main__.py中的main()函数。
uv run python -m ciphertrust_mcp_server.__main__
此项目包括使用模型上下文协议检查器和Python单元测试的全面测试能力。
# 手动JSON-RPC测试(直接stdin/stdout)
uv run ciphertrust-mcp-server
# 然后发送JSON-RPC命令(详情见TESTING.md)
# 交互式UI测试(打开浏览器界面)
npx @modelcontextprotocol/inspector uv run ciphertrust-mcp-server
# 快速CLI测试
# 获取工具
npx @modelcontextprotocol/inspector --cli --config tests/mcp_inspector_config.json --server ciphertrust-local --method tools/list
# 获取系统信息
npx @modelcontextprotocol/inspector --cli --config tests/mcp_inspector_config.json --server ciphertrust-local --method tools/call --tool-name system_information --tool-arg action=get
# 获取2个密钥
npx @modelcontextprotocol/inspector --cli --config tests/mcp_inspector_config.json --server ciphertrust-local --method tools/call --tool-name key_management --tool-arg action=list --tool-arg limit=2
创建package.json文件后:
npm run test:inspector:ui # 打开交互式测试界面
npm run test:inspector:cli # 运行自动CLI测试
npm run test:python # 运行Python单元测试
npm run test:full # 运行完整的测试套件
📖 详细的测试说明,请参阅TESTING.md
🔧 示例AI助手提示,请参阅EXAMPLE_PROMPTS.md
测试指南涵盖:
示例提示包括:
mcp.json)中添加以下内容:{
"mcpServers": {
"ciphertrust": {
"command": "Path to your project folder/ciphertrust-manager-mcp-server/.venv/bin/ciphertrust-mcp-server",
"args": [],
"env": {
"CIPHERTRUST_URL": "https://your-ciphertrust.example.com",
"CIPHERTRUST_USER": "admin",
"CIPHERTRUST_PASSWORD": "your-password-here"
}
}
}
}
在Windows上,使用.venv\Scripts\ciphertrust-mcp-server.exe路径,并使用双反斜杠:
{
"mcpServers": {
"ciphertrust": {
"command": "C:\\path\\to\\ciphertrust-manager-mcp-server\\.venv\\Scripts\\ciphertrust-mcp-server",
"args": [],
"env": {
"CIPHERTRUST_URL": "https://your-ciphertrust.example.com",
你的密码在这里
}
}
}
}
在Cursor中禁用并重新启用CipherTrust MCP服务器以应用更改。
~/Library/Application Support/Claude/claude_desktop_config.jsonmacOS/Linux 示例:
{
"mcpServers": {
"ciphertrust": {
"command": "/absolute/path/to/ciphertrust-manager-mcp-server/.venv/bin/ciphertrust-mcp-server",
"env": {
"CIPHERTRUST_URL": "https://your-ciphertrust.example.com",
"CIPHERTRUST_USER": "admin",
"CIPHERTRUST_PASSWORD": "your-password-here"
}
}
}
}
Windows 示例:
{
"mcpServers": {
"ciphertrust": {
"command": "C:\\absolute\\path\\to\\ciphertrust-manager-mcp-server\\.venv\\Scripts\\ciphertrust-mcp-server",
"env": {
"CIPHERTRUST_URL": "https://your-ciphertrust.example.com",
"CIPHERTRUST_USER": "admin",
"CIPHERTRUST_PASSWORD": "your-password-here"
}
}
}
}
调整路径以匹配您的实际项目位置和环境。
重启Claude Desktop以应用更改。
在您的shell或项目根目录下的.env文件中设置这些变量:
| 变量名称 | 描述 | 必填/默认值 |
|---|---|---|
CIPHERTRUST_URL | CipherTrust Manager URL(http/https) | 必填 |
CIPHERTRUST_USER | CipherTrust Manager用户名 | 必填 |
CIPHERTRUST_PASSWORD | CipherTrust Manager密码 | 必填 |
CIPHERTRUST_NOSSLVERIFY | 禁用SSL验证(true/false) | false |
CIPHERTRUST_TIMEOUT | CipherTrust请求超时(秒) | 30 |
CIPHERTRUST_DOMAIN | 默认CipherTrust域 | root |
CIPHERTRUST_AUTH_DOMAIN | 认证域 | root |
KSCTL_PATH | ksctl二进制文件路径 | ~/.ciphertrust-mcp/ksctl |
KSCTL_CONFIG_PATH | ksctl配置文件路径 | ~/.ksctl/config.yaml |
LOG_LEVEL | 日志级别(DEBUG, INFO) | INFO |
示例.env文件:
CIPHERTRUST_URL=https://your-ciphertrust.example.com
CIPHERTRUST_USER=admin
CIPHERTRUST_PASSWORD=yourpassword
CIPHERTRUST_NOSSLVERIFY=false
CIPHERTRUST_TIMEOUT=30
CIPHERTRUST_DOMAIN=root
CIPHERTRUST_AUTH_DOMAIN=root
KSCTL_PATH=
KSCTL_CONFIG_PATH=
LOG_LEVEL=INFO
2025-06-16 02:22:30,462 - ciphertrust_mcp_server.server - INFO - 正在启动ciphertrust-manager v0.1.0
2025-06-16 02:22:30,838 - ciphertrust_mcp_server.server - INFO - 已成功连接到CipherTrust Manager
2025-06-16 02:22:30,838 - ciphertrust_mcp_server.server - INFO - MCP服务器已准备好并等待从stdin接收JSON-RPC消息...
pyproject.toml文件包含以下依赖项:
mcp>=1.0.0pydantic>=2.0.0pydantic-settings>=2.0.0httpx>=0.27.0python-dotenv>=1.0.0如果遇到问题,请确保所有依赖项均已安装并是最新的。
ciphertrust-manager-mcp-server/
├── src
│ ├── ciphertrust_mcp_server/ # 主服务器代码
├── tests/ # 测试配置和单元测试
│ ├── mcp_inspector_config.json
│ ├── test_scenarios.json
│ ├── test_server.py
│ └── test_integration_simple.py
├── scripts/ # 测试和实用脚本
│ ├── test_with_inspector.bat
│ ├── test_with_inspector.sh
│ └── run_tests.py
├── docs/ # 额外文档
│ ├── TESTING.md
│ ├── EXAMPLE_PROMPTS.md
│ └── TOOLS.md
├── README.md # 本文档
├── pyproject.toml # Python依赖项
└── package.json # 测试用Node.js依赖项
欢迎贡献!请随时提交Pull Request。虽然这个项目最初是一个个人项目,但贡献有助于让每个人受益。
CipherTrust®及相关商标是Thales集团及其子公司的财产。本项目未得到Thales集团的认可、赞助或支持。
本软件按“原样”提供,不附带任何形式的保证。自行承担风险使用。
这是一个独立的项目。如需官方CipherTrust Manager支持,请直接联系Thales。对于此非官方MCP服务器的问题,请使用GitHub问题跟踪器。
本项目根据MIT许可发布。详情请参阅LICENSE文件。