mihoyo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MIHOYO_MCP_DATA_DIR | No | Data directory for accounts, credentials, and alert state. | ~/.mihoyo-mcp |
| MIHOYO_MCP_LOG_LEVEL | No | Log level (logs go to stderr; stdout is reserved for MCP protocol). | INFO |
| MIHOYO_MCP_FERNET_KEY | No | Credential encryption key; production environments should use a secret store. | auto-generated |
| MIHOYO_MCP_STAMINA_THRESHOLD | No | Default stamina threshold for starrail_check_alerts. | 200 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| auth_start_qr_loginA | Start a Miyoushe QR login. Returns a login URL, a base64 PNG QR code and a session_id. Show the QR to the user (they scan it with the Miyoushe app), then call auth_poll_qr_login. |
| auth_poll_qr_loginA | Poll a QR login session started by auth_start_qr_login. Returns status pending/scanned/confirmed; on confirmed the account is stored and returned (cookies stay inside the server). |
| auth_statusA | Overview of logged-in accounts and pending login sessions. |
| accounts_listA | List logged-in miHoYo accounts with their game roles (uid per game). No credentials are ever included. |
| accounts_refreshA | Re-discover game roles (uids) for an account from miHoYo. Pass account_id, or omit it when only one account is logged in. |
| starrail_daily_noteA | Star Rail real-time note: stamina (trailblaze power), reserve stamina, daily training, weekly rogue points and expeditions. account_id from accounts_list; omit when only one account is logged in. |
| genshin_daily_noteA | Genshin Impact real-time note: resin, realm currency, commissions and expeditions. account_id from accounts_list; omit when only one account is logged in. |
| zzz_daily_noteA | Zenless Zone Zero real-time note: battery charge, engagement, video store. account_id from accounts_list; omit when only one account is logged in. |
| starrail_check_alertsA | Check a Star Rail note and return only noteworthy changes (stamina nearly full/full, expeditions complete, daily training complete), with cross-poll dedup — an alert fires once until the condition resets. Designed for scheduled polling: empty alerts means stay quiet. account_id from accounts_list; omit when only one account is logged in; stamina_threshold defaults to 200. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Most tools have sharply distinct purposes: auth tools, account tools, and per-game note tools are clearly separated. However, auth_status and accounts_list both relate to logged-in accounts, and starrail_daily_note vs starrail_check_alerts could be confused if not read carefully.
Names follow a consistent lower_snake_case, domain-prefixed pattern like auth_start_qr_login, accounts_refresh, and genshin_daily_note. The main deviation is that 'daily_note' is a noun rather than a verb phrase like 'get_daily_note', but the pattern remains predictable.
Nine tools is a well-scoped size for this server: QR login lifecycle, account listing/refresh, and three per-game real-time note endpoints plus one alert helper. Each tool has a distinct role and none feels redundant or excessive.
The core workflow is covered: login, poll login, list accounts, refresh roles, and retrieve daily notes for all three supported games. Minor gaps exist such as no explicit logout/account removal and alert-polling only for Star Rail, but agents can work around these by using the existing notes tools.