
This project offers MCP server built on the IBM Storage Protect Server CLIs and tools, enabling LLMs to interact with them.
概览
The IBM Storage Protect Model Context Protocol (MCP) server exposes Storage Protect administration as structured tools for MCP-compatible AI clients. Describe an administrative task in natural language and the AI client invokes the appropriate dsmadmc-backed tool. - Monitoring and investigation of Storage Protect servers - Client, storage, policy, and system administration - Operational tools for protection, maintenance, rules, and diagnostics - Unified and fine-grained MCP server deployments - stdio/SSH and HTTP/SSE transport options - Privilege-aware tool registration and audit correlation - Python 3.10 or later - A reachable IBM Storage Protect server - The dsmadmc CLI on the MCP server host - A dedicated non-root operating-system user - Storage Protect administrator credentials with the required privilege Full prerequisite details and verification steps are in docs/guides/planning-guide.md and docs/guides/install-guide.md. Follow the guides in docs/guides/ in order.
README
以下为原文 README 节选,完整内容请查看原文。
IBM Storage Protect MCP Server
The IBM Storage Protect Model Context Protocol (MCP) server exposes Storage Protect administration as structured tools for MCP-compatible AI clients. Describe an administrative task in natural language and the AI client invokes the appropriate dsmadmc-backed tool.
What It Provides
- Monitoring and investigation of Storage Protect servers
- Client, storage, policy, and system administration
- Operational tools for protection, maintenance, rules, and diagnostics
- Unified and fine-grained MCP server deployments
stdio/SSH and HTTP/SSE transport options- Privilege-aware tool registration and audit correlation
Requirements
- Python 3.10 or later
- A reachable IBM Storage Protect server
- The
dsmadmcCLI on the MCP server host - A dedicated non-root operating-system user
- Storage Protect administrator credentials with the required privilege
Full prerequisite details and verification steps are in docs/guides/planning-guide.md and docs/guides/install-guide.md.
Install & Configure
Follow the guides in docs/guides/ in order. Each guide links to the next.
1. Plan — docs/guides/planning-guide.md
Choose a deployment topology (co-located on each SP server host, or centralised on a single control host), inventory your Storage Protect servers, plan service accounts and SSH keys, and confirm system prerequisites.
2. Install — docs/guides/install-guide.md
Set up the OS user and working directory, create a Python virtual environment, install the package and its dependencies, write the .env credential file with 0600 permissions, configure TLS certificates for HTTP transport, and verify the Storage Protect connection.
Key steps at a glance:
# Create the virtual environment and install
python3.11 -m venv .venv
source .venv/bin/activate
pip install -e ".[sse]" # or: pip install -r requirements-sse.txt
# Write credentials (owner-read-only)
install -m 600 /dev/null .env
echo "SP_ADMIN_ID=mcp-svc-system" >> .env
echo "SP_ADMIN_PASSWORD=" >> .env
echo "SP_SERVER_ADDRESS=your-sp-host" >> .env
echo "SP_SERVER_PORT=1500" >> .env
Full topology-specific instructions (co-located vs centralised, SSH key deployment, TLS setup) are in install-guide.md.
3. Configure — docs/guides/configure-guide.md
Register the MCP server in your AI client (Claude Desktop, VS Code Copilot, or similar). Choose a transport:
| Transport | When to use |
|---|---|
stdio over SSH |
Single-client, local, or Claude Desktop deployments |
http with OIDC |
Enterprise, multi-client, or REST gateway deployments |
Example stdio + SSH entry for Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
{
"mcpServers": {
"sp-admin": {
"command": "ssh",
"args": [
"-i", "~/.ssh/id_ed25519_sp_mcp",
"-o", "StrictHostKeyChecking=yes",
"mcp-runner@your-sp-server",
"/opt/sp-mcp-server/.venv/bin/python3",
"-m", "sp_mcp_server.main",
"--mode", "full"
]
}
}
}