蔚蓝档案小工具
这是一个模型上下文协议(MCP)服务器,提供了对《蓝色档案》游戏数据的全面访问,包括学生信息、装备、关卡、物品等。该服务器与SchaleDB API集成,并支持多种语言。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"blue-archive": {
"args": [
"path/to/blue_archive_mcp/dist/index.js"
],
"command": "node",
"env": {
"NODE_ENV": "production"
}
}
}
}
可用工具 (13 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
get_students 7 个参数
获取蔚蓝档案学生列表。支持多种筛选条件:按学校(如三一、格黑娜等)、星级(1-3星)、职业(坦克、治疗、输出等)筛选。支持名称搜索(中文、日文、英文均可)。可选择返回详细信息(包含属性、技能等)或简要信息(仅基本信息)。默认返回20个结果,可调整限制数量。
该工具无需必填参数,直接调用即可
get_student_by_name 3 个参数 需填 1 项
通过学生名称精确查找特定学生信息。支持中文、日文、英文名称搜索,如'アル'、'阿露'、'Aru'等。可选择返回详细信息(包含完整属性、技能、装备数据)或简要信息(仅基本信息)。适用于已知学生名称的精确查询。
必填参数:name
get_student_info 2 个参数 需填 1 项
通过学生ID获取完整的学生详细信息。返回包括基础属性、成长数值、技能详情、装备信息、好感度奖励、语音数据等全面信息。适用于需要获取学生完整数据的场景,如攻略制作、数据分析等。
必填参数:studentId
get_raids 3 个参数
获取总力战(Raid)信息。包含各个总力战Boss的基本信息、地形类型、推荐等级等。支持名称搜索功能,可选择返回详细信息(包含具体机制、弱点等)或简要信息。适用于总力战攻略查询和Boss信息查看。
该工具无需必填参数,直接调用即可
get_equipment 5 个参数
获取装备信息数据。支持按装备类别(如T1-T7装备)、等级筛选。可选择返回详细信息(包含装备效果、获取途径等)或简要信息。适用于装备查询、升级规划等场景。默认返回20个结果。
该工具无需必填参数,直接调用即可
get_game_config 1 个参数
获取游戏配置和版本信息。包含当前游戏版本、服务器区域设置(国服、日服、国际服等)、数据更新时间等基础配置信息。适用于了解当前数据版本和服务器状态。
该工具无需必填参数,直接调用即可
get_stages 7 个参数
获取关卡信息数据。支持按区域、章节、难度筛选。支持关卡名称搜索。可选择返回详细信息(包含敌人配置、掉落物品、推荐等级等)或简要信息。适用于关卡攻略查询和掉落物查看。 **重要:所有参数必须使用英文** - area参数示例:'campaign'(主线), 'event'(活动), 'bounty'(悬赏), 'hard'(困难) - difficulty参数示例:'normal'(普通), 'hard'(困难), 'extreme'(极难) - 关卡搜索支持:'1-1', '2-3'等格式
该工具无需必填参数,直接调用即可
get_items 7 个参数
获取游戏物品信息。支持按物品类别(如材料、消耗品等)、稀有度、标签筛选。支持物品名称搜索。可选择返回详细信息(包含获取途径、用途说明等)或简要信息。适用于物品查询和获取途径查看。
该工具无需必填参数,直接调用即可
get_furniture 8 个参数
获取咖啡厅家具信息。支持按家具类别、类型、稀有度、标签筛选。支持家具名称搜索。可选择返回详细信息(包含舒适度加成、获取方式等)或简要信息。适用于咖啡厅装修规划和家具收集。
该工具无需必填参数,直接调用即可
get_enemies 9 个参数
获取敌人信息数据。支持按敌人类型、等级、护甲类型(轻装甲、重装甲、特殊装甲)、子弹类型(爆发、贯通、神秘)、适应地形筛选。支持敌人名称搜索。可选择返回详细信息(包含技能、属性等)或简要信息。适用于战斗策略制定。
该工具无需必填参数,直接调用即可
get_student_avatar 5 个参数
获取学生头像图片,支持多种头像类型。通过学生ID或名称查询,返回Markdown格式的图片链接。支持的头像类型:portrait(全身立绘,默认)、collection(收藏立绘)、icon(头像图标)、lobby(大厅立绘)。注意:不同服装的角色(如泳装、新春等)拥有独立的角色ID,需要先通过find_student_variants查找变体。
该工具无需必填参数,直接调用即可
find_student_variants 4 个参数 需填 1 项
查找角色的所有变体版本(如泳装、新春、兔女郎等不同服装)。基于名称相似度智能匹配,帮助快速发现一个角色的所有变体形态。支持中文、日文、英文名称搜索,如输入'アル'可找到'アル'、'アル(正月)'等所有变体。返回变体列表及相似度评分。
必填参数:name
get_multiple_student_avatars 4 个参数 需填 1 项
批量获取多个学生的头像图片,提高查询效率。通过学生ID数组一次性获取多个角色的头像,避免多次单独调用。支持所有头像类型(portrait、collection、icon、lobby),返回Markdown格式的图片展示。适用于制作角色对比、团队展示等场景。
必填参数:studentIds
服务介绍
Blue Archive MCP 服务器
一个提供全面访问《碧蓝档案》游戏数据的模型上下文协议(MCP)服务器,包括学生信息、装备、关卡、物品等。
目录
概览
Blue Archive MCP 服务器与 SchaleDB API 集成,为 AI 助手提供实时访问《碧蓝档案》游戏数据的功能。该服务器实现了模型上下文协议,能够与支持 MCP 的客户端(如 Claude Desktop)无缝集成。
主要功能
- 学生数据库:访问所有《碧蓝档案》学生的详细信息
- 装备和物品:浏览武器、装备和消耗品
- 关卡信息:获取战役关卡和突袭战的详细信息
- 多媒体内容:检索学生头像和语音片段
- 高级搜索:跨所有数据类型进行过滤和搜索
- 多语言支持:支持中文、日语和英语
功能
- ✅ 8个全面工具 用于访问游戏数据
- 🌐 多语言支持 (CN/JP/EN)
- 🔍 高级过滤 和搜索功能
- 🖼️ 丰富的媒体集成 (头像, 语音片段)
- ⚡ 性能优化 带有缓存
- 🛡️ 错误处理 和重试机制
- 📱 响应式数据格式 (文本/Markdown)
安装
前提条件
- Node.js 18+
- npm 或 yarn 包管理器
- 支持 MCP 的客户端(例如 Claude Desktop)
方法 1:NPM 安装(推荐)
直接从 NPM 安装:
npm install -g blue-archive-mcp
或者在你的项目中本地安装:
npm install blue-archive-mcp
方法 2:从源代码安装
- 克隆仓库
git clone <repository-url> cd blue_archive_mcp - 安装依赖
npm install - 构建项目
npm run build - 测试服务器
npm start
配置
Claude Desktop 集成
将以下配置添加到你的 Claude Desktop 配置文件中:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
对于 NPM 安装:
{
"mcpServers": {
"blue-archive": {
"command": "npx",
"args": ["blue-archive-mcp"],
"env": {
"NODE_ENV": "production"
}
}
}
}
对于源代码安装:
{
"mcpServers": {
"blue-archive": {
"command": "node",
"args": ["path/to/blue_archive_mcp/dist/index.js"],
"env": {
"NODE_ENV": "production"
}
}
}
}
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
NODE_ENV |
环境模式 | development |
LOG_LEVEL |
日志级别 | info |
CACHE_TIMEOUT |
缓存超时时间 (毫秒) | 300000 |
可用工具
1. get_students
检索带有过滤选项的学生信息。
参数:
language(字符串, 可选): 语言偏好 (cn/jp/en) - 默认: "cn"search(字符串, 可选): 按学生姓名搜索limit(数字, 可选): 最大结果数 - 默认: 20detailed(布尔值, 可选): 包含详细统计数据 - 默认: falseschool(字符串, 可选): 按学校筛选starGrade(数字, 可选): 按星级等级筛选 (1-3)role(字符串, 可选): 按战术角色筛选
2. get_student_info
获取特定学生的详细信息。
参数:
studentId(数字, 必填): 学生的唯一 IDlanguage(字符串, 可选): 语言偏好 - 默认: "cn"
3. get_student_by_name
按名称查找学生(支持多种语言)。
参数:
name(字符串, 必填): 任何支持语言中的学生姓名language(字符串, 可选): 响应语言 - 默认: "cn"detailed(布尔值, 可选): 包含详细信息 - 默认: false
4. get_raids
检索突袭战信息和 Boss 数据。
参数:
language(字符串, 可选): 语言偏好 - 默认: "cn"search(字符串, 可选): 按突袭战名称搜索-detailed(布尔值,可选):包含详细统计信息 - 默认值:false
5. get_equipment
浏览装备和武器数据。
参数:
language(字符串,可选):语言偏好 - 默认值:"cn"category(字符串,可选):装备类别过滤tier(数字,可选):装备等级 (1-7)limit(数字,可选):最大结果数 - 默认值:20detailed(布尔值,可选):包含详细统计信息 - 默认值:false
6. get_stages
访问战役和关卡信息。
参数:
language(字符串,可选):语言偏好 - 默认值:"cn"search(字符串,可选):按关卡名称搜索area(字符串,可选):按区域过滤chapter(字符串,可选):按章节过滤difficulty(字符串,可选):按难度过滤limit(数字,可选):最大结果数 - 默认值:20detailed(布尔值,可选):包含详细信息 - 默认值:false
7. get_items
检索消耗品和材料。
参数:
language(字符串,可选):语言偏好 - 默认值:"cn"search(字符串,可选):按物品名称搜索category(字符串,可选):物品类别过滤rarity(数字,可选):物品稀有度 (1-5)tags(字符串,可选):按标签过滤limit(数字,可选):最大结果数 - 默认值:20detailed(布尔值,可选):包含详细信息 - 默认值:false
8. get_student_avatar
获取学生头像的各种格式。
参数:
studentId(数字,可选):学生的唯一IDname(字符串,可选):学生姓名(替代ID)language(字符串,可选):语言偏好 - 默认值:"cn"avatarType(字符串,可选):头像类型 (portrait/collection/icon/lobby) - 默认值:"portrait"format(字符串,可选):输出格式 (markdown/md) - 默认值:"markdown"
使用示例
基本学生搜索
Find all students from Gehenna Academy
详细学生信息
Get detailed information about Shiroko including stats and skills
装备浏览
Show me all tier 6 weapons with detailed stats
关卡信息
Find all hard difficulty stages in chapter 3
头像显示
Show me Hina's collection avatar in markdown format
开发
项目结构
blue_archive_mcp/
├── src/
│ └── index.ts # Main server implementation
├── dist/ # Compiled JavaScript output
├── package.json # Project dependencies
├── tsconfig.json # TypeScript configuration
└── README.md # This file
从源代码构建
# Install dependencies
npm install
# Build TypeScript
npm run build
# Start development server
npm start
代码架构
服务器使用以下技术构建:
- TypeScript 用于类型安全和现代JavaScript特性
- @modelcontextprotocol/sdk 用于MCP协议实现
- Zod 用于运行时类型验证和模式生成
- SchaleDB API 作为主要数据源
关键组件
- BlueArchiveMCPServer:处理MCP协议的主要服务器类
- SchaleDBClient:用于数据获取的API客户端
- ErrorHandler:集中错误处理和日志记录
- ParameterHandler:输入验证和规范化
- Logger:结构化日志系统
故障排除
常见问题
连接问题
- 症状:服务器无法启动或连接
- 解决方案:检查Node.js版本(需要18+)并验证配置路径
数据加载失败
- 症状:API请求返回空结果
- 解决方案:验证互联网连接和SchaleDB API可用性
工具未显示
- 症状:工具未在Claude Desktop中显示
- 解决方案:在配置更改后重启Claude Desktop
调试模式
通过设置环境变量启用调试日志:
LOG_LEVEL=debug npm start
性能优化
- 默认情况下,数据缓存5分钟
- 当不需要完整数据时,使用
detailed=false以获得更快的响应 - 使用
limit参数限制结果集
贡献
我们欢迎贡献!请遵循以下指南:
- Fork 仓库
- 创建 功能分支 (
git checkout -b feature/amazing-feature) - 提交 您的更改 (
git commit -m 'Add amazing feature') - 推送 到分支 (
git push origin feature/amazing-feature) - 打开 Pull Request
开发指南
- 遵循TypeScript最佳实践- 添加适当的错误处理
- 为新函数添加JSDoc注释
- 在提交前彻底测试更改
许可证
本项目根据MIT许可证发布 - 详情请参阅LICENSE文件。
数据来源
此服务器使用来自SchaleDB的数据,这是一个开源的Blue Archive数据库。所有游戏资源和数据均归其各自所有者所有。
注意:这是一个由粉丝为Blue Archive社区创建的非官方工具。它与游戏的官方开发者没有任何关联,也未得到他们的认可。