live2d-mcp

live2d-mcp

An interactive desktop companion with a Live2D model that can be controlled via MCP protocol, featuring TTS, music playback, alarms, and more.

Category
Visit Server

README

Live2D MCP Companion

Интерактивный десктопный компаньон с Live2D-моделью, управляемый через MCP (Model Context Protocol). Работает на Windows.

Возможности

  • Live2D-персонаж — анимированная модель Hiyori на десктопе (через PyQt6 + OpenGL)
  • TTS (Text-to-Speech) — голосовой вывод через Piper TTS (русские голоса: Irina, Denis, Ruslan)
  • STT (Speech-to-Text) — распознавание речи через faster-whisper ⚠️ (временно не работает)
  • MCP сервер — 36 инструментов для управления персонажем через любой MCP-клиент
  • RAG (Retrieval-Augmented Generation) — семантический поиск по документам
  • Веб-интерфейс — управление через браузер на http://localhost:8766
  • Музыкальный плеер — воспроизведение MP3 через pygame
  • Будильник и таймер — с MCP-уведомлениями
  • Скриншоты — снимок экрана с реакцией персонажа
  • Игровые режимы — прятки, танцы, эмоции и др.
  • Дополнительные модели — Nagatoro Sprite (спрайтовая модель в отдельном репозитории)

Системные требования

  • Windows 10/11
  • Python 3.12+
  • Видеокарта с поддержкой OpenGL
  • Микрофон (для STT)

Установка

1. Клонировать репозиторий

git clone https://github.com/nukkerman2000/live2d-mcp.git
cd live2d-mcp

2. Установить портабельный Python

Скачайте embeddable Python 3.12 и распакуйте в папку python\.

Либо используйте системный Python.

3. Установить зависимости

Запустите setup_python.bat или выполните вручную:

python\python.exe get-pip.py
python\Scripts\pip.exe install -r requirements.txt

4. Настроить конфиг

Скопируйте config.example.json в config.json и настройте под себя.

5. Загрузить голосовые модели

Скачайте Piper-голоса в папку voices\:

6. Загрузить Piper TTS бинарники

Скачайте Piper TTS для Windows и распакуйте piper.exe и DLL в папку piper\.

Запуск

start.bat

После запуска:

  • MCP сервер: http://127.0.0.1:8765/mcp
  • Веб-интерфейс: http://127.0.0.1:8766

MCP Инструменты

Всего 36 инструментов для управления персонажем через MCP.

Управление моделью

Инструмент Описание
switch_model Переключение между моделями (hiyori, nagatoro_sprite)
set_emotion Установить эмоцию/выражение лица
set_mouth_open Управление открытием рта (липсинк)
play_motion Воспроизвести анимацию движения
stop_all_motions Остановить все анимации
list_motion_groups Список доступных групп анимаций
set_eye_position Управление направлением взгляда
set_parameter Установить любой параметр модели Live2D

Окно персонажа

Инструмент Описание
show / hide Показать/скрыть окно персонажа
move_window Переместить окно по координатам
resize_window Изменить размер окна
center_window Центрировать окно на экране
get_status Получить статус персонажа и окна

TTS / Голос

Инструмент Описание
speak Озвучить текст через TTS (с липсинком)
list_voices Список доступных голосов
stop_speaking Остановить воспроизведение

Музыка

Инструмент Описание
list_tracks Список MP3-треков
play_track / stop_music Воспроизвести/остановить трек
next_track / prev_track Следующий/предыдущий трек
play_random_track Случайный трек
set_loop / set_autoplay Режимы повтора и автовоспроизведения
set_music_volume Громкость музыки
set_mcp_music Разрешить MCP управлять музыкой

Будильник и таймер

Инструмент Описание
set_alarm_text Установить будильник (время HH:MM, текст)
set_timer Запустить таймер (в минутах)
get_alarm_timer_status Статус будильника и таймера

Прочее

Инструмент Описание
take_screenshot Сделать скриншот экрана
list_available_emotions Список доступных эмоций
query_documents Поиск по документам (RAG)
ingest_file Загрузить файл в RAG-индекс
list_documents Список проиндексированных документов
rag_status Статус RAG-системы

Конфигурация

Основные настройки в config.json:

  • TTS движок, голос, скорость
  • Порты MCP и веб-интерфейса
  • Включение/отключение STT, музыки, будильника
  • Эмоции и анимации для разных режимов
  • Фразы для интерактивного общения

Структура проекта

├── run.py                 # Точка входа
├── mcp_server.py          # MCP сервер
├── live2d_display.py      # Отрисовка Live2D (PyQt6 + OpenGL)
├── talk.py                # Логика диалогов и интерактивности
├── tts.py                 # TTS движок (Piper)
├── stt.py                 # Распознавание речи
├── music_player.py        # Музыкальный плеер
├── alarm_timer.py         # Будильник и таймер
├── voice_bridge.py        # Голосовой мост
├── web_ui.py              # Веб-интерфейс (Starlette + uvicorn)
├── mcp_client.py          # MCP клиент
├── phrases.py / .json     # Фразы персонажа
├── ui.js                  # Клиентская часть веб-интерфейса
├── rag/                   # RAG движок
├── play_modes/            # Игровые режимы
└── assets/live2d/         # Live2D и спрайтовые модели (Hiyori, Nagatoro_sprite)

Безопасность

Приложение не отправляет данные в интернет (кроме загрузки моделей STT/TTS при первом запуске). MCP сервер слушает только 127.0.0.1.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured