IS

ibm/storage-protect-mcp-server

开发工具官方

本页由 AI 翻译,技术细节请以原文为准。 查看原文

5 stars 7 forks 质量 81 趋势 33Apache-2.0

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 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.

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": {
在 GitHub 查看完整 README

安装

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" ] } } }