vnyan-mcp
Enables full control and observation of VNyan VTuber avatar software from any MCP client, including reading and writing parameters, triggers, blendshapes, bones, node graphs, and settings.
README
vnyan-mcp
An MCP server for full-coverage control of VNyan (VTuber avatar software) from Claude or any other MCP client — parameters, triggers, blendshapes, bones, pendulums, props, colliders, node graphs, and more.
VNyan's own automation ports (REST/WebSocket/OSC) are fire-and-forget only — they can trigger things but never read state back. This project ships a small VNyan plugin that opens a real two-way bridge, plus an MCP server that talks to it, so an LLM can both drive your avatar and observe it.
What it covers
- Parameters, dictionaries, triggers — get/set VNyan's runtime variables, call named triggers, watch recent trigger activity
- Avatar — live blendshape values and overrides, humanoid bone read/write
- Pendulum chains, stretch bones, colliders, props, Spout2 cameras — read the persisted config and drive them live
- Node graphs — read, author, and export/import VNyan's visual node graphs; a generated "bridge graph" makes post-processing effects and lights controllable
- Settings — read the full
settings.jsonconfig (tracking, output, graphics, audio, connections, misc) and write it with guardrails - VNyanNet, plugin inventory, native REST/WebSocket/OSC passthroughs
Full capability list and verified behavior: docs/VERIFIED.md.
Requirements
- VNyan, with Allow Mods enabled (Settings → Misc)
- Node.js ≥ 22
- Windows (VNyan itself is Windows-only)
Install
Step 1 — the plugin
- Download
VNyanMcp.dllfrom the latest release. - Close VNyan if it's running.
- Drop the DLL into
<your VNyan folder>\Items\Assemblies\. - In VNyan, enable Allow Mods (Settings → Misc) if you haven't already.
- Start VNyan.
- Confirm it loaded: open
Player.login VNyan's profile directory (Settings → Misc → Open Log Folder, or%USERPROFILE%\AppData\LocalLow\Suvidriel\VNyan\Player.logby default) and look for[VNyanMcp] initialized.
Step 2 — the MCP server
With Claude Code:
claude mcp add vnyan -- npx -y github:seth-rah/vnyan-mcp
For Claude Desktop or another MCP client, add this to your MCP config:
{
"mcpServers": {
"vnyan": {
"command": "npx",
"args": ["-y", "github:seth-rah/vnyan-mcp"]
}
}
}
No manual build step needed — npx installs and builds it on first run.
Verify
Ask your MCP client to call vnyan_status. All four reflection systems
(props, colliders, spout2, stretchbones) should report true, and
it will show which VNyan profile directory it resolved and how (see
Configuration below — nothing is hardcoded).
Configuration
Every path this server needs is resolved at runtime, not hardcoded. Env vars, all optional:
| Variable | Purpose | Default |
|---|---|---|
VNYAN_PROFILE_DIR |
VNyan's profile directory (settings, colliders, node graphs) | Asked from the running plugin; falls back to the conventional %USERPROFILE%\AppData\LocalLow\Suvidriel\VNyan path if the plugin isn't reachable |
VNYAN_MCP_GRAPH_EXPORT_DIR |
Where authored/exported node graphs are written | <resolved profile dir>\Exports |
VNYAN_MCP_BRIDGE_URL |
The plugin's HTTP bridge | http://127.0.0.1:8071/rpc |
VNYAN_REST_URL |
VNyan's built-in REST API (native port passthrough) | http://127.0.0.1:8069/ |
VNYAN_WS_URL |
VNyan's built-in WebSocket (native port passthrough) | ws://127.0.0.1:8000/vnyan |
VNYAN_OSC_HOST / VNYAN_OSC_PORT |
VNyan's OSC receiver (native port passthrough) | 127.0.0.1 / 28569 |
Security note
The plugin's bridge listens on 127.0.0.1:8071 — loopback-only, but
unauthenticated. Any process running as you on your own machine can
reach it and drive your avatar while VNyan is running. This is a
deliberate tradeoff (matching VNyan's own REST/WS/OSC ports, which have
the same property) rather than an oversight, but you should know about it
before installing.
What needs VNyan closed
Only settings.json writes (vnyan_settings_set, and the
Props/Chains/StretchBones/Gestures/Expressions writes that live inside it)
require closing VNyan — it rewrites that file on every save and would
silently clobber an external edit. Everything else, including node graph
authoring (which exports a file for live import via VNyan's own "Load
Graph" menu), works with VNyan running. Details:
vnyan_guide topic:'restart-policy'.
Known limits
See docs/VERIFIED.md for the full list. Highlights:
post-processing effects and lights are write-only at every tier (no
readback exists in VNyan); SunLightNode has an unexplained VNyan-side bug
that limits its bridge action to fixed defaults; reflection-backed
capabilities (props, colliders, Spout2, stretch bones) depend on internal
names that could change in a future VNyan update — vnyan_status is the
canary if something breaks.
Building the plugin yourself
cd plugin
dotnet build -c Release -p:VNyanPath="<your VNyan install folder>"
The build fails with a clear error if VNyanPath is missing or doesn't
point at a real VNyan install. The bundled node-type schema
(src/graph/schema.json) and the reflection-backed capabilities were
generated against Unity 2022.3.62f3 — if a VNyan update changes node
types or breaks a reflected capability, vnyan_status will show it.
License
MIT — see LICENSE.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。