airi-xinchao
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation4/5
Tools are mostly distinct: xinchao_event updates state, xinchao_settle triggers process, and the three read tools (context, status, mood) differ in granularity and purpose. Context and mood could be confused if descriptions aren't careful, but they serve clear separate roles.
Naming Consistency4/5All tools share the xinchao_ prefix and snake_case, but the second part is inconsistent in type: context, status, and mood are nouns, while event and settle could be verbs. Still, the prefix and naming are readable and predictable enough.
Tool Count5/5Five tools is well-scoped for a niche server focused on a single agent's internal state. Each tool addresses a distinct need without redundancy or bloat.
Completeness4/5The toolset covers reading state at multiple granularities, updating it via events, and manually triggering settlement. No major lifecycle gaps are apparent, though a reset or configuration tool might be expected in some scenarios.
Average 3.7/5 across 5 of 5 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 9 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It lists status components but does not explicitly state that the operation is read-only, whether it has side effects, or any other behavioral details. The verb '查看' implies read access but does not confirm it explicitly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the tool's purpose and content without any redundant words. It is appropriately concise for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (zero parameters, no output schema), the description is mostly adequate and lists the status components. However, it does not explicitly state that the tool is read-only or that it returns the full status as a whole, and it omits any note about absence of parameters. These small gaps make it only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema confirms this with an empty properties object. Since there is no parameter description to provide, the description does not need to add parameter semantics. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('查看' = view) and a specific resource ('完整状态' = complete status), listing concrete components. It does not explicitly differentiate from sibling tools like xinchao_mood, but the scope as a full-status overview is evident.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus the sibling tools (xinchao_context, xinchao_event, xinchao_settle, xinchao_mood). The description simply states what the tool does without any context or exclusions, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that this is a manual trigger for an automatic process, but it does not describe what 'settlement' entails, potential side effects, safety considerations, or whether it is idempotent. The behavioral impact remains unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that conveys the core action and caveat in a compact, front-loaded manner. There is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (zero parameters, no output schema), the description is minimally viable. It states what it does and the automatic context, but it lacks details about what settlement affects, when manual triggering is appropriate, or what consequences follow. More context would improve usability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description adds no parameter-specific details (as none exist), and the schema is empty, which is consistent. No meaning beyond the schema is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'manually trigger status settlement' (手动触发状态结算), with a specific verb ('trigger') and resource ('status settlement'). It also notes that settlement is normally automatic, which adds a scope qualifier. However, it doesn't explicitly differentiate from sibling tools, though 'settle' is distinct from 'context', 'event', 'status', and 'mood'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'usually automatic' implies this tool is a manual override, but it does not explicitly state when to use it versus alternatives or provide any exclusions. It gives context for manual use but lacks actionable guidance on choosing between tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
沒有 annotations,描述承擔揭露行為的責任;它說明了副作用(更新驅動力、念頭池和疲憊狀態),並透過參數描述補充「不保存全文」。但未提及回應格式、操作是否可逆、是否有頻率限制等細節,透明度仍有不足。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
描述僅兩句話,第一句說明做什麼,第二句說明何時用,資訊密度高且無冗餘,符合前重後輕的結構。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
工具本身簡單,只有 2 個參數且其中一個有枚舉,描述已涵蓋使用時機和核心作用。由於沒有輸出 schema,未說明返回值或失敗行為,但整體對於 agent 正確選擇和呼叫該工具已足夠充分。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
輸入 schema 已有 event_type 的枚舉和 content_summary 的簡短描述,描述本身未補充參數語意。枚舉值已提供足夠選項,content_summary 的用途也清楚,因此無需過度依賴描述,但描述未增加額外的語意層次。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
描述明確指出工具功能是回傳一次互動事件並更新驅動力、念頭池和疲憊狀態,使用具體動詞「回傳」和資源「事件」。雖未明確與兄弟工具(xinchao_context、xinchao_status 等)做出區隔,但名稱和行為已足夠辨識其定位。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
描述清楚指示「每次對話後調用」,提供了明確的使用時機。但未說明與其他工具(如 xinchao_settle、xinchao_mood)的替換或排除情境,缺少 when-not-to-use 的指引。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool returns a compact description for prompt injection and is called at conversation start, which is useful. But it does not mention any side effects, permissions, or what the 'mental state' includes. For a read-like tool, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that delivers all essential information: what it does, what it returns, and when it is called. It is front-loaded with the verb '获取' (get), and there is zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description is largely complete. It explains the purpose and usage context. It could briefly characterize what 'dynamic mental state' includes, but this is a minor omission given the simplicity of the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema coverage is effectively 100%. Per the rubric, the baseline for zero parameters is 4. The description adds nothing about parameters, which is appropriate since there are none to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: retrieving Airi's current dynamic mental state and returning a compact description for prompt injection. It is specific and actionable. However, it does not explicitly differentiate from sibling tools like xinchao_status or xinchao_mood, so it loses a point for sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by stating it is called once by default at the beginning of a conversation. This gives an explicit 'when to use' signal. It does not, however, discuss when not to use it or list alternatives, leaving a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It clearly states the tool retrieves a brief mood/energy description, which implies a read-only operation, but it does not disclose the output format, data source, or any edge cases. For a zero-parameter tool, this is minimally acceptable but not rich in behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the core action ('获取') and resource ('心情/能量简短描述'). No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (no parameters, no output schema, no annotations), the description covers the essential purpose and use case. It could be improved by noting what kind of brief description is returned or how it relates to sibling tools, but it is sufficiently complete for the tool's apparent simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4. The description adds no parameter-specific information, but none is needed since the input schema is empty.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb '获取' (get) and a clear resource '心情/能量简短描述' (brief mood/energy description), and it explicitly states the intended use case '回复前的情绪判断' (emotional assessment before replying). This distinguishes it from sibling tools like xinchao_context or xinchao_event, which presumably handle different aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear when-to-use signal: '适合回复前的情绪判断' (suitable for emotional assessment before replying). It does not explicitly mention alternatives or exclusions, but for a simple tool with no parameters, this context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/neffict/airi-xinchao'
If you have feedback or need assistance with the MCP directory API, please join our Discord server