
kisaragi-mochi/stackchan-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
kisaragi-mochi/stackchan-mcp — это кандидат на сервер MCP, импортированный из https://github.com/kisaragi-mochi/stackchan-mcp.
Обзор
kisaragi-mochi/stackchan-mcp — это кандидат на сервер MCP, импортированный из https://github.com/kisaragi-mochi/stackchan-mcp.
Обзор (машинный перевод)
Английский | 日本語
Stackchan-MCP
Мост MCP (Model Context Protocol) для официального M5Stack StackChan (комплект поставки Kickstarter 2025), позволяющий любому LLM-клиенту управлять устройством.
Родилась в сообществе проектов stack-chan (основано Синьей Исикавой в 2021 году). Этот репозиторий ориентирован на официальный набор M5Stack StackChan, который вырос из этой линии.
Из любого MCP-клиента (Claude Code / Claude Desktop и других) вы можете вызвать операции StackChan, такие как движение головы, захват камеры, чтение сенсоров и переключатели выражения аватаров.
Планировка репозитория
Это репозиторий — монорепозиторий.
| Каталог | Содержание |
|---|---|
firmware/ |
Полное поддерево git 78/xiaozhi-esp32. Кастомная доска StackChan находится на firmware/main/boards/stackchan/. |
gateway/ |
Python MCP шлюз. stdio MCP сервер (LLM-сторона) + WebSocket MCP клиент (ESP32) + сервер захвата HTTP. |
docs/ |
architecture.md: полная диаграмма компонентов, отображение имён инструментов, фотопоток, аутентификационная система, фазовая дорожная карта. firmware-sync.md: синхронизационный плейбук по восходящему xiaozhi-esp32. remote-access.md: настройка воронки в tailscale для использования вне локальной сети. |
examples/ |
Необязательные, не поддерживаемые примеры. |
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
English | 日本語
stackchan-mcp
An MCP (Model Context Protocol) bridge for the M5Stack official StackChan (2025 Kickstarter shipping kit), letting any LLM client drive the device.
Born out of the stack-chan project community (originated by Shinya Ishikawa in 2021). This repository targets the M5Stack official StackChan kit that grew out of that lineage.
┌─────────────┐ stdio MCP ┌──────────────┐ WebSocket MCP ┌──────────────┐
│ MCP client │ ─────────────────▶ │ gateway │ ──────────────────▶ │ ESP32 (CoreS3│
│ (e.g.Claude)│ ◀───────────────── │ (Python) │ ◀────────────────── │ +StackChan) │
└─────────────┘ │ │ └──────────────┘
│ /capture │ ◀── HTTP POST (JPEG) ──┘
└──────────────┘
From any MCP client (Claude Code / Claude Desktop / others) you can call StackChan operations such as head movement, camera capture, touch sensor reads, and avatar expression switches.
Repository layout
This repository is a monorepo.
| Directory | Contents |
|---|---|
firmware/ |
Full git subtree of 78/xiaozhi-esp32. The custom StackChan board lives at firmware/main/boards/stackchan/. |
gateway/ |
Python MCP gateway. stdio MCP server (LLM side) + WebSocket MCP client (ESP32 side) + HTTP capture server. |
docs/ |
architecture.md: full component diagram, tool name mapping, photo flow, auth, phase roadmap. firmware-sync.md: upstream xiaozhi-esp32 sync playbook. remote-access.md: Tailscale Funnel setup for non-LAN use. |
examples/ |
Optional, unmaintained examples. cloudflare-relay/: Cloudflare Workers WebSocket relay for reaching the gateway from outside the local LAN. |
Target hardware
M5Stack official StackChan kit (Kickstarter 2025 shipping version). The firmware in this repository is meant to replace the kit’s factory firmware.
| Part | Spec |
|---|---|
| Body | M5Stack CoreS3 (ESP32-S3, 16MB Flash, 8MB PSRAM) |
| Neck servos | SCS0009 ×2 (yaw + pitch, serial bus, TX=GPIO6, RX=GPIO7) |
| Camera | GC0308 (DVP, 320×240) |
| Touch | FT6336 / Si12T |
| Display | ILI9342 (SPI, 320×240) |
A self-built stack-chan (following the original stack-chan project design) may also work as long as the pin assignments and I2C addresses match. Reports and PRs welcome.
Tools (callable by MCP clients via the gateway)
| Tool | Description | Status |
|---|
Установка
docker run --rm --cpus=4 --ulimit nofile=65536:65536 \Конфигурация
{
"mcpServers": {
"stackchan-mcp": {
"type": "stdio",
"command": "stackchan-mcp",
"env": {
"STACKCHAN_TOKEN": "your-secret-token-here",
"VISION_HOST": "your.host.lan.ip"
}
}
}
}