by sanyambassi
Enables AI assistants to manage CipherTrust Manager resources—keys, users, connections, and more—through a JSON‑RPC interface powered by the Model Context Protocol.
What is Ciphertrust Manager MCP Server about? Provides a Model Context Protocol (MCP) server that exposes CipherTrust Manager functionalities (key management, user and client handling, connection control, etc.) to AI assistants like Claude Desktop and Cursor. The server communicates via stdin/stdout using JSON‑RPC, allowing seamless tool integration without direct API calls.
How to use Ciphertrust Manager MCP Server?
uv
.git clone https://github.com/sanyambassi/ciphertrust-manager-mcp-server.git
cd ciphertrust-manager-mcp-server
uv venv && .venv/bin/activate # Windows: .venv\Scripts\activate
uv pip install -e .
.env
file or environment variables (CIPHERTRUST_URL
, CIPHERTRUST_USER
, CIPHERTRUST_PASSWORD
, etc.).uv run ciphertrust-mcp-server
Key Features
.env
file.@modelcontextprotocol/inspector
, CLI scripts, and Python unit tests.Use Cases
FAQ
.venv\Scripts\activate
and run the same command.LOG_LEVEL=DEBUG
to see detailed request/response logs.This project implements an independently-developed CipherTrust MCP (Model Context Protocol) server that allows AI Assistants like Claude or Cursor to interact with CipherTrust Manager resources using the ksctl CLI.
This is an independent, open-source project. Please note:
For official CipherTrust Manager support, please contact Thales directly.
The MCP server exposes a set of tools and endpoints for clients (such as Claude Desktop and Cursor) to interact with CipherTrust resources. Supported operations include:
Benefits:
If you don't have Git installed on Windows, follow these steps:
winget install --id Git.Git -e --source winget
git --version
You should see the installed Git version.# Open PowerShell as Administrator (optional)
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
Open a new terminal and run:
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
This ensures Python is available in your 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 .
Example .env
:
cp .env.example .env
# Edit .env with your CipherTrust Manager details
You can also set these as environment variables directly instead of using a .env
file.
Example .env
content:
CIPHERTRUST_URL=https://your-ciphertrust-manager.example.com
CIPHERTRUST_USER=admin
CIPHERTRUST_PASSWORD=your-password-here
CIPHERTRUST_NOSSLVERIFY=true
⚠️ Important: Before starting, either the environment variable or .env should contain a valid CipherTrust Manager URL.
You have two main ways to run the CipherTrust MCP Server:
uv run ciphertrust-mcp-server
This runs the main()
function in ciphertrust_mcp_server/__main__.py
.
uv run python -m ciphertrust_mcp_server.__main__
This project includes comprehensive testing capabilities using the Model Context Protocol Inspector and Python unit tests.
# Manual JSON-RPC testing (direct stdin/stdout)
uv run ciphertrust-mcp-server
# Then send JSON-RPC commands (see TESTING.md for details)
# Interactive UI testing (opens browser interface)
npx @modelcontextprotocol/inspector uv run ciphertrust-mcp-server
# Quick CLI testing
# Get tools
npx @modelcontextprotocol/inspector --cli --config tests/mcp_inspector_config.json --server ciphertrust-local --method tools/list
# Get system information
npx @modelcontextprotocol/inspector --cli --config tests/mcp_inspector_config.json --server ciphertrust-local --method tools/call --tool-name system_information --tool-arg action=get
# Get 2 keys
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
After creating a package.json
file:
npm run test:inspector:ui # Open interactive testing interface
npm run test:inspector:cli # Run automated CLI tests
npm run test:python # Run Python unit tests
npm run test:full # Run complete test suite
📖 For detailed testing instructions, see TESTING.md
🔧 For example AI assistant prompts, see EXAMPLE_PROMPTS.md
The testing guide covers:
The example prompts include:
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"
}
}
}
}
On Windows, use the .venv\Scripts\ciphertrust-mcp-server.exe
path and double backslashes:
{
"mcpServers": {
"ciphertrust": {
"command": "C:\\path\\to\\ciphertrust-manager-mcp-server\\.venv\\Scripts\\ciphertrust-mcp-server",
"args": [],
"env": {
"CIPHERTRUST_URL": "https://your-ciphertrust.example.com",
"CIPHERTRUST_USER": "admin",
"CIPHERTRUST_PASSWORD": "your-password-here"
}
}
}
}
Disable and Re-enable the CipherTrust MCP server in Cursor to apply the changes.
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Roaming\Claude\claude_desktop_config.json
macOS/Linux Example:
{
"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 Example:
{
"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"
}
}
}
}
Adjust the path to match your actual project location and environment.
Restart Claude Desktop to apply the changes.
Set these in your shell or in a .env
file in the project root:
Variable Name | Description | Required/Default |
---|---|---|
CIPHERTRUST_URL |
CipherTrust Manager URL (http/https) | Required |
CIPHERTRUST_USER |
CipherTrust Manager username | Required |
CIPHERTRUST_PASSWORD |
CipherTrust Manager password | Required |
CIPHERTRUST_NOSSLVERIFY |
Disable SSL verification (true/false) | false |
CIPHERTRUST_TIMEOUT |
Timeout for CipherTrust requests (seconds) | 30 |
CIPHERTRUST_DOMAIN |
Default CipherTrust domain | root |
CIPHERTRUST_AUTH_DOMAIN |
Authentication domain | root |
KSCTL_PATH |
Path to ksctl binary | ~/.ciphertrust-mcp/ksctl |
KSCTL_CONFIG_PATH |
Path to ksctl config file | ~/.ksctl/config.yaml |
LOG_LEVEL |
Logging level (DEBUG, INFO) | INFO |
Example .env
file:
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 - Starting ciphertrust-manager v0.1.0
2025-06-16 02:22:30,838 - ciphertrust_mcp_server.server - INFO - Successfully connected to CipherTrust Manager
2025-06-16 02:22:30,838 - ciphertrust_mcp_server.server - INFO - MCP server ready and waiting for JSON-RPC messages on stdin...
The pyproject.toml
file includes these dependencies:
mcp>=1.0.0
pydantic>=2.0.0
pydantic-settings>=2.0.0
httpx>=0.27.0
python-dotenv>=1.0.0
If you encounter issues, ensure all dependencies are installed and up-to-date.
ciphertrust-manager-mcp-server/
├── src
│ ├── ciphertrust_mcp_server/ # Main server code
├── tests/ # Testing configuration and unit tests
│ ├── mcp_inspector_config.json
│ ├── test_scenarios.json
│ ├── test_server.py
│ └── test_integration_simple.py
├── scripts/ # Testing and utility scripts
│ ├── test_with_inspector.bat
│ ├── test_with_inspector.sh
│ └── run_tests.py
├── docs/ # Additional documentation
│ ├── TESTING.md
│ ├── EXAMPLE_PROMPTS.md
│ └── TOOLS.md
├── README.md # This file
├── pyproject.toml # Python dependencies
└── package.json # Node.js dependencies for testing
Contributions are welcome! Please feel free to submit a Pull Request. While this started as a personal project, contributions help make it better for everyone.
CipherTrust® and related trademarks are the property of Thales Group and its subsidiaries. This project is not affiliated with, endorsed by, or sponsored by Thales Group.
This software is provided "as is" without warranty of any kind. Use at your own risk.
This is an independent project. For official CipherTrust Manager support, please contact Thales directly. For issues with this unofficial MCP server, please use the GitHub issue tracker.
This project is licensed under the MIT License. See the LICENSE file for details.
Please log in to share your review and rating for this MCP.
Explore related MCPs that share similar capabilities and solve comparable challenges
by chaitin
A self‑hosted web application firewall and reverse proxy that protects web applications from attacks and exploits by filtering, monitoring, and blocking malicious HTTP/S traffic.
by PortSwigger
Enables Burp Suite to communicate with AI clients via the Model Context Protocol, providing an MCP server and bundled stdio proxy.
by cycodehq
Boost security in the development lifecycle via SAST, SCA, secrets, and IaC scanning.
by ChristophEnglisch
Provides AI‑powered administration of Keycloak users and realms through the Model Context Protocol, enabling automated creation, deletion, and listing of users and realms from MCP clients such as Claude Desktop.
by Spathodea-Network
Provides a Model Context Protocol server that enables querying and retrieving threat intelligence data from OpenCTI through a standardized interface.
by firstorderai
Provides seamless access to two‑factor authentication codes and passwords for AI agents, enabling automated login while maintaining security.
by vespo92
Manage OPNsense firewalls through conversational AI, providing network configuration, device discovery, DNS filtering, HAProxy setup, and backup/restore via simple commands.
by mytechnotalent
Provides an AI-driven interface to Malware Bazaar, delivering real-time threat intelligence and sample metadata for authorized cybersecurity research workflows.
by co-browser
Verify that any MCP server is running the intended and untampered code via hardware attestation.