Μετάβαση στο περιεχόμενο

MCP za pomočnike z umetno inteligenco

Strežnik HAM MCP (Model Context Protocol) povezuje pomočnika z umetno inteligenco z vašimi napravami. Pomočnik vidi seznam naprav, trenutne odčitke in zgodovino. Vsak klic se izvede z vašim računom in vašimi dovoljenji za vsako napravo.

Element Vrednost
Naslov https://api.hamsystems.eu/mcp/index.php
Prenos HTTP, JSON-RPC 2.0
Različica protokola 2024-11-05
Overitev Glava Authorization: Bearer-API YOUR_API_KEY

API ključ ustvarite na strani Račun. Glejte REST API.

  1. Ustvarite API ključ.

  2. Dodajte strežnik v konfiguracijo MCP svojega pomočnika. Za Claude Code je datoteka .mcp.json:

    {
    "mcpServers": {
    "ham": {
    "type": "http",
    "url": "https://api.hamsystems.eu/mcp/index.php",
    "headers": {
    "Authorization": "Bearer-API YOUR_API_KEY"
    }
    }
    }
    }
  3. Znova zaženite pomočnika.

  4. Vprašajte na primer “Pokaži mi moje naprave”. Pomočnik pokliče orodje list_devices.

Orodje Parametri Rezultat
list_devices compact (privzeto true) Vaše naprave. Z compact: true: serialno, name, icon, groups, floorplans in count. Z compact: false: vse podrobnosti, z nastavitvami.
get_device_state serialno (ena številka ali seznam) Trenutno stanje. Enaka oblika kot get_device_state.php. Glejte REST API.
get_device_history serialno, level, bin Vrstice zgodovine. Iste ravni in številke datotek kot v Prenos zgodovinskih podatkov.
get_definitions family_id (neobvezno), include_readings (privzeto true) Definicije družine: odčitki, izhodi, nastavitve
get_docs brez Navodila za orodja
send_command serialno, command Pošlje ukaz napravi ali skupini. Pomočnik prejme ukaze iz get_docs.

Običajen vrstni red klicev: list_devices, nato get_definitions za družino, nato get_device_state ali get_device_history.

Terminal window
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":{}}}'

Rezultat je v result.content[0].text, kot besedilo JSON:

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

Podprte metode: initialize, notifications/initialized, tools/list, tools/call.

Koda Pomen
-32000 Napaka overitve (HTTP 401) ali napaka orodja
-32700 Telo ni veljaven JSON
-32600 Neveljavna zahteva JSON-RPC
-32601 Neznana metoda
-32602 Ime orodja manjka
-32603 Notranja napaka
Klepet s podporo