Blue Archive MCP Server
Provides comprehensive access to Blue Archive game data including students, equipment, stages, and multimedia content via the SchaleDB API. It enables AI assistants to perform advanced searches and retrieve detailed game information in English, Japanese, and Chinese.
README
Blue Archive MCP Server
A Model Context Protocol (MCP) server that provides comprehensive access to Blue Archive game data, including student information, equipment, stages, items, and more.
Table of Contents
- Overview
- Features
- Installation
- Configuration
- Available Tools
- Usage Examples
- Development
- Troubleshooting
- Contributing
- License
Overview
The Blue Archive MCP Server integrates with the SchaleDB API to provide AI assistants with real-time access to Blue Archive game data. This server implements the Model Context Protocol, enabling seamless integration with MCP-compatible clients like Claude Desktop.
Key Capabilities
- Student Database: Access detailed information about all Blue Archive students
- Equipment & Items: Browse weapons, equipment, and consumable items
- Stage Information: Get details about campaign stages and raids
- Multimedia Content: Retrieve student avatars and voice clips
- Advanced Search: Filter and search across all data types
- Multi-language Support: Available in Chinese, Japanese, and English
Features
- ā 8 Comprehensive Tools for accessing game data
- š Multi-language Support (CN/JP/EN)
- š Advanced Filtering and search capabilities
- š¼ļø Rich Media Integration (avatars, voice clips)
- ā” Performance Optimized with caching
- š”ļø Error Handling and retry mechanisms
- š± Responsive Data Formatting (text/markdown)
Installation
Prerequisites
- Node.js 18+
- npm or yarn package manager
- MCP-compatible client (e.g., Claude Desktop)
Method 1: NPM Installation (Recommended)
Install directly from NPM:
npm install -g blue-archive-mcp
Or install locally in your project:
npm install blue-archive-mcp
Method 2: From Source
-
Clone the repository
git clone <repository-url> cd blue_archive_mcp -
Install dependencies
npm install -
Build the project
npm run build -
Test the server
npm start
Configuration
Claude Desktop Integration
Add the following configuration to your Claude Desktop config file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
For NPM Installation:
{
"mcpServers": {
"blue-archive": {
"command": "npx",
"args": ["blue-archive-mcp"]
}
}
}
For Source Installation:
{
"mcpServers": {
"blue-archive": {
"command": "node",
"args": ["path/to/blue_archive_mcp/dist/index.js"]
}
}
}
Environment Variables
| Variable | Description | Default |
|---|---|---|
LOG_LEVEL |
Logging level | info |
CACHE_TIMEOUT |
Cache timeout (ms) | 300000 |
Available Tools
1. get_students
Retrieve student information with filtering options.
Parameters:
language(string, optional): Language preference (cn/jp/en) - Default: "cn"search(string, optional): Search by student namelimit(number, optional): Maximum results - Default: 20detailed(boolean, optional): Include detailed stats - Default: falseschool(string, optional): Filter by schoolstarGrade(number, optional): Filter by star grade (1-3)role(string, optional): Filter by tactical role
2. get_student_info
Get detailed information for a specific student.
Parameters:
studentId(number, required): Student's unique IDlanguage(string, optional): Language preference - Default: "cn"
3. get_student_by_name
Find student by name (supports multiple languages).
Parameters:
name(string, required): Student name in any supported languagelanguage(string, optional): Response language - Default: "cn"detailed(boolean, optional): Include detailed information - Default: false
4. get_raids
Retrieve raid information and boss data.
Parameters:
language(string, optional): Language preference - Default: "cn"search(string, optional): Search by raid namedetailed(boolean, optional): Include detailed stats - Default: false
5. get_equipment
Browse equipment and weapon data.
Parameters:
language(string, optional): Language preference - Default: "cn"category(string, optional): Equipment category filtertier(number, optional): Equipment tier (1-7)limit(number, optional): Maximum results - Default: 20detailed(boolean, optional): Include detailed stats - Default: false
6. get_stages
Access campaign and stage information.
Parameters:
language(string, optional): Language preference - Default: "cn"search(string, optional): Search by stage namearea(string, optional): Filter by areachapter(string, optional): Filter by chapterdifficulty(string, optional): Filter by difficultylimit(number, optional): Maximum results - Default: 20detailed(boolean, optional): Include detailed information - Default: false
7. get_items
Retrieve consumable items and materials.
Parameters:
language(string, optional): Language preference - Default: "cn"search(string, optional): Search by item namecategory(string, optional): Item category filterrarity(number, optional): Item rarity (1-5)tags(string, optional): Filter by tagslimit(number, optional): Maximum results - Default: 20detailed(boolean, optional): Include detailed information - Default: false
8. get_student_avatar
Get student avatar images in various formats.
Parameters:
studentId(number, optional): Student's unique IDname(string, optional): Student name (alternative to ID)language(string, optional): Language preference - Default: "cn"avatarType(string, optional): Avatar type (portrait/collection/icon/lobby) - Default: "portrait"format(string, optional): Output format (markdown/md) - Default: "markdown"
Usage Examples
Basic Student Search
Find all students from Gehenna Academy
Detailed Student Information
Get detailed information about Shiroko including stats and skills
Equipment Browsing
Show me all tier 6 weapons with detailed stats
Stage Information
Find all hard difficulty stages in chapter 3
Avatar Display
Show me Hina's collection avatar in markdown format
Development
Project Structure
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
Building from Source
# Install dependencies
npm install
# Build TypeScript
npm run build
# Start development server
npm start
Code Architecture
The server is built with:
- TypeScript for type safety and modern JavaScript features
- @modelcontextprotocol/sdk for MCP protocol implementation
- Zod for runtime type validation and schema generation
- SchaleDB API as the primary data source
Key Components
- BlueArchiveMCPServer: Main server class handling MCP protocol
- SchaleDBClient: API client for data fetching
- ErrorHandler: Centralized error handling and logging
- ParameterHandler: Input validation and normalization
- Logger: Structured logging system
Troubleshooting
Common Issues
Connection Problems
- Symptom: Server fails to start or connect
- Solution: Check Node.js version (18+ required) and verify configuration paths
Data Loading Failures
- Symptom: API requests return empty results
- Solution: Verify internet connection and SchaleDB API availability
Tools Not Appearing
- Symptom: Tools don't show up in Claude Desktop
- Solution: Restart Claude Desktop after configuration changes
Debug Mode
Enable debug logging by setting the environment variable:
LOG_LEVEL=debug npm start
Performance Optimization
- Data is cached for 5 minutes by default
- Use
detailed=falsefor faster responses when full data isn't needed - Limit result sets with the
limitparameter
Contributing
We welcome contributions! Please follow these guidelines:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Development Guidelines
- Follow TypeScript best practices
- Add appropriate error handling
- Include JSDoc comments for new functions
- Test changes thoroughly before submitting
License
This project is licensed under the MIT License - see the LICENSE file for details.
Data Source
This server uses data from SchaleDB, an open-source Blue Archive database. All game assets and data are property of their respective owners.
Note: This is an unofficial tool created by fans for the Blue Archive community. It is not affiliated with or endorsed by the game's official developers.
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.