Skip to main content
Glama

qianxing-dev-mcp

千星奇域(Miliastra Wonderland / 原神 UGC)开发工具向 MCP 服务器(TypeScript / stdio)。

面向 UGC 开发:脚手架 genshin-ts 工程、查节点做 codegen、生成 TypeScript 逻辑 stub、编译出 .gia
知识检索 / 技能草稿仍可用,但是次要能力。

不是游戏客户端修改器;inject_hint 只打印本机配置步骤,不宣称向实时游戏注入。

从想法到 .gia(3 步)

  1. scaffold_project — 在目标目录生成最小 genshin-ts 工程(src/main.ts + gsts.config.ts

  2. generate_logic + lookup_node — 生成可粘贴的 g.server(...).on(...) stub,并用 1275 节点索引核对官方节点名

  3. compile_projectnpm run build / gsts,收集 dist.gs.ts / .json / .gia

需要本机地图注入时再看 inject_hint,自行填写 gsts.config.tsinject 字段。

Related MCP server: Apple Docs MCP

要求

  • Node.js ≥ 20

  • 用户工程侧会安装 genshin-ts(scaffold 已写入 dependency)

安装与构建(本 MCP)

cd /workspace/qianxing-dev-mcp
npm install
npm run build
npm test

Cursor MCP 配置

{
  "mcpServers": {
    "qianxing-dev-mcp": {
      "command": "node",
      "args": ["/workspace/qianxing-dev-mcp/dist/index.js"]
    }
  }
}

工具一览

开发主工具

工具

参数

作用

scaffold_project

targetDir, name?, mode? classic|beyond

手写最小 genshin-ts 工程

compile_project

projectDir

跑 build,返回日志 + dist 产物

lookup_node

query, side?, limit?

查节点索引(JSON,便于 codegen)

lookup_system

domain?, query, limit?

查 UI/外围/资源目录(控件、结算、商店等 + 关联节点)

list_nodes

category?, side?, prefix?

列出匹配节点名

generate_logic

goal, mode?, graphType?, patternId?

生成 genshin-ts TS stub(可挂 pattern)

list_patterns

filter?

列出可复用开发配方(米游社教程蒸馏)

get_pattern

id

按 recipe id 或期次(如 2.1)读步骤

project_status

projectDir

检查是否像 genshin-ts 工程

inject_hint

打印本地 inject 配置步骤

diagnose

symptom

开发/试玩故障排查

次要知识工具

工具

作用

list_skills / get_skill

技能草稿

search_knowledge

知识库检索(节点请用 lookup_node

lookup_official_doc

官方 TOC

minigame_checklist

小玩法清单

list_community_tools

工具对照

recommend_workflow

推荐调用顺序

数据

  • 节点索引:knowledge/nodes/node-index.json(1275)

  • 精简副本:data/nodes.json(运行时优先 knowledge 索引)

  • 富节点目录:data/nodes.catalog.json

  • UI / 外围 / 资源:data/ui.catalog.jsondata/peripheral.catalog.jsondata/resources.catalog.jsonlookup_system

端到端示例(本仓库验证)

# 1) scaffold
# MCP: scaffold_project { targetDir: "/workspace/qx-demo-score", name: "qx-demo-score" }
# 2) generate_logic → 写入 src/main.ts(进入触发器得分 + 30s 结算)
# 3) compile
cd /workspace/qx-demo-score && npm install && npm run build
# → dist/src/main.gs.ts / main.json / main.gia

说明:scaffold 默认在 gsts.config.ts 写入 lang: 'en',避免部分 Linux 环境因系统 locale 导致 Incorrect locale information provided。可按需改成 'zh-CN'

编译说明

  • scaffold 交互运行 npm create genshin-ts;布局对齐 gsts.moe / 官方模板(g.servergsts.config.tsnpm run buildgsts)。

  • 未配置 inject.mapId / nodeGraphId 时,gsts 仍应尝试编译;可能出现注入相关警告——属预期,以 dist 产物或清晰错误为准。

  • 完整注入需要 Windows + 本机 BeyondLocal 路径;本 MCP 只给配置提示。

安全

  • 禁止:游戏破解、盗版、绕过反作弊、未授权向他人客户端注入。

  • 不 git push 到 GitHub,除非用户明确要求。

开发结构

src/
  index.ts       # stdio MCP 入口
  handlers.ts    # 工具实现
  project.ts     # scaffold / compile / status
  generate.ts    # logic stub
  nodes.ts       # node-index 查询
  systems.ts     # UI/外围/资源 catalog 查询
  knowledge.ts   # 次要知识检索
data/nodes.json
data/ui.catalog.json | peripheral.catalog.json | resources.catalog.json
knowledge/nodes/node-index.json
test/smoke.test.ts

Performance & memory

See docs/PERF.md for guarantees:

  • Node catalog loaded once and cached; list/search limits clamped.

  • Knowledge search: bounded walk depth/size, capped file reads & snippets; path index TTL cache.

  • compile_project: no shell, timeout + maxBuffer; path writes stay under target dir.

License

MIT

Patterns(米游社教程蒸馏)

  • data/patterns/catalog.json — ≥8 可复用配方(碰撞触发、计分、信号、商店、定时结算等)

  • data/patterns/{period}.md / knowledge/miyoushe/patterns/ — 逐期步骤与官方节点/组件对照

  • ASR 转写:knowledge/miyoushe/transcripts/;进度见 knowledge/miyoushe/PROGRESS.md

Available Tools

15 tools
compile_projectB

在 projectDir 运行 npm run build / gsts,返回 stdout/stderr 与 dist 产物列表(.gia/.json/.gs.ts)

ParametersJSON Schema
NameRequiredDescriptionDefault
projectDirYesgenshin-ts 工程目录

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full responsibility. It mentions the build command and return values, but does not disclose that running the build may modify the dist directory or require specific permissions. It also does not state whether the operation is destructive or reversible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, concise and front-loaded with the core action. However, 'gsts' is an unexplained abbreviation, which slightly reduces clarity. Overall it is well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the essential aspects: what command runs, where, and what is returned (stdout/stderr and dist artifact list). It lacks details on error handling or output format specifics, but for a single-parameter tool with a clear purpose, this is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of the parameter with a clear description ('genshin-ts 工程目录'). The tool description adds no extra semantics beyond what the schema already provides, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description explicitly states the action: run npm run build / gsts in projectDir and return stdout/stderr plus dist artifact list. The verb and resource are specific, clearly distinguishing it from sibling tools like scaffold_project or lookup_node.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Sibling tools exist for different purposes, but the description does not mention conditions for choosing compile_project over others, nor does it state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

diagnoseC

根据开发/试玩故障症状给出排查步骤

ParametersJSON Schema
NameRequiredDescriptionDefault
symptomYes如「走进去没反应」「编译失败」「变量 UI 读不到」

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

无注释,描述仅一句,未披露任何行为细节,如返回格式、是否只读、是否有副作用等。诊断工具通常返回文本步骤,但未说明,对于无注释工具描述承担全部责任,但信息严重不足。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is 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.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

工具简单(一个参数),无输出schema,但描述未说明返回内容或预期行为。对于诊断工具,返回排查步骤,但未提及格式或详细程度,描述不完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema覆盖100%,参数'symptom'有类型和示例描述。描述中未添加额外语义,仅提供了示例,但schema已足够,因此达到基准3。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确说明根据故障症状给出排查步骤,动词是'给出',资源是'排查步骤',目的清晰。但未提及与兄弟工具的区别,不过兄弟中没有明显同类工具,因此基本清晰,扣一分因未明确区分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述没有说明何时使用此工具,也没有提及替代工具或排除条件。仅从'故障症状'可隐含使用场景,但未明确给出使用指南。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_logicA

根据目标生成可粘贴的 genshin-ts TypeScript stub(g.server / .on / 定时结算等),并标注对应官方节点

ParametersJSON Schema
NameRequiredDescriptionDefault
goalYes如「进入触发器得分,30 秒后结算」
modeNo
graphTypeNo默认 entity(服务端实体图)

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, but it discloses key behavior: the output is 'pasteable' code, implying a non-persistent, return-a-snippet action, and it will '标注对应官方节点', telling the agent what the result includes. It does not explicitly state whether it writes files, but the pasteable wording is a strong behavioral signal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single well-structured sentence that front-loads the core action and output, then adds the distinguishing annotation behavior. Every phrase earns its place, with no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple stub-generation tool, the description plus schema covers what is generated and gives representative goal examples. However, it does not explain mode semantics, possible output format details, or any relationship to prerequisites like scaffold_project, leaving minor but real gaps for an agent deciding how to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 67%, so the schema already documents goal and graphType. The main description adds useful examples for goal content (g.server, .on, timed settlement), which helps the agent formulate the parameter value, but mode remains an opaque enum with no added semantics in either the schema or the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('generate') and a concrete output resource ('pasteable genshin-ts TypeScript stub'), and further specifies that it annotates official nodes. This clearly distinguishes it from siblings like lookup_node, list_nodes, scaffold_project, and compile_project, which involve introspection, scaffolding, or building, not logic-stub generation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase '根据目标' (based on the goal) conveys when the tool is appropriate: when the agent has a target behavior and needs generated logic code. However, it does not explicitly state when not to use it or name alternatives for related tasks, such as scaffold_project for project setup or lookup_node for node references.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_skillA

【次要】按 id 读取技能草稿全文

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the behavioral disclosure burden. It does indicate a non-mutating read operation via '读取', and '全文' hints at the returned content. However, it does not describe error cases, access restrictions on drafts, or response format, which are relevant for a fetch tool without an output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise and front-loaded: one short sentence states the action, target, and key parameter. The '【次要】' prefix is minor noise and the lack of usage/context detail keeps it from being a perfect 5, but there is no fluff or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read tool, the description is close to sufficient: it names the resource and id. But with no output schema and no annotations, the absence of return format or availability caveats leaves meaningful gaps. An agent can call it, but may not know what exactly is returned or how failures manifest.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must add meaning to the lone 'id' parameter. It does tie the id to a '技能草稿' (skill draft), clarifying what the id references. Still, it adds no detail about id format, source, or how to obtain a valid id, so compensation is only partial.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific operation: read the full text of a skill draft by id. This clearly distinguishes the tool from siblings like list_skills, which would be for enumerating skills rather than fetching one draft's full content. The verb '读取' and the resource '技能草稿全文' make the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by '按 id' — use this tool when you have a specific skill draft id and want its full text. However, it does not explicitly state when not to use it, nor does it mention alternatives such as list_skills for discovery or search_knowledge for related lookups. Usage guidance is only implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inject_hintA

打印本地 inject 所需配置字段与步骤(不声称注入到实时游戏;需本机路径)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of behavior disclosure. It says the tool only prints information and explicitly disclaims real injection into a live game, which prevents the agent from assuming side effects. It also flags a prerequisite (local path). It could add more detail about output format, but it is honest about its limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence that states the action, the resource, the key caveat, and the required condition. There is no filler or repetition of schema content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, no-output-schema hint tool, the description is largely complete: it defines the output (printed fields/steps) and the precondition (local path). A minor gap is that 'local path' is not further specified, but the low complexity makes this acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters and 100% coverage, so the baseline is 4. The description adds the meaningful constraint that a local path is required, even though it is not exposed as a schema parameter, which helps an agent understand invocation context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('打印' = print) and a concrete resource ('本地 inject 所需配置字段与步骤' = the configuration fields and steps needed for local inject). It also explicitly scopes the tool as a hint rather than an actual injection operation, which separates it from any sibling that might perform live injection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly names the target use case (local inject configuration/steps) and adds a precondition ('需本机路径' = local path required) plus an exclusion ('不声称注入到实时游戏' = does not claim live-game injection). It does not explicitly name alternative sibling tools, but the intended context is understandable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_community_toolsC

【次要】官方/社区工具对照

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description must disclose behavior, but it says nothing about side effects, read-only status, output shape, or failure modes. The phrase '工具对照' only names a topic, not the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but this is under-specification rather than effective conciseness. A single ambiguous noun phrase does not earn its place as a useful definition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even though there are no parameters, the description leaves the tool's purpose, return value, and relation to sibling tools undefined. An agent cannot tell what invoking this tool will do or when it should be used.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters and the schema already covers this completely with an empty properties object, so there is no semantic gap for the description to fill.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is a noun phrase '官方/社区工具对照' (official/community tool comparison) rather than an action statement. It vaguely suggests listing or comparing tools but does not specify what the tool returns or how it differs from siblings like list_nodes or list_skills.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance is provided. The tag 【次要】 hints at secondary status but does not explain when an agent should call this tool instead of list_nodes, list_skills, or lookup_official_doc, leaving selection to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_nodesC

按 category / side / prefix 列出节点名,便于发现 API

ParametersJSON Schema
NameRequiredDescriptionDefault
sideNo
limitNo
prefixNo名称前缀或包含
categoryNo分类关键词,如 事件节点 / 执行节点

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden. It indicates a read-only listing operation but does not disclose pagination, response format, authorization needs, or any side effects. The minimal description leaves behavioral expectations vague.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the core action and filtering dimensions. Every word earns its place, with no redundancy or extraneous detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations, no output schema, and a 4-parameter tool, the description is too sparse. It omits return format, pagination behavior, and any caveats about the 'side' or 'category' values. An agent would lack essential context to correctly invoke and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 50% (only prefix and category have descriptions). The description mentions category, side, and prefix as filtering criteria, adding context for those parameters, but does not address the limit parameter. It partially compensates for the missing schema descriptions but not fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists node names and specifies the filtering dimensions (category, side, prefix), giving a specific verb and resource. It does not explicitly distinguish from the sibling lookup_node, but the act of listing vs looking up a single node is implied, so it is clear but lacks explicit differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does 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 alternatives like lookup_node. The description only states what it does, not when it should be preferred, nor does it mention any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_skillsB

【次要】列出技能草稿

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
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 of behavioral disclosure. 'List' implies a read-only operation, but the description does not mention whether it returns full objects or summaries, whether it requires authentication, or any edge cases. It is adequate for a simple listing tool but lacks richer context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, consisting of a single short phrase. Every word carries meaning, and the 'secondary' tag, while perhaps stylistic, does not hinder comprehension. It is appropriately sized for a simple list tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (zero params, no output schema, simple listing), the description is minimally sufficient but leaves gaps: it does not explain what is returned, whether drafts are filtered by user or project, or if pagination exists. These are not critical for a basic tool, but for an agent relying solely on this description, some uncertainty remains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema is trivially 100% covered, so the description is not expected to provide parameter details. Baseline for zero-parameter tools is 4, and no additional semantic explanation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('list') and resource ('skill drafts'), which is clear and distinct from siblings like list_nodes and list_community_tools. However, it does not explicitly differentiate itself or explain what distinguishes it from similar list operations, so it loses the top point for sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives like get_skill or list_nodes. There is no mention of context, prerequisites, or exclusions. The agent is left to infer usage from the name and one-line description, which is insufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_nodeC

在 1275 节点索引中查询节点(名/描述/侧/分类/参数),返回 JSON 便于 codegen

ParametersJSON Schema
NameRequiredDescriptionDefault
sideNo默认 any
limitNo默认 10
queryYes关键词,如「进入碰撞」「结算」「定时器」

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the burden. It states the output is JSON but doesn't disclose whether the operation is read-only, has side effects, or involves any constraints like rate limits. The absence of any mutability statement is a gap for an unannotated tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that states the action, resource, and return type without redundancy. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema is present, and the description only says 'returns JSON' without specifying structure, error cases, or behavior when no results are found. It also doesn't explain the node index's semantics or how limit/side interact, leaving critical usage details unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter (side, limit, query) having defaults or examples. The description adds nothing beyond what the schema already provides, so a baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool queries a node index (1275 nodes) with fields like name/description/side/category/params and returns JSON for codegen. It distinguishes from siblings like list_nodes (which likely lists all) by implying a filtered query, though it doesn't explicitly name the alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs list_nodes, lookup_official_doc, or search_knowledge. The description implies it's for codegen-related node lookups but provides no conditions or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_official_docD

【次要】官方综合指南目录检索

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes

TDQS

D1.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavior. It only states 'secondary' (priority hint) and 'catalog search'—no information about what happens to the query, output format, side effects, or error cases. This is severely insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short line, which is concise in length but not in content. It is under-specified rather than effectively concise; the brevity provides no value because it omits essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema, annotations, and parameter documentation, this description is completely inadequate for an agent to call the tool correctly. Nothing about the tool's behavior, expected inputs, or outputs is communicated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'query' has no schema description (0% coverage), and the description does not explain what the query should contain, its expected format, or any constraints. The agent has no way to construct a valid query.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'official comprehensive guide catalog search' is nearly a restatement of the tool name 'lookup_official_doc'. It implies a search/retrieval action but gives no specifics about what the catalog contains, how results are returned, or how it differs from sibling tools like search_knowledge or lookup_node.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does 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 alternatives. The description does not mention any conditions, prerequisites, or exclusions, leaving the agent without a basis for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

minigame_checklistD

小玩法 checklist(配合 generate_logic)

ParametersJSON Schema
NameRequiredDescriptionDefault
loopNo
modeNo
playersNo

TDQS

D1.5/5.0
Behavior1/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 of behavioral disclosure. The description says nothing about side effects, return values, whether it reads or mutates, what the checklist covers, or what happens on invocation. For a tool with zero annotation coverage, this is a complete absence of behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short, which reads as under-specification rather than deliberate conciseness. There is no structure, no front-loading of critical constraints, and the single phrase carries almost no actionable information. Conciseness only earns credit when the content is complete enough to be compressed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 undocumented parameters, no output schema, and no annotations, this description is entirely inadequate. It fails to explain the tool's purpose, its parameter semantics, its relationship to the workflow, or its return behavior. An agent has essentially no information to call this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for all three parameters (loop, mode, players), and the description adds no meaning to any of them. With no enum constraints and no param-level documentation, the description was obligated to compensate for the gap but offers nothing. An agent cannot determine what loop, mode, or players should contain.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '小玩法 checklist(配合 generate_logic)' ('Mini-game checklist (to be used with generate_logic)') provides no verb or action — it merely restates the tool's name as a label. It hints at a relationship with generate_logic but never states what the tool actually does, whether it checks, validates, or generates something. It fails to distinguish itself from siblings beyond the vague pairing mention.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The only usage guidance is the parenthetical '配合 generate_logic' (to be used with generate_logic), which implies it is used in conjunction with that sibling. However, it gives no explicit when-to-use, when-not-to-use, or what conditions select this tool over alternatives like inject_hint, diagnose, or recommend_workflow. The guidance is implied at best.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

project_statusA

检查目录是否像 genshin-ts 工程,报告 package/config/dist 产物

ParametersJSON Schema
NameRequiredDescriptionDefault
projectDirYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden. It conveys that this is a non-building, diagnostic reporting tool ('检查/报告'), but it does not state side effects, permissions, failure behavior, or the exact format of the report. The '是否像' phrase adds useful context that it surveys resemblance rather than guaranteeing functionality.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one compact sentence with no filler. It front-loads the action and target, then states what will be reported, so every part earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity, one-parameter status tool with no output schema or annotations, the description is mostly complete: it names the input, the check being performed, and the artifacts reported. The residual gaps are the absence of explicit return-structure details and any statement about non-matching or error cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one required string, projectDir, with no schema descriptions (0% coverage). The description refers to '目录' (directory), which maps to projectDir and adds the meaning that the argument is a directory path. It does not explain path format or requirements, but for a single self-named parameter this is minimally adequate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb+resource ('检查目录' / 'check directory') and states the goal: determining whether the directory resembles a genshin-ts project and reporting package/config/dist artifacts. This makes it distinct from siblings like scaffold_project or compile_project, which are clearly not inspection tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: an agent should call this when it needs to verify a directory's genshin-ts-likeness and see its build artifacts. There is no explicit when-not-to-use guidance or routing against siblings such as diagnose, but the purpose is enough to suggest the primary scenario.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recommend_workflowC

推荐从想法到 .gia 的工具调用顺序

ParametersJSON Schema
NameRequiredDescriptionDefault
goalYes

TDQS

C2.7/5.0
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 only states the core function and does not disclose whether the tool is read-only, whether it depends on project state, how it derives the order, or what side effects it might have. For a tool that orchestrates other tool calls, this is a meaningful gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with the action front-loaded and no filler words. It is appropriately short, though the cryptic '.gia' term slightly harms clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with no output schema and no annotations, the description should explain what the tool returns (e.g., an ordered list, recommended commands, step descriptions). It does not. An agent can invoke it but cannot anticipate the result format or how to act on the recommendation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides 0% description coverage for the single required 'goal' parameter. The description maps 'idea' to goal implicitly, but it does not explain what format, level of detail, or language the goal should use. Since schema coverage is zero, the description needed to compensate and did not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('recommend') and names a resource (tool call order 'from idea to .gia'). It implicitly distinguishes itself from execution-focused siblings like scaffold_project and generate_logic, since it is a meta-planning tool. However, the term '.gia' is undefined and the phrase 'from idea to .gia' is ambiguous, so it does not fully reach a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus the many siblings. It does not state conditions, prerequisites, or alternatives. An agent must infer that this is for planning a sequence, but there is no explicit context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scaffold_projectA

在 targetDir 创建最小可用 genshin-ts 工程(package.json / gsts.config.ts / src/main.ts)。mode: classic|beyond

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo默认 beyond
nameNo项目显示名,默认取目录名
targetDirYes目标目录绝对或相对路径

TDQS

A3.6/5.0
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 behavioral burden. It discloses that files are created and that mode has two values, but it does not state whether existing files are overwritten, whether targetDir must be empty, what classic vs beyond actually change, or what the tool returns. This is a significant gap for a file-creating tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one compact sentence plus a short mode enumeration, front-loading the action and resource. Every sentence earns its place with no filler or redundant restatement of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter tool with no output schema and no annotations, the description is incomplete: mode semantics, overwrite behavior, and targetDir requirements are unspecified, and there is no return-value guidance. The file list and schema partially compensate, but an agent could still call it with unsafe assumptions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description merely echoes targetDir and mode without adding new semantic detail, and it omits name entirely, though the schema covers it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb (创建) and a clear resource (最小可用 genshin-ts 工程), then enumerates the generated files. This clearly distinguishes it from siblings like compile_project or project_status, which operate on an existing project rather than creating a new one.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies use when bootstrapping a new genshin-ts project in targetDir. It does not explicitly list exclusions or alternatives, but no sibling tool performs scaffolding, so the intended usage context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_knowledgeB

【次要】知识库全文检索;节点请优先 lookup_node

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes

TDQS

B3.2/5.0
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 only says 'full-text search' and gives a routing hint; it does not disclose behavior such as whether it searches only certain knowledge bases, how results are ordered, whether it is read-only, or what the output format is. For a search tool, this is a notable gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short and front-loaded: it states the purpose and the routing hint in one line. Every word earns its place, and the priority note is placed at the end as a clear directive.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema and no annotations, the description is too thin. It does not mention what the search covers, how to interpret results, or any constraints. The routing hint is useful, but for a tool with 2 parameters and no other structured context, the description leaves important gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It does not explain the 'query' parameter beyond the tool's name, and 'limit' is entirely undocumented. The description adds no parameter-level meaning, leaving the agent to infer from the schema types alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: '知识库全文检索' (knowledge base full-text search), and explicitly says '节点请优先 lookup_node' (for nodes, prefer lookup_node), which distinguishes it from the sibling lookup_node. It is concise and clear, though it doesn't elaborate on what the search returns.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells the agent when not to use this tool: for nodes, prefer lookup_node. This provides a clear routing rule relative to a sibling. However, it doesn't explain when to use search_knowledge over other siblings like lookup_official_doc or list_skills, leaving some ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 15 tool updatesv1.1.0
    • First observedcompile_project
    • First observeddiagnose
    • First observedgenerate_logic
    • First observedget_skill
    • First observedinject_hint
    • First observedlist_community_tools
    • First observedlist_nodes
    • First observedlist_skills
    • First observedlookup_node
    • First observedlookup_official_doc
    • First observedminigame_checklist
    • First observedproject_status
    • First observedrecommend_workflow
    • First observedscaffold_project
    • First observedsearch_knowledge

TDQS

C2.8/5.0

Scored across 15 tools

Disambiguation4/5

大部分工具目的清晰且相互区别,如scaffold_project、compile_project、lookup_node等。少量次要工具如search_knowledge与lookup_node在功能上有所重叠,但描述中已明确优先级,整体歧义不大。

Naming Consistency4/5

绝大多数工具采用动词+名词的snake_case命名,如scaffold_project、list_nodes、generate_logic。但project_status和minigame_checklist为名词性短语,与主流模式略有偏差,但整体风格统一。

Tool Count4/5

15个工具覆盖项目脚手架、编译、节点查询、代码生成、诊断等多个方面,数量适中。部分次要工具(如list_skills、get_skill)存在但未影响核心使用,整体范围合理。

Completeness4/5

工具集覆盖了从项目创建到编译、状态检查、故障诊断及代码生成的完整开发流程,未发现明显死角。缺少更新/删除等操作,但作为开发辅助工具,核心生命周期已基本齐全。

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to search and query documentation from multiple sources including Voiceflow and Claude Code, with full-text search, code examples retrieval, and step-by-step tutorials access.
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides access to Apple's official developer documentation, frameworks, APIs, and WWDC session transcripts across all Apple platforms. It enables AI assistants to search technical guides, sample code, and platform compatibility information using natural language queries.
    18
    588 npm
    1,379
    MIT
  • F
    license
    A
    quality
    Not graded
    maintenance
    Exposes an internal engineering knowledge base to AI assistants, allowing users to search and retrieve standards, runbooks, and architecture decisions. It supports RAG-enhanced search, document scraping, and specialized prompts for incident investigation and code reviews.
    5
    -
  • F
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to search, read, and retrieve context from local knowledge bases with full-text search, absolute paths, and section-level details.
    4
    -