Skip to main content
Glama

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

Related MCP server: Redfish MCP Server

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

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/fredriksknese/mcp-redfish'

If you have feedback or need assistance with the MCP directory API, please join our Discord server