Pāriet uz saturu

MCP AI asistentiem

HAM MCP (Model Context Protocol) serveris savieno AI asistentu ar jūsu ierīcēm. Asistents var redzēt ierīču sarakstu, pašreizējos mērījumus un vēsturi. Katrs izsaukums darbojas ar jūsu kontu un jūsu atļaujām katrai ierīcei.

Elements Vērtība
Adrese https://api.hamsystems.eu/mcp/index.php
Transports HTTP, JSON-RPC 2.0
Protokola versija 2024-11-05
Autentifikācija Galvene Authorization: Bearer-API YOUR_API_KEY

API atslēgu jūs izveidojat lapā Konts. Skatiet REST API.

  1. Izveidojiet API atslēgu.

  2. Pievienojiet serveri sava asistenta MCP konfigurācijai. Claude Code fails ir .mcp.json:

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

  4. Pajautājiet, piemēram, “Parādi manas ierīces”. Asistents izsauc rīku list_devices.

Rīks Parametri Rezultāts
list_devices compact (noklusējums true) Jūsu ierīces. Ar compact: true: serialno, name, icon, groups, floorplans un count. Ar compact: false: visas detaļas ar iestatījumiem.
get_device_state serialno (viens numurs vai saraksts) Pašreizējais stāvoklis. Tāds pats formāts kā get_device_state.php. Skatiet REST API.
get_device_history serialno, level, bin Vēstures rindas. Tie paši līmeņi un bin kā lapā Vēsturisko datu lejupielāde.
get_definitions family_id (neobligāts), include_readings (noklusējums true) Saimju definīcijas: mērījumi, izejas, iestatījumi
get_docs nav Norādījumi rīkiem
send_command serialno, command Sūta komandu ierīcei vai grupai. Asistents saņem komandas no get_docs.

Tipiska izsaukumu secība: list_devices, tad get_definitions saimei, tad get_device_state vai 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":{}}}'

Rezultāts ir laukā result.content[0].text kā JSON teksts:

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

Atbalstītās metodes: initialize, notifications/initialized, tools/list, tools/call.

Kods Nozīme
-32000 Autentifikācijas kļūda (HTTP 401) vai rīka kļūda
-32700 Pamatteksts nav derīgs JSON
-32600 Nederīgs JSON-RPC pieprasījums
-32601 Nezināma metode
-32602 Trūkst rīka nosaukuma
-32603 Iekšēja kļūda
Tērzēt ar atbalstu