Přeskočit na obsah

MCP pro asistenty AI

Server MCP (Model Context Protocol) HAM připojí asistenta AI k vašim zařízením. Asistent vidí seznam zařízení, aktuální měření a historii. Každé volání běží s vaším účtem a vašimi oprávněními k jednotlivým zařízením.

Položka Hodnota
Adresa https://api.hamsystems.eu/mcp/index.php
Přenos HTTP, JSON-RPC 2.0
Verze protokolu 2024-11-05
Ověření Hlavička Authorization: Bearer-API YOUR_API_KEY

API klíč vytvoříte na stránce Účet. Viz REST API.

  1. Vytvořte API klíč.

  2. Přidejte server do konfigurace MCP svého asistenta. Pro Claude Code je soubor .mcp.json:

    {
    "mcpServers": {
    "ham": {
    "type": "http",
    "url": "https://api.hamsystems.eu/mcp/index.php",
    "headers": {
    "Authorization": "Bearer-API YOUR_API_KEY"
    }
    }
    }
    }
  3. Restartujte asistenta.

  4. Zeptejte se například “Show me my devices”. Asistent zavolá nástroj list_devices.

Nástroj Parametry Výsledek
list_devices compact (výchozí true) Vaše zařízení. S compact: true: serialno, name, icon, groups, floorplans a count. S compact: false: všechny podrobnosti s nastavením.
get_device_state serialno (jedno číslo nebo seznam) Aktuální stav. Stejný formát jako get_device_state.php. Viz REST API.
get_device_history serialno, level, bin Řádky historie. Stejné úrovně a biny jako ve stažení historických dat.
get_definitions family_id (volitelné), include_readings (výchozí true) Definice rodin: měření, výstupy, nastavení
get_docs žádné Pokyny k nástrojům
send_command serialno, command Pošle příkaz zařízení nebo skupině. Asistent získá příkazy z get_docs.

Typické pořadí volání: list_devices, pak get_definitions pro rodinu, pak get_device_state nebo get_device_history.

Terminál
curl -X POST https://api.hamsystems.eu/mcp/index.php \
-H "Authorization: Bearer-API YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_devices","arguments":{}}}'

Výsledek je v result.content[0].text jako text JSON:

{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{ "type": "text", "text": "{\"devices\":[{\"serialno\":\"e11:123\",\"name\":\"Fridge 1\",\"icon\":\"\",\"groups\":[],\"floorplans\":[]}],\"count\":1}" }
]
}
}

Podporované metody: initialize, notifications/initialized, tools/list, tools/call.

Kód Význam
-32000 Chyba ověření (HTTP 401) nebo chyba nástroje
-32700 Tělo není platný JSON
-32600 Neplatný požadavek JSON-RPC
-32601 Neznámá metoda
-32602 Chybí název nástroje
-32603 Vnitřní chyba
Chat s podporou