Skip to main content
Glama

断开工程连接

cocos_project_disconnect

Disconnect the current client from a Cocos project by projectId while leaving other sessions and running builds active.

Instructions

仅释放当前客户端连接,不停止其他会话或运行中的构建

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "projectId": "<projectId>"
    },
    "name": "cocos_project_disconnect"
  }
}

Input Schema

NameRequiredDescriptionDefault
projectIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.1

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already declare destructiveHint=false and readOnlyHint=false, so the safety profile is partly covered. The description adds genuine context beyond that: it clarifies that only the current client connection is released and that other sessions and running builds are unaffected, which prevents an agent from over-estimating the blast radius. It still omits what the client must do afterward (e.g. reconnect) and what the call returns.

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?

A single short sentence with no wasted words, and the scoping caveat is the first thing stated. It loses a point only because so much brevity comes at the cost of the basics (what is being disconnected from, what parameter to pass).

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?

The tool is simple (one parameter, no output schema, non-destructive), so the description is not grossly incomplete. Still, for a connection-lifecycle tool the agent is left without the projectId's meaning and without any statement of state after disconnect, which are the only two things it would need.

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% and there is one required parameter, projectId, whose format and source are undocumented in both schema and description. The description does not compensate at all — it never mentions which project identifier must be supplied or where to obtain it (cocos_projects presumably).

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

Purpose3/5

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

The description states the effect ("仅释放当前客户端连接" – release only the current client connection) and a scope limit, which combined with the name makes the action inferable. However, it never explicitly says it disconnects the project/client session and is framed primarily as a negation, so the core verb+resource statement is implied rather than delivered.

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?

There is no when-to-use guidance and no mention of alternatives. Siblings such as cocos_project_connect and cocos_connection_status are the obvious adjacent tools, and the description never tells the agent when to disconnect versus check connection status or reconnect.

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