Yapay zeka asistanları için MCP
HAM MCP (Model Context Protocol) sunucusu bir yapay zeka asistanını cihazlarınıza bağlar. Asistan cihaz listesini, geçerli ölçümleri ve geçmişi görebilir. Her çağrı sizin hesabınızla ve her cihazdaki izinlerinizle çalışır.
Bağlantı bilgileri
Bölüm başlığı “Bağlantı bilgileri”| Öğe | Değer |
|---|---|
| Adres | https://api.hamsystems.eu/mcp/index.php |
| Aktarım | HTTP, JSON-RPC 2.0 |
| Protokol sürümü | 2024-11-05 |
| Kimlik doğrulama | Authorization: Bearer-API YOUR_API_KEY başlığı |
API anahtarını Hesap sayfasında oluşturursunuz. Bkz. REST API.
Asistanı kurma
Bölüm başlığı “Asistanı kurma”-
Bir API anahtarı oluşturun.
-
Sunucuyu asistanınızın MCP yapılandırmasına ekleyin. Claude Code için dosya
.mcp.jsondosyasıdır:{"mcpServers": {"ham": {"type": "http","url": "https://api.hamsystems.eu/mcp/index.php","headers": {"Authorization": "Bearer-API YOUR_API_KEY"}}}} -
Asistanı yeniden başlatın.
-
Örneğin “Cihazlarımı göster” diye sorun. Asistan
list_devicesaracını çağırır.
Araçlar
Bölüm başlığı “Araçlar”| Araç | Parametreler | Sonuç |
|---|---|---|
list_devices |
compact (varsayılan true) |
Cihazlarınız. compact: true ile: serialno, name, icon, groups, floorplans ve count. compact: false ile: ayarlar dahil tüm ayrıntılar. |
get_device_state |
serialno (bir numara veya bir liste) |
Geçerli durum. get_device_state.php ile aynı biçim. Bkz. REST API. |
get_device_history |
serialno, level, bin |
Geçmiş satırları. Geçmiş verileri indirme ile aynı seviyeler ve bin’ler. |
get_definitions |
family_id (isteğe bağlı), include_readings (varsayılan true) |
Aile tanımları: ölçümler, çıkışlar, ayarlar |
get_docs |
yok | Araçlar için talimatlar |
send_command |
serialno, command |
Bir cihaza veya bir gruba komut gönderir. Asistan komutları get_docs aracından alır. |
Tipik bir çağrı sırası: list_devices, sonra aile için get_definitions, sonra get_device_state veya get_device_history.
curl ile test
Bölüm başlığı “curl ile test”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":{}}}'Sonuç, JSON metni olarak result.content[0].text içindedir:
{ "jsonrpc": "2.0", "id": 1, "result": { "content": [ { "type": "text", "text": "{\"devices\":[{\"serialno\":\"e11:123\",\"name\":\"Fridge 1\",\"icon\":\"\",\"groups\":[],\"floorplans\":[]}],\"count\":1}" } ] }}Desteklenen yöntemler: initialize, notifications/initialized, tools/list, tools/call.
Hatalar
Bölüm başlığı “Hatalar”| Kod | Anlamı |
|---|---|
-32000 |
Kimlik doğrulama hatası (HTTP 401) veya araç hatası |
-32700 |
Gövde geçerli JSON değil |
-32600 |
Geçersiz JSON-RPC isteği |
-32601 |
Bilinmeyen yöntem |
-32602 |
Araç adı eksik |
-32603 |
İç hata |

