> ## Documentation Index
> Fetch the complete documentation index at: https://docs.powersignals.co.za/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP Server

> Connect to the official Power Signals MCP server

## Overview

Your AI assistant can connect to our official MCP server to access real-time grid data, including system state, generation mix, grid stress index, and more.

### Connect your client

Choose your client and follow the setup instructions. Interactive clients sign you in automatically — no API key required.

<Tabs>
  <Tab title="Claude">
    Works for both **claude.ai** (web) and the **Claude Desktop** app.

    1. Go to **Settings** → **Connectors**
    2. Click **Add** and enter the server URL: [https://mcp.powersignals.co.za/mcp/](https://mcp.powersignals.co.za/mcp/)
    3. Click **Add custom connector** and complete sign-in
    4. In any new chat, click `+` and enable Power Signals under Connectors
  </Tab>

  <Tab title="Claude Code">
    Run this in your terminal:

    ```bash theme={null}
    claude mcp add --transport http power-signals https://mcp.powersignals.co.za/mcp/
    ```

    Then type `/mcp` inside Claude Code and complete sign-in in your browser. Verify anytime with `claude mcp list`.
  </Tab>

  <Tab title="Codex">
    Run these commands in your terminal:

    ```bash theme={null}
    codex mcp add power-signals --url https://mcp.powersignals.co.za/mcp/
    codex mcp login power-signals
    ```

    Complete sign-in in your browser. The server is then available in the Codex app, CLI, and IDE extension. Verify anytime with codex mcp list or type `/mcp` in Codex.
  </Tab>

  <Tab title="Cursor">
    Add the following to your `~/.cursor/mcp.json` file, then save and restart Cursor:

    ```json theme={null}
    "mcpServers": {
        "power-signals": {
            "url": "https://mcp.powersignals.co.za/mcp/"
        }
    }
    ```

    Cursor automatically discovers all available tools and invokes the appropriate one whenever you ask grid-related questions in chat.
  </Tab>

  <Tab title="Hermes">
    Add the server to `~/.hermes/config.yaml`:

    ```yaml theme={null}
    mcp_servers:
        power-signals:
            url: "https://mcp.powersignals.co.za/mcp/"
            auth: oauth
    ```

    Then run OAuth sign-in from a fresh terminal (don’t start it from inside an already-running Hermes session — the auto-reload timeout is too short for browser auth):

    ```bash theme={null}
    hermes mcp login power-signals
    ```

    Complete sign-in in your browser. In an active Hermes session, reload MCP tools with /reload-mcp, or start a new chat:

    ```bash theme={null}
    hermes chat
    ```

    See Hermes’ [MCP docs](https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp) for filtering, re-auth, and troubleshooting.
  </Tab>

  <Tab title="OpenClaw">
    Add the Power Signals MCP server to OpenClaw, then sign in with OAuth:

    ```bash theme={null}
    openclaw mcp add power-signals \
        --url https://mcp.powersignals.co.za/mcp/ \
        --transport streamable-http \
        --auth oauth

    openclaw mcp login power-signals
    ```

    OpenClaw prints an authorization URL — approve in your browser, then finish with:

    ```bash theme={null}
    openclaw mcp login power-signals --code <code>
    ```

    Verify the connection anytime with:

    ```bash theme={null}
    openclaw mcp probe power-signals
    ```

    Prefer configuring it manually? Add this under `mcp.servers` in `~/.openclaw/openclaw.json`, then run the same `openclaw mcp login` flow:

    ```json theme={null}
    {
     "mcp": {
        "servers": {
            "power-signals": {
                "url": "https://mcp.powersignals.co.za/mcp/",
                "transport": "streamable-http",
                "auth": "oauth"
            }
        }
     }
    }
    ```

    See OpenClaw’s [MCP docs](https://docs.openclaw.ai/cli/mcp) for full CLI and config reference.
  </Tab>
</Tabs>

### Available tools

<Accordion title="Browse all tools">
  #### Features

  * get\_grid\_stress\_index: Get grid stress index records. Filters records by date range (YYYY-MM-DD) and returns the most recent entries first. Optional limit parameter sets the maximum number of records to retrieve.
</Accordion>

### Example prompts

Once connected, try asking your AI assistant questions like:

* Show me the grid stress index from 2026-07-01 to today.
* Get the last 10 grid stress index readings since 2026-06-01.
* What's the grid stress index been since 2026-07-20?
