Project AIRI框架
使用说明
项目简介
Project AIRI 是一个开源的AI VTuber项目框架,它利用WebGPU、WebAudio、WebSocket等Web技术构建,旨在提供一个跨平台、可扩展的AI角色虚拟化身解决方案。虽然项目本身侧重于VTuber应用,但其架构和组件设计使其可以作为构建MCP服务器的有效基础。AIRI框架的核心能力在于其模块化的设计,可以用于托管和管理资源,集成外部工具,并支持灵活的Prompt模板定义,这些都与MCP服务器的核心职责高度契合。
主要功能点
- 资源管理 (Resources): 项目结构清晰,易于扩展和管理各种资源,例如Live2D模型、VRM模型、音频资源等,这些可以被视为MCP服务器需要托管和管理的资源。
- 工具集成 (Tools): 项目支持与多种外部API和服务集成,如LLM提供商 (OpenAI, Anthropic等)、语音合成服务 (ElevenLabs) 和游戏 (Minecraft, Factorio) 等。这些集成能力可以被抽象为MCP服务器需要注册和执行的工具。
- Prompt模板 (Prompts): 项目包含Prompt工程的playground,虽然没有直接展示Prompt模板的定义和渲染,但从代码结构(如 'apps/playground-prompt-engineering' 和 'src/composables/useCharacterPrompt.ts')可以看出,项目具备处理和定制Prompt的能力,这可以扩展为MCP服务器的Prompt模板渲染功能。
- 多协议支持: 项目明确使用了WebSocket,这符合MCP服务器支持多种传输协议的要求。
- 模块化设计: 项目采用模块化设计(如 Core, Brain, Body, Mouth, Ears),方便开发者根据MCP服务器的需求进行定制和扩展。
安装步骤
由于Project AIRI本身是一个框架,要将其用作MCP服务器的基础,通常需要基于此框架进行二次开发。以下步骤描述了如何搭建AIRI框架的开发环境,以便于后续的定制和扩展:
-
克隆仓库:
git clone https://github.com/moeru-ai/airi.git cd airi -
安装依赖: 确保你的环境中安装了 'pnpm'。如果没有,请先安装Node.js 和 pnpm ('npm install -g pnpm')。然后运行:
pnpm install
服务器配置
Project AIRI 框架本身不是一个开箱即用的 MCP 服务器,但它可以作为构建 MCP 服务器的基础。对于 MCP 客户端,配置信息需要指向基于 AIRI 框架开发的 MCP 服务器实例。
以下是一个假设的基于 AIRI 框架构建的 MCP 服务器的配置示例。你需要根据实际的二次开发情况调整 'command' 和 'args'。
{ "serverName": "AiriMCP", "command": "pnpm", "args": [ "start", // 假设启动命令为 'start',需要根据实际情况调整 "--config", // 假设有配置文件参数 "mcp-server-config.json" // 假设配置文件名为 'mcp-server-config.json' ], "description": "Airi Framework based MCP Server", "transport": "websocket", // 假设使用 WebSocket 协议 "address": "ws://localhost:6121/ws" // 假设 WebSocket 地址为 ws://localhost:6121/ws }
参数注释:
- 'serverName': MCP 服务器的名称,可以自定义。
- 'command': 启动 MCP 服务器的命令,例如 'node', 'python', 'pnpm' 等。 需要根据你实际使用的运行时和启动脚本进行调整。 这里假设使用 'pnpm' 启动。
- 'args': 启动命令的参数列表。 需要根据你的服务器启动脚本和配置需求进行调整。 示例中假设使用 'start' 命令启动,并通过 '--config mcp-server-config.json' 指定配置文件。
- 'description': MCP 服务器的描述信息,可以自定义。
- 'transport': MCP 服务器使用的传输协议,例如 'stdio', 'sse', 'websocket'。 示例中假设使用 'websocket'。 需要根据你实际服务器的配置进行调整。
- 'address': MCP 服务器的地址,例如 WebSocket 地址或 HTTP 地址。 示例中假设 WebSocket 地址为 'ws://localhost:6121/ws'。 需要根据你实际服务器的监听地址进行调整。
请注意: 上述配置是一个示例,你需要根据基于 AIRI 框架二次开发的 MCP 服务器的具体实现来生成准确的配置信息。 关键在于 'command' 和 'args' 必须能够正确启动你的 MCP 服务器程序。
基本使用方法
-
启动 MCP 服务器: 根据二次开发的 MCP 服务器的启动说明,运行相应的命令来启动服务器。例如,如果你的启动命令是 'pnpm start --config mcp-server-config.json',则在终端中执行此命令。
-
配置 MCP 客户端: 在 MCP 客户端中,填入上面生成的 JSON 格式配置信息,确保客户端能够连接到正在运行的 MCP 服务器。
-
使用 MCP 客户端与服务器交互: 根据 MCP 客户端的使用说明,利用客户端提供的界面或API,向 MCP 服务器发送请求,例如读取资源、调用工具、获取 Prompt 等,并接收服务器返回的响应。
重要提示: Project AIRI 仓库本身更多的是一个 AI VTuber 框架,而不是一个可以直接运行的 MCP 服务器。 你需要基于 AIRI 框架进行二次开发,实现符合 MCP 协议的具体服务器功能,才能作为一个有效的 MCP 服务器使用。 'MCP Launcher' 项目可能是官方提供的基于 AIRI 框架构建 MCP 服务器的工具,但该仓库信息中没有包含 'MCP Launcher' 的具体代码,需要额外查找 'MCP Launcher' 仓库进行分析。