AEB 앱 v1.0.6 + MCP 서버 — switch.blink · Devices-Speak 라우팅 정비 #
2026-05-08
SmartThings MCP 서버와 AEB 앱 내장 ST 클라이언트 양쪽에 동일하게 적용되었습니다.
새 기능
- switch.blink 의사 명령 추가 —
Devices-Command 의 capability=switch 에서 command=blink 를 받으면 4단계로 토글한 뒤 시작 상태로 복귀 (시작 ON → off/on/off/on, 시작 OFF → on/off/on/off). delay_ms 기본 2000ms, 최대 5000ms 로 cap (초과 입력 시 결과 메시지에 안내). 동일 디바이스에 대한 동시 호출은 mutex 로 직렬화. 단일 디바이스 한정.
도구 설명 정비
- Devices-Speak 라우팅 명세 갱신 — AEB 앱이 추가한 audioNotification 분기 정책에 맞춰 도구 설명을 다시 썼습니다: Gemini API key 가 있고 디바이스가 audioNotification 을 지원하면 Gemini TTS +
audioNotification.playTrackAndResume, 그렇지 않으면 speechSynthesis fallback. 이전의 "Galaxy Home Mini → speechSynthesis 강제" 같은 모델별 분기는 제거되어 capability 만 보고 결정합니다. LLM 이 audioNotification/audioStream/mediaPlayback 을 직접 호출하지 말라는 가이드는 그대로 유지.
AEB app v1.0.6 + MCP server — switch.blink · Devices-Speak routing refresh #
2026-05-08
Applied identically to the SmartThings MCP server and to the embedded ST client inside the AEB app.
New
- switch.blink pseudo command —
Devices-Command with capability=switch accepts command=blink: 4-step toggle that returns to the starting state (start ON → off/on/off/on; start OFF → on/off/on/off). delay_ms defaults to 2000ms and is capped at 5000ms (the cap is surfaced in the result text). A per-device mutex serialises concurrent calls. Single-device only.
Description tweaks
- Devices-Speak routing refreshed — rewritten to match the AEB app's audioNotification routing: when a Gemini API key is set and the device exposes audioNotification, the announcement goes through Gemini TTS +
audioNotification.playTrackAndResume; otherwise it falls back to speechSynthesis. The old per-model carve-out ("Galaxy Home Mini → speechSynthesis only") is gone — capability alone decides. The "do not call audioNotification/audioStream/mediaPlayback directly" guidance for the LLM is preserved.
AEB 앱 v1.0.5 + MCP 서버 — 도구 설명 압축 · 매칭 정확도 향상 #
2026-05-07
SmartThings MCP 서버 + AEB 앱 내장 ST 클라이언트 양쪽에 동일한 도구 설명 압축과 FindAndCommand 매칭 fix 가 적용되었습니다.
최적화
- 도구 설명 ~50% 압축 — 26개 SmartThings 도구의 description 을 한 단락으로 축약. 한국어 트리거 키워드(
방송·알림·외출·조명들 등)와 안티패턴(예: TTS 는 Devices-Speak 만 사용)은 그대로 보존. JSON Schema 표준 호환이라 외부 MCP 클라이언트(Claude.ai, Cursor 등)에는 영향 없음.
- 첫 턴 토큰 ~30% 절감 —
tools/list 응답 직렬화 크기가 21KB → 9KB 수준. AEB 채팅 첫 호출 입력 토큰이 약 7,800 → 5,400 으로 줄어듭니다.
매칭 fix
- Devices-FindAndCommand — 방 이름 매칭 추가 — 이전에는 도구가 device label/category 만 봤기 때문에 사용자가
"컴퓨터방 불꺼줘" 라고 해도 라벨이 그냥 "조명" 인 디바이스는 매칭되지 않았습니다. 이제 listRooms 로 방 이름까지 함께 매칭합니다.
- 다중 단어 AND 매칭 — query 를 공백 단위로 토큰화한 뒤 모든 토큰이 {label, category, room name} 중 하나라도 매칭되어야 그 디바이스를 선택합니다. 예: query=
"컴퓨터방 조명" → "컴퓨터방"은 방 이름 매칭, "조명"은 라벨 매칭 → 컴퓨터방의 조명만 선택 (공기청정기 같은 다른 switch 디바이스는 제외).
- 도구 설명 가이드 강화 — LLM 이 자연어 명령에 대해
Devices-List + Devices-Command loop 대신 Devices-FindAndCommand 를 먼저 선택하도록, query 형식을 <방> + <기기 종류> (필요 시 "불"→"조명"/"light" 같은 동의어 변환)로 만들도록 안내. 결과: "컴퓨터방 불 꺼줘" 가 4-5턴 → 2턴으로 회복.
AEB app v1.0.5 + MCP server — compressed tool descriptions & accurate matching #
2026-05-07
The SmartThings MCP server and the embedded ST client inside the AEB app received the same tool-description compression and FindAndCommand match fixes.
Optimizations
- Tool descriptions ~50% smaller — every one of the 26 SmartThings tool descriptions trimmed to a single concise paragraph. Korean trigger keywords (
방송, 알림, 외출, 조명들, …) and anti-patterns (e.g. TTS only via Devices-Speak) are preserved. Fully JSON-Schema compliant, so external MCP clients (Claude.ai, Cursor, …) are unaffected.
- First-turn tokens ~30% lower — serialized
tools/list dropped from ~21KB to ~9KB; first-call input on AEB chat falls from ~7,800 to ~5,400 tokens.
Match fixes
- Devices-FindAndCommand now matches by room name — previously the tool only looked at device label and category, so a phrase like
"turn off the bedroom light" failed when the device was just labeled "Light". We now look up listRooms and match the room name as a third field.
- Multi-word AND matching — the query is split on whitespace and every token must hit at least one of {label, category, room name}. Example: query=
"bedroom light" → "bedroom" matches the room, "light" matches the category → only the bedroom lights are targeted (an air purifier with the same room is excluded).
- Sharper tool-routing description — explicit examples and warnings push the model to call
Devices-FindAndCommand directly for natural-language commands (instead of Devices-List + Devices-Command loops) and to build the query as <room> + <device-kind> with synonym translation (e.g. "불"→"조명"/"light"). Result: "컴퓨터방 불 꺼줘" regressed from 4–5 turns to 2 again.
AEB 앱 v1.0.4 — Skill 자동 인지 + 카테고리 매핑 #
2026-05-06
Skill 활용에 대한 client + server 양쪽 변화를 정리합니다. 서버 도구 자체는 변경 없음 (이미 category 필터 지원).
기능
- Skill 자동 인지 + 사용 토글 — Tesla 같은 driver 가 발행한
aeb.skill capability(자기 능력·예시 모음)를 AEB 가 자동으로 LLM system prompt 에 주입해 정확한 명령 생성을 돕습니다. 설정 → Agent → "Skill 사용" 토글로 ON/OFF (기본 ON). 첫 턴 토큰 비용 vs 매칭 정확도 비교 가능.
- device-categories reference 신규 추가 — 한국어 자연어 명령("조명 다 꺼줘", "센서 상태", "TV 음소거")을 SmartThings 표준 device category enum (
Light, MotionSensor, Television 등) 으로 매핑하는 가이드. 그룹별 분류(조명·스위치·센서·공조·보안·가전·청소·미디어·에너지·환경 등) + 키워드 + 인접 그룹 fallback 룰 포함.
- decision-tree 보강 — "사용자가 자연어로 기기를 지칭한다" 시나리오 추가. category 결정 →
Devices-Search 흐름 명시.
- SmartThings MCP 도구 자체는 변경 없음 — Devices-Search/Find/StatusByQuery 가 이미
category 파라미터 지원하던 것을 LLM 이 더 정확히 활용할 수 있게 만든 변화.
AEB app v1.0.4 — Skill auto-discovery + category mapping #
2026-05-06
Tracks both client and server changes around Skill usage. No tool-shape changes (server already supports category filtering).
Features
- Skill auto-discovery + toggle — devices (e.g. Tesla driver) that publish the
aeb.skill capability now have their self-description injected into the LLM system prompt automatically. Toggle in Settings → Agent → "Enable Skill" (default on). Useful for comparing first-turn token cost vs. matching accuracy.
- New device-categories reference — maps Korean natural-language phrases ("turn off the lights", "sensor status", "mute the TV") to standard SmartThings category enums (
Light, MotionSensor, Television, etc.). Group-based layout + keywords + adjacent-group fallback rules.
- Decision-tree augmented — added scenario "user refers to a device in natural language" with the category-decision →
Devices-Search flow.
- No tool-shape changes on the server — Devices-Search/Find/StatusByQuery already accepted the
category parameter; this change helps the LLM use it correctly.
AEB 앱 v1.0.3 — 클라이언트측 MCP 변경 #
2026-05-04
SmartThings MCP 서버 자체는 이번 업데이트에서 변경되지 않았습니다. AEB 앱 안에서 MCP를 어떻게 쓰는지에 대한 변화만 정리합니다.
기능
- 웹 검색 RAG 도구 추가 — AEB 안에 새 MCP 클라이언트(
websearch)가 추가되어 LLM이 DuckDuckGo에서 실시간 검색을 수행할 수 있습니다. 설정 토글로 ON/OFF.
- 두 가지 채팅 모드 — CHAT 모드는 평소처럼 모든 MCP 도구 호출 가능, API 모드는 삭제·룰 변경·기기 변경 같은 위험 도구를 호출 단계에서 자동 차단합니다.
- 채팅 화면 하단에 "API 모드 시뮬레이션" 토글 — 자동화/외부 호출 시점의 MCP 동작을 앱 안에서 미리 검증할 수 있습니다.
AEB app v1.0.3 — client-side MCP changes #
2026-05-04
The SmartThings MCP server itself is unchanged in this update. This entry tracks only how the AEB app uses MCP.
Features
- New Web Search RAG tool — a new in-app MCP client (
websearch) lets the LLM run live DuckDuckGo lookups. Toggle in Settings.
- Two chat modes — CHAT keeps all MCP tools available; API mode blocks destructive tools (delete / rule changes / device updates) at dispatch time.
- "API mode simulation" toggle in the chat screen — preview how MCP behaves under automation / external calls without leaving the app.