home / mcp / redfish mcp server

Redfish MCP Server

Provides a secure, structured MCP server to control Redfish-enabled hardware with power, inventory, logs, health, users, and sensor management.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "carlosedp-redfish-mcp-server": {
      "url": "https://mcp.redfish.example/mcp",
      "headers": {
        "REDFISH_HOST": "https://192.168.1.100",
        "REDFISH_PASSWORD": "password123",
        "REDFISH_USERNAME": "admin",
        "REDFISH_VERIFY_SSL": "false"
      }
    }
  }
}

You run a FastMCP-based server that lets AI agents and LLMs securely control Redfish-enabled hardware and simulators. It exposes structured, type-safe responses and convenient tools to monitor power, system inventory, health, sensors, logs, and user accounts, all through a unified MCP API.

How to use

Start by launching the MCP server in development or production mode, then connect with an MCP client to issue commands that control power, read health data, fetch system information, and manage logs and users. You can enable automatic configuration from environment variables, and you can verify SSL settings to ensure secure communication with Redfish endpoints.

How to install

Prerequisites: ensure you have a runtime for MCP servers and a tool to run MCP configurations. The server is designed to work with the uv runtime for dependency management during development.

Install development dependencies and prepare the environment, then start the server in development mode for hot reloading and debugging.

# Install development dependencies
uv sync

Additional setup and ongoing usage

Configure how you connect to your Redfish endpoint using environment variables or manual configuration tools. The server supports both automatic environment-based configuration and explicit manual setup.

Environment-based configuration (recommended): set the host, user, and password, and optionally disable SSL verification for self-signed certificates used by many BMCs.

Example environment setup you can adapt to your environment.

export REDFISH_HOST="https://192.168.1.100"
export REDFISH_USERNAME="admin"
export REDFISH_PASSWORD="password123"
export REDFISH_VERIFY_SSL="false"  # Optional, defaults to false
export REDFISH_TIMEOUT="30"        # Optional, defaults to 30 seconds

Security, environment, and troubleshooting

All communications with Redfish endpoints are authenticated with a username and password. SSL verification can be configured, and running in development with relaxed SSL settings is common for testing against mock endpoints.

If you run into connectivity issues, verify the host URL, credentials, and SSL settings, and check health and event logs to identify misconfigurations or endpoint problems.

When developing locally, you can use a Redfish mock server to simulate hardware. Set your host to the mock server URL and verify that your MCP client can fetch system information, power state, health, and logs.

Available tools

redfish_get_config_status

Check current configuration status and connection to the Redfish endpoint.

redfish_configure

Configure the connection to the Redfish endpoint, including host, credentials, and SSL settings.

redfish_get_system_info

Retrieve system information and inventory from the Redfish-enabled hardware.

redfish_power_control

Control the system power state, such as On, Off, or Restart.

redfish_get_event_logs

Retrieve system event logs, including System, Security, and Manager logs.

redfish_get_health_status

Get system health status and sensor readings.

redfish_manage_users

Manage BMC user accounts and permissions.

redfish_get_sensors

Read temperature, fan, power, and voltage sensor readings.

redfish_clear_logs

Clear system event logs.