mcp-redfish

mcp-redfish

Enables AI assistants to monitor and control server hardware (power, thermal, storage, firmware, event logs) via Redfish BMC API on Dell iDRAC, HPE iLO, Lenovo XCC, Supermicro BMC, and others.

Category
Visit Server

README

mcp-redfish

A Model Context Protocol (MCP) server for Redfish-compatible BMC management, providing AI assistants with access to server hardware monitoring and control through the DMTF Redfish REST API.

Supported Hardware

Vendor BMC / Interface
Dell PowerEdge iDRAC (iDRAC8, iDRAC9, iDRAC10)
HPE ProLiant iLO (iLO4, iLO5, iLO6)
Lenovo ThinkSystem XClarity Controller (XCC)
Supermicro BMC (IPMI/Redfish)
Any vendor DMTF Redfish 1.x compliant BMC

Features

20 tools across six categories:

Systems

Tool Description
list_systems List all computer systems with Name, Model, PowerState, Health, memory, and CPU summary
get_system Get full system details including BiosVersion, HostName, IndicatorLED, and Boot settings
set_power_state Power on/off/reboot a system (On, ForceOff, GracefulShutdown, GracefulRestart, ForceRestart, Nmi)
get_bios_settings Get current BIOS attributes and configuration

Chassis

Tool Description
list_chassis List chassis with ChassisType, Manufacturer, Model, SerialNumber, and Status
get_chassis Get full chassis details
get_thermal Get temperatures and fan speeds with thresholds and health status
get_power Get power supply status and current consumption in watts

Managers (BMC)

Tool Description
list_managers List BMC managers with ManagerType, FirmwareVersion, and Status
get_manager Get full manager details
reset_manager Gracefully restart the BMC
get_network_protocol Get BMC protocol settings (IPMI, SSH, HTTPS enabled/disabled, ports)

Storage

Tool Description
list_storage List storage controllers with model, firmware, supported RAID types, and health
list_drives List physical drives with capacity, protocol (SAS/SATA/NVMe), MediaType (SSD/HDD), and health

Event Log

Tool Description
list_event_log Get system event log entries with Severity, Message, and timestamp. Auto-discovers log path.
clear_event_log Clear the event log (irreversible)

Firmware

Tool Description
get_firmware_inventory List all firmware versions (BIOS, BMC, NICs, storage controllers, PSUs, etc.)

Installation

git clone git@github.com:fredriksknese/mcp-redfish.git
cd mcp-redfish
npm install
npm run build

Configuration

The server is configured via environment variables:

Variable Required Default Description
REDFISH_HOST Yes BMC hostname or IP address
REDFISH_USERNAME No root BMC username
REDFISH_PASSWORD Yes BMC password
REDFISH_ALLOW_SELF_SIGNED No true Accept self-signed TLS certificates (normal for BMCs)

Authentication uses Redfish session tokens by default (POST to SessionService, stores X-Auth-Token). Falls back to HTTP Basic auth if session creation fails.

Usage with Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "redfish": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-redfish/dist/index.js"],
      "env": {
        "REDFISH_HOST": "192.168.1.100",
        "REDFISH_USERNAME": "root",
        "REDFISH_PASSWORD": "your-bmc-password"
      }
    }
  }
}

Usage with Claude Code

claude mcp add redfish -- node /absolute/path/to/mcp-redfish/dist/index.js

Set the required environment variables in your MCP settings.

Example Prompts

Once connected, you can ask your AI assistant things like:

  • "What is the current power state and health of all systems?"
  • "Show me all temperature sensors and flag any that are above normal thresholds"
  • "What firmware versions are installed and which components can be updated?"
  • "Check the system event log for any critical errors in the last 24 hours"
  • "List all drives including their capacity, type (SSD/HDD), and health"
  • "What is the current power consumption in watts?"
  • "Show me the BMC network protocol settings — is IPMI enabled?"
  • "Gracefully restart this server"
  • "Clear the system event log"
  • "What is the BIOS version and current boot order?"

Development

npm run dev      # Run with tsx (no build required)
npm run build    # Compile TypeScript to dist/
npm start        # Run compiled output

Architecture

src/
├── index.ts              # Entry point — creates MCP server + STDIO transport
├── redfish-client.ts     # HTTP client with session/basic auth and @odata.id expansion
└── tools/
    ├── systems.ts        # Computer system management (4 tools)
    ├── chassis.ts        # Chassis, thermal, and power (4 tools)
    ├── managers.ts       # BMC manager management (4 tools)
    ├── storage.ts        # Storage controllers and drives (2 tools)
    ├── eventlog.ts       # Event log read and clear (2 tools)
    └── firmware.ts       # Firmware inventory (1 tool)

Requirements

  • Node.js 18+
  • A DMTF Redfish 1.x compliant BMC (Dell iDRAC, HPE iLO, Lenovo XCC, Supermicro BMC, or any standards-compliant BMC)

License

SEE LICENSE IN LICENSE

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured