AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
Anki Vector + OpenClaw integration via MCP. Give your AI assistant a body. MCP server connecting Anki Vector robots to OpenClaw. Your assistant, now with wheels. VectorClaw: Anki Vector as an embodi
개발 도구Python · DockerfileGitHub @danmartinez78직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
설치형 프로젝트는 배포 도메인 없이도 확인할 수 있습니다. 개인 저장소는 GitHub 로그인으로, 조직 저장소는 위의 저장소 확인 파일로 직접 확인해 주세요.
Anki Vector + OpenClaw integration via MCP. Give your AI assistant a body. MCP server connecting Anki Vector robots to OpenClaw. Your assistant, now with wheels. VectorClaw: Anki Vector as an embodied AI platform for OpenClaw.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Give your AI assistant a body.
VectorClaw is an MCP server that exposes Anki Vector robot capabilities as tools for AI assistants like OpenClaw — bridging natural language to real-world robot actions over a fully local, cloud-free stack.
┌─────────────┐ stdio MCP ┌──────────────────┐ gRPC/WiFi ┌─────────┐
│ AI Agent │ ─────────────── │ vectorclaw-mcp │ ─────────────── │ Vector │
│ (OpenClaw) │ │ (Python 3.11+) │ │ Robot │
└─────────────┘ └──────────────────┘ └─────────┘
All communication is local-only — no cloud dependency at runtime (Wire-Pod setup path).
See Security Architecture for the full trust model.
v1.0.0 Released · 2026-03-01
16 tools verified ✅ on hardware | 7 tools experimental ⚠️
Known limitations:
vector_drive_on_charger — requires the charger to be in Vector's recently-observed world model; call vector_scan first to give Vector a chance to locate the charger before attempting to dock (observed: invoking while charger is unobserved causes the command to time out without any robot motion)vector_find_faces, vector_list_visible_faces, vector_face_detection, vector_list_visible_objects) — return empty results when vision modes are not active; vision modes are enabled automatically at connect but will be disabled for the remainder of the session after a vector_vision_reset call (reconnect to restore)See ROADMAP.md for the full milestone plan.
Requirements: Python 3.11+ · Wire-Pod running · Vector on local WiFi
For the complete walkthrough (Wire-Pod install, robot auth, WiFi config, troubleshooting) see docs/SETUP.md.
The vectorclaw-setup wizard handles configuration, SDK validation, connectivity
check, and a smoke test in one go:
pip install vectorclaw-mcp
vectorclaw-setup
You will be prompted for your robot's serial number and optional IP address. On success you'll see a clear SETUP PASSED message and the next-steps command. On failure every step includes an exact remediation hint.
See docs/OPENCLAW_SETUP_SKILL.md for full details.
Step 1 — Install VectorClaw
pip install vectorclaw-mcp
Step 2 — Configure Vector SDK
Wire-Pod is the canonical self-hosted server for Vector. Install the SDK distribution and run the one-time auth wizard:
pip install wirepod_vector_sdk
python -m anki_vector.configure
Note:
wirepod_vector_sdkinstalls under theanki_vectorPython namespace, so all imports and CLI commands useanki_vector.
The standalone anki_vector package requires working DDL cloud servers and is brittle on modern Python runtimes.
pip install "vectorclaw-mcp[legacy]"
python -m anki_vector.configure
Prefer wirepod_vector_sdk for reliable, cloud-independent operation.
Step 3 — Set environment variables
export VECTOR_SERIAL="your-robot-serial" # required — printed on underside of robot
export VECTOR_HOST="192.168.x.x" # optional — auto-discovered if omitted
export VECTOR_REPEAT_GUARD_SECONDS="10" # optional — refuse identical actuating calls within N s (0 = off)
Step 4 — Run the server
vectorclaw-mcp
# or
python -m vectorclaw_mcp
Add the following block to your mcporter.json (or equivalent MCP client config).
With uvx (recommended — no prior install needed)
{
"mcpServers": {
"vectorclaw": {
"command": "uvx",
"args": ["vectorclaw-mcp"],
"env": {
"VECTOR_SERIAL": "your-serial-here"
}
}
}
}
With pip install (if installed locally)
{
"mcpServers": {
"vectorclaw": {
"command": "vectorclaw-mcp",
"env": {
"VECTOR_SERIAL": "your-serial-here"
}
}
}
}
| Tool | Category | Description | Status |
|---|---|---|---|
vector_say | 🎙️ Speech | Make the robot speak text aloud | ✅ |
vector_animate | 🎭 Expression | Play a named animation | ⚠️ |
vector_drive_off_charger | 🏎️ Motion | Drive the robot off its charger | ✅ |
vector_drive | 🏎️ Motion | Drive straight and/or turn in place | ✅ |
vector_drive_on_charger | 🏎️ Motion | Drive Vector back onto its charger | ⚠️ |
vector_emergency_stop | 🏎️ Motion | Stop all motion immediately | ✅ |
vector_head | 🦾 Actuation | Set head angle (−22° – 45°) | ✅ |
vector_lift | 🦾 Actuation | Set lift height (0.0 – 1.0) | ✅ |
vector_look | 👀 Perception | Capture image from front camera | ✅ |
vector_capture_image | 👀 Perception | One-shot image capture | ✅ |
vector_face | 🖼️ Display | Display custom image on face screen | ✅ |
vector_scan | 🔍 Perception | Head scan for environment | ✅ |
vector_find_faces | 🔍 Perception | Scan for faces | ⚠️ |
vector_list_visible_faces | 🔍 Perception | List currently visible faces | ⚠️ |
vector_face_detection | 🔍 Perception | Get face detection summary | ⚠️ |
vector_list_visible_objects | 🔍 Perception | List currently visible objects | ⚠️ |
vector_cube | 🎲 Interaction | Interact with cube (dock/pickup/drop/roll) | ⚠️ |
Status legend: ✅ Verified on hardware | ⚠️ Experimental (requires specific preconditions; see API Reference)
⚠️ Charger prerequisite:
vector_driverequires the robot to be off the charger. Callvector_drive_off_chargerfirst, or setVECTOR_AUTO_DRIVE_OFF_CHARGER=1for automatic undocking.
See docs/MCP_API_REFERENCE.md for full parameter details and response schemas.
dev, use <type>/<short-description> naming (e.g. fix/vector-face-payload, feat/vector-scan)tests/; all tests use the mocked SDK — no hardware requiredpytest tests/ -v locally before opening a PR| Document | Description |
|---|---|
| Setup Guide | Wire-Pod install, robot auth, WiFi, SDK config, troubleshooting |
| Troubleshooting | Common runtime failures, smoke baseline, and escalation path |
| Runtime Support | Supported Python versions and CI policy |
| Document | Description |
|---|---|
| API Reference | MCP tool signatures, parameters, response schemas |
| Wire-Pod SDK Reference | Full SDK capability catalog |
| Wire-Pod SDK → MCP Integration Priorities | Now/Later/Skip decision table for future tools |
| Document | Description |
|---|---|
| Hardware Test Playbook | Repeatable on-robot validation protocol and PR checklist |
| Hardware Smoke Log | Running record of real-world smoke tests |
| Tool Docking Prerequisites | Which tools require undocked state |
| Document | Description |
|---|---|
| Security Architecture | Threat model, credential handling, input validation, network posture |
MIT — see LICENSE.
vector_vision_reset |
| 👀 Perception |
| Disable all vision modes |
| ✅ |
vector_pose | 📍 Sensing | Get current position and orientation | ✅ |
vector_status | 📊 Status | Get battery level and charging status | ✅ |
vector_charger_status | 📊 Status | Get charger connection state | ✅ |
vector_touch_status | 📊 Status | Get touch sensor state | ✅ |
vector_proximity_status | 📊 Status | Get proximity sensor reading | ✅ |