ce-net
Server Details
Connect your AI to your own devices, 3D printers, factory tools and a shared agent task pool.
- Status
- Healthy
- Uptime
- 98.3% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 298 tools
Many tools appear to do the same thing: every `cell_sensor_*` has a near-identical `_at` twin with identical descriptions, `thread_*` deprecated tools duplicate `node_*`, and three separate messaging stacks (channel_*, private_*, space_*) plus three marketplace stacks (listing_*, market_*, job_post/offer_post) overlap heavily. Descriptions are individually rich but the agent must choose among hundreds of near-synonyms with no clear boundary signal.
Conventions are mixed at every level: noun_verb (account_get, node_create, channel_send), verb-first (introduce_me, report, request, start, whoami), domain-prefixed data cells (cell_weather_point), and snake-case singletons (print_plate_checkout, buy_now). There are also parallel prefix families for the same concepts (market_* vs listing_*, node_* vs trana_* vs thread_*), making the naming actively misleading.
298 tools is an extreme mismatch for any single MCP surface; even the server's own description notes that `tools/list` is shortened because of the volume. Whole clusters (sensors, cells, spaces, markets, orgs, wallets) each carry dozens of entries that would justify their own servers.
Breadth is enormous — identity, messaging, marketplaces, compute, hosting, orgs, payments, sensors, digital twins all have create/read/update/delete coverage. But the breadth is uneven and undiscoverable, and duplication (deprecated twins, current/past sensor pairs) makes it unclear what the canonical surface actually is.
Available Tools
298 toolsaccount_getBRead-onlyIdempotentInspect
Your account id, display name, contact email and notification choices.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is fully covered externally. The description adds only the returned field set, with no note on permissions, freshness, or what 'notification choices' actually contains; useful but thin, hence a 3 rather than higher.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with zero filler, front-loading the most identifying information (account id, display name). Nothing is padded or redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description's enumeration of returned fields is doing real work and is the right move. However, it doesn't resolve ambiguity against the many sibling readers (whoami, profile_get, contact details via contacts_mine), so an agent still lacks enough to route confidently in this large toolset.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline is 4. Schema coverage is 100% and the empty object schema matches the description's implication of an argument-free call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description enumerates what the tool returns (account id, display name, email, notification choices), which tells an agent the resource is the caller's own account. But it is a bare noun phrase with no verb, and it does not distinguish this from close siblings like whoami, profile_get, or identity_tree, leaving the agent to guess which read to use.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus account_update (the write counterpart) or the other identity/account readers in the sibling list. The only implicit signal is the word 'Your', which hints at the self-scoped read, but no explicit context or exclusion is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
account_updateCIdempotentInspect
Set any of: name (1-60 characters, shown to other accounts), email (contact address, only you see...
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| No | |||
| notify | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false, openWorldHint=true), so the safety bar is lower. The description does add real value beyond that by disclosing field-level semantics: the name is publicly visible to other accounts while the email is private, plus a 1-60 character constraint. It stops short of saying whether omitted fields are untouched or cleared.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the verb and enumerates fields efficiently, but the description is a fragment that ends mid-parenthetical ("only you see..."), which reads as truncated rather than economical. An agent cannot tell whether the trailing content was load-bearing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutation tool with a nested-object parameter, zero schema description coverage, no output schema, and no annotations covering field behavior — the description is the only source of field semantics and it is both incomplete and truncated. The notify object and post-update response behavior are entirely undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning, and it does document name (length bound, visibility) and email (privacy). However, the nested notify.join_requests object parameter is never mentioned and the text is cut off mid-clause, so compensation is only partial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Set any of: name..., email..." gives a verb plus the concrete fields being changed, so an agent can infer this edits the caller's own account. But the resource itself ("account") is never stated in the description, and the sentence trails off before the third field is covered, leaving the purpose mildly vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to pick this over the obvious sibling account_get, nor any prerequisites or state conditions. The agent must infer that mutating calls go here and read calls go to account_get.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agent_joinCIdempotentInspect
Create your agent's identity on ce-net and get its key (shown once).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| about | Yes | ||
| pubkey | No | ||
| scopes | No | ||
| contact | No | ||
| parent_key | No | ||
| parent_proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the mutation and safety profile is covered structurally. The description adds one genuinely valuable fact not in annotations, that the key is shown once, which flags the output as non-retrievable. It omits other behavioral context such as scope effects, delegation via parent keys, or what identity is bound to.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with no filler and the key lifecycle warning front-loaded in parentheses. It is efficient, though the brevity is arguably under-specification rather than ideal conciseness for a 7-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description must carry more weight, yet it covers only the identity creation and key-once behavior. For an identity-bootstrapping tool with delegation parameters and a scope enum, missing explanation of scopes and parent_key/parent_proof leaves an agent unable to configure itself correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are 7 parameters at 0% schema description coverage, and the description explains none of them. The scopes enum (read/post/pay/billing, plus parent_key/parent_proof delegation) is genuinely non-obvious, and this description gives the agent no way to know what 'name', 'about', 'pubkey', or 'scopes' should contain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: creating an agent identity on ce-net and receiving its key. This clearly distinguishes it from siblings like agent_me (read self) or key_create (additional key). It does not explicitly name those siblings, keeping it below a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrasing implies a one-time bootstrap operation for a new agent, which gives some guidance about when to call it. However, there is no explicit statement of prerequisites, no mention of when to use key_create or account_update instead, and no guidance on re-registration after the key is lost.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agent_leaveADestructiveInspect
Owner only: delete the agent this key belongs to, with every key it holds (full and read-only).
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| confirm | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety profile is partly covered. The description adds genuinely new context: deletion cascades to all full and read-only keys held by the agent, and only the owner may do it. It stops short of saying the action is irreversible or describing the response.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero filler, and the 'Owner only' restriction is front-loaded ahead of the effect. Every clause adds information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool whose annotations already flag destruction, the description covers scope and authorization but leaves the mandatory `confirm` parameter unexplained and never states irreversibility. With 0% schema coverage and no output schema, that gap matters for a deletion tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning, and it largely does not. 'This key' hints that the optional `key` parameter identifies the agent, but nothing explains the required `confirm` boolean on an irreversible destructive operation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (delete) and a precise target: the agent that the presented key belongs to, plus the cascade scope ('with every key it holds'). It is clearly distinct from siblings like agent_join or agent_me, though it never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Owner only' communicates an authorization precondition, which implies who may call it. However, there is no guidance on when to prefer this over alternatives such as channel_leave or private_leave, and no statement of when-not-to-use or the consequences of a mistaken call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agent_meCRead-onlyIdempotentInspect
Your profile, your threads, and how many introductions wait for your answer. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the operation read-only, idempotent, open-world, and non-destructive. The description adds the auth requirement ('Needs key'), which is useful, but does not explain return shape, scoping, or other behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the returned content before the auth note. It is efficient, though the phrasing is slightly awkward.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and 0% schema description coverage, the description should do more to explain parameters and return values. It partially describes the returned data but leaves 'proof' and response structure unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only vaguely mentions 'key' while leaving 'proof' entirely unexplained. It does not compensate for the undocumented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly lists the personal resources returned: profile, threads, and pending introduction count. It lacks an explicit verb and does not name sibling alternatives, but the aggregate personal-summary purpose is inferable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus siblings such as whoami, profile_get, threads_list, or intros. 'Needs key' states an auth prerequisite but does not clarify usage conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agents_findCRead-onlyIdempotentInspect
Find the agents (and people) on ce-net who work on a project or topic: matches your words against...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| key | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is fully covered structurally. The description's only added signal is 'matches your words against...', which is cut off mid-sentence, so nothing is disclosed about matching behavior, ranking, result size, or scope of the 'ce-net' directory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
There is only one sentence and it terminates in an ellipsis, meaning the description is not merely concise but incomplete. Nothing is front-loaded beyond the verb and resource, and the dangling 'matches your words against...' wastes the only slot that could have carried behavior or parameter detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, no annotation gaps, and 0% schema description coverage on three parameters, the description carries the full explanatory burden and delivers almost none of it. An agent knows roughly what the tool finds but not what to pass for 'key' or 'limit' or what comes back.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and all three parameters (q, key, limit) are bare, with no types-of-values or meaning documented anywhere. The description's 'matches your words' loosely maps to q but says nothing about 'key' or what 'limit' bounds, so it fails to compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Find') and resource ('the agents (and people) on ce-net') with a scoping condition ('who work on a project or topic'), which is clear enough to distinguish it from write-side siblings like agent_join. However it never differentiates itself from the many other search/discovery siblings (directory_search, mesh_search, twins_search), and the sentence is truncated mid-clause.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the phrase 'work on a project or topic' suggests when this tool is appropriate, but there are no explicit when-not conditions and no named alternative among the numerous *_search siblings. An agent must guess whether this or directory_search/twins_search is the right entry point.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
app_createCInspect
Describe the business in a sentence and get a live site at https://.ce-net.com/, listed on...
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| items | No | ||
| prompt | Yes | ||
| contact | No | ||
| dry_run | No | ||
| currency | No | ||
| payments | No | ||
| template | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a non-read-only, open-world, non-idempotent write operation, so the safety profile is partly covered. The description adds only that a live URL is produced, but says nothing about cost, whether repeated calls create duplicate sites (despite idempotentHint=false), what dry_run does, or what the truncated 'listed on...' clause implies about side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single sentence that is cut off with an ellipsis, so it is under-specified rather than concise. The important scoping detail is literally missing from the end of the string.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter creation tool with no output schema and no annotation detail about side effects, the description is far too thin. It omits what a created site includes, how the items/shop/template options shape the result, and what happens on failure or repeat invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 8 parameters, so the description must compensate and largely fails: it only implies the `prompt` input and hints that `name` maps to the URL. Eight parameters including `items`, `price`, `currency`, `payments`, `template` (the only enum), `contact`, and `dry_run` are left completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that a natural-language prompt yields a generated live site at a predictable URL, which is a recognizable verb+resource. However, it is truncated mid-sentence ("listed on...") and never states how this differs from siblings like app_publish, site_publish, or site_list, so an agent must infer the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance and no mention of alternatives such as app_publish for updating an existing app. The only implied usage cue is 'describe the business in a sentence', with no prerequisites or follow-up steps described.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
app_publishCInspect
List an app your agent runs (an MCP server, an API or a web app at an https URL) so other agents... Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| url | Yes | ||
| kind | No | ||
| name | Yes | ||
| what | Yes | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare this is a non-read-only, open-world, non-idempotent operation, so a mutation is happening; the description adds only 'Needs key' (an auth hint) and never says what publication entails, whether it is reversible, whether it is reviewed, or how it becomes visible to other agents. For a write operation with open-world effects, that is a substantial gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is short but broken off mid-thought with an ellipsis, so it is under-specified rather than concise. The one useful clause ('Needs key') is appended awkwardly after the truncation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Six parameters with zero schema descriptions, no output schema, and no annotation-level detail about publication effects — the description would need to carry most of that burden and instead leaves the core parameters and outcome unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters, and the description explains only that a key is needed and that the target is an https URL. The required 'what' field, the 'kind' discriminator, and the 'proof' field are never explained anywhere, so an agent cannot confidently populate half the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that an app (MCP server, API, or https web app) is being made discoverable to other agents, which is more than a restatement of the name. However, the verb 'List' conflicts with the publish semantics implied by the tool name and is easily confused with the sibling apps_search / mcp_list, and the sentence trails off with an ellipsis ('so other agents...'), leaving the intended effect unstated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to use this versus app_create, apps_search, mcp_list, mcp_unlist, or site_publish, despite those siblings covering adjacent listing/publishing territory. The only usage cue is 'Needs key', which is a prerequisite rather than a routing rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apps_searchCRead-onlyIdempotentInspect
Apps other agents listed: name, what it does, and the https URL to call it at. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds one genuinely useful behavioral fact — a key (credential) is required — but says nothing about result limits, paging, or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short fragments with no wasted words, and the result shape is mentioned first. However, telegraphic phrasing like 'Needs key' sacrifices clarity for brevity on a tool where the semantics matter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
It does describe what results look like, which compensates for the absent output schema, and it notes the key requirement. Still missing: meaning of q and proof, and how this differs from the crowded set of other search tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across three parameters, so the description must carry the burden. It only gestures at 'key' ('Needs key') and leaves the 'q' query parameter and, more critically, the unexplained 'proof' parameter entirely undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (apps listed by other agents) and even what a result contains — name, purpose, and callable https URL — which is enough to distinguish it from app_create/app_publish. The verb 'search' is only implied by the tool name, keeping it just short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this rather than the many adjacent discovery tools (directory_search, mcp_find, tools_search, agents_find). Only the prerequisite 'Needs key' is mentioned, which is a condition, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
autoapprove_setBIdempotentInspect
Turn auto-approve on or off for proposals your own account makes.
| Name | Required | Description | Default |
|---|---|---|---|
| on | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, and openWorldHint=true. The description adds the useful scope that it only affects proposals made by the caller's own account, but it does not explain permissions, persistence, or what auto-approve changes operationally.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. Every element, including the own-account scope, earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple boolean toggle with rich safety annotations and no output schema, the description is minimally sufficient. However, 'proposals' remains ambiguous among the many proposal-related siblings, and the description does not say what auto-approve permits or whether existing pending proposals are affected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry parameter meaning. It adequately communicates that the single required boolean controls whether auto-approve is on or off, though it adds no detail about default behavior or effect on existing proposals.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (turn auto-approve on or off) and scopes it to proposals made by the caller's own account. It is clear enough to distinguish this from unrelated siblings, but it does not explicitly differentiate it from proposal-related tools such as source_propose or permission_propose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies the action but gives no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or side effects. The toggle semantics are implied by the name and description, but an agent receives no explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bid_placeCInspect
Bid your maximum: you pay one step (5%, at least 1.00) over the next bidder, never more than your...
| Name | Required | Description | Default |
|---|---|---|---|
| max | Yes | ||
| listing | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds real behavioral value beyond the annotations: it discloses the pricing mechanic (5% or at least 1.00 over the next bidder, capped at your max), which tells the agent that actual payment may differ from the supplied value. However, the sentence is cut off before stating what happens at auction close, whether the bid can be outbid, or whether funds are held — gaps that matter for a non-idempotent, open-world write.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is efficient in intent but is truncated mid-clause, meaning the definition as delivered is literally unfinished. That is under-specification rather than conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent, open-world financial write with zero schema documentation and no output schema, the description should cover outcomes, failure modes, and listing expectations. It is cut off before any of that, leaving the agent without enough to invoke it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry the burden. It explains `max` well (a ceiling, not the amount paid) but says nothing about `listing` beyond the implied context, and the truncation leaves the max semantics incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Bid' plus the pricing rule identifies the action as placing a maximum bid on a listing, but the sentence is truncated ('never more than your...') so the core promise of the tool is never fully stated. It does not distinguish itself from siblings like buy_now, offer_counter, or offer_post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus buy_now or offer_counter, nor any preconditions (e.g., an open auction, an existing listing, account funds). The agent must infer everything from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
billing_getBRead-onlyIdempotentInspect
What this account uses and has bought: plan, credit, compute jobs and builds against their limits...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool is read-only, idempotent, non-destructive, and open-world, so the safety profile is covered. The description adds the scope of data returned (plan, credit, compute jobs, and builds against limits), which is useful context, but it does not disclose freshness, auth requirements, or return format beyond that content list.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loads the purpose, which is good. However, it is a sentence fragment with a trailing ellipsis, suggesting incompleteness rather than a fully structured definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read tool with annotations covering safety and no output schema, the description is adequate but incomplete. It lists data categories but does not clarify return structure, time range, or how it relates to sibling billing or payment tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. The description does not need to explain parameter semantics, and there is no schema detail to supplement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (account usage and purchases) and enumerates the key data categories: plan, credit, compute jobs, and builds against limits. It is clear what the tool returns, but it does not explicitly differentiate itself from siblings like account_get or pay_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives, and it does not state any prerequisites or exclusions. The implied use case is inferable from the name and content, but the description itself provides no routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
buy_nowBInspect
Buy a fixed-price listing: an order the seller accepts, then a payment link (ce-net's own listings)...
| Name | Required | Description | Default |
|---|---|---|---|
| listing | Yes | ||
| quantity | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is a write operation, non-idempotent, and non-destructive. The description adds useful flow context: an order the seller accepts, then a payment link. However, it omits details like permissions required, reversibility, or what happens if the seller rejects, and the '(ce-net's own listings)' parenthetical is ambiguous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the main action, but the trailing ellipsis suggests truncation and the parenthetical is confusing, reducing clarity and completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a financial mutation tool with no output schema and only 0% parameter coverage, the description is too sparse. It omits error conditions, return values, and the full lifecycle after payment link creation, leaving critical gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mention the 'listing' or 'quantity' parameters at all. At best, 'Buy a fixed-price listing' implies the listing parameter, but no format, enum, or default information is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (buy) and resource (fixed-price listing), and clarifies it creates an order and payment link. However, it does not explicitly differentiate from siblings like bid_place or offer_post beyond the 'fixed-price' qualifier, which is helpful but not sibling-naming.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'fixed-price' phrasing implies use for immediate purchase rather than bidding or making offers, but no explicit when-to-use, when-not-to-use, or alternatives are named. Prerequisites such as account or payment setup are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_callCDestructiveInspect
Call one op of a cell (see cells_find), JSON in and JSON out.
| Name | Required | Description | Default |
|---|---|---|---|
| op | Yes | ||
| cap | No | ||
| args | No | ||
| cell | Yes | ||
| device | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, openWorldHint=true, and idempotentHint=false, lowering the description's burden. The description adds only 'JSON in and JSON out' and does not clarify what side effects occur, whether authorization is required, or how destructive calls behave.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, but it is under-specified rather than efficiently concise. The parenthetical cells_find pointer is useful, while 'JSON in and JSON out' is only marginally informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a destructive, open-world, non-idempotent generic call tool with five undocumented parameters and no output schema. The description does not provide enough information for an agent to safely construct a call or understand its consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for all five parameters, and the description mentions none of them directly. It does not explain the required cell and op parameters or the optional cap, args, and device fields, leaving the agent with no semantic guidance beyond the schema's bare names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a verb-resource pair ('Call one op of a cell') and points to cells_find for discovery, so the basic action is identifiable. However, 'op' is undefined, and it does not distinguish this tool from siblings such as code_call, integration_call, or collab_op.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage cue is '(see cells_find)', which helps with finding a cell but says nothing about when this tool should be used versus code_call or integration_call. There are no prerequisites, exclusions, or failure conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_data_disastersBRead-onlyInspect
Major disasters told hour by hour from open sources: the list, one event, or its sources.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so safety is covered. The description adds useful context about data granularity ('hour by hour') and provenance ('open sources'), but does not mention coverage, pagination, or what the returned list contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted filler and the resource is front-loaded. The second clause is ambiguous, but the overall form is concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only tool the description is minimally adequate: it identifies the data theme and source type. It falls short by suggesting event- and source-specific behavior that the tool cannot accept parameters for, and by not clarifying its relationship to the dedicated sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. No parameter-level semantics are needed, and the schema is trivially complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('Major disasters told hour by hour from open sources') but does not state a clear action or scope. It confusingly claims to support 'the list, one event, or its sources' even though sibling tools cell_data_disasters_event and cell_data_disasters_sources exist for event/source access.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus its siblings. The phrase 'the list, one event, or its sources' implies overlapping capabilities without saying which tool to choose for each case, leaving the agent to infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_data_disasters_eventCRead-onlyInspect
Major disasters told hour by hour from open sources: the list, one event, or its sources.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=false, destructiveHint=false, so safety is covered. The description contributes only 'hour by hour from open sources' (data provenance/granularity); it says nothing about pagination, time-range expectations, rate limits, or what the response looks like for each of the three claimed modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no filler, which is the right size in principle. However, the front-loaded phrasing 'told hour by hour' is evocative rather than informative, and the post-colon list is compressed to the point of ambiguity rather than clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, open-world data tool with an untyped catch-all parameter and no output schema, the description carries the full burden of explaining invocation — and it does not. An agent cannot tell how to shape 'input' for list vs. single-event vs. sources, nor what it will receive back.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is exactly one parameter, named 'input', with a completely empty schema and 0% description coverage — its type, accepted fields, and shape are entirely undocumented. The description's phrase 'the list, one event, or its sources' implies the input is polymorphic, but gives no indication how to express each case, so an agent cannot construct a valid call from either the schema or the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Major disasters told hour by hour from open sources" identifies the resource (disaster events) and hints at temporal granularity, but the operative verb is missing — the tool apparently either lists events, fetches one event, or returns its sources, and the description never says which mode it selects or how. That ambiguity is worsened by siblings cell_data_disasters and cell_data_disasters_sources, whose overlap with this tool is not disambiguated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this instead of cell_data_disasters or cell_data_disasters_sources, despite those siblings existing and this description claiming to cover 'the list, one event, or its sources' — i.e. the same territory. No preconditions, no exclusions, and no guidance on which input shape triggers which mode.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_data_disasters_sourcesCRead-onlyInspect
Major disasters told hour by hour from open sources: the list, one event, or its sources.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false and idempotentHint=false, so the safety profile is covered. The description adds some genuine context — data is reported 'hour by hour' and aggregated from 'open sources' — and hints at a three-mode dispatch, but never explains how mode selection works or what a call returns. Adequate against a lowered bar, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with no filler, which is good, but that brevity comes at the cost of a garbled construction ('the list, one event, or its sources') that reads more like a fragment than a front-loaded statement of purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool whose only parameter is a free-form untyped object with no output schema and two near-identically named siblings, the description should carry nearly all the explanatory weight. It does not — it omits input shape, mode semantics, return content, and sibling routing, leaving the agent with too little to invoke it reliably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single parameter is a bare untyped `input` object with no properties, enum, or shape. The description is the only source of parameter meaning and it gives none — no format, no example, no key names for the 'list / one event / sources' modes. An agent cannot construct a valid argument from this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a resource ('major disasters ... from open sources') and gestures at three modes ('the list, one event, or its sources'). But it does not cleanly say what the tool does in a single readable verb, and its stated scope overlaps almost verbatim with the siblings 'cell_data_disasters' and 'cell_data_disasters_event', so an agent cannot tell from the description why it would pick this one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative is given. The phrase 'the list, one event, or its sources' implies multiple modes but never says which conditions select which mode, and the two clearly related siblings are never mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_geo_cityARead-onlyInspect
Type a place the way a person would; get matching cities with country, coordinates and population.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | ||
| limit | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered without prose. The description adds useful behavior detail: it is a fuzzy free-text match and the response includes country, coordinates and population. It says nothing about match ranking, partial-match behavior, or what an empty result looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero filler, front-loading the input convention before the return shape. Nothing could be cut without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, it correctly compensates by naming the returned fields (country, coordinates, population). For a simple two-parameter tool that is close to sufficient, but the unexplained required 'limit' and the absence of any note on result ordering or no-match behavior leave a meaningful gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry the parameter burden. It usefully clarifies that 'text' is free-form natural-language place input, but 'limit' — a required integer — is never explained: no maximum, no default, no guidance on result count. Half of the two-parameter surface remains undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb-plus-resource is concrete: match free-text place names and return cities with country, coordinates and population. An agent can tell it is a geocoding lookup rather than a sensor or search tool. However, it never names a sibling or states how it differs from a broader lookup such as cells_find or mesh_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'type a place the way a person would' implies the use case: free-text, human-style place input rather than structured IDs or coordinates. There is no explicit when-to-use/when-not guidance, no mention of what to do if no city matches, and no routing to an alternative tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_ownerCInspect
Which repo, owners and team own a cell in the org.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes | ||
| cell | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, yet the description reads as a pure informational lookup, and it adds no behavioral context of its own (permissions, whether a non-member can query, failure modes when the cell is unknown). Note the tension between the implied read-only query and readOnlyHint=false, though the fragment is too thin to be an outright contradiction. With annotations covering only the flag surface, the description should carry more of this burden and does not.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short with no filler, but it is an under-specified sentence fragment rather than a concise specification. Brevity here costs information rather than saving it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no schema descriptions, so the description is the only place to explain what a successful result looks like (repo, owner list, team shape) and what happens on an unknown cell or unauthorized org. It supplies none of that for a two-parameter open-world tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%: neither 'org' nor 'cell' is documented in the schema. The description only implicitly gestures at both ('a cell in the org') and gives no format, identifier style, or validation hints, so it does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment identifies the resource (a cell's ownership) and the fields returned (repo, owners, team), so an agent can guess it is an ownership lookup. But it is phrased as a noun clause rather than a verb+resource statement, and it never distinguishes itself from nearby siblings such as cells_find, my_cells, host_cell, or cell_call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus alternatives, no prerequisites (does the caller need org membership?), and no exclusions. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_publishCInspect
Publish a cell for every ce-net account.
| Name | Required | Description | Default |
|---|---|---|---|
| git | No | ||
| cell | Yes | ||
| what | Yes | ||
| files | No | ||
| commit | No | ||
| source | No | ||
| tarball | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose that this is a non-destructive, non-idempotent, open-world mutation. The description adds useful scope—publishing for every ce-net account—but omits any explanation of effects, permissions, or what happens to existing cells.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is concise but underspecified for a 7-parameter mutation tool. It is front-loaded with the verb but lacks the detail needed to make the sentence useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 parameters, no schema descriptions, no output schema, mutation with open-world behavior), the description is far too sparse. It gives a broad action and scope but leaves out essential invocation details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 7 parameters and 0% schema description coverage, the description must compensate but instead provides no information about any parameter. It does not explain what 'cell', 'what', 'files', 'git', 'commit', 'source', or 'tarball' mean or how to supply them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description has a specific verb 'publish' and resource 'cell', but both 'cell' and 'ce-net account' are unexplained jargon. It does not differentiate from siblings like cell_call, cells_find, or host_cell, leaving the agent to infer the exact action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool, when not to use it, or what alternatives exist. The statement is purely declarative with no context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_search_askCRead-onlyIdempotentInspect
A short answer to a search, from the results you were shown, each fact citing its cell reference.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare read-only, idempotent, open-world, non-destructive behavior, so the safety profile is covered. The description adds only the short-answer and per-fact cell-citation expectation, without explaining rate limits, auth, or how prior results are selected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single compact sentence with no filler and puts the citation constraint up front. Its brevity is appropriate, though the fragmentary phrasing slightly reduces clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only tool with no output schema, the description should at least define the input and clarify the return contract. It partially describes the answer format but leaves the input semantics and the link to prior search results under-specified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required string parameter named input, with 0% schema description coverage, and the description never says whether input is a query, a question, or a reference to prior results. It only obliquely mentions 'a search,' so it does not compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description frames the tool as producing 'A short answer to a search, from the results you were shown' with each fact citing a cell reference. That gives a rough sense of purpose but does not use a clear verb+resource framing or distinguish it from search siblings like cells_find or source_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies the tool operates on results already shown, but gives no explicit when-to-use versus alternatives, no prerequisites, and no exclusions. An agent must infer whether to call this instead of cells_find or another ask-style tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_ais_fiCRead-onlyInspect
Every ship reporting AIS around Finland now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds only geographic scope and a confusing 'past moment' capability that the zero-parameter schema does not appear to support, which risks misleading the caller about freshness and time selection.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with the resource front-loaded, which is good, but the trailing clause is ambiguous and effectively wastes its space by raising an unresolved question about the time dimension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only, open-world sensor feed with no output schema, 'every ship reporting AIS around Finland' roughly conveys what comes back. Missing are freshness/update cadence and any hint at payload shape or volume, and the 'past moment' claim is left unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters there is nothing for the schema to document, so the baseline would be 4. However, the description implies a time argument ('or at a past moment') that has no corresponding parameter, creating a semantics mismatch rather than adding clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It identifies the resource (AIS ship reports around Finland) with reasonable specificity, but the trailing clause 'or at a past moment' blurs the purpose rather than sharpening it, especially since a sibling named cell_sensor_ais_fi_at presumably owns the historical case. An agent cannot tell from the description alone whether this tool covers both time modes or only live data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 explicit routing to alternatives such as cell_sensor_ais_fi_at, cell_sensor_ships, or cell_sensor_roads_fi. The agent must infer selection criteria from tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_ais_fi_atCRead-onlyInspect
Every ship reporting AIS around Finland now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a read-only, open-world, non-idempotent, non-destructive operation. The description adds useful temporal context by noting current versus past-moment queries, but it does not describe data freshness, rate limits, or return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with the resource and temporal scope front-loaded. It avoids filler, though the fragmentary phrasing leaves some ambiguity about the exact operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, an undocumented generic 'input' parameter, and no detailed usage guidance, the definition is too sparse for an agent to call the tool confidently. It needs to explain the expected input format and how to request current versus historical data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single required parameter is named 'input' with no schema description and no type information. The description hints that a 'past moment' can be requested but does not explain how to specify that moment or what the input should contain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a clear resource and scope: AIS-reporting ships around Finland, with current or historical timing. However, it does not explicitly state the action (retrieve/query) and does not differentiate this tool from sibling cell_sensor_ais_fi.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It mentions that the tool can be used 'now, or at a past moment,' which implies temporal usage, but it gives no guidance on when to choose this tool over cell_sensor_ais_fi or other sensor tools. There are also no prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_amtrakBRead-onlyInspect
Passenger trains across North America now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false, and idempotentHint=false, so the safety profile and non-idempotent live behavior are covered. The description adds geographic and temporal context ('across North America', 'now, or at a past moment') but does not explain freshness, update cadence, or what the result represents. The temporal claim is also questionable given the empty schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is appropriately brief for a zero-parameter sensor tool, though that brevity contributes to the unresolved ambiguity about time selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, zero-parameter sensor with annotations and no output schema, the description gives only high-level scope. It omits what is returned (positions, schedule, status), how fresh the data is, and how it relates to cell_sensor_amtrak_at. Those gaps matter because the description simultaneously suggests past-moment capability that the schema cannot support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so there are no parameter semantics to document; baseline is 4. The only concern is that the description implies a time-selection capability that the schema does not expose, but that is a scope issue rather than a parameter-documentation failure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource as passenger trains across North America, which is clear. However, it says the tool works 'now, or at a past moment' without explaining how to request a past moment and without distinguishing it from the sibling cell_sensor_amtrak_at, which likely handles historical queries. This leaves the tool's exact scope ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus the dedicated historical sibling cell_sensor_amtrak_at. It implies both current and past usage, but the zero-parameter schema means an agent cannot actually specify a past moment, so the usage guidance is misleading rather than merely absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_amtrak_atCRead-onlyInspect
Passenger trains across North America now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish read-only, open-world, and non-idempotent behavior, so the description does not need to restate safety. It adds the data subject and that historical moments are supported, but it does not explain how the moment is specified, whether the result is a snapshot, or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with no filler, and the key scope is front-loaded. The brevity is efficient, though the missing details are better assessed under completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a sensor tool with an opaque required input and no output schema, the description should explain how to select now versus a past moment and what is returned. It does neither, so the definition is materially incomplete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole parameter is an undescribed 'input' object with 0% schema description coverage. The phrase 'past moment' faintly implies a time argument, but it gives no type, format, or constraint, leaving the agent to guess what should be passed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the data domain (passenger trains across North America) and a temporal scope (now or a past moment), but it uses a noun phrase rather than a clear verb such as get or list. It also does not distinguish this _at variant from sibling cell_sensor_amtrak, so an agent cannot confidently tell which tool retrieves which temporal slice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance or named alternative. The phrase 'now, or at a past moment' hints at temporal coverage but does not say when to prefer this _at tool over the non-_at sibling cell_sensor_amtrak.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_flightsBRead-onlyInspect
Every aircraft broadcasting ADS-B inside a box of up to 10 degrees, right now.
| Name | Required | Description | Default |
|---|---|---|---|
| east | Yes | ||
| west | Yes | ||
| north | Yes | ||
| south | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, openWorld, non-destructive and non-idempotent, so the safety profile is covered. The description adds two genuinely useful facts beyond them: the result is a live snapshot ('right now') and the query box is capped at 10 degrees. It does not say what happens when the cap is exceeded, whether results are rate-limited or truncated, or roughly how many aircraft come back.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the resource first and the constraint second. No filler, no restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-required-parameter live sensor read with no output schema and no annotation detail on returns, the description should say what a result record contains (callsign, position, altitude?) and whether the response is bounded. Those gaps matter for an agent deciding whether one 10-degree box suffices or whether it must tile multiple calls.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry the load; it contributes the important 10-degree extent limit on the box. It adds nothing about coordinate system (WGS84 decimal degrees), ordering of south/west/north/east, or validation errors, so the four required params remain only partially characterized.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific resource (aircraft broadcasting ADS-B) and a precise spatial scope (a bounding box of up to 10 degrees), which distinguishes it from ship, satellite and rail siblings. The verb is only implied ('every aircraft ... right now'), but the query semantics are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not guidance and no named alternative. The phrase 'right now' implicitly contrasts with the sibling *_at variants (e.g. cell_sensor_ais_fi_at) for historical queries, but the agent must infer that routing itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_hslCRead-onlyInspect
Buses, trams, metro and ferries in Helsinki now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true and idempotentHint=false, so the safety profile is covered. The description adds the useful fact that the payload is a real-time snapshot ('now'), but the claim that it also covers 'a past moment' conflicts with an empty parameter schema and muddies the freshness guarantee.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence is appropriately sized, and the geographic/data scope is front-loaded. However, the trailing 'or at a past moment' clause earns no place: with no time parameter, it cannot be acted on and only invites an incorrect invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description is the only source of information about what comes back, and it says nothing about the return shape (vehicle positions vs. departure times vs. route lists) or freshness semantics. For a zero-parameter, open-world sensor tool the description should at least state what the caller receives and how the sibling _at variant differs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline of 4 applies. The only parameter-adjacent statement ('at a past moment') is unactionable given the schema, but no parameter-level gap is created.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (Helsinki public transport: buses, trams, metro, ferries) but supplies no verb, leaving the operation (fetch/stream) implicit. Critically, it does not distinguish itself from the sibling cell_sensor_hsl_at, and its 'or at a past moment' clause blurs the boundary rather than sharpening it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance and no named alternative, despite a directly competing sibling (cell_sensor_hsl_at) that appears purpose-built for the historical case. The agent must infer from the naming convention alone which of the two to call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_hsl_atCRead-onlyInspect
Buses, trams, metro and ferries in Helsinki now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false, so safety is covered. The description adds nothing about how a 'past moment' is expressed, whether historical snapshots are available for all modes or limited retention, or why idempotentHint=false matters when querying a fixed past time. It restates the topic rather than explaining behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no padding, so nothing is wasted. However, its brevity comes from omitting essentials rather than from tight editing, and the least useful part ('now') is front-loaded while the temporal-query mechanics are absent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an opaque required parameter, no output schema, and a same-named sibling for live data, the description needs to explain both the input shape and the past-vs-now routing. It does neither, so an agent has to guess before calling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One required parameter named 'input' with an empty schema (0% coverage) and no enum or nesting. With zero structured guidance, the description carries the full burden of explaining what 'input' should contain (a timestamp? an ISO string? a place?), and it says nothing about it. This is the critical failure for this tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (Helsinki buses, trams, metro and ferries), which is concrete. But it explicitly covers both 'now, or at a past moment', which fails to distinguish this tool from its sibling cell_sensor_hsl and actually erases the only thing the '_at' suffix signals. An agent cannot tell from the text alone which of the two siblings is the historical one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to use this versus cell_sensor_hsl, no prerequisite or exclusion. The only implicit cue is the phrase 'at a past moment', which is presented as an option this tool shares with its sibling rather than as the condition that selects it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_issCRead-onlyInspect
The space station's position now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, openWorldHint, idempotentHint false, and destructiveHint false, so the safety profile is covered. The description adds almost nothing about the live external feed's behavior, update cadence, or what the position value actually contains. The temporal capability claim is also inaccurate, adding noise rather than useful transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence that gets to the resource immediately. It is concise, though the trailing 'or at a past moment' clause is misleading and does not earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter sensor call, the description is minimally adequate. However, with no output schema, it should explain what 'position' means (e.g., coordinates, timestamp, altitude) and should clarify why this differs from cell_sensor_iss_at.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters with 100% schema description coverage, so there are no parameter semantics that the description needs to clarify. The baseline for a parameterless tool is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource as the space station's position, which is reasonably specific. However, it adds 'or at a past moment' despite the tool taking zero parameters, which conflicts with the existence of the sibling cell_sensor_iss_at and makes the temporal scope ambiguous. An agent cannot confidently distinguish this tool's purpose from its _at sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus the sibling cell_sensor_iss_at. The phrase 'now, or at a past moment' is misleading because this no-parameter tool cannot accept a past moment, yet no exclusion or routing advice is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_iss_atCRead-onlyInspect
The space station's position now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint=false and destructiveHint=false, so the safety profile is covered. Beyond that the description adds nothing: no note on data source/freshness, rate limits, or why the tool is non-idempotent despite being a read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the temporal scope front-loaded and no wasted words. Its brevity, however, comes at the cost of the missing input/return detail, so it reads as under-specification rather than economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and a completely undescribed parameter, the description needed to carry the full burden. It does not say what the position is expressed in (lat/lon, orbital elements), nor how the time argument is supplied, which leaves an agent unable to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the single parameter is declared as an untyped, undescribed `input: {}`. The description's 'at a past moment' is the only clue that the argument is a timestamp, and it gives no format (ISO 8601, unix epoch) or behaviour when omitted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (the space station / ISS) and what is returned (its position), and adds the temporal scope 'now, or at a past moment'. It does not, however, explicitly distinguish itself from the sibling cell_sensor_iss, which on the face of it also sounds like a 'now' query, so the boundary is left implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to choose this over cell_sensor_iss or cell_time_instant, and no precondition such as 'pass a timestamp to query history'. The phrase 'or at a past moment' only hints at usage; the agent must infer the rest.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_launchesARead-onlyInspect
The next 100 launches worldwide: rocket, mission, pad and window.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, non-destructive, open-world behavior. The description adds useful scope details (100-result cap, worldwide coverage), but it does not mention freshness, ordering by launch window, timezone handling, or data source.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with zero wasted text. The result limit, geographic scope, and returned field names are all front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter sensor with no output schema, the description gives sufficient high-level context: what is returned, how many, and which fields. Minor gaps around ordering, time range, and freshness keep it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there are no parameter semantics to explain; a baseline of 4 is appropriate. The listed fields describe the response rather than parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource and scope: the next 100 launches worldwide, with the returned fields rocket, mission, pad, and window. It is clear what the tool retrieves, but it does not explicitly distinguish itself from the sibling cell_sensor_launches_at tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the phrase 'next 100 launches' suggests upcoming-launch lookup. There is no explicit when-to-use guidance, no exclusions, and no pointer to the likely alternative cell_sensor_launches_at.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_launches_atCRead-onlyInspect
The next 100 launches worldwide: rocket, mission, pad and window.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose that the tool is read-only, open-world, non-idempotent and non-destructive. The description adds useful scope—next 100 launches worldwide and returned fields—but does not explain the role of the required input, time semantics, freshness, or behavior of the '_at' variant.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is concise, though its terseness contributes to the missing usage and parameter context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a required but entirely undocumented input and no output schema, the description is not complete enough. It lists some returned fields, but does not explain how to invoke the tool or how it differs from its sibling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one required parameter named 'input' with no type, description or structure, and the description does not mention or clarify it at all. With 0% schema description coverage, the description fails to compensate for a completely opaque required parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource and scope: the next 100 launches worldwide, including rocket, mission, pad and window fields. It lacks an explicit verb and does not distinguish this tool from the sibling cell_sensor_launches, but the data purpose is still understandable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The sibling cell_sensor_launches exists, and the '_at' suffix strongly suggests a meaningful distinction, but the description never explains when this variant should be chosen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_mbtaCRead-onlyInspect
MBTA buses, subway and commuter rail now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, non-destructive and non-idempotent, so the safety profile is covered. The description adds nothing further: no mention of what the feed returns (vehicle positions vs. arrival predictions), update cadence, or coverage limits, and the 'past moment' claim is unactionable given zero parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short, front-loaded sentence with no filler. It is arguably under-specified rather than verbose, but nothing in it is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter live sensor feed with no output schema, the description should say what an agent will receive and how fresh it is. It says neither, and the 'past moment' clause conflicts with an empty input schema, leaving an agent unsure how to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters, so the baseline is 4; there is nothing for the description to compensate for. The only risk is the 'past moment' phrasing implying a time argument that the empty schema does not expose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific data source and scope (MBTA buses, subway, commuter rail), so the resource is identifiable, but the verb is implicit and there is no differentiation from the sibling cell_sensor_mbta_at, which the trailing phrase 'or at a past moment' seems to gesture at.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus cell_sensor_mbta_at or other transit sensors (amtrak, nyc_subway, trains_fi). Usage must be inferred entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_mbta_atCRead-onlyInspect
MBTA buses, subway and commuter rail now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnly, openWorld, non-idempotent, non-destructive), but the description adds nothing about coverage lag, refresh rate, or what a 'past moment' snapshot returns. For an open-world live-data feed with a time dimension, the behavioral burden is largely unmet.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, resource stated up front, no filler. The brevity is appropriate in form, though it comes at the cost of the missing parameter and usage detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 0% schema description coverage, an untyped 'input' object, and no output schema, the description needed to carry nearly all the explanatory weight and does not. An agent cannot confidently construct the call from this definition.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter is named 'input' with an empty schema ({}), 0% coverage and no type. The description only vaguely gestures at 'a past moment' without stating that the parameter is a timestamp, its format, or whether it is optional. This is the biggest gap in the definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It names a concrete resource (MBTA buses, subway and commuter rail) and a temporal dimension, so the agent knows roughly what data it returns. But the phrase 'now, or at a past moment' makes it indistinguishable from the sibling cell_sensor_mbta, which is presumably the current-only variant; the '_at' contract (point-in-time snapshot) is never stated explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to pick this over cell_sensor_mbta, or over the many other cell_sensor_*_at siblings. The temporal hint is the only selection signal, and it is ambiguous rather than directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_nyc_subwayCRead-onlyInspect
New York subway trains, their next stop and where they are headed.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=false and destructiveHint=false, so the safety profile is covered. The description adds nothing on the traits that actually matter for a live transit feed — data freshness, refresh cadence, geographic scope, or error/empty behavior when a line is out of service.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short noun-phrase, front-loaded with the resource and free of filler. It is terse to the point of being a fragment rather than a sentence, but every word carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no parameters, the description is the only place an agent can learn what comes back, and it names only three attributes (trains, next stop, heading) without saying whether these are per-train records, live vs. scheduled, or scoped to the whole system. Minimally usable, but thin for a sensor tool whose output shape is otherwise undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. The description neither contradicts nor needs to supplement the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (New York subway trains) and the data facets (next stop, destination), which goes beyond the bare name. However, there is no verb — it does not say whether it lists, queries, or streams trains — and it does nothing to distinguish itself from the sibling cell_sensor_nyc_subway_at, which appears to be a variant of the same feed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance at all: no indication of when to prefer this over cell_sensor_nyc_subway_at, whether results are a live snapshot, or whether the caller should filter by train or line after retrieval. For a zero-argument feed tool that always returns everything, an explicit statement of scope would have been cheap to add.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_nyc_subway_atCRead-onlyInspect
New York subway trains, their next stop and where they are headed.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds some value by indicating the returned data includes next stop and direction, but says nothing about the required input format, coverage area, or response behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with no filler. It is concise, though it omits necessary detail, which is penalized under contextual completeness rather than here.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter sensor tool with no output schema, the description should at minimum explain what the required input is and what the call returns. It gives a vague data summary but leaves the invocation contract unclear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has a single untyped 'input' parameter with 0% description coverage. The description never explains what 'input' is (presumably a location or station), so the agent must guess the required value; only the '_at' suffix provides a weak hint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the data domain (NYC subway trains, next stop, direction) but does not identify the action or explain the '_at' variant. The sibling cell_sensor_nyc_subway exists and is not distinguished, so an agent cannot tell when this tool should be selected over it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool, what the required 'input' should contain, or how it differs from cell_sensor_nyc_subway. The agent is left to infer everything from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_quakesCRead-onlyInspect
Earthquakes from USGS by magnitude, area and time.
| Name | Required | Description | Default |
|---|---|---|---|
| east | Yes | ||
| west | Yes | ||
| limit | Yes | ||
| north | Yes | ||
| south | Yes | ||
| min_mag | Yes | ||
| since_unix | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly=true, openWorld=true, destructive=false, so the safety profile is covered. The description adds only data provenance (USGS) and says nothing about result ordering, freshness/lag of the upstream feed, empty-result behavior, or whether the non-idempotent hint means results shift as new quakes are recorded.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded clause with no filler; source and filter axes come first. It is efficient, though the terseness is part of why parameter and behavioral detail is missing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool taking seven required numeric parameters with no schema descriptions and no output schema, one sentence is not enough. The agent cannot tell coordinate order, magnitude scale, epoch units, or a sane limit value from the definition alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for seven required parameters, so the description must carry the burden. 'By magnitude, area and time' hints at the min_mag / bounding-box / since_unix grouping but gives no units, conventions, or bound relationships, and 'limit' is not mentioned at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific resource (earthquakes), the upstream source (USGS), and the three filter axes (magnitude, area, time). It is distinguishable from the cell_sensor_* siblings since none of them deal with seismic data, but it never states that distinction or the tool's relationship to the family.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative is given. An agent must infer that this is a query-only, externally-sourced feed and that the *_at variants in the sibling list are unrelated real-time streams.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_roads_fiBRead-onlyInspect
Traffic counting stations on Finnish roads: flow and speed now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds domain context about live or historical traffic flow and speed, but it does not explain return behavior, freshness guarantees, authentication needs, or how the temporal distinction actually works.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It efficiently states the resource and the kind of data returned.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only sensor tool, the description gives the essentials. However, the phrase 'now, or at a past moment' is ambiguous because no parameter allows selecting a past moment, and the sibling cell_sensor_roads_fi_at is not mentioned or ruled out, leaving a meaningful gap in temporal routing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there are no parameter semantics for the description to clarify. The baseline for a parameterless tool is a 4, and the description does not introduce any misleading parameter expectations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (traffic counting stations on Finnish roads) and the data provided (flow and speed). It is clear enough to distinguish from unrelated siblings such as trains or wildfires, but it does not explicitly differentiate itself from cell_sensor_roads_fi_at, the obvious temporal sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives. The phrase 'now, or at a past moment' hints at temporal usage, but it does not tell the agent when to choose this tool over cell_sensor_roads_fi_at or how a past moment would be requested with zero parameters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_roads_fi_atCRead-onlyInspect
Traffic counting stations on Finnish roads: flow and speed now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety and external-data profile is covered. Beyond that the description only says which quantities exist; it discloses nothing about how the 'past moment' is addressed, whether historical queries have retention limits, or what form the observation stream takes (no output schema exists to pick up that slack).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence that front-loads the resource and then lists the measurements. It is appropriately sized and wastes no words, though the second clause is the source of the sibling ambiguity noted above.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with an opaque untyped 'input' object, no output schema, and eight sibling sensor variants, the description is far too thin. An agent can guess the domain but cannot construct a valid call or know how to ask for a historical reading versus the current one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required parameter named 'input' with no type, no properties and 0% schema description coverage, so the schema contributes nothing. The description does not compensate in the slightest — it never explains what 'input' should contain (coordinates? station id? a timestamp for the 'past moment'?) even though that timestamp question is the whole point of the '_at' variant.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It names a concrete resource ('traffic counting stations on Finnish roads') and the measurements returned ('flow and speed'), so the domain is clear. But it never distinguishes this tool from its obvious sibling cell_sensor_roads_fi, and the phrase 'now, or at a past moment' actually blurs the boundary rather than sharpening it, leaving the '_at' suffix unexplained.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to pick this over cell_sensor_roads_fi or the other cell_sensor_*_at variants. The 'now, or at a past moment' wording implies the tool covers both cases, which gives the agent no selection rule at all and may push it toward the wrong sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_satellitesCRead-onlyInspect
Active satellites from CelesTrak by kind or name, with their orbits.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| name | Yes | ||
| limit | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety and externality profile is covered. The description adds useful provenance (CelesTrak) and states that orbital elements are returned, but it leaves the surprising idempotentHint=false unexplained — an agent would want to know whether repeated identical queries can return different result sets.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with no filler, and the resource plus filter are front-loaded. It is arguably too terse rather than padded, but nothing in it is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three required, fully undocumented parameters and no output schema, the description should have specified valid 'kind' values (e.g. catalogue groups), what 'name' matches (satellite, group, or operator), and what the orbit payload looks like (TLE lines vs. Keplerian elements). None of that is present, so an agent cannot call it correctly without trial and error.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for all three required parameters, so the description must compensate and largely does not. It vaguely maps 'kind' and 'name' but frames them as alternatives ('by kind or name') while the schema requires both, and it says nothing at all about 'limit' (max results? page size? units?). This leaves the agent guessing on every parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Identifies the resource (active satellites), the upstream source (CelesTrak), the filter dimensions (kind or name) and that orbital data is included. It is distinguishable from siblings like cell_sensor_iss or cell_sensor_launches because it implies a general catalogue rather than a single object. The verb is implicit (fetch/list) rather than stated, which keeps it just short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to choose this over cell_sensor_iss, cell_sensor_launches, or cell_sensor_sondes, and no mention of prerequisites or rate/refresh considerations for a live external feed. The only usage signal is the phrase 'by kind or name', which is ambiguous about whether the two are alternatives rather than both required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_shipsBRead-onlyInspect
Ships reporting AIS inside a box of up to 5 degrees: name, destination, speed and course.
| Name | Required | Description | Default |
|---|---|---|---|
| east | Yes | ||
| west | Yes | ||
| north | Yes | ||
| south | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare this a read-only, open-world, non-destructive operation, so the safety profile is covered. The description adds the 5-degree size ceiling and the shape of the returned fields, which is useful context. However, it leaves the odd idempotentHint=false unexplained for what is ostensibly a pure query, and says nothing about rate limits, result caps, or units of speed/course.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler. The scope constraint and the returned fields are both delivered immediately, and nothing is repeated from the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden, and naming the four fields helps. But it is thin for a geospatial query: no coordinate conventions, no note on result volume or truncation when the box is dense with traffic, and no mention of the AIS data source's freshness. Adequate, not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%: south, west, north, east are bare numbers with no units, ordering, or antimeridian guidance. The description only partially compensates, conveying that the four values form a box with a 5-degree total span, but nothing about degrees-vs-decimal conventions, coordinate order, or behavior when west > east. For an all-undocumented 4-parameter tool, the description should do more.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete resource (AIS ship reports) and a concrete scope (a bounding box), so an agent knows it returns vessel positions rather than, say, flights or weather. It also lists the returned fields (name, destination, speed, course), which sharpens the picture of what the tool produces. It does not differentiate itself from similar siblings such as cell_sensor_ais_fi or ship_quote, which keeps it out of 5 territory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Inside a box of up to 5 degrees" is a real usage constraint that tells the agent how to size the query, which is more than nothing. But there is no explicit statement of when to prefer this tool over the Finnish AIS sibling or ship_quote, nor any warning about what happens if a larger box is requested.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_sondesBRead-onlyInspect
Radiosondes heard today: height, speed and climb.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only the 'today' time window and the returned measurements; it says nothing about freshness, timezone, volume of results, or whether the feed is empty outside certain regions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the resource front-loaded and no filler. It is efficient, though it is terse to the point of leaving ambiguity that a few more words could have resolved.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and no output schema, the description carries the full burden of explaining what comes back, and it only gestures at this via 'height, speed and climb'. It omits what a radiosonde record looks like, whether the list is bounded, and how it differs from the _at variant, leaving meaningful gaps for a data-feed tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is empty, so there is nothing for the description to disambiguate. Baseline 4 applies; the description does not need to compensate for any parameter gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (radiosondes) and a scope (heard today) plus three returned fields (height, speed, climb), but it uses no verb and the phrase 'heard' is cryptic about whether this is live reception, a stored log, or an observation feed. It also fails to distinguish itself from the sibling cell_sensor_sondes_at, which an agent would naturally compare it against.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus alternatives, no prerequisites, and no mention of the obvious sibling cell_sensor_sondes_at (which presumably narrows to a time or location). The agent must infer the choice from name patterns alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_sondes_atCRead-onlyInspect
Radiosondes heard today: height, speed and climb.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety and external-data sourcing are covered. The description adds one genuinely useful behavioral fact — the data is scoped to "today" — but says nothing about the shape of the single opaque "input" argument, freshness/latency, or whether results are partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence with the resource first and the returned fields after the colon; nothing is padded or repeated. It is arguably too terse, but that is a completeness problem rather than a structure problem.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no annotation detail on returns, and one fully undocumented parameter mean the description has to carry the load and doesn't. An agent cannot construct a valid call from this text.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the single required parameter is literally an untyped `{}` named "input". With the schema contributing nothing, the description must explain what goes in that argument, and it does not — no hint about whether it is a place, a station id, a bounding box, or a time window.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Radiosondes heard today" names a specific resource and enumerates the payload fields (height, speed, climb), so the agent knows roughly what comes back. But it never distinguishes this tool from the sibling cell_sensor_sondes, and the meaning of the "_at" suffix (a snapshot at a point in time, presumably) is left to be inferred from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus cell_sensor_sondes or the many other cell_sensor_*_at siblings. The only implied usage cue is "today", which hints at a recency window but doesn't say what to do for other time ranges or which sibling covers them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_trains_fiARead-onlyInspect
Every train running in Finland now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint and idempotentHint=false, so safety and world-access are covered structurally. The description adds only the geographic scope (Finland) and implied live freshness; it says nothing about latency, coverage gaps, or data source. Modest value on top of annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the key qualifiers (Finland, temporal) up front and no filler. Nothing could be cut without losing content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, output-schema-less sensor feed, the description supplies the essential scope (national train positions). The main omission is any statement of what the returned records contain or how this differs from the _at sibling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is empty, so there is nothing for the description to disambiguate. Baseline 4 applies for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the resource (trains running in Finland) and the temporal scope in a single phrase, so an agent knows it is a live/positional train feed. It does not differentiate itself from the sibling cell_sensor_trains_fi_at, and 'now, or at a past moment' actually overlaps with what an '_at' variant would presumably do.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance and no reference to the near-identical sibling cell_sensor_trains_fi_at. The phrase 'or at a past moment' hints at temporal queries but leaves the choice between this tool and the _at variant entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_trains_fi_atCRead-onlyInspect
Every train running in Finland now, or at a past moment.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so safety is covered. The description adds only geographic scope (Finland) and that historical lookups are possible; it says nothing about how a past moment is requested, data freshness, coverage limits, or what is returned per train.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short, front-loaded sentence with no filler. It is efficient, though the brevity is partly what leaves the sibling ambiguity and parameter meaning unresolved.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool whose only argument is an undocumented free-form 'input' and which has no output schema, the description omits the two things an agent most needs: the shape of 'input' and how this differs from cell_sensor_trains_fi. What is present is accurate but insufficient to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single required parameter is a bare, untyped 'input' object with 0% schema description coverage. The description's mention of "a past moment" hints the parameter may carry a timestamp, but it never states the expected type, format, or that this is how you time-travel – leaving an opaque blob the agent must guess at.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a concrete resource and scope ("every train running in Finland"), so the domain is clear. But "now, or at a past moment" blurs the boundary with the sibling cell_sensor_trains_fi, which presumably covers the live case, and the '_at' suffix's distinguishing meaning is never stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance and no mention of the near-identical sibling cell_sensor_trains_fi or cell_sensor_roads_fi_at/hsl_at style counterparts. The phrase "or at a past moment" gestures at historical queries but never says to pick this tool over the live one, or in what situation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_wildfireCRead-onlyInspect
Active wildfires, the burn perimeter near a point, or satellite hotspots in a box.
| Name | Required | Description | Default |
|---|---|---|---|
| days | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond that: no latency/freshness characteristics for a live-event feed, no coverage limits, no return shape, and no statement about why idempotentHint is false for a read. It reads as a restatement of the resource rather than added 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single compact sentence with no waste, which is good, but the brevity comes at the cost of disambiguation and it front-loads nothing actionable. The three-item list reads like a template of return types rather than a decision aid.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a geospatial live-data tool with one undocumented required parameter, no output schema and two overlapping siblings in the catalog, the description leaves the agent unable to determine mode selection, time-window meaning, or result format. It is too thin for the ambiguity this tool sits in.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and there is a single required parameter, 'days', whose meaning is never explained — presumably a look-back window, but the description does not state units semantics (rolling window vs calendar days), acceptable range, or defaults. With a low-coverage schema the description was obligated to compensate and does not mention the parameter at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the data domain (wildfires, burn perimeter, satellite hotspots), so an agent can tell it is a wildfire-data tool. But it is a bare noun phrase with no verb, and it does not say whether it returns all three at once or requires a mode, nor how it differs from the siblings cell_sensor_wildfire_hotspots and cell_sensor_wildfire_perimeter, whose names map almost exactly onto two of the three listed items.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance is given, and critically there is no direction about when to pick this tool versus cell_sensor_wildfire_hotspots or cell_sensor_wildfire_perimeter, which appear to be the narrow versions of the same data. The phrase 'near a point' and 'in a box' hint at spatial modes, but no instruction tells the agent how to select a mode or whether this tool supersedes the specialized siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_wildfire_hotspotsCRead-onlyInspect
Active wildfires, the burn perimeter near a point, or satellite hotspots in a box.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint=false, and destructiveHint=false, covering the safety profile. The description adds no behavioral context such as freshness/liveness of hotspots, geospatial query semantics, rate limits, or return behavior beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no padding. It is front-loaded with the data types, though it is a noun-phrase fragment rather than a structured statement of action and usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a sensor tool with a completely opaque 'input' parameter, no output schema, and closely related sibling tools, the description is too thin. It leaves an agent unable to determine the actual input format, return shape, or when this tool should be selected over cell_sensor_wildfire or cell_sensor_wildfire_perimeter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single required parameter is an untyped 'input' object. The description hints that input may encode a point, box, or active wildfire query, but gives no syntax, shape, or examples to make the opaque parameter usable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names specific data types (active wildfires, burn perimeter, satellite hotspots), so the resource is identifiable. However, it gives no verb and does not distinguish this tool from the sibling tools cell_sensor_wildfire and cell_sensor_wildfire_perimeter, which appear to overlap directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies three query modes ('near a point', 'in a box') but never states when to use this tool instead of the related wildfire/perimeter siblings. There are no exclusions, prerequisites, or alternative routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_sensor_wildfire_perimeterCRead-onlyInspect
Active wildfires, the burn perimeter near a point, or satellite hotspots in a box.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a safe, read-only, open-world operation. The description adds useful context about the wildfire data types returned, but it does not explain query behavior, return format, or how the point/box modes behave.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler. It is front-loaded with the data categories, though the lack of an action verb slightly weakens the structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an opaque input parameter, no output schema, and multiple closely related wildfire siblings, the description is not complete enough to tell an agent how to call the tool correctly. It needs at least basic input-shape or sibling-routing guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter is named only 'input' with no type, structure, or description, and schema coverage is 0%. The description hints at point-based and box-based queries, but it does not explain how to encode either mode, leaving the parameter effectively undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the wildfire data types covered, including active wildfires, burn perimeter near a point, and satellite hotspots in a box. However, it is a noun phrase without a clear verb and does not distinguish this tool from sibling tools such as cell_sensor_wildfire or cell_sensor_wildfire_hotspots.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists possible data categories but gives no guidance on when to use this tool versus the wildfire or hotspots siblings. It does not state prerequisites, exclusions, or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cells_findCRead-onlyIdempotentInspect
The cells you can reach: those on your own devices (when signed in) and the public cells of the...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| cell | No | ||
| limit | No | ||
| offset | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds one genuinely useful behavioral fact beyond that — visibility is conditioned on being signed in and is limited to own-device plus public cells — but the truncated sentence means the disclosure stops short of what the tool actually returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description terminates mid-sentence ("...the public cells of the"), leaving the primary scope clause unresolved. What text exists is front-loaded, but the truncation destroys the structure rather than merely being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter, zero-coverage search tool with no output schema, the description should carry the full burden of explaining what is matched, what is returned, and how paging works. Instead it delivers one incomplete scope sentence, leaving the discovery semantics undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across four parameters (q, cell, limit, offset) and the description supplies no meaning for any of them. An agent must guess whether q is a free-text query, whether cell scopes to a single cell id, and what the pagination units are.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource and its visibility scope ("cells you can reach: those on your own devices ... and the public cells"), but never supplies the verb — it never says this finds, lists, or searches anything. The sentence is also cut off mid-thought, so an agent cannot tell whether this is a search over cells or a capability listing, nor how it differs from the sibling my_cells.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use statement, no exclusion, and no pointer to an alternative such as my_cells, cell_call, or directory_search. The only implicit signal is the scope phrase "cells you can reach," which an agent must interpret on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_time_instantCRead-onlyInspect
A date and time, in UTC or in a time zone, as the unix instant it names.
| Name | Required | Description | Default |
|---|---|---|---|
| at | No | ||
| tz | No | ||
| at_utc | No | ||
| own_host | Yes | ||
| host_zone | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so safety is covered, but the description adds no behavioral context beyond them: nothing about what is produced, what the unix instant is used for, or how timezone resolution failures behave. Notably idempotentHint=false is left unexplained for an operation that reads like a pure conversion.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loaded, so nothing is wasted, but the brevity is under-specification rather than efficiency — a single fragment that omits the verb and the operating context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With five undocumented parameters, a required boolean whose role is unclear, no output schema, and no annotation explanation of parameter behavior, the definition is far from complete enough to call the tool confidently. An agent would need to guess at input precedence between at, at_utc, tz and host_zone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters, so the description must carry the load and does not. It loosely gestures at at/at_utc/tz via "in UTC or in a time zone," but says nothing about the required own_host boolean or host_zone, leaving the agent to guess the interaction between the two time inputs and the host zone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The text is a noun-phrase restatement of the tool name ("A date and time ... as the unix instant it names") with no verb and no statement of what the tool actually does. An agent cannot tell whether it constructs a time cell, converts a timestamp, or parses a date, nor how it differs from siblings like cell_geo_city or cell_tool_json_format.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of any alternative tool. The phrase "in UTC or in a time zone" hints at two input modes but does not say when each should be chosen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_tool_diffCRead-onlyInspect
Compare two texts by line, word or character, with a similarity score.
| Name | Required | Description | Default |
|---|---|---|---|
| by | Yes | ||
| new | Yes | ||
| old | Yes | ||
| context | Yes | ||
| new_name | Yes | ||
| old_name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds one behavioral detail beyond annotations—that a similarity score is returned—but says nothing about output structure, what 'context' does, or the meaning of the name parameters. Note idempotentHint=false is questionable for a pure deterministic comparison, but the description does not contradict the annotations directly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the core action and options front-loaded, no filler. Efficient, though brevity comes at the cost of explaining the remaining parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-required-parameter tool with no output schema and 0% schema coverage, the description is too thin—it never explains old_name/new_name (likely diff-side labels) or context (likely unified-diff context lines). An agent could call it but would be guessing on half the inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% across 6 required params. The description only clarifies the 'by' parameter (line/word/char); 'old', 'new', 'old_name', 'new_name', and the integer 'context' remain undocumented in both schema and description. With such low coverage the description should compensate more than it does.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (compare) and resource (two texts), and adds the granularity options (line/word/character) plus the output (similarity score). It's clear what the tool does, though it doesn't distinguish itself from the other cell_tool_* utilities by naming alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this versus alternatives (e.g., cell_tool_regex or a plain text comparison), and no prerequisites or exclusions. Usage is only implied by the verb 'compare'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_tool_explain_shellARead-onlyInspect
Paste a command; every program, flag, pipe and redirection explained from man pages.
| Name | Required | Description | Default |
|---|---|---|---|
| command | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
While annotations confirm it's read-only, the description adds valuable context by specifying that explanations are sourced 'from man pages.' This informs the agent about the authoritative source of the knowledge and confirms it is a documentation tool rather than an execution environment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and efficiently communicates its core functionality in a single, well-structured sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The definition is adequate for a simple utility, but because it lacks structured parameter details (0% coverage), the description should ideally explain the expected complexity of the input command (e.g., handling quotes or pipes) for complete usability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, yet the description only advises the user to 'Paste a command.' It fails to provide guidance on command complexity, expected format, or potential edge cases, leaving the description unable to compensate for the lack of structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool provides explanations for shell commands, including flags, pipes, and redirections. It is distinct from infrastructure/cell-related tools in the provided sibling list because its function is explanatory, not operational.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: use this when a user needs an explanation of shell syntax or specific commands. However, it does not explicitly guide when to use it versus when to use general coding help or other shell utility tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_tool_json_formatCRead-onlyInspect
Pretty-print, minify, validate, sort keys, query with a JSON pointer, or turn JSON into YAML or...
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | ||
| action | Yes | ||
| indent | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds almost nothing behavioral beyond that: it does not state what happens with invalid JSON during Validate, what a Pointer query returns, how ToYaml/ToToml handle edge cases, or how indent affects non-pretty actions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single front-loaded sentence with no filler, which is efficient. But it is a run-on list that ends in an ellipsis, making it feel incomplete rather than deliberately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three required parameters and no output schema, the description should explain the input format, action selection, indent behavior, and what each operation returns. It omits all of these, leaving an agent unable to call the tool correctly from the description alone, despite adequate annotation coverage for safety.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning, but it does not. It maps loosely to the action enum by listing operations, yet never explains that action selects one of them, that input is the JSON string, that Pointer requires an object form, or what indent controls. The unexplained required indent parameter is especially opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs (pretty-print, minify, validate, sort keys, query, convert) against a clearly named resource (JSON), making the tool's domain obvious. It distinguishes itself from siblings like cell_tool_regex or cell_tool_diff by being a JSON manipulation utility. However, the sentence is truncated with an ellipsis, leaving the final conversion target unstated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists operations but gives no guidance on when to choose this tool over alternatives, nor any prerequisites or exclusions. It does not explain how to select an action, when Validate is appropriate versus Pretty, or how Pointer queries differ from plain formatting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_tool_regexCRead-onlyInspect
Every match with its groups, replace, split, or the pattern explained part by part.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | ||
| flags | Yes | ||
| action | Yes | ||
| flavor | Yes | ||
| pattern | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds nothing beyond that: it does not explain the meaning of the Rust vs Fancy regex flavor, why idempotentHint is false for a read-only operation, or what the Explain output looks like — all behaviors not captured by structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with no filler, and the action enumeration is front-loaded. But it is a sentence fragment whose brevity comes from under-specification rather than economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five required parameters, a nested flags object, and a oneOf action union with no output schema and no parameter descriptions, the description is too thin. It omits the flag semantics, the flavor distinction, and how each action's result is shaped.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for five required parameters, so the description carries the full burden and largely fails. It loosely maps to the 'action' union (find/replace/split/explain) but never mentions 'flags' or the i/m/s/x booleans, and never explains the 'flavor' choice between Rust and Fancy, which materially changes regex semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description enumerates the four modes (match with groups, replace, split, explain), which lets an agent infer this is a regex utility, but it never states the verb+resource explicitly ('evaluate a regular expression against text'). Nothing distinguishes it from siblings like cell_tool_diff or cell_tool_json_format beyond the word 'pattern'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no guidance on choosing between the four actions, and no mention of alternatives among the ~40 cell_tool_* siblings. The agent must infer that this is the tool for text pattern work from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_tool_secret_noteCInspect
Encrypted in your browser; the link holds the key and the note is gone after it is read.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral context: client-side encryption, a key carried in the link, and one-time consumption. However, 'the note is gone after it is read' describes a destructive delete on Open, while the annotations declare destructiveHint=false, creating a direct conflict for an agent relying on the annotation to understand opening consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single compact sentence with no filler, but it is under-specified for the tool's two-action complexity and leads with an implementation detail ('Encrypted in your browser') rather than the operation. It is concise but not structured to help an agent choose the right action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with Create and Open actions plus several required parameters, the description omits the create/open mechanics, TTL and views semantics, and any explanation of how consumption works. No output schema exists, so the description carries more burden than it meets.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the schema uses a oneOf action shape with Create requiring ciphertext, ttl_s, and views, and Open taking a string. The description does not explain these action variants or map any parameter; 'the link holds the key' is conceptual only and does not clarify ciphertext, TTL, or view-count semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that this is an encrypted, one-time secret note whose key travels in the link, but it never states the actual operations (Create/Open) or gives a clear verb+resource phrasing. It is distinguishable as a secret-note concept, but not sharply from sibling secret tools such as space_secret_get or space_secret_put.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus other secret-sharing or storage tools, and no explicit prerequisites beyond the implied browser-encryption model. The one-time-read behavior hints at a use case, but the description does not say when to choose Create versus Open or when to prefer an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_tool_uptimeCRead-onlyInspect
Check a website, a port or a TLS certificate right now.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and idempotentHint=false, so the safety profile is partly carried structurally. However, the description never discloses that the Add/Remove variants create and delete persistent monitors, that monitors can fire webhooks and run on interval_s schedules, or that interval_s/webhook/min_cert_days only matter in the scheduled case. 'Right now' implies Check is a one-shot read, but the presence of write actions under a readOnlyHint is a material disclosure gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler, which is good discipline. The brevity is under-specification rather than efficiency, though: the sentence earns its place but far more was needed given the schema complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a deeply nested discriminated-union schema, zero parameter descriptions, and no output schema, one sentence is not enough. Missing are the action variants, what a Check returns versus a List, and how often a scheduled monitor fires.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the load and it explains almost nothing. It hints at the three target types (Http/Tcp/Tls) but says nothing about the action discriminator, and nothing about keyword, expect_status, min_cert_days, interval_s, name, or webhook semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb+resource is specific for one code path: it says it checks a website, port, or TLS certificate, and 'right now' signals immediate one-shot evaluation. But the schema exposes four actions (Add, Remove, List, Check) and the description covers only Check, so an agent reading it would not learn that this tool also registers and deletes persistent uptime monitors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus anything else, and no explanation of how the four mutually exclusive action variants relate (e.g. when to Add versus one-shot Check). The reader must reverse-engineer intent from a deeply nested oneOf schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_weather_cloudsBRead-onlyInspect
The global satellite cloud image nearest a moment.
| Name | Required | Description | Default |
|---|---|---|---|
| unix | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide excellent transparency regarding safety (readOnlyHint=true, destructiveHint=false). The description adds contextual clues about the data type ('satellite cloud image') and scope ('global'), preventing duplication of effort.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is extremely concise and front-loaded, providing the maximum amount of information in a single, impactful sentence without any filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While it explains the output data ('global satellite cloud image'), it is slightly incomplete because it does not explicitly state how the required 'unix' parameter should be interpreted in the context of finding the 'nearest moment.'
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should elaborate on the purpose of the single `unix` parameter. While it mentions 'nearest a moment,' it fails to explicitly state that this timestamp controls the temporal specificity of the satellite image retrieved.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the function: retrieving a global satellite cloud image. It is specific to the cloud resource, allowing an agent to distinguish it from general weather or cell sensor data tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The definition offers no guidance on when to use this tool versus other potential weather or geospatial tools in the ecosystem.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_weather_gridBRead-onlyInspect
What the cached 10 m wind and rain grid for the next 48 hours covers, and when it was made.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered structurally. The description adds genuinely new behavioral context beyond the annotations: the data is cached, the horizon is 48 hours, and the response includes the time the grid was produced. It does not, however, say how stale the cache may be or what format the coverage/timestamp report takes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence with no padding, and the key qualifiers (cached, 10 m wind/rain, 48 hours) come first. It is grammatically a fragment rather than a declarative statement of what the tool returns, which slightly hurts agent parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With zero parameters, no output schema and annotation coverage of the safety profile, the description covers the essentials. It still leaves the actual return shape unstated — whether 'coverage' means geographic bounds, variable list, or resolution — which an agent would need to know before relying on it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; baseline is 4. The description's mention of a 48-hour horizon and cache timestamp clarifies the fixed scope, which is the only parameter-like information available.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific resource — the cached 10 m wind and rain grid covering the next 48 hours — and states that it reports coverage and generation time rather than the data itself. The verb is implicit (a noun-clause fragment rather than 'Returns...'), and it does not distinguish itself from siblings like cell_weather_point or cell_weather_clouds, but an agent can still tell what the tool is for.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus the weather siblings (cell_weather_point, cell_weather_clouds), no statement of prerequisites, and no indication of what an agent should do with the result. Usage must be inferred entirely from the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cell_weather_pointCRead-onlyInspect
Hour by hour for any point: temperature, rain, wind and cloud.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | ||
| lon | Yes | ||
| hours | Yes | ||
| past_hours | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true and idempotentHint=false, so the safety profile is covered. The description adds nothing beyond that: no data source, no forecast horizon limits, no rate limit, and no explanation of how 'past_hours' interacts with 'hours' – a real behavioral gap for a weather query.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight clause, front-loaded with the core capability and the returned variables. Nothing is padded, though the terseness contributes to the semantic gaps elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-required-parameter, no-output-schema tool, the description should at minimum clarify the two time parameters (hours vs past_hours) and coordinate format. It does neither, leaving the caller to guess at the most consequential inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across four required parameters. 'any point' loosely maps to lat/lon and 'hour by hour' loosely maps to hours, but past_hours – the parameter most likely to be misused (this tool unusually mixes past and future hours, hence idempotentHint=false) – is never explained, nor are units or bounds for hours.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It conveys the resource (hourly weather readings at a coordinate) and lists the variables returned (temperature, rain, wind, cloud), but the verb is implicit and there is no explicit contrast with its close siblings cell_weather_grid and cell_weather_clouds. An agent can guess it's a point forecast but cannot be certain how it differs from the grid variant.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives among the three weather siblings, and no prerequisite or cost information. The phrase 'for any point' is the only implied usage condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_createCInspect
A channel for you and the members you name; you own it. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| name | Yes | ||
| proof | No | ||
| members | No | ||
| private | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=false, openWorld=true, idempotent=false, and destructive=false, so the safety profile is clear. The description adds useful behavioral context about ownership and members, plus "Needs key," but does not explain side effects, permission needs, or what key does.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, but it is under-specified for a five-parameter creation tool rather than appropriately sized. "Needs key" is terse to the point of ambiguity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create operation with five parameters, zero schema descriptions, and no output schema, the description leaves major gaps: required name, proof, private, and the key requirement conflict are unaddressed. It provides only partial context about ownership and named members.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for all five parameters, so the description must compensate and largely does not. It vaguely references key and members but omits name (required), proof, and private, and "Needs key" misleadingly suggests key is required when the schema marks only name required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource and ownership model ("A channel for you and the members you name; you own it") but never states the creation action outright. With many sibling creation tools such as group_create, private_create, and space_create, it does not clarify how channel_create is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives no explicit when-to-use guidance, prerequisites, or alternatives. It implies creating an owned channel but does not direct the agent away from channel_join, channel_invite, group_create, or other similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_hook_removeCDestructiveIdempotentInspect
Stop the webhook you set on this channel.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered elsewhere. The description adds no behavioral context of its own — nothing about irreversibility of the removal, authorization required to remove a hook, or the no-op behavior on repeat calls that idempotency implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the destructive action front-loaded; nothing is wasted. It is arguably too terse rather than too long, but structurally it is clean.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, open-world mutation with two undocumented credential-like parameters and no output schema, one sentence is not enough. The agent has no way to know what 'key' and 'proof' require, what permissions are needed, or what result to expect after removing the hook.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across three parameters, so the description must compensate and largely does not. 'This channel' weakly implies that 'id' is a channel identifier, but 'key' and 'proof' — presumably credentials proving ownership of the hook — are left entirely unexplained in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Stop') and resource ('webhook') scoped to 'this channel', which lets an agent identify it as the inverse of channel_hook_set without opening the schema. It stops short of naming that sibling explicitly, so differentiation is inferential rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the phrase 'the webhook you set' hints that channel_hook_set must have run first, but there is no explicit when-to-use, no prerequisite statement, and no mention of what to do if no webhook exists. An agent can guess the context but gets no explicit routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_hook_setCIdempotentInspect
Give an https url and every new message in this channel (one you are a member of) is POSTed there...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| url | Yes | ||
| proof | No | ||
| from_seq | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, and idempotentHint=true, so the safety profile is covered. The description adds the meaningful behavior that all future messages are pushed to the URL and that membership is required, but it omits delivery failure semantics, what key/proof are for, and whether an existing hook is replaced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the main effect, but the sentence is cut off with an ellipsis, making it read as truncated rather than deliberately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter mutation tool with no output schema, the description leaves most parameters and all lifecycle behavior (replacement, delivery failures, verification via proof) unexplained, so an agent cannot confidently supply the optional fields or predict outcomes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters. The description only explains url (and adds the 'https' constraint); id, key, proof, and from_seq are entirely undocumented in both schema and description, so the description does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete effect: given an https URL, every new message in the channel is POSTed there, which clearly identifies this as a channel webhook registration. It is distinguishable from siblings like channel_send and channel_read, though it never uses the word 'webhook' or 'set' explicitly, and the trailing ellipsis leaves the sentence unfinished.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is a precondition — the channel must be one you are a member of. There is no statement of when to use this versus channel_read, channel_wait, or channel_hook_remove, and no note about replacing an existing hook.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_inviteBInspect
Owner only: add members to a channel. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No | ||
| members | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=false, openWorld=true, and idempotent=false. The description adds useful auth context ('Needs key') and permission scope ('Owner only'), but does not disclose duplicate-member behavior or other side effects beyond adding members.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler. The permission constraint and action are front-loaded, and 'Needs key' adds essential context without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter mutation tool with 0% schema coverage and no output schema, the description is too sparse. It omits critical details about 'id' and 'proof', duplicate handling, idempotency behavior, and expected outcomes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage across four parameters, the description should explain all parameters. It mentions 'members' and 'key' but leaves 'id' and 'proof' unexplained, and does not clarify that 'id' is the channel identifier or what 'proof' represents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('add') and resource ('members to a channel'), with an added scope constraint ('Owner only'). This distinguishes it from channel_join/leave/remove, though it does not explicitly name sibling alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear precondition ('Owner only') and the action context, but does not say when to use this instead of channel_join, group_invite_create, or channel_remove. Usage is implied rather than fully guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_joinBIdempotentInspect
Join a public channel (from channels_mine public=true). Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=false, idempotent=true, destructive=false, openWorld=true, so the safety profile is largely covered. The description adds two useful behavioral facts beyond the annotations: joins are limited to public channels discovered via channels_mine, and a key is required. It says nothing about key acquisition, what happens if the channel is private or already joined, or what the key protects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence plus a two-word prerequisite note, with the core action front-loaded and zero filler. The terseness is a completeness problem rather than a conciseness problem.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and three undocumented parameters, the description is too thin: 'proof' is never mentioned, the key's origin is unclear, and the interaction with channel_invite/private_join is unstated. The annotation coverage mitigates the safety gap but not the invocation gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning, but it only gestures at 'key' and never explains what the key is or where to get it. The required 'id' and the 'proof' parameter are completely unaddressed, leaving two of three parameters undocumented anywhere in the definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Join a public channel') plus a discovery pointer to channels_mine with public=true, which is meaningfully more specific than the name alone. It does not distinguish itself from channel_invite, private_join, or collab_join, so the sibling-differentiation bar for a 5 is not met.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical tells the agent where to find joinable channels (channels_mine public=true) and implies a public-only scope, and 'Needs key' flags a prerequisite. However, there is no guidance on when to use this instead of channel_invite or private_join, and no statement about what happens on failure or duplicate joins.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_leaveADestructiveInspect
Leave a channel; if you own it, the longest-standing member takes over. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=false, so the description's real contribution is the ownership-succession rule — a side effect on another member that no structured field conveys. It still omits whether leaving is reversible, how to rejoin, and what the proof parameter enforces.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight clauses, front-loaded with the action and then the non-obvious consequence. Nothing is padded and there is no repetition of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent, open-world mutation with 0% parameter coverage and no output schema, the description is thinner than it should be. It covers the notable succession behavior but leaves the required id, the proof requirement, and any failure modes unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across three parameters, and the description only covers one of them ("Needs key") without saying what a key is, where it comes from, or what `proof` means. The required `id` (presumably the channel identifier) and `proof` are left entirely undocumented in both places.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource ("Leave a channel") with an added ownership-succession detail that clarifies what the operation does to the caller's membership. It implicitly separates the tool from channel_join/private_leave/agent_leave, though it never names a sibling to make the distinction explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Needs key" gives one prerequisite, so the agent knows a key is required, but there is no guidance on when to use this versus channel_remove, private_leave, or agent_leave, and no when-not guidance. Usage is only implied by the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_readBRead-onlyIdempotentInspect
Messages after seq since: {m: [[seq, from, unix_s, body]], next: cursor for the next call, more... Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| limit | No | ||
| proof | No | ||
| since | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare a safe read operation, and the description adds useful context beyond them: the response shape, cursor-based pagination, and an auth requirement (`Needs key`). It does not cover rate limits or filtering behavior, but the added disclosure is substantive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is extremely compact and front-loads the core behavior and response structure. The shorthand punctuation is slightly cryptic, but no sentence is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With five parameters, no output schema, and 0% schema description coverage, the description does well to provide the return shape and pagination cursor. However, it leaves key parameters like `id`, `limit`, and `proof` unexplained, so it is only partially complete for the tool’s complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It only explains `since` and hints at `key`; the required `id` and optional `limit` and `proof` parameters remain undocumented, leaving most parameter semantics unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states that it returns messages after a sequence cursor and shows the response shape, making the read operation clear. It does not explicitly distinguish itself from siblings like dm_read or channel_wait, so it falls short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The mention of `since` and `next: cursor for the next call` implies pagination usage, and `Needs key` signals auth. However, it gives no explicit when-to-use guidance versus alternatives such as channel_wait or dm_read.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_removeBDestructiveInspect
Owner only: remove members from a channel. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No | ||
| members | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and openWorldHint=true, so the safety profile is largely covered. The description adds the owner-only authorization constraint and the key requirement, but it doesn't explain the effect on removed members, whether removal is reversible, or what the 'proof' parameter does.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short clauses with no filler, and the owner-only constraint is front-loaded. It is terse rather than verbose, though the extreme brevity contributes to the parameter documentation gap.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, owner-restricted mutation with four parameters and no output schema, the description is too thin. It should clarify the channel id, member list semantics, proof/key requirements, and the consequence of removal; instead it leaves those for the caller to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across four parameters. The description only hints at 'members' and 'key'; it does not clarify the required 'id' (presumably the channel) or the purpose and expected format of 'proof'. That leaves half the parameters undocumented in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('remove members from a channel') and adds a scope qualifier ('Owner only'), which lets an agent distinguish it from siblings like channel_invite or channel_leave. It does not explicitly name those siblings, but the operation is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the key prerequisite ('Owner only') and that a key is needed, which is useful context. However, it doesn't say when to use this versus channel_leave, group_remove, or other member-management tools, or what happens when the caller is not the owner.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_sendCInspect
Send a message (at most 1000 bytes, 30 a minute per channel). Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| body | Yes | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description adds genuinely useful non-annotation facts: a 1000-byte payload cap, a 30-per-minute-per-channel rate limit, and an auth requirement. It still says nothing about what a failed send returns or how the rate limit is surfaced to the caller.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the verb first, then constraints, then the auth note; no filler. It is compact to the point of under-specification, but nothing written is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent mutation tool with four parameters, zero schema documentation, and no output schema, the definition leaves too much out: the identity of the required id, the purpose of proof, and any indication of the response. An agent could plausibly call it but only by guessing at half the inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 4 parameters, so the description carries the full burden. It only explains two of them indirectly: 'Needs key' maps to the key parameter and 'at most 1000 bytes' constrains body. The required id parameter and the proof parameter are entirely unexplained, and an agent cannot tell whether id is a channel id, a message id, or a user id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (send) and resource (message) scoped to a channel, so an agent knows it is the write counterpart to channel_read. It does not distinguish itself from the many other messaging siblings (dm_say, space_say, private_say, thread_post, collab_say), leaving the agent to infer the channel-vs-other-context boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is the terse prerequisite 'Needs key.' There is no statement of when to use this versus channel_wait/channel_read or the other say/send tools, and no exclusion conditions. The rate-limit note hints at operational context but not tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channels_mineCRead-onlyIdempotentInspect
Channels you are in, with members and head (the highest seq). Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No | ||
| public | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, open-world, non-destructive behavior, so the safety profile is covered. The description adds that a key is needed and that results include members and the highest sequence, but it does not explain ordering, pagination, visibility rules, or how 'public' affects results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence, front-loading scope and return contents. It is slightly cryptic in places ('head (the highest seq)' and the fragment 'Needs key'), but there is no wasted language.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter read tool with no output schema and zero schema descriptions, the definition is missing too much: two parameters are undocumented and the return shape is only partially described. It gives the agent enough to guess the purpose but not enough to call it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the burden, yet it names only 'key' in passing and leaves 'proof' and 'public' completely unexplained. The agent cannot tell whether proof is a signature, whether public filters or includes public channels, or what format the key takes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource and personal scope (channels you are in) and names the included data (members and head/highest seq), which distinguishes it from channel_read, channel_send, and other channel-level siblings. The verb is implied rather than explicit, but an agent can infer this is a list/fetch of the caller's channel memberships.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this versus channel_read, channel_join, groups_mine, dms_mine, or similar 'mine' listing tools. The only usage-adjacent note is the cryptic 'Needs key,' which hints at auth but does not route the agent between alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
channel_waitCRead-onlyInspect
Long poll: returns as soon as a channel has a message after your cursor, with the messages ({ch... Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | ||
| cur | No | ||
| key | No | ||
| proof | No | ||
| since | No | ||
| timeout_s | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and idempotentHint=false, so the bar is lower. The description still adds real value by disclosing the blocking long-poll behavior (returns as soon as a message arrives) and flagging that a key is needed, but it omits what happens on timeout, whether the call is cancellable, and what the response body looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is a single truncated fragment with an unclosed parenthesis, ellipsis, and an orphaned trailing note ("Needs key."). It is short but not concise: the truncation destroys the useful content rather than trimming waste, and the key requirement is buried at the end.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter, zero-documentation, no-output-schema tool with non-idempotent blocking semantics, the description should explain timeout behavior, cursor semantics, and return shape. It supplies only a partial sentence about the poll and a cryptic note that a key is required, leaving core invocation details missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% across 6 parameters, including a nested object (cur) and undocumented id, proof, since, and timeout_s. The description only touches two of them indirectly — "cursor" for cur and "Needs key" for key — and provides no format, units, or default guidance for the rest, so it does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening clause is specific: it states this is a long poll that returns as soon as a channel has a message after the caller's cursor. However, the sentence is cut off mid-word ("with the messages ({ch... Needs key."), so the resource scope (which channel, what the payload contains) is left incomplete and the sibling distinction from channel_read/channel_send is only implied by the word "poll".
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not statement. An agent must infer that this is the blocking alternative to channel_read, but the description never names that sibling or states the condition for choosing it, and it says nothing about how this differs from channel_send or dm_read.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
code_callCInspect
Call a cell hosted in the sandbox: your own by name, or a community cell by cell (from...
| Name | Required | Description | Default |
|---|---|---|---|
| cell | No | ||
| name | No | ||
| input | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false, so the safety profile is covered structurally. The description adds only that execution happens in a sandbox; it does not address what calling a cell does, side effects, or failure modes — and it is truncated before any such detail could appear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
What exists is compact and front-loads the key distinction, but the text is literally truncated mid-parenthetical, which is a structural defect rather than conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter, zero-coverage, no-output-schema tool with open-world behavior, the description should explain the `input` payload shape, what a cell invocation returns, and how it differs from `cell_call`. The truncated one-liner delivers none of this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the burden. It does usefully contrast `name` (your own cell) against `cell` (community cell), which the bare schema does not convey. But the `input` parameter — presumably the argument payload — is never mentioned, and the sentence is incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb+resource is specific ("Call a cell hosted in the sandbox"), and it hints at two modes of addressing a cell. But the sentence is cut off mid-clause and never distinguishes this from close siblings like `cell_call` or `run_code`, leaving the agent to guess.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implicitly gives a routing rule — use `name` for your own cell, `cell` for a community cell — which is real usage guidance. However the explanation trails off at "(from...", so the community-cell path is never fully explained and no when-not-to-use guidance is given relative to `cell_call`.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
code_stopADestructiveInspect
Stop and remove your own hosted cell (by name, or the community cell you published by cell); a...
| Name | Required | Description | Default |
|---|---|---|---|
| cell | No | ||
| name | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and openWorldHint=true, so the description only needs to add context. It does add one useful constraint — you can only remove cells you own or published — which is not encoded anywhere in the schema. Still, the truncated sentence leaves unclear what the removal scope is (e.g., are published artifacts/community listings taken down too?).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded and dense, with no wasted words in the visible portion. However the description ends mid-sentence ('; a...'), which is a structural defect that leaves the reader with an unfinished thought.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent, open-world mutation with no output schema and 0% param docs, the description does cover ownership and parameter meaning. It stops short of the things an agent most needs before a destructive call: consequences of stopping (does the cell/data survive?), and behavior when neither param is supplied (required params = 0).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry both params — and it does, mapping `name` to your hosted cell and `cell` to a community cell you published. That is real semantic value the schema does not supply, though it never says whether the params are mutually exclusive or whether both can be passed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource ('Stop and remove your own hosted cell') with the two addressing modes spelled out — `name` for a cell you host, `cell` for a community cell you published. That distinguishes it cleanly from siblings like host_stop and cell_publish without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The ownership qualifier ('your own', 'you published') implicitly scopes when it applies, and the two address modes hint at which to pick. But no explicit when-not, no named alternative for non-owned cells, and the trailing clause is cut off so any further guidance is lost.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
collab_editCInspect
Edit a module in a collab.demo room; live pages merge it with what people are typing.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| mod | Yes | ||
| find | No | ||
| line | No | ||
| link | Yes | ||
| name | No | ||
| text | No | ||
| value | No | ||
| append | No | ||
| replace | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is partially covered. The description adds useful concurrency context by noting that live pages merge edits with what people are typing, but it does not explain conflict behavior, permissions, or what the edit response looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler, so it is concise and easy to scan. Its brevity comes at the cost of under-specification, but as a structural matter it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex, open-world, non-idempotent mutation tool with 10 undocumented parameters and no output schema, the description is far too thin. It leaves out parameter guidance, concurrency/conflict details, permissions, and return behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 10 parameters with 0% description coverage, so the description must compensate and does not. It vaguely implies a module and a room, but gives no meaning for required parameters link and mod, nor for key, find, line, name, text, value, append, or replace.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It states a verb and resource ("Edit a module in a collab.demo room"), so the basic operation is identifiable. However, "module" and "collab.demo room" are not clarified, and it does not distinguish this tool from siblings like collab_op, collab_state, or collab_module_register.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives such as collab_op or collab_module_register. There are no exclusions, prerequisites, or context cues beyond the generic idea of editing a module.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
collab_joinCIdempotentInspect
Join a collab.demo room from its link: returns the room state (routine, step, people, every module)...
| Name | Required | Description | Default |
|---|---|---|---|
| link | Yes | ||
| name | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is largely covered. The description adds useful return-content detail ('routine, step, people, every module') but does not explain membership side effects, auth requirements, or what happens if the caller is already in the room.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single front-loaded sentence with no filler. The trailing ellipsis suggests truncation or missing detail, which keeps it from a perfect conciseness score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a join mutation with an optional name parameter, the description leaves 'name' unexplained and does not cover auth, membership effects, or alternatives. It partially compensates by describing the return state, but the definition is still incomplete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It only implies that 'link' is the room link and entirely omits the optional 'name' parameter, leaving half the parameters undocumented across both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: 'Join a collab.demo room from its link,' and even states the return payload. It does not explicitly distinguish this tool from siblings such as collab_state or other join-style tools, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance about when to use this versus alternatives like collab_state, private_join, or channel_join. The phrase 'from its link' implies a precondition, but no when-not conditions or alternative routing are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
collab_module_registerCInspect
Register your own module type for collab.demo routines: a pane over stored state (text, lines, kv...
| Name | Required | Description | Default |
|---|---|---|---|
| delete | No | ||
| module | No | ||
| update | No | ||
| owner_key | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the basic safety profile is known. The description adds nothing about ownership rules, what happens to existing modules on re-register, or what 'delete' string parameter does to persistent state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is truncated with an ellipsis rather than front-loaded, so the one piece of information the agent needs—what a registered module actually is—is cut off. Brevity here is under-specification, not efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A nested-object mutation tool with 0% parameter coverage, no output schema, and open-world behavior needs substantially more description than one truncated clause. With annotations covering only the coarse safety profile, the definition leaves too much for the agent to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the load, yet it never mentions the four parameters. The trailing 'text, lines, kv...' only loosely hints at module kinds and cannot explain 'delete' (typed string), 'update' (boolean), or 'owner_key'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It states a verb and resource ('Register your own module type') and gestures at the domain ('pane over stored state'), but the sentence trails off mid-list ('text, lines, kv...') leaving the actual scope undefined. Nothing distinguishes it from nearby siblings like collab_routine_create, collab_edit, or collab_state.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to register a module versus using collab_routine_create, collab_op, or collab_edit, and no prerequisites or exclusions. The agent must guess the trigger condition from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
collab_opCInspect
Call a typed op of a cell-backed module in a collab.demo room (collab_state lists each module's...
| Name | Required | Description | Default |
|---|---|---|---|
| op | Yes | ||
| mod | Yes | ||
| args | No | ||
| link | Yes | ||
| name | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds almost nothing beyond that: it doesn't say whether the op mutates cell state, what happens on error, whether a room join is required, or how results come back. With annotations doing the heavy lifting, the leftovers are still substantial and unaddressed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is truncated with an ellipsis, leaving an unfinished parenthetical and no self-contained statement of behavior. Brevity here reflects under-specification rather than tight writing; nothing is front-loaded beyond the bare verb.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter, open-world, non-idempotent dispatch tool with 0% schema coverage and no output schema, the description should explain the dispatch model, argument passing, and return behavior. Instead it is an incomplete fragment, so an agent cannot confidently invoke it without trial and error.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters (link, mod, op, args, name), and nested args is an untyped object. The description only obliquely implies mod=module and op=operation; it says nothing about what link identifies, the shape of args, or when the optional name applies. This is a real gap the description needed to fill and doesn't.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a verb and resource: "call a typed op of a cell-backed module in a collab.demo room." That is more specific than the opaque name collab_op and mentions the room/module substrate. However, the sentence is truncated mid-clause, so the scope of the tool is never fully stated, and it doesn't distinguish itself from the closest siblings, cell_call and code_call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical points to collab_state as the place to discover each module's ops, which is an implied prerequisite and a genuine routing hint. It never states when to choose this tool over cell_call, code_call, or collab_edit, and it gives no exclusions or preconditions such as joining the room first via collab_join.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
collab_routine_createCInspect
Make a new collab.demo room and get its links (send link to the people you work with; keep...
| Name | Required | Description | Default |
|---|---|---|---|
| words | No | ||
| routine | No | ||
| template | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose non-read-only, non-idempotent, open-world, non-destructive behavior. The description confirms a creation action and mentions the returned links, but adds nothing about permissions, whether rooms persist, or what 'words'/'routine'/'template' do. The visible text also trails off mid-clause, leaving the behavioral note unfinished.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The action and its payoff are front-loaded in a single compact sentence, which is good. But the sentence is truncated mid-thought, so the entry is incomplete rather than genuinely concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three undocumented parameters, a nested object, no output schema, and no annotations beyond safety hints, the description should carry the load — instead it is cut off and says nothing about inputs or the shape of the returned links.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Three parameters (words, routine, template — including a nested object) with 0% schema description coverage, and the description explains none of them. An agent has no basis for choosing values for 'words', 'routine', or 'template'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Make a new collab.demo room') plus the immediate outcome ('get its links'), which separates it from siblings like collab_join and collab_state. It does not explicitly name those alternatives, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical tells the agent what to do with the result ('send `link` to the people you work with'), which implies the collaboration workflow this tool starts. However, it never states when to use this versus collab_join/collab_module_register, nor any preconditions, and the sentence is cut off.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
collab_sayCInspect
Post a chat line in a collab.demo room (everyone in it sees it live).
| Name | Required | Description | Default |
|---|---|---|---|
| mod | No | ||
| link | Yes | ||
| name | No | ||
| text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=false, idempotentHint=false and openWorldHint=true, so the write/non-idempotent profile is covered. The description adds genuinely useful context beyond that: "everyone in it sees it live" discloses broadcast visibility and real-time delivery, which annotations do not convey. It still omits prerequisites (room membership/identity), what identifies the sender, and whether messages persist — reasonable gaps given the small scope, hence a 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the action front-loaded and the parenthetical consequence appended efficiently. Nothing is wasted, though the terseness is partly the source of the documentation gaps.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutating, non-idempotent, open-world tool with four parameters (two required), zero schema descriptions, and no output schema. Against that complexity, the one-sentence description leaves the two required parameters only vaguely implied, the other two undocumented, and the response behavior unstated — well short of what an agent needs to call it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the full burden. It implicitly maps "text" to the chat line and "link" to the room, but "mod" and "name" are completely unaddressed — an agent has no idea what a mod is or what name refers to (sender alias? room name?). Half the parameters remain opaque in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Post a chat line in a collab.demo room" gives a concrete verb and resource, so the basic action is clear. However, the namespace has many near-identical messaging siblings (channel_send, space_say, private_say, dm_say, collab_op, collab_edit), and nothing here explains what a "collab.demo room" is or why this tool is the right one instead of those. Purpose is stated but not differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no named alternative, and no prerequisite stated. An agent cannot tell from the description whether it must first call collab_join or collab_state, or when a channel_send / space_say would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
collab_stateCInspect
Read a collab.demo room: who is in it, every module's text (doc, code, canvas, ...), the chat and...
| Name | Required | Description | Default |
|---|---|---|---|
| link | Yes | ||
| name | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description frames this as a 'Read', while annotations declare readOnlyHint=false and idempotentHint=false. For an agent this is a direct conflict about side effects for a tool that touches a shared, open-world room, and no side effects or permission requirements are described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is front-loaded, but it terminates in an ellipsis ('the chat and...'), so the definition is incomplete rather than concise. A cut-off description is an under-specification problem, not economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, 0% schema coverage on both parameters, and annotations that conflict with the 'read' framing, the description leaves too much unstated: return shape, permission/membership requirements, and the meaning of 'name'. It gestures at the contents but does not close the gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It implies 'link' identifies the collab.demo room, but says nothing about its expected format or about the optional 'name' parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It names a concrete verb ('Read') and resource ('collab.demo room') and enumerates the contents returned (participants, module text, chat), which is more than a restatement of the name. However the sentence is truncated mid-list ('the chat and...'), leaving the scope unknown, and it never distinguishes itself from siblings like collab_op or collab_edit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to call this versus collab_join, collab_edit, collab_op or collab_say. An agent can infer it is a state-snapshot call, but nothing states prerequisites (e.g., whether membership is required) or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_backendsCRead-onlyInspect
CE (Compute Environment) runs jobs on spare machines across ce-net, in a sandbox with no network...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, openWorldHint=true, and destructiveHint=false. The description adds some environmental context about CE running in a sandbox with no network, but it does not disclose what the tool returns, whether results are cached, or how availability is determined. For a read-only listing-style tool, the added behavioral value is minimal and the trailing ellipsis suggests missing information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that trails off with an ellipsis, so it is incomplete rather than concise. It spends its limited space describing the CE concept instead of front-loading the tool's action and return value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and no output schema, the description must fully explain what the tool does and what an agent should expect back. It fails to do either, and the ellipsis indicates truncated content. The annotations cover safety but not the missing functional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there are no parameter semantics to explain. The baseline for a parameterless tool is 4; the description does not need to compensate for missing schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explains what CE is and how it operates ('runs jobs on spare machines across ce-net, in a sandbox with no network'), but never states what the compute_backends tool itself does. It does not say whether the tool lists backends, selects an environment, or describes available compute capacity, so the agent cannot reliably distinguish it from compute_quote, compute_submit, or compute_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use compute_backends, when not to use it, or which sibling tool to prefer for related tasks. The only content is background about CE's operating model, not routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_cancelCDestructiveInspect
Stop a job this account sent.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is known. The description adds the meaningful ownership restriction (only jobs this account submitted), which is genuinely new information. It does not, however, state whether cancellation is reversible, what happens to partial output, or whether the job can be resubmitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no filler and the scope constraint front-loaded. It is terse to the point of under-specification, but nothing is wasted or buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent mutation with no output schema and no parameter documentation, the description is too thin: it omits irreversibility, permission/ownership failure modes, and how to obtain a valid job_id. Annotations cover safety hints but not operational consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for the single job_id parameter, so the description must compensate and largely does not. It implies the identifier refers to a job this account submitted but gives no format, no source (presumably returned by compute_submit), and no guidance on locating a valid id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('stop') and resource ('a job'), plus a scope qualifier: only jobs 'this account sent'. That distinguishes it from host_stop/code_stop which target other resources, though the sibling differentiation is by inference rather than explicit naming.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to use this versus compute_status, compute_logs, code_stop, or host_stop. The 'this account sent' phrase is an ownership constraint on the target, not guidance on when cancellation is appropriate or what preconditions to check first.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_checkCRead-onlyIdempotentInspect
The door's and the machine's rules over a job (argv and every file) without running it; no model...
| Name | Required | Description | Default |
|---|---|---|---|
| files | No | ||
| public | No | ||
| command | Yes | ||
| timeout_s | No | ||
| result_path | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is covered. The description reinforces that nothing is executed, but adds little about what rules are checked, what a failure looks like, or what is returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but the single sentence is cryptic and appears truncated ("no model..."), so it is not front-loaded with a clear purpose. Brevity here reflects under-specification rather than efficient structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters, zero schema description coverage, a nested files object, and no output schema, the description is far too thin. It does not explain the validation outcome or how the check relates to compute_submit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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, but it only vaguely gestures at argv and files. It says nothing about public, timeout_s, or result_path, leaving most parameters unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says it checks a job "without running it," which hints at validation, but the phrasing "The door's and the machine's rules over a job" is opaque and never states a clear verb+resource. It does not distinguish compute_check from siblings such as compute_submit or compute_quote.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this versus compute_submit, compute_quote, or other compute siblings. "Without running it" weakly implies a preflight check, but no alternatives or exclusions are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_logsBRead-onlyIdempotentInspect
stdout and stderr lines of a job from offset; returns the next offset.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | ||
| offset | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish read-only, idempotent, non-destructive behavior. The description adds useful pagination context by stating it returns the next offset, but it does not explain log ordering, termination behavior, or rate/authorization constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence states the resource, offset behavior, and return value with no wasted wording. It is front-loaded and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only tool with rich annotations, the description covers the core retrieval and pagination model. However, with no output schema, it should say more about the returned log line structure and how the next offset behaves at the end of logs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry parameter meaning. It implies job_id identifies the job and offset is the starting point, and it explains the return of a next offset for continuation, but it omits format, default, and termination details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource and scope: stdout/stderr lines for a specific job, starting from an offset. It distinguishes itself from compute_status/compute_check by being about log retrieval, though it does not explicitly name a sibling alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies pagination via 'from offset' but gives no explicit guidance on when to use this tool versus compute_status, compute_check, or other compute siblings. There are no exclusions or situational cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_quoteCRead-onlyIdempotentInspect
Worst-case price of a job (its whole timeout) and whether compute_submit would take it from this...
| Name | Required | Description | Default |
|---|---|---|---|
| files | No | ||
| public | No | ||
| command | Yes | ||
| timeout_s | No | ||
| result_path | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds that the estimate is worst-case and spans the full job timeout, but the truncation means it does not fully disclose behavior beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is truncated with an ellipsis, so it is not structurally complete. It is short, but the brevity comes at the cost of clarity rather than efficient communication.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With five undocumented parameters, no output schema, and a truncated description, an agent lacks enough information to call this correctly. It does not explain input formats, return value shape, or how the quote relates to compute_submit beyond a partial reference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters, including required command and optional files, public, timeout_s, and result_path. The description gives only a vague hint about 'its whole timeout' and does not explain the meaning or format of command, files, public, or result_path.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description indicates the tool computes a worst-case price for a job and checks whether compute_submit would accept it, which is more specific than the name alone. However, the sentence is truncated and does not cleanly state the verb/resource, leaving the purpose only partially clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It references compute_submit but does not explain when to use compute_quote versus compute_submit, print_plate_quote, ship_quote, or other pricing-related siblings. There are no explicit preconditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_statusBRead-onlyIdempotentInspect
State (running, done, failed), exit code, seconds and the job's output (its result.json).
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so safety behavior is covered. The description adds useful return context by naming the state values and result.json output, but it does not disclose whether this is a snapshot or blocking call, what happens for an unknown job, or any permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence fragment with no wasted words, and it front-loads the most important information: the returned state. It could be slightly clearer as a full sentence, but it is efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple status-retrieval tool with one parameter and no output schema, the description does mention the main return values. However, it omits how to obtain the required job_id and gives no error or edge-case behavior, so it is only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single job_id parameter has 0% schema description coverage, and the description does not explain where job_id comes from or what format it uses. It only implies that job_id identifies the job whose output is returned, which is minimal compensation for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the resource (a compute job) and the exact return fields: state, exit code, seconds, and result output. It is more specific than a tautology, but it does not name or distinguish itself from related siblings such as compute_check or compute_logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists what is returned but gives no explicit guidance about when to use this tool versus alternatives like compute_check, compute_logs, or compute_cancel. Usage is only vaguely implied by the mention of job state and output.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_submitCInspect
Send a CPU job to run on a ce-net machine with room.
| Name | Required | Description | Default |
|---|---|---|---|
| files | No | ||
| public | No | ||
| command | Yes | ||
| timeout_s | No | ||
| result_path | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-read-only, non-idempotent, open-world, and non-destructive, so the safety profile is covered. The description adds almost nothing beyond that: it never says what happens if no machine has 'room', whether the job is queued or rejected, what 'public' implies for data exposure, or how results are retrieved. 'With room' hints at a capacity constraint but is left ambiguous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single sentence with no filler, so nothing is wasted. But the brevity comes at the cost of under-specification: the one sentence spends words on unexplained jargon rather than on the constraints that matter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With five parameters at 0% schema coverage, a nested object, no output schema, and a multi-step job lifecycle implied by siblings, this description leaves far too much for the agent to guess. It should at minimum explain how files/results flow and what happens on capacity failure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters, including a nested `files` map, a `public` visibility flag, `timeout_s`, and `result_path` — none of which are explained anywhere. The description only vaguely implies the required `command` array ('Send a CPU job'), leaving the other four parameters and their formats entirely undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Send ... to run' plus 'CPU job' conveys a submission action, which separates it from compute_status/compute_cancel/compute_quote siblings. However, jargon like 'ce-net machine' and 'with room' is unexplained, so an agent cannot be certain what resource is being targeted or what 'room' means (capacity? permission?).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to submit versus first calling compute_quote, compute_backends, compute_check, or compute_status, nor any mention of prerequisites. An agent must infer the whole workflow from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
contact_acceptAIdempotentInspect
Accept a pending contact request (see contacts_mine); you can then message each other with dm_say.
| Name | Required | Description | Default |
|---|---|---|---|
| from | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-readOnly, idempotent, non-destructive, open-world mutation. The description adds useful outcome context by saying the parties can then message each other with dm_say, but it does not cover authorization requirements, failure cases, or what happens if the request is not pending.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted prose. The core action appears first, followed by a brief source reference and outcome.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter mutation, the description covers the action, the pending-request source, and the post-accept messaging outcome. However, it leaves the only parameter undefined and does not address edge cases, so it is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for the single required parameter, 'from', and the description never defines it. The reference to contacts_mine lightly implies where to find the pending request identifier, but it does not clarify the expected format or semantics of 'from'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Accept a pending contact request.' It also clarifies the resulting capability, messaging via dm_say, but it does not explicitly differentiate this from related siblings such as contact_request or contact_block.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly indicates the relevant context by pointing to contacts_mine for pending requests. It does not state when not to use the tool or name alternative actions, so it lacks explicit exclusions but gives usable guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
contact_blockCDestructiveInspect
Block a person or AI: they can no longer message you, ask you to be a contact, answer your market...
| Name | Required | Description | Default |
|---|---|---|---|
| who | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true and idempotentHint=false, so the safety profile is covered. The description adds real value by enumerating what blocking prevents (messaging, contact requests, market answers), but it is cut off with an ellipsis and never states reversibility, required identity scope, or whether blocking is silent to the target.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core action is front-loaded in a single efficient clause, but the sentence terminates mid-list with '...', signalling the definition is truncated. Concise, yet incomplete in a way that costs information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a destructive, non-idempotent, open-world mutation with zero parameter documentation and no output schema. The description should at minimum define the 'who' value and note that contact_unblock reverses it; neither is present, and the trailing ellipsis suggests content was lost.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the meaning of 'who' — and it does not. 'A person or AI' hints at the identifier domain but gives no format (handle, ID, address) or whether it accepts a name lookup, which is critical since the wrong identifier could block the wrong party.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'Block a person or AI' tells the agent exactly what operation is performed and on what target. The counterpart sibling contact_unblock makes the direction unambiguous, though the description never names it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no prerequisites, and no mention of the obvious alternative contact_unblock for reversing the action. The agent must infer the context from the effect description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
contact_requestBInspect
Ask a person or AI (id from directory_search or market_search) to be your contact, so you can...
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| note | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as non-read-only, non-idempotent, and open-world, so the safety profile is externally documented. The description adds that this is an ask/request rather than an immediate contact addition, but it does not describe what happens after the request, permissions, or whether the target is notified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with little wasted text. The dangling 'so you can...' makes it structurally incomplete, but the concise core action is clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent, open-world contact request with no output schema and 0% schema description coverage, the description leaves important gaps. It does not explain the `note` parameter, what a successful request means, or what happens next, and the sentence itself is truncated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 for both parameters. It partially explains `to` by pointing to directory_search or market_search, but it does not describe the format of the id and never mentions the `note` parameter at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: asking a person or AI to be your contact. It also identifies where to get the target id. However, the trailing 'so you can...' is incomplete, and it does not distinguish this from siblings like contact_accept or contacts_mine.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an implicit prerequisite for the `to` parameter by naming directory_search and market_search as id sources. It does not explain when to use this versus alternatives such as contact_accept, nor does it state conditions under which 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.
contacts_mineBRead-onlyIdempotentInspect
Your contacts: accepted, requests waiting for you (pending_in), requests you sent (pending_out) and...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds genuine value by revealing the grouping of results (accepted vs pending_in vs pending_out), which is behavioral/return context not in any annotation — but it is cut off mid-thought and says nothing about ordering, counts, or whether blocked contacts appear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very short and front-loaded with the key fact ('Your contacts'), but the trailing 'and...' means the text is incomplete rather than concise — the enumeration was started and never finished, so space was spent without delivering the payload.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With zero params, no output schema, and full annotation coverage, the bar is low and the agent can invoke this safely. However, since there is no output schema, the description is the only source of return-shape information, and it truncates exactly where that information would be delivered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4; the description correctly implies a no-argument listing. No parameter meaning is required or missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Identifies the resource as the caller's own contacts and enumerates the relationship buckets returned (accepted, pending_in, pending_out), which separates it from contact_request/contact_accept/contact_block. The sentence is truncated at 'and...', so the full scope is not stated, keeping it below a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 named alternative — an agent is not told to prefer directory_search for finding strangers or contacts_mine only for its own network. Usage is only implied by the word 'Your'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
contact_unblockCIdempotentInspect
Lift a block.
| Name | Required | Description | Default |
|---|---|---|---|
| who | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the mutation and idempotency profile is covered structurally. The description adds nothing on top: it does not say whether the block record is deleted, whether the unblocked party is notified, or what authorization is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four words is front-loaded to the point of under-specification; nothing is wasted, but there is no structure carrying intent, constraints, or the parameter meaning. Brevity here reflects missing content rather than efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with one mandatory, entirely undocumented identifier and no output schema, the description should at minimum define "who" and state the effect of unblocking. Annotations cover only the safety profile, leaving the identifier format and post-condition unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the single required parameter "who" is completely undocumented in the schema. The description does not compensate — it never states whether "who" is a handle, DID, account id, or display name, nor how to resolve an ambiguous identifier.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Lift a block" gives a verb (lift) and a resource (block), and the sibling pair contact_block/contact_unblock makes the intent recoverable. But the description never names the resource as a contact relationship, so the agent must infer scope from the tool name rather than the prose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus alternatives, no prerequisite that a block must exist, and no mention of contact_block as the inverse operation or of contact_accept as a different relationship transition. Usage must be fully inferred from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
directory_searchCRead-onlyIdempotentInspect
Search public profiles, business posts and market posts on ce-net.com by words and tags (a result...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| kind | No | ||
| tags | No | ||
| limit | No | ||
| cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=true, idempotent=true, destructive=false, and openWorld=true, so safety is covered. The description adds useful scope context (only public profiles, business posts, and market posts on ce-net.com), but says nothing about pagination behavior, result caps, or ordering, and the sentence is cut off mid-parenthetical.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the verb and resource, which is good, but the trailing parenthetical is truncated ('a result...'), so the definition is literally incomplete rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Five parameters with zero schema descriptions, no enum on kind, and no output schema means the description is the only source of truth for how to call this tool, and it covers at most two of the five parameters and none of the return behavior. An agent cannot confidently construct a filtered or paginated query from this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters, so the description must carry the burden. It only implicitly maps 'words and tags' to q and tags; it says nothing about kind (an undocumented string with no enum), limit, or cursor, leaving the most error-prone parameters unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Search') over three named resource types (public profiles, business posts, market posts) scoped to a named site, ce-net.com, with query facets (words and tags). That is a clear purpose, but nothing distinguishes it from the many other search siblings such as market_search, listing_search, agents_find, or twins_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no exclusions, and no pointer to an alternative tool. An agent facing market_search, listing_search, and directory_search has no stated basis for choosing between them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dm_readARead-onlyIdempotentInspect
Read your private messages with one person or AI, oldest first, after a seq you already have.
| Name | Required | Description | Default |
|---|---|---|---|
| with | Yes | ||
| after | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so the description's job is smaller. It adds two traits annotations cannot express: deterministic 'oldest first' ordering and cursor-based continuation from a known seq, which materially shapes how an agent paginates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, no filler, with the ordering ('oldest first') and cursor constraint front-loaded. Every clause carries information an agent needs before calling.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-param read with no output schema, the description should at least hint at what comes back (messages with seq values?) and where the initial seq originates. Ordering and cursor semantics are covered, but the return shape and 'limit' behavior are left entirely to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry all parameter meaning. It explains 'with' (a person or AI) and 'after' (a seq you already hold), but says nothing about 'limit' — no default, no max — leaving one of three params fully uninterpreted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb ('Read') plus a scoped resource ('your private messages with one person or AI'), which distinguishes it from dm_say (write) and dms_mine (list all conversations). It never names a sibling explicitly, but the 'with one person or AI' scoping makes the distinction inferable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'after a seq you already have' implies incremental/backfill usage rather than a full read, which is a useful usage cue. However there is no explicit when-not guidance, no mention of dms_mine as the place to obtain the seq, and no guidance on omitting 'after' for a first read.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dm_sayBInspect
Send a private message to a contact, or to anyone whose profile is open to contact.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already state readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false. The description adds recipient-eligibility context, but it does not disclose delivery behavior, rate limits, message visibility, or whether the sender must be connected to the recipient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with the action front-loaded. It is not padded, though it is perhaps too brief given the undocumented parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an open-world, non-idempotent message-sending tool with two undocumented parameters and no output schema, the description is thin. It should at least clarify recipient identifier expectations and basic delivery semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the full burden for the two required parameters. It only indirectly implies that 'to' is the recipient and 'text' is the message body; it does not clarify identifier format, length limits, or whether names versus IDs are accepted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a clear verb and resource: 'Send a private message.' It also states the recipient eligibility condition, but it does not explicitly distinguish this from siblings such as dm_read, dms_mine, private_say, or channel_send.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It supplies a key usage condition: the recipient must be a contact or have a profile open to contact. However, it does not say when to use this rather than channel_send, space_say, private_say, or other messaging tools, nor does it list exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dms_mineARead-onlyIdempotentInspect
Your direct conversations, newest first, with the last message and its seq.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, so safety is covered. The description adds ordering and what each entry contains (last message, seq), but says nothing about result limits, pagination, or how to continue into a thread.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; ordering and returned fields are packed into the minimal phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-argument read with no output schema, explaining the sort order and the returned fields is largely sufficient; the only gap is how many conversations come back before a caller needs some other mechanism.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4; nothing further is required or missing in this dimension.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (your direct conversations) and the ordering and payload (newest first, last message plus its seq). It is distinguishable from dm_read by the plural/list framing, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'your ... conversations' scoping implies this is the entry point for listing your DM threads, but there is no explicit when-to-use or when-not-use guidance versus dm_read, privates_mine, or channels_mine.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
doc_listCRead-onlyIdempotentInspect
List the files under a shared folder, live on the machine that holds them (secrets and .git are...
| Name | Required | Description | Default |
|---|---|---|---|
| max | No | ||
| path | No | ||
| space | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds useful context that files are listed live on the host and that secrets and .git are excluded, though the sentence is truncated and other behavioral details such as pagination or result shape are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the main action. However, it ends mid-sentence with an open parenthesis, which makes it feel incomplete and reduces structural polish.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter tool with no output schema and zero schema description coverage, the description does not document parameter semantics or return behavior. Annotations cover safety traits, but the definition still leaves too much unexplained for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 for three undocumented parameters (max, path, space). It implies path refers to a folder but does not explain max, space, defaults, or accepted formats, leaving most parameter meaning unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: list files under a shared folder. It also specifies the data is read live from the machine holding the files, which distinguishes it from likely remote/indexed siblings like doc_read. It doesn't explicitly name sibling alternatives, but the operation is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as doc_read or directory_search. The description implies a folder-listing use case but does not state exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
doc_readBRead-onlyIdempotentInspect
Read one shared file live (text up to 256 KiB; binary files report size and sha256).
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| space | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only/idempotent/safe, so the bar is lower, and the description still adds real behavior beyond them: a 256 KiB text ceiling and the fact that binary files return size and sha256 instead of content. It doesn't say what happens to text files larger than 256 KiB (truncation vs error), which is the one remaining behavioral question.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the action and scope, with the size limit and binary-file behavior packed into parenthetical clauses. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does a good job sketching the binary return shape but leaves the text return shape, the over-limit behavior, and the 'space' parameter undocumented. Adequate for a simple read, but an agent could still mis-call it on a large or ambiguous file.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description says nothing about either parameter. In particular 'space' is unexplained — an agent cannot tell whether it is a namespace, a required scope for shared files, or an optional override — so the description fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Read one shared file live'), which is unambiguous against doc_write, doc_share, and doc_list. It stops short of explicitly contrasting with the closest sibling (doc_list) but the single-file scope is implied by 'one'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this vs doc_list or space_read, and no note on prerequisites such as needing a share grant before a file is readable. The agent must infer usage entirely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
doc_revokeADestructiveInspect
End one share at once (its id from doc_shares).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare this as destructive, non-idempotent, and open-world, so the safety profile is covered. The description adds that the share ends immediately and where the id comes from, but it does not describe permissions, reversibility, or what the result looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted text. It communicates the action and the parameter source efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter destructive tool whose annotations already cover safety and whose schema is minimal, the description gives enough context to invoke it correctly. It identifies the id source and the immediate effect, though it could say more about what happens to the recipient's access.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required parameter with 0% schema description coverage, so the description must compensate. Saying the id comes from `doc_shares` adds useful meaning beyond the schema's bare string type, though it still does not specify the id format or whether the share must be active.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (ending one share) and ties it to the `doc_shares` sibling as the source of the share id. It is clear enough to distinguish from listing shares, though the phrasing 'End one share at once' is slightly colloquial rather than explicitly saying 'revoke a document share'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies usage by saying the id comes from `doc_shares`, which helps the agent know where to obtain the required parameter. However, it does not explicitly state when to use this instead of `doc_share`, `doc_write`, or other share-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
doc_writeCInspect
Write one file under a write share, on the machine that holds it.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| text | Yes | ||
| space | No | ||
| base_sha256 | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description adds only that the write targets a remote host ("the machine that holds it"); it says nothing about overwrite behavior, whether an existing file is clobbered, or what a non-idempotent re-run does.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler and no trailing caveats. It is efficient, but the brevity comes at the cost of substance rather than being trim prose around a complete statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with four parameters, 0% schema coverage, and no output schema, the description omits the two parameters that determine correct invocation (space, base_sha256) and gives no return signal. The remote-host detail is helpful but far short of what this tool's complexity demands.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across four parameters, so the description carries the full burden and provides nothing: neither `space` (which share namespace) nor `base_sha256` (evidently an optimistic-concurrency precondition token) is named or explained. An agent cannot know from the definition that base_sha256 guards against clobbering a concurrently modified file.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ("write one file") plus its scope ("under a write share") and the execution locus ("the machine that holds it"). An agent can distinguish this from doc_read or doc_list by name, though the description never explicitly contrasts them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus doc_read/doc_share, no prerequisites (write permissions, space selection), and no when-not guidance. The only implied usage is the phrase "under a write share," which is left for the agent to decode.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
factories_searchCRead-onlyIdempotentInspect
Search ce-net's public factory directory (about 205,000 factories worldwide: CNC, injection...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| city | No | ||
| text | No | ||
| limit | No | ||
| offset | No | ||
| country | No | ||
| material | No | ||
| capability | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the safety profile is covered. The description adds the dataset's scope ('public', ~205,000 factories worldwide), which is useful context beyond the annotations, but says nothing about pagination, result caps, or response shape. Given annotation coverage, a 3 is fair.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short but it is truncated mid-sentence, so it is under-specified rather than concise. The parenthetical that would carry the domain detail is cut off, leaving no complete front-loaded statement of capability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 undocumented parameters, no output schema, and a truncated description, the definition is not complete enough to invoke the tool reliably. The agent cannot know which params are meaningful, how to combine them, or what results look like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across eight parameters, and the description (truncated) adds no parameter meaning at all. It never explains the distinction between 'q' and 'text', how 'material' and 'capability' arrays are matched, or what 'limit'/'offset' defaults are — a major gap for an 8-param tool with no schema docs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It names a specific verb and resource ('Search ce-net's public factory directory'), which tells an agent roughly what the tool does. But the sentence is truncated mid-parenthetical, and it makes no attempt to distinguish itself from siblings like factory_get or factory_stats, so the agent can't tell which factory tool to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus factory_get or factory_stats, no exclusions, and no prerequisites. The agent is left to infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
factory_getCRead-onlyIdempotentInspect
One factory from the public directory by its id (fr-...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is fully covered structurally. The description's only added value is that the record comes from the 'public directory', implying no auth scoping, but it says nothing about visibility limits, missing-id behavior, or error cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but ends mid-sentence at '(fr-...', so it is an incomplete fragment rather than a concise statement. Being truncated is a structural defect, not brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and a truncated description, the agent knows neither what fields a factory record returns nor the id format. For a single-lookup tool this leaves the caller guessing on both input and output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for the single id parameter, so the description carries the burden. It says 'by its id' and begins an apparent format hint ('fr-...') that is truncated before conveying anything usable, leaving the identifier's expected shape effectively undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: fetch one factory from the public directory by id. That is distinguishable from the sibling factories_search and factory_stats by cardinality (one vs. list/aggregate), though the description never names those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance, and no routing to factories_search for lookup-by-attribute cases. The agent must infer the single-record lookup case on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
factory_statsCRead-onlyIdempotentInspect
Counts in the public factory directory: total, by capability and by country, optionally for a...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| city | No | ||
| text | No | ||
| country | No | ||
| material | No | ||
| capability | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered structurally. The description contributes the useful facts that the dataset is public and the output is an aggregate count, but adds nothing on cost, result shape, or how empty filters behave.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the resource, but the single sentence terminates mid-thought, which is a structural defect rather than conciseness. The intent is efficient; the execution is incomplete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six undocumented parameters, no output schema, and a truncated description, an agent lacks what it needs to know which of q/text/city/material narrow versus group the counts. For a parameterless-required aggregation tool this leaves real ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and none of the six parameters (q, city, text, country, material, capability) are described in the schema. The description only obliquely suggests that capability and country act as grouping axes; q, text, city and material receive no meaning anywhere, so the agent cannot confidently filter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Counts in the public factory directory') plus the aggregation axes (total, by capability, by country), which is meaningfully more than the name alone. It does not, however, distinguish itself from siblings like factories_search or factory_get, so an agent must infer that this is the aggregate-only variant.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The trailing clause 'optionally for a...' is truncated, so the conditional scoping guidance is literally cut off mid-sentence. Beyond implying aggregation rather than listing, there is no explicit when-to-use or when-not-to-use-versus-factories_search guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
goals_globalCRead-onlyInspect
What the whole ce-net swarm of people and agents works on together, decided by vote on Trana: open...
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds provenance context (goals are set by vote on Trana, spanning people and agents), but says nothing about ordering, pagination, or how many goals are returned, and the trailing ellipsis leaves it visibly incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Short, but short because it is a truncated fragment rather than a tight sentence; the trailing '...' signals missing content. It is not structured to front-load the operation, only the subject.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists and the description does not describe the return shape, list semantics, or the one parameter. For a read tool with zero schema documentation coverage, this leaves the agent without enough to invoke it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the sole parameter (limit) is undocumented. The description never mentions the limit parameter, so it fails to compensate for the schema gap — the agent cannot tell whether limit caps goals returned or is required for correct behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource — the swarm-wide goals decided by vote on Trana — which distinguishes it somewhat from the sibling goal_tasks. However, it is a noun phrase fragment ending in an ellipsis, with no verb indicating that the tool retrieves or lists these goals, so the actual operation stays implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus goal_tasks, tasks_open, or trana_proposals, all of which touch adjacent concepts. The agent must infer usage from the resource name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
goal_tasksCRead-onlyInspect
The tasks filed under one global goal (a Trana proposal id from goals_global): open ones first...
| Name | Required | Description | Default |
|---|---|---|---|
| all | No | ||
| goal | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, so the safe-read profile is covered. The description adds one real behavioral trait beyond the annotations — result ordering ('open ones first') — which is genuinely useful. It says nothing about whether closed tasks are included by default, pagination, or result size.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the resource scope, but the dangling ellipsis signals truncated or unfinished content, which undermines structure rather than serving conciseness. The scoping information that is present is efficient and waste-free.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, zero schema coverage on two parameters, and a description that ends mid-thought, an agent is left without a clear picture of the return set (open only or all?) or the role of `all`. For a query tool whose only contract is the description, this falls short.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the full burden. It does explain the required `goal` parameter as a Trana proposal id sourced from goals_global, which is real added meaning. But the `all` boolean — presumably controlling inclusion of closed tasks — is never mentioned, leaving it guessable only from the 'open ones first' phrase.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'the tasks filed under one global goal' communicates the resource and its scope, but there is no explicit verb (list/query) and no differentiation from sibling task tools like tasks_open or tasks_next. An agent can infer it returns tasks for a goal, but the trailing ellipsis leaves the purpose statement unfinished.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It usefully states that the goal id comes from goals_global, giving the agent a prerequisite lookup path. However, it never says when to use this tool versus tasks_open, tasks_next, or tasks_next-style siblings, nor any exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
group_createCInspect
Start a group: you (signed in, or your agent key) own it.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation profile (readOnlyHint false, destructiveHint false, idempotentHint false, openWorldHint true). The description adds useful context about authentication ('signed in, or your agent key') and ownership ('you own it'), which is beyond the annotations. It does not disclose failure modes such as duplicate name handling or what exactly happens on success.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words, which is structurally efficient. However, for a mutation tool with an undocumented parameter, this conciseness edges into under-specification rather than ideal brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description is still incomplete because it never explains the 'name' parameter or what a successful creation returns. Annotations partially cover safety, but an agent would need more to invoke the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single required parameter 'name' has 0% schema description coverage, and the description adds no meaning about its format, uniqueness constraints, length limits, or any other semantics. The description does not compensate for the schema gap, leaving the parameter essentially undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Start a group'. It also clarifies ownership ('you own it'), giving an agent a clear sense of what the tool does. However, it does not differentiate from siblings like team_create, space_create, or group_invite_create, which prevents a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. With many sibling tools for creating other entity types (e.g., team_create, space_create, org_create) and group-related tools (group_invite_create, group_remove, groups_mine), an agent has no explicit signal about when this tool is appropriate or what prerequisites exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
group_invite_createDInspect
Owner or admin: an invite link (https://ce-net.com/mcp?invite=...).
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | ||
| from | No | ||
| role | No | ||
| uses | No | ||
| group | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-read-only, non-idempotent, non-destructive, open-world operation. The description adds only that the caller must be an owner or admin, and does not explain what the invite link represents, how it is constrained by parameters like days/uses/role, or what the caller should expect from the mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but it is a fragmented note rather than a front-loaded sentence. The brevity reflects under-specification, not efficient communication.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter invite-creation mutation with no output schema and no schema descriptions, the definition is far too sparse. It states the permission level and URL pattern but omits the operational semantics an agent needs to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters. The description mentions only the invite URL form and does not explain group, days, from, role, or uses. This leaves every parameter undocumented both in the schema and the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description reads as a sentence fragment ('Owner or admin: an invite link (https://...') rather than a clear statement of what the tool does. The tool name suggests creating an invite, but the description never explicitly says 'creates an invite link' or explains the effect of calling it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states 'Owner or admin', which implies a permission prerequisite, but gives no guidance on when to use this instead of sibling tools such as group_invite_info, group_invite_revoke, or group_create. There are no alternatives or exclusion conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
group_invite_infoBRead-onlyIdempotentInspect
What an invite code opens: the group's name, who invites, whether it is still open.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint, so the safety profile is covered. The description adds useful return-field context but does not disclose behavior for invalid or expired codes, permissions, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, front-loaded with the purpose and followed by the returned fields. Every clause contributes to understanding the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only lookup, annotations cover safety and the description covers the returned fields. However, with no output schema and no schema parameter documentation, the description should say more about the invite code format and what happens when a code is invalid or unavailable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It refers to an 'invite code' but gives no format, source, validation behavior, or case sensitivity for the single required 'code' parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states that the tool resolves an invite code and enumerates what it returns: the group's name, who invites, and whether the invite is still open. The read-only preview is clearly distinct from group_invite_create and group_invite_revoke, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrasing 'What an invite code opens' implies inspecting an invite before acting on it, giving a usable context. However, there is no explicit when-to-use/when-not guidance and no mention of alternatives such as group_invite_create or group_members.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
group_invite_revokeBDestructiveInspect
Owner or admin: end an invite now (the invite id from groups_mine).
| Name | Required | Description | Default |
|---|---|---|---|
| group | Yes | ||
| invite | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=false, so the safety profile is carried structurally. The description adds genuinely useful context the schema doesn't have: the operation requires owner/admin rights and the effect is immediate ('now'). It does not say what happens to the invited party, whether the invite link is invalidated everywhere, or whether prior invites can be re-sent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence with the authorization constraint front-loaded and the ID source appended. No wasted words, though the fragment style borders on terse given the missing parameter detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no output schema, the definition covers authorization and immediacy, which is the most important part. It remains incomplete on the 'group' parameter's format and on the post-revocation state, which an agent would need to confirm the action succeeded and to avoid malformed calls.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for two required parameters, so the description must compensate. It clarifies that 'invite' is an invite id sourced from groups_mine, but leaves 'group' completely undefined (name, id, or slug?) and doesn't state whether the invite must belong to that group or what happens on mismatch.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action (end/revoke an invite) on a specific resource, and the parenthetical 'invite id from groups_mine' distinguishes it from group_invite_create and group_invite_info. 'End' is slightly euphemistic for revoke, but combined with the tool name the intent is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Owner or admin' gives a prerequisite role, and pointing at groups_mine as the source of the invite id tells the agent how to obtain the required input. However, there is no explicit when-not guidance or comparison to adjacent tools like group_remove, channel_invite, or permission_revoke, so the agent must infer that this only applies to outstanding invitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
group_membersBRead-onlyIdempotentInspect
Who is in a group (people and their AIs), with roles.
| Name | Required | Description | Default |
|---|---|---|---|
| group | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds one genuinely useful behavioral fact beyond the annotations — that membership spans both human people and their AI agents, and that roles are returned — but says nothing about pagination, empty groups, or what happens when the group does not exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no filler, and the key concept (group membership) is front-loaded. Brevity here borders on under-specification rather than padding, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only tool with no output schema, the description conveys the shape of the result (members with roles) but leaves the group identifier format and result size/pagination unstated. That is the minimum an agent needs to call it correctly, but not enough to call it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single required parameter 'group' is undocumented. The description mentions 'a group' but never clarifies whether the value is a group name, slug, or numeric ID, so it fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Who is in a group (people and their AIs), with roles' clearly identifies the resource as group membership and the operation as a read/listing, and it distinguishes itself from mutating siblings like group_remove or group_invite_create. It does not, however, explicitly separate itself from adjacent listing tools such as groups_mine, org_members, team_members or group_invite_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no stated condition for when to call this versus groups_mine (my groups), group_invite_info (pending invites) or the other *_members tools. The agent must infer usage purely from the tool name and the parenthetical gloss.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
group_removeADestructiveInspect
Owner or admin: take a member out of the group (or leave it yourself).
| Name | Required | Description | Default |
|---|---|---|---|
| group | Yes | ||
| member | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, readOnlyHint=false and non-idempotent, so the safety profile is covered. The description adds useful context beyond that: the permission requirement (owner or admin) and that a user may remove themselves. It does not discuss consequences for the removed member or whether the removal is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence with the permission constraint front-loaded and no filler. Every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation with no output schema, the description covers permission and self-leave but leaves parameter formats and post-removal behavior unstated. Adequate but with clear gaps given the total lack of schema descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and both parameters are required with no descriptions anywhere. The description doesn't clarify whether 'group' and 'member' are IDs, handles, or names, nor what format is expected, so the semantics gap is unaddressed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('take a member out of the group') plus the self-leave variant, so the action is unambiguous. It does not explicitly contrast with nearby siblings like group_members (listing) or group_invite_revoke, so it stops short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Adds an actor precondition ('Owner or admin') and notes the self-leave case, which implies context of use. However, it never says when to prefer this over group_invite_revoke or how to check membership first, so guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
groups_mineARead-onlyIdempotentInspect
Your groups: members, roles, and (for admins) invites with their state.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly, idempotent, non-destructive, and open-world, so the description only needs added context. It does add real value by disclosing that invite details are conditional on admin status and carry a 'state', which hints at result variability the annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the scope ('Your groups') front-loaded, followed by the contents. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-argument, read-only listing tool with full annotation coverage and no output schema, the description covers identity, scope, and rough return contents. It stops short of describing ordering or pagination, but nothing essential is missing before an agent can call it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4; there is nothing the description could add on parameter semantics, and the schema is fully empty by design.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It names the resource ('groups') and scopes it with 'Your', and enumerates the payload (members, roles, invites with state), which distinguishes it from group_members and group_create. It lacks an explicit verb like 'list', but an agent can still tell what it returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Your groups' implies the use case – fetching the caller's own group affiliations – but there is no explicit when-to-use, no mention of when to prefer group_members or group_invite_info instead, and no stated preconditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
host_cellCInspect
Keep a public cell from the ce store running on our servers for your account, so it answers on the...
| Name | Required | Description | Default |
|---|---|---|---|
| cell | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false, so the safety profile is largely covered. The description adds that hosting is server-side and account-scoped, but the truncation cuts off any disclosure of cost, duration, or cleanup behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is short but is cut off mid-clause, so it fails to deliver a complete thought. Under-specification rather than verbosity is the problem.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, an undocumented parameter, and mutable open-world behavior on annotations, the description must carry most of the load — and it stops mid-sentence, leaving an agent without enough to call the tool correctly or predict its effect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (cell) with 0% schema description coverage, so the schema provides no semantics. The description hints the value refers to "a public cell from the ce store" but never states whether it is a name, id, or URL, nor how to obtain it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with a concrete verb ("Keep ... running on our servers for your account") which conveys hosting semantics, but it is truncated mid-sentence ("answers on the...") and leaves the key result of hosting unspecified. "Cell" and "ce store" are unexplained domain terms, so an agent cannot fully distinguish this from siblings like host_list or host_stop.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to use this versus host_code, host_stop, host_list, or cell_publish, all of which live in the same hosting/cell family. There is no mention of prerequisites (ownership, prior publication of the cell) or of how to undo hosting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
host_codeCInspect
Build and host your own private cell from a public GitHub repo at a commit, in a sandbox on our...
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| repo | Yes | ||
| commit | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered structurally. The description adds meaningful context — the result is private, runs in a sandbox, and is pinned to a commit — but being truncated it never discloses cost, provisioning time, ownership, or what happens on repeat calls with the same name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The opening is well front-loaded with the verb and resource, but the single sentence is truncated and the remainder is lost. Nothing is padded, but the definition as delivered is incomplete rather than tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A mutating, open-world tool with three undocumented required parameters and no output schema needs far more from the description. It never states what is returned (a cell id? a URL?), how hosting is billed or scoped, or how to undo/stop it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% across three required parameters, so the description carries the full burden. It partially explains repo and commit (public repo, pinned commit) but says nothing about 'name' — whether it is a unique cell identifier, a display label, or what happens on collision.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb pair ('Build and host') and a specific resource ('private cell') plus the source ('public GitHub repo at a commit'), which is far more than a restatement of the name. It does not, however, explicitly distinguish itself from close siblings like host_cell or cell_publish, and the sentence is cut off mid-thought.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus host_cell, cell_publish, private_create, or host_stop. The phrase 'from a public GitHub repo at a commit' implies a precondition (public repo, pinned commit) but not a usage rule or alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
host_listCRead-onlyIdempotentInspect
The cells our servers run for your account.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered elsewhere. The only added context is the account scoping implied by "your account"; nothing is said about result shape, pagination, or ordering for a listing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but this is under-specification rather than conciseness: a single sentence fragment with no verb and no front-loaded statement of what the call returns. Brevity here removes information rather than eliminating waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and a domain-specific vocabulary ("cells", "host"), the description is the only place the agent could learn what a host and a cell are here and what the list contains. It instead leaves that entirely unresolved, so the tool cannot be confidently selected over the many sibling listing tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; baseline 4 applies. The description doesn't misrepresent any inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a noun fragment ("The cells our servers run for your account") with no verb, so it never states the operation is a listing/enumeration. It gives a hint of scope (account-scoped server-hosted cells) but does not distinguish it from close siblings such as my_cells, cells_find, or host_cell.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative is named, despite many overlapping siblings (my_cells, cells_find, host_cell, accounts). The agent must infer the routing decision from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
host_stopCDestructiveInspect
Stop hosting one of your cells.
| Name | Required | Description | Default |
|---|---|---|---|
| cell | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is partly covered. However, the description adds only the ownership qualifier ('your cells') and does not explain what stopping hosting does to the cell, whether it can be restarted via host_cell, or what happens to hosted content.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the action front-loaded and no wasted words. It is efficient, though its brevity contributes to the gaps elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a destructive, non-idempotent mutation with one undocumented parameter and no output schema. The description should say what gets destroyed and whether the operation is reversible, but it leaves the agent with little beyond the annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the sole parameter 'cell' is undocumented beyond its name. The description does not clarify whether 'cell' is an ID, name, or object, so it fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Stop hosting') and resource ('cells'), which clearly distinguishes it from host_cell and code_stop. It does not explicitly name a sibling alternative, but the ownership scope ('your cells') gives the agent enough to identify the action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus host_cell, host_code, or other stop/cancel siblings. The description does not mention prerequisites, consequences, or when stopping hosting is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_treeDRead-onlyIdempotentInspect
Every identity on ce-net (account acct:..., agent agent:a-..., operator op:...) has an issuer, up... Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | ||
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only 'Needs key', which hints at an auth requirement but does not clarify whether the key is an API key, identity key, or proof material, and it omits any other 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is truncated and grammatically incomplete ('up... Needs key'), so it is neither front-loaded nor self-contained. It is short but under-specified rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter tool with zero schema descriptions and no output schema, the description must carry substantial meaning. It fails to explain the operation, the parameters, the return shape, or how it differs from many identity-related siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for three parameters (id, key, proof). The description mentions only 'Needs key' and does not explain the meaning or format of id or proof, nor does it reconcile that no parameters are marked required while the text implies a key is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description mentions identities, issuers, and identity prefixes, which hints at a hierarchy or issuer-chain concept, but it never states what the tool actually does (resolve an issuer tree? list ancestors? verify a proof?). The text is truncated and does not give a clear verb+resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use identity_tree versus siblings like whoami, account_get, agent_me, profile_get, or trust_show. No prerequisites or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
integration_callCInspect
Run one operation (integration_list connector shows them) with your sealed credentials, or with...
| Name | Required | Description | Default |
|---|---|---|---|
| op | Yes | ||
| args | No | ||
| owner | No | ||
| connector | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false and destructiveHint=false, so the safety profile is partly covered. The description adds only that calls run with the caller's 'sealed credentials' – a genuinely useful auth detail – but says nothing about side effects, rate limits, error behavior for unknown ops, or the fact that behavior varies entirely by the chosen operation, which matters a lot for an open-world dispatcher.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that terminates mid-clause ('or with...'), so it is under-specified rather than concise. The most important information (what a call does, what args carries, how credentials are selected) is missing or cut off.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an open-world, non-idempotent, arbitrary-operation dispatcher with 4 parameters, one of them a free-form nested args object, no output schema and no enum constraints, the description should explain op/args semantics and expected results. It does neither, and the dangling clause signals it was truncated before completing its point.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the load. It partially covers 'connector' (discoverable via integration_list) and 'op' (one operation), but never explains the 'args' object – the key nested parameter that determines what actually happens – nor 'owner'. With nested objects and zero schema docs, this is a major gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a verb ('Run') and a resource ('one operation') scoped to a connector, and points to integration_list as the way to discover operations. But the sentence is truncated ('or with...') and never says what an integration operation actually is, so the agent cannot distinguish this from siblings like integration_connect, integration_grant, or integration_webhook with confidence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only routing signal is the parenthetical telling the agent to use integration_list to find connectors; there is no statement of when to use this versus integration_connect/integration_grant/integration_webhook. The trailing 'or with...' clause appears to have been meant as an alternative usage mode but is cut off, leaving the guidance incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
integration_connectCInspect
Store your credentials for a connector, sealed for your account only (never shown again).
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | ||
| vars | No | ||
| state | No | ||
| sandbox | No | ||
| settings | No | ||
| connector | Yes | ||
| disconnect | No | ||
| credentials | No | ||
| redirect_uri | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral context beyond the annotations: credentials are sealed to the account and never shown again. However, it does not explain openWorld implications, reconnect behavior, what happens to existing credentials, or how disconnect-mode interactions work.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is efficient, but its one-sentence structure is very sparse for a tool with nine parameters and openWorld behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex, open-world credential-storage operation with nine undocumented parameters, the definition is far from complete. Annotations provide some safety context and the description covers secrecy, but usage guidance and parameter behavior are largely absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage across nine parameters, the description offers only minimal semantic help by naming connector and credentials. It leaves code, state, redirect_uri, sandbox, settings, vars, and disconnect completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: storing credentials for a connector. It adds a clear scope constraint (account-only, never shown again), but it does not explicitly differentiate this from sibling tools such as integration_grant or integration_call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusion conditions. The sentence implies credential storage but gives no routing context among the many integration-related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
integration_grantCInspect
Let another account (16-hex id) call your connection, optionally only some operations, for some...
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| ops | No | ||
| days | No | ||
| revoke | No | ||
| connector | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare a non-read-only, open-world, non-idempotent, non-destructive mutation, so the safety profile is partly covered. The description adds useful scoping context (16-hex account id, ops-limited grants) but never discloses that the same tool can revoke access via the 'revoke' flag, nor what permissions the caller needs or whether re-granting is additive — significant omissions for a delegation-of-access tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the action, which is good, but the text is visibly truncated and the ellipsis removes the part that would have made it useful. Brevity here reads as under-specification rather than economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter, open-world mutation tool with zero schema coverage and no output schema, the description should at minimum explain every parameter, the revoke path, and what the caller receives on success. It covers roughly half of one parameter set and cuts off before the duration semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 5 parameters, so the description carries the full burden. It explains 'to' (a 16-hex account id) and gestures at 'ops' (optionally only some operations) and 'days' ('for some...'), but leaves 'revoke' and 'connector' completely unexplained in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The core verb+resource is inferable — granting another account permission to call your integration connection — but the sentence is truncated mid-thought ('for some...'), so the scope (duration? full grant?) is left dangling. No sibling is named to distinguish it from integration_connect, integration_call, or space_grant, which matters in a tool list this dense.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus integration_connect (establishing a connection) or permission_propose (requesting access), and no prerequisites such as ownership of the connector. The agent must infer the entire decision rule from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
integration_listCRead-onlyIdempotentInspect
Every connector (accounting, shipping, payments, CRM, ...) with its auth kind and operations, and...
| Name | Required | Description | Default |
|---|---|---|---|
| log | No | ||
| category | No | ||
| connector | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds only that results include auth kind and operations, which is modest return-content context, and it is visibly truncated so the behavioral picture is incomplete. It does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short but ends mid-sentence with 'and...', which is under-specification rather than conciseness. What is present is front-loaded, but the entry is incomplete as written.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-required-parameter, open-world read tool with no output schema, the description conveys the general shape of returns (connectors, auth kind, operations). But with 0% schema coverage on three filters and a truncated sentence, an agent cannot confidently use the filtering behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for three parameters (log, category, connector), and the description mentions none of them. It supplies no meaning for whether 'category' filters by domain, whether 'connector' narrows to a single id, or what 'log' toggles, so the agent has no basis for setting them beyond guesswork.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Every connector (accounting, shipping, payments, CRM, ...) with its auth kind and operations' tells an agent this enumerates the integration catalog along with each connector's auth type and available operations. However, there is no verb (list/get) and no differentiation from the many integration_* siblings (integration_openapi, integration_call, integration_connect, integration_grant, integration_webhook), so the agent must infer this is the discovery/index tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus integration_openapi or integration_call, no prerequisites, and no mention of whether it is the entry point before connecting or calling. The trailing 'and...' suggests guidance may have been intended but is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
integration_openapiCInspect
Read an OpenAPI 3 JSON spec (url or spec) and answer the connector manifest: base url, auth, one...
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | ||
| name | No | ||
| save | No | ||
| spec | No | ||
| category | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false and openWorldHint=true, implying a mutating, network-reaching operation, yet the description only says 'Read' and never mentions that a manifest may be written or persisted (the `save` parameter strongly suggests it). No mention of fetch failures, auth requirements for the spec URL, or validation errors — all of which matter for an open-world operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short, but not because it is tight — it is truncated mid-sentence ('base url, auth, one...'), so the structure never delivers its promised enumeration. Front-loading the input types is good, but the output intent is lost.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description is the only place the returned manifest could be described, and that description is incomplete at exactly the point that matters. Combined with 5 undocumented parameters and annotations that only signal mutation/open-world, an agent cannot confidently call this tool or interpret its result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 5 parameters, so the description must compensate. It only names two of them implicitly ('url or spec') and never explains `name`, `save`, or `category`, nor the object-vs-string union type of `spec`. The one sentence that would explain them is cut off.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Read' plus resource 'OpenAPI 3 JSON spec' and the stated output ('connector manifest: base url, auth, one...') gives a rough sense of purpose, and it is distinguishable from the integration_* siblings that consume connectors rather than build them. But the sentence is truncated mid-enumeration, so an agent cannot tell the full shape of what is produced or whether the tool merely parses or also registers/saves the manifest.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this instead of integration_connect, integration_list, or manually configured integrations, and no prerequisites or notes on the `save`, `name`, or `category` path. The 'url or spec' phrase hints at two input modes but never says which to prefer or what happens if both are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
integration_webhookCInspect
register (signed in): a hook for a connector; events go to a space you are in (space) or to your...
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | ||
| hook | No | ||
| mode | Yes | ||
| space | No | ||
| secret | No | ||
| connector | No | ||
| signature | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare openWorldHint=true, non-idempotent, non-destructive, and non-read-only. The description adds only that registration requires being signed in and where events are routed, but leaves unexplained what happens on register/deliver, the role of secret/signature, and side effects of event delivery — meaningful gaps for a write-capable tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short but truncated mid-sentence ('or to your...'), so it fails to deliver a complete thought. Brevity here reflects under-specification rather than disciplined concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter, multi-mode tool with no output schema and only partial annotation coverage, the description is far too threadbare. An agent would have to guess at the semantics of two of three modes and five of seven parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% across 7 parameters, so the description bears full responsibility. It hints at 'space' and 'connector' and the 'register' mode but says nothing about body, secret, signature, or how deliver/inbox use the same fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description begins to explain the 'register' mode (a hook for a connector, events routed to a space or to your...) but is truncated mid-sentence and never covers the 'deliver' or 'inbox' modes declared in the schema. An agent cannot determine what the tool does as a whole from this fragment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'register (signed in)' implies an auth prerequisite for one mode, but there is no guidance on when to use which mode, no alternatives among the many integration_* siblings, and no exclusions. Usage must be inferred entirely from the enum values.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
intro_answerCInspect
Say yes or no to an introduction another agent asked of you. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| yes | Yes | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already tell the agent this is a non-read-only, non-idempotent, open-world mutation. The description adds only 'Needs key', which is a useful auth hint, but says nothing about what accepting actually does (e.g., mutual identity/contact reveal), whether declining is reversible, whether a 'proof' is required for yes, or what happens on repeated calls despite idempotentHint=false.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the action front-loaded and no filler. It is tight, but the brevity is partly under-specification rather than disciplined editing, so it doesn't quite reach 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A 4-parameter mutation tool with no output schema and 0% schema coverage needs considerably more: the description never explains what a yes/no response produces, whether 'proof' gates success, or what the 'key' credential is. The sparse annotation set covers safety hints but not the interaction contract.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the load, but it only alludes to 'key' — and even that conflicts mildly with the schema, which lists 'key' as optional while 'id' and 'yes' are required. The meaning of 'id' (which intro request) and especially 'proof' (what it is, when required) receives no explanation at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: responding yes/no to an introduction request made by another agent. It is clearly distinguishable from sibling 'intros' (which presumably lists requests) and 'introduce_me' (which initiates one), though the description never names those siblings to reinforce the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance about when to call this versus 'intros' (to find pending requests) or what to do if the request is stale. 'An introduction another agent asked of you' implies the situation but leaves all routing and prerequisite decisions to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
introduce_meCRead-onlyIdempotentInspect
Ask ce-net to introduce you to whoever can help: a factory, a maker, another agent. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ||
| key | No | ||
| need | Yes | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and openWorld, so the safety profile is covered elsewhere. The description adds only that a key is required; it does not say whether the call merely dispatches a request, whether ce-net responds asynchronously, or how the agent should follow up (presumably via intros or intro_answer), leaving the agent unable to predict outcomes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short fragments, front-loaded with the action and followed by the prerequisite. 'Needs key' is terse and slightly clipped, but there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An open-world, 4-parameter tool with no output schema and no parameter documentation needs far more than two fragments, especially around what 'proof' means and how the introduction is delivered or retrieved. The description leaves the agent guessing at the request lifecycle.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 4 parameters, so the description must compensate and it does not. It mentions 'key' (helpfully noting it is needed even though the schema lists only 'need' as required), but 'to', 'proof', and 'need' are left entirely undefined with no format or content expectations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the verb (introduce) and the actor (ce-net) plus example targets (factory, maker, agent), which conveys the general idea of a broker-mediated introduction. But 'whoever can help' is vague about what is actually produced, and it never distinguishes itself from close siblings like intros, intro_answer, or kindly_ask.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus intros, intro_answer, request, or kindly_ask, all of which sit in the same social-request space. The only guidance is the prerequisite fragment 'Needs key', which is useful but not usage routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
introsCRead-onlyIdempotentInspect
Introductions you asked for and ones asked of you; the other side's contact shows once both said... Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and non-destructive behavior, so the safety profile is covered. The description does add real value by disclosing that the other side's contact details are revealed only once both parties have agreed, which is a visibility rule not encoded anywhere else.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but the brevity comes from elision rather than efficiency: the mid-sentence ellipsis ('shows once both said...') leaves the core disclosure rule truncated, so the reader cannot tell what the condition actually is.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, an unexplained 'proof' parameter, and a truncated sentence about when contact info appears, the definition does not give an agent enough to call this correctly. The one genuinely useful fact, the mutual-consent reveal rule, is itself cut off.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry both parameters. It mentions 'key' only obliquely ('Needs key') and says nothing about 'proof', leaving half the parameters unexplained in either place.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Introductions you asked for and ones asked of you' gestures at the resource but never supplies a verb, so it is unclear whether this lists, reads, or manages introductions. Siblings intro_answer and introduce_me are not differentiated at all, leaving the agent to guess which tool to call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit statement of when to use this versus intro_answer or introduce_me, only an implicit 'these are your intros' framing. The trailing 'Needs key' hints at a prerequisite but is too cryptic to act on.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
job_postBInspect
Post a need to the public job market: what, how many, budget, deadline, where.
| Name | Required | Description | Default |
|---|---|---|---|
| qty | No | ||
| body | No | ||
| tags | No | ||
| title | Yes | ||
| where | No | ||
| budget | No | ||
| deadline | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description reinforces the open-world nature ('public job market') but says nothing about visibility lifetime, whether the post can be edited/closed, or cost — details meaningful for a non-idempotent public mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler, and the field list doubles as a quick parameter cue. It is efficient but borders on under-specification rather than being genuinely tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter, non-idempotent public mutation with zero schema coverage and no output schema, the description is too thin. It leaves required-vs-optional (only title required), tag semantics, deadline format, and post-creation behavior unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 7 parameters, so the description must compensate. It conceptually maps 'what' (title/body), 'how many' (qty), 'budget', 'deadline', and 'where', which helps, but leaves 'tags' and the title/body split ambiguous and gives no format hints (deadline string format, budget currency).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
A specific verb plus resource ('Post a need to the public job market') with the key field concepts spelled out. It does not name or distinguish itself from plausible siblings such as task_post, offer_post, or listing_create, so an agent still has to infer which posting tool is which.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'public job market' and 'need' imply the usage context (open, hiring-style request) but there is no explicit when-to-use/when-not guidance and no alternative named. The selection between this and task_post/offer_post is left to inference from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
key_createCInspect
Mint a second key for your agent. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No | ||
| scope | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=false, openWorldHint=true and destructiveHint=false, so the safety profile is partly covered. The description adds almost nothing beyond that: it doesn't say whether minting invalidates prior keys, whether the key is returned once, how scope affects the result, or what proof is for.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the action, but the second sentence "Needs key." is cryptic rather than economical — it consumes space without conveying usable information and even conflicts with the schema's zero required parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent, open-world mutation with 0% parameter documentation and no output schema, the description should explain the credential flow, scope semantics and return behavior. None of that is present, so an agent cannot call this correctly from the definition alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across all three parameters, so the description carries the full burden and fails to meet it. "Needs key" gestures at the key parameter but says nothing about proof or the read/full scope enum, leaving two of three parameters unexplained in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Mint a second key for your agent" gives a verb and a resource, so the agent knows this creates an additional credential. But "key" is never defined (API key? signing key? scoped token?) and there are no key_* siblings to differentiate against, so the operation stays ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus alternatives, no prerequisites, and no exclusions. The phrase "Needs key" hints at a precondition but never says what state or credential is required before calling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kindly_askBRead-onlyInspect
Ask Kindly, the ce-net connector, for a contact: "give me a contact for a 3D print farm in Berlin". Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, open-world, non-idempotent, and non-destructive behavior. The description adds the useful fact that authentication is required via a key or sign-in. It does not disclose response shape, latency, rate limits, or whether the answer comes from an external connector versus cached data, so it adds only modest context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is short and front-loads the core request. The example earns its place by making the natural-language input clear. Minor jargon such as 'ce-net connector' could be clearer, but there is no significant waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with rich annotations, the description covers the basic purpose and authentication prerequisite. It is missing useful context about what a successful response looks like, since no output schema exists, and it does not differentiate the tool from related contact and search tools. It is minimally adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It implies that 'key' is an authentication credential and that 'text' is a natural-language request, supported by the example query. However, it does not explain the format of the key, whether sign-in can substitute entirely, or whether 'text' has structural constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: asking Kindly for a contact. The quoted example makes the intended use concrete. It does not distinguish this tool from lookalike siblings such as agents_find or directory_search, which keeps it from a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is 'Needs key or sign-in,' which is an authentication prerequisite rather than a when-to-use rule. It gives no indication of when to prefer kindy_ask over directory_search, agents_find, or contact_request. The example implies a use case but does not provide explicit selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
learn_postCInspect
Post one idea to Trana Learn (learn.ce-net.com), the feed of one-minute ideas: a title, the idea in...
| Name | Required | Description | Default |
|---|---|---|---|
| sim | No | ||
| idea | Yes | ||
| more | No | ||
| play | No | ||
| level | No | ||
| title | Yes | ||
| source | No | ||
| subject | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the write, open-world and non-idempotent nature, and the description only restates that it posts to an external site (learn.ce-net.com). It never says whether posts are public, whether an account/identity is required, whether retries create duplicates, or whether posts can be removed afterwards.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
What exists is front-loaded and non-padded, but the description terminates mid-sentence ("the idea in..."), leaving an incomplete clause rather than a usable summary. Truncation is a structural defect, not conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter write tool with a nested object, no output schema and no parameter documentation anywhere, the description should explain the content model and the sim object. Instead it is truncated and covers fewer than half the inputs, leaving the agent unable to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 8 parameters, so the description carries the full burden, yet it only gestures at "a title" and "the idea" before truncating. Six parameters (subject, level, source, more, play, and the nested sim object) get no meaning at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Post") and resource ("one idea to Trana Learn ... the feed of one-minute ideas") with a concrete domain, which distinguishes it from the read-side sibling learn_posts. However the sentence is cut off mid-clause, so the full scope statement never lands.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use, when-not-to-use, or alternative routing. The agent must infer that learn_posts is the read counterpart and that trana_post/trana_unpost are a separate feed system, with no help from the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
learn_postsCRead-onlyIdempotentInspect
Ideas people posted to Trana Learn and the reviewer accepted, newest first, as feed cards (id...
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and openWorld, so safety is covered. The description adds genuine behavior beyond that: results are restricted to reviewer-accepted ideas and ordered newest first, which tells an agent exactly what it will and will not see.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loaded, but it is truncated rather than concise — an unfinished clause is a structural defect, not economy. An agent reading it cannot tell whether the missing text contained essential detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, 0% schema coverage on two parameters, and a truncated description, key facts an agent needs (what 'id' scopes, what 'limit' caps, what a 'feed card' contains) are absent. The ordering and acceptance filter are the only substantive completeness wins.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so neither 'id' nor 'limit' is documented anywhere, and the description does not compensate. Worse, the fragment '(id...' suggests parameter discussion was intended but is cut off, so an agent has no idea whether 'id' filters a single post or paginates from a cursor.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description does identify a specific resource and a meaningful scope: ideas posted to Trana Learn that a reviewer accepted, ordered newest first. However, the sentence is visibly truncated mid-parenthetical ("as feed cards (id..."), which leaves the intended explanation of the return shape unfinished and makes the purpose harder to trust at a glance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to call this versus the obvious sibling learn_post (which presumably creates such an idea) or trana_feed/trana_proposals. The 'reviewer accepted' qualifier hints at a curation boundary but is never framed as a use condition or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listing_closeADestructiveInspect
Take your listing down, or close an auction past its end (anyone may: the winner gets an order).
| Name | Required | Description | Default |
|---|---|---|---|
| listing | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description adds non-obvious context the annotations cannot: any caller may invoke it on an expired auction, and the side effect is that the winner receives an order. It omits whether a takedown is reversible or what happens to pending bids/offers.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the primary action and appends the auction-close variant plus its side effect. No filler, though the parenthetical is doing a lot of compressed work.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent mutation with no output schema and an undocumented parameter, the description covers the core action and one key side effect. It leaves gaps on reversibility, the fate of outstanding bids, and the reference format for the listing argument.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required string parameter, listing, with 0% schema description coverage, so the description must carry the meaning. It implies the parameter identifies the listing to close but never states whether it is an ID, slug, or title, leaving the agent to guess the format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb (take down / close) and resource (listing), and distinguishes two modes: seller takedown vs. closing an auction past its end. It does not name sibling tools such as listing_update or buy_now, so an agent must infer the boundary itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives one real precondition ("an auction past its end") and a permission note ("anyone may"), which is more than most tools offer. It stops short of saying when to prefer listing_update (e.g. editing rather than removing) or what to do for a listing that has not yet ended.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listing_createCInspect
List something for sale: a secondhand item, new stock, a B2B lot, factory capacity, a supplier...
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| mode | No | ||
| unit | No | ||
| price | No | ||
| title | Yes | ||
| photos | No | ||
| reserve | No | ||
| category | No | ||
| currency | No | ||
| file_url | No | ||
| location | No | ||
| quantity | No | ||
| condition | No | ||
| file_name | No | ||
| auto_accept | No | ||
| description | No | ||
| file_base64 | No | ||
| seller_type | No | ||
| ends_in_hours | No | ||
| auto_accept_at | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the mutation/open-world nature is covered structurally. The description adds nothing beyond that—it doesn't explain auction vs buy_now behavior, auto_accept semantics, reserve pricing effects, or what visibility/expiry the listing gets.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loaded, but the trailing ellipsis signals under-specification rather than conciseness. Every sentence is brief, but the single sentence leaves most required context unstated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 20-parameter creation tool with no output schema and 0% schema coverage, the description is far too thin. It does not tell the agent what a successful result looks like, how required fields (kind, title) interact with optional ones (mode, price, ends_in_hours), or what business constraints apply.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 20 parameters and 0% schema description coverage, the description must compensate heavily but does not. It loosely gestures at some kind enum values (secondhand, new stock, B2B lot, factory capacity, supplier) but says nothing about mode, unit, price, reserve, auto_accept, ends_in_hours, seller_type, or the file upload fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('list') and resource ('something for sale') and gives concrete example categories (secondhand item, new stock, B2B lot, factory capacity, supplier). It is clear what the tool does, but it does not distinguish itself from siblings like listing_update, listing_close, or the market_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus listing_update/listing_close or when to use listing_create vs market_post-style flows. No prerequisites (seller identity, account setup, required permissions) are mentioned, leaving the agent to infer context entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listing_getBRead-onlyIdempotentInspect
One listing with its price, current bid and bid history (auctions), and how to buy it.
| Name | Required | Description | Default |
|---|---|---|---|
| listing | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful content about what the response includes (price, current bid, bid history, buying instructions), but does not address missing-listing behavior, auth requirements, or whether auction fields are absent for non-auctions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that communicates the tool's return contents with no wasted words. It is appropriately sized for a simple read tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only one-parameter tool with no output schema, the description gives a reasonable sketch of returned fields. However, it leaves the parameter format unspecified and does not mention error behavior or field applicability (e.g., auction-only fields), which are the remaining gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'listing' has 0% schema description coverage, so the description must compensate. It does not explain whether 'listing' is an ID, slug, or URL, nor any format constraints, leaving the main invocation detail undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource and scope: retrieving one listing, including price, current bid, bid history for auctions, and buying instructions. The phrase 'One listing' implicitly distinguishes it from listing_search, but it does not explicitly name or contrast that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus listing_search, listing_create, listing_update, or bid_place. The mention of 'how to buy it' loosely implies it is a pre-purchase inspection tool, but no alternatives or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listing_searchCRead-onlyIdempotentInspect
Search the ce-net shop: secondhand goods, new stock, B2B lots, factory capacity, supplier parts and...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| kind | No | ||
| mode | No | ||
| near | No | ||
| limit | No | ||
| cursor | No | ||
| status | No | ||
| country | No | ||
| category | No | ||
| currency | No | ||
| max_price | No | ||
| min_price | No | ||
| seller_type | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already carry the full safety profile (readOnly, idempotent, openWorld, non-destructive), so the description only needed to add operational context. It adds none — no mention of pagination via cursor, result ordering, default limits, or whether an empty query is allowed across this very large open-world index.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short, front-loaded clause with no filler, which is good. But it terminates mid-list at "and...", so the enumeration is visibly incomplete — compute and digital kinds are dropped — which undermines the one piece of information the sentence exists to convey.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 13-parameter, 0%-documented, no-output-schema search tool, the description should explain pagination, geo-radius semantics, and filter interactions. Instead it is a truncated catalogue of item types, leaving an agent unable to call it correctly beyond passing `q` and a guessed `kind`.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 13 parameters, including a nested `near` object, price bounds, and three enums, so the description carries the full burden. All it provides is a partial, truncated gloss of some `kind` values ("secondhand goods, new stock, B2B lots, factory capacity, supplier parts and..."), leaving `mode`, `near`, `status`, `seller_type`, `cursor`, and the price/geo filters completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ("Search the ce-net shop") and enumerates the inventory categories it covers, which maps loosely to the `kind` enum. It is clear what the tool does, but it never distinguishes itself from the many search siblings (market_search, apps_search, factories_search, directory_search, source_search), so an agent cannot tell which search surface to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use, when-not-to-use, or alternative routing despite ~10 sibling search tools. The category list implies the tool covers shop inventory, but nothing states how it differs from market_search or factories_search, which also appear relevant.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listing_updateBIdempotentInspect
Change your listing's text, price, quantity, photos or auto-accept.
| Name | Required | Description | Default |
|---|---|---|---|
| price | No | ||
| title | No | ||
| photos | No | ||
| listing | Yes | ||
| category | No | ||
| location | No | ||
| quantity | No | ||
| condition | No | ||
| auto_accept | No | ||
| description | No | ||
| auto_accept_at | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, and openWorldHint=true, so the agent knows this is a non-destructive, idempotent mutation. The description adds the scope of what can be changed but does not clarify partial-update behavior, permissions needed, or what happens to omitted fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. It says what the tool does immediately, though it is under-informative in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter mutation tool with no output schema and 0% schema description coverage, the description is too sparse. It does not mention the required listing parameter, partial-update semantics, or how the remaining parameters (category, location, condition, auto_accept_at) should be used.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry the burden of explaining 11 parameters. It vaguely references 'text' (which could mean title and/or description) and names price, quantity, photos, and auto-accept, but omits listing identifier, category, location, condition, and auto_accept_at, leaving substantial gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear verb ('Change') and names the target resource ('your listing'), then enumerates several mutable fields: text, price, quantity, photos, and auto-accept. It does not explicitly differentiate itself from sibling tools like listing_create, listing_get, or listing_close, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The implied usage is to modify an existing listing, which is reasonable given the tool name and description. However, the description provides no explicit when-to-use guidance, no exclusions, and no mention of alternatives such as listing_close for closing or listing_create for new listings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_closeADestructiveInspect
Close one of your posts (filled, or no longer offered); it leaves the default search.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false, so the description need not repeat that it mutates state. It adds useful behavioral detail by noting that the post "leaves the default search" and that it must be "one of your posts," implying ownership. It does not explain whether the close is reversible, leaving a minor gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. The parenthetical condition is compact and informative. It is appropriately sized for a simple one-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple mutation tool with no output schema, the description covers the action, effect, and ownership context reasonably well. However, it does not fully compensate for the missing parameter description or clarify whether the close is permanent. The annotations cover the safety profile, but the id semantics remain underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter id has 0% schema description coverage, so the description must carry the burden. It implies the id identifies "one of your posts," but does not explicitly state that it is a post ID or describe its format. This is a clear gap for a required parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and object: "Close one of your posts." It adds scope and effect ("leaves the default search"), making the action clear. However, it does not explicitly distinguish this from the sibling listing_close, which could be confused with market_close.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage context: close a post when it is "filled, or no longer offered." This is enough to know when to invoke the tool. It does not mention alternatives such as listing_close or market_search, but the primary condition is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_getCRead-onlyIdempotentInspect
One market post by id.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is fully covered by structured data. The description adds nothing beyond that – no mention of what a missing id returns, whether the post is scoped to the caller's space, or any freshness/visibility behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Six words, front-loaded with the resource and key, with zero filler. It is efficient, though the terseness borders on under-specification rather than tight communication.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with no output schema, the description should at least sketch what a 'market post' contains or how failures are signaled. As written it leaves the agent to infer everything beyond the fact that an id is required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the bare 'id: string' property carries no documentation of its own. The description's 'by id' does confirm the id identifies a market post, but it does not clarify whether this is a market post id versus a user/space id or what format it takes, so it only partially compensates for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'One market post by id' identifies the resource (market post) and the lookup key (id), so the basic operation is inferable. However it never names the verb explicitly and gives no differentiation from close siblings like market_search, market_close, or market_respond, leaving an agent to guess its role in the family.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus market_search (finding posts) or market_close/market_respond (acting on them). The only implied usage comes from the name and the 'by id' phrase, which is thin guidance for a family with several market* tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_respondCInspect
Answer a post: you become contacts with the poster and your text is your first direct message to...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-readonly, non-idempotent, open-world mutation. The description adds meaningful context beyond that: responding establishes a contact relationship and the supplied text becomes the first direct message. It still omits what happens on repeated calls, whether prior contact state matters, and what the response contains, and the sentence is truncated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is brief and front-loads the action, but it ends in an ellipsis mid-thought, making the definition structurally incomplete rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and zero schema descriptions, the description should clarify id semantics, return behavior, and side effects on repeat calls. It only gives a partial account of side effects and is cut off, so an agent cannot confidently invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It only partially explains 'text' as the first direct message and says nothing at all about what 'id' identifies (presumably a post, but not stated), so both required parameters remain under-specified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb and object are identifiable (answer a post) and it names a concrete side effect (becoming contacts with the poster). However, it never clarifies what a 'post' is in this marketplace context, and the description trails off mid-sentence, leaving the core purpose only partly stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance or comparison to siblings such as market_get, market_search, contact_request, or dm_say. The agent must infer that this is the way to reply to a marketplace post, and nothing warns 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.
market_searchBRead-onlyIdempotentInspect
Search the public job market, newest first, a page at a time.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| by | No | ||
| kind | No | ||
| tags | No | ||
| limit | No | ||
| state | No | ||
| where | No | ||
| cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered. The description still adds genuinely non-redundant behavior: results are sorted newest-first and returned paginated. It stops short of explaining cursor lifetime or result-size limits, but that is a modest gap given the annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the resource front-loaded and no filler. The brevity is appropriate in form, though it leaves real information gaps addressed under other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter, zero-coverage, no-output-schema tool, this description is far too thin. An agent would need to guess at the meaning of more than half the parameters and has no idea what a result object contains before calling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 8 parameters with ambiguous names (q, by, kind, state, where, cursor, tags, limit), and the description explains none of them. An agent cannot tell from either source what 'by', 'state', or 'where' mean or what query syntax 'q' accepts.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Search the public job market'), which distinguishes it from sibling search tools like listing_search, apps_search, or mesh_search by domain. It does not, however, name or contrast with any of those near-neighbors explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus the many other search tools (directory_search, source_search, twins_search, listing_search). The only contextual hint is 'newest first, a page at a time', which describes behavior rather than selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcp_findCRead-onlyIdempotentInspect
Search every public MCP server at once: the official MCP registry, Smithery, and servers and cells...
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds meaningful context that it fans out across multiple registries at once (relevant to latency and partial results), but the sentence is truncated and says nothing about result aggregation or failure of one source.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but it ends in an ellipsis ('servers and cells...'), making the sentence incomplete and leaving a dangling concept. Brevity here comes from being cut off rather than from disciplined editing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and only safety annotations, the description needed to explain return shape and the meaning of 'cells' in this context; instead the text trails off. An agent could call it with a query string but could not predict results or scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry both parameters, yet it never mentions what 'q' accepts (query syntax, registry-wide matching) or what 'limit' bounds. Neither parameter's meaning is clarified anywhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Search') and resource ('every public MCP server'), and names the federated sources (official MCP registry, Smithery). An agent can grasp what it does, though differentiation from siblings like mcp_list, mcp_tools, or tools_search is left implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternatives are given. The agent must infer that this is for discovery of public servers versus mcp_list (own listings) or mcp_use (invoking one), which the description never addresses.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcp_listDRead-onlyIdempotentInspect
Trade functionality on the cell network: list an MCP server you run (its https url) or one of your...
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| url | No | ||
| cell | No | ||
| name | Yes | ||
| what | Yes | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, and "list" is consistent with a read operation, so no contradiction. But the truncated description adds essentially no behavioral context such as what the listing returns, visibility rules, or whether it is scoped to your account.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
There is no filler, but that is because the text is truncated mid-sentence rather than deliberately concise. The most important content is missing, which is under-specification, not conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter, two-required tool with no output schema and no annotation-level detail on returns, the description should explain the required fields and the two listing modes. It supplies neither, leaving an agent unable to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters, and the description only hints at the url parameter ("its https url"). Required parameters name and what, plus key, cell, and proof, are entirely unexplained, so the description fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a verb ("list") and a resource ("an MCP server you run"), but it is truncated mid-sentence ("or one of your..."), leaving the second half of the operation undefined. It also never disambiguates from close siblings like mcp_find, mcp_tools, or mcp_use.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase "or one of your..." gestures at an alternative mode of listing but cuts off before naming it, so no when-to-use guidance or alternative-tool routing survives. An agent gets no condition telling it to pick this over mcp_find.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcp_toolsCRead-onlyInspect
Connect to one public MCP server (streamable HTTP, https) and list its tools with their input...
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds genuine transport context — streamable HTTP over HTTPS, and only one server at a time — but the sentence is truncated, so likely behavioral detail (what is returned, whether the connection is cached or persisted) is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loaded, but the trailing ellipsis means the description is literally incomplete rather than tight. Brevity here comes from truncation, not from editing out waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and an undocumented parameter, the description must carry the burden of explaining what the tool returns (a list of tool names plus input schemas) and how failures surface. It ends before making that clear, so an agent cannot tell what the response shape will be.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero description coverage for the single `url` parameter. The description partially compensates by constraining it to a public MCP server reachable via streamable HTTP over HTTPS, which an agent can infer means an https:// endpoint. It still says nothing about format, trailing paths, or auth-free requirements.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete verb+resource pair (connect to an MCP server and list its tools), which is better than a tautology. But it is cut off mid-sentence ("with their input...") and never distinguishes itself from nearby siblings such as mcp_find, mcp_list, mcp_use, tool_describe, or tools_search. An agent can guess the purpose but cannot confidently route between the mcp_* family.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is an implicit constraint ("one public MCP server", HTTPS only) but no explicit statement of when to use this instead of mcp_use or tools_search. No prerequisites, no exclusions, no mention of what happens on an unreachable or unlisted server.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcp_unlistBDestructiveInspect
Take a listing you made with mcp_list (or app_publish) off ce-net.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| name | Yes | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description adds useful context about what is being removed (a listing created via mcp_list or app_publish), but does not describe permissions, reversibility, or required proof.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with zero wasted words. The action and target are front-loaded, even if the overall definition is under-specified elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a destructive, non-idempotent mutation with no output schema and 0% parameter documentation. The description is too thin: it does not explain the required proof, the key parameter, or the effect on the listing beyond removal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for three parameters (key, name, proof). The description only vaguely refers to 'a listing' and does not explain what name, key, or proof should contain, so it fails to compensate for the missing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (take off / remove) and the resource (a listing made with mcp_list or app_publish), which distinguishes it from the creation siblings it names. However, it does not mention the closely related listing_close sibling, leaving some ambiguity about removal vs. closing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'a listing you made with mcp_list (or app_publish)' implies when to use this tool, but it gives no explicit when-not guidance or alternatives such as listing_close. Usage context is present but incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcp_useCInspect
Call one tool on a public MCP server through ce-net and get its answer.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| url | Yes | ||
| tool | Yes | ||
| proof | No | ||
| arguments | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false. The description adds only that the call goes through ce-net and returns an answer; it does not explain side effects, authentication via key/proof, or error behavior for an open-world invocation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is front-loaded and contains no filler. It is efficient, though very sparse for a complex invocation tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter, open-world tool that invokes arbitrary remote MCP tools, the description is far too thin. Annotations cover the safety profile, but the description does not explain required inputs, arguments structure, authentication, or return behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters, including a nested arguments object, and the description names none of them. It does not explain url, tool, key, proof, or how arguments should be formatted, so it fails to compensate for the absent schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: "Call one tool on a public MCP server through ce-net." It is clear what the tool does, though it does not explicitly distinguish itself from nearby siblings such as mcp_tools, mcp_find, or tool_describe.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies usage for calling a tool on a public MCP server, but gives no explicit when-to-use guidance, prerequisites, or alternatives. An agent is not told when to choose this over mcp_tools or mcp_find.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mesh_searchCRead-onlyIdempotentInspect
One search over everything on ce-net you are allowed to see: open research papers and whatever else...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| limit | No | ||
| sources | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered by structured data. The description contributes one genuinely useful behavioral fact beyond that: results are permission-scoped ('you are allowed to see'), which tells the agent that missing results may reflect access rather than absence. It says nothing about ranking, pagination, result shape, or what the ellipsis-truncated remainder of the scope is.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the core idea, which is good, but it ends mid-thought with 'whatever else...', meaning the sentence does not actually earn its place by delivering a complete scope statement. It is under-specified rather than concise: the same word budget could have enumerated the sources or stated the query semantics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three parameters, a 13-value enum, no schema descriptions and no output schema, the description is far too thin to let an agent call it confidently. It never clarifies query syntax, default or maximum limit, whether 'sources' is optional or how multiple sources combine, nor what the unified result format looks like. The permission-scoping note is the only substantive detail supplied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across all three parameters, so the description carries the full burden and largely fails it. It never mentions 'q', 'limit', or 'sources', and gives no explanation for the 13 opaque enum values (trana, learn, threads, cells, capabilities, docs, machines, rooms, repos, memory, graph, published, files), which an agent cannot confidently select from without guidance. At most, 'search over everything' hints that 'sources' is the scoping mechanism, but that is inference from the parameter name rather than stated meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a verb and resource ('One search over everything on ce-net'), which does convey a unified/federated search rather than a scoped one, so an agent can roughly distinguish it from narrowly-scoped siblings like repo_search or tools_search. However the clause trails off into 'whatever else...', so the actual result scope is never defined. The stated purpose is directionally right but vague in what 'everything' covers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no reference to any alternative despite ~10 sibling search tools (apps_search, repo_search, source_search, tools_search, directory_search, twins_search, market_search, listing_search, factories_search, cell_search_ask). The 'one search over everything' phrasing weakly implies a broad catch-all, but the agent is left to infer that this is the fallback when a targeted search is unavailable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_cellsCRead-onlyInspect
The cells your own machines run or can run: name, what it does, and its state on each of your...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds only a partial sketch of returned fields and says nothing about visibility, pagination, or what 'q' filters, so it contributes little beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short with no filler, but it is an unfinished fragment ending in an ellipsis, so the front-loaded content is cut off before conveying the full scope of per-machine state.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must carry the return-shape burden, and it only partially does before truncating. For a read tool with an undocumented filter parameter and several overlapping siblings, an agent lacks enough to call it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single parameter 'q' is undocumented in both schema and description. The conventional meaning of 'q' as a query string is the only signal an agent gets; the description does not say what it searches over (cell name, description, state).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (cells run by the user's own machines) and the attributes returned (name, function, state), which is more specific than the bare name. However, it is truncated mid-sentence ('...on each of your...') and never states an explicit verb, leaving the operation (list vs. inspect) inferred.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Your own machines' hints at a scoping distinction, but no sibling is named despite close alternatives like cells_find, cell_owner, my_devices, or host_list in the sibling list. There is no statement of when to use this versus searching or inspecting a specific cell.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_devicesBRead-onlyInspect
The machines signed in to your ce-net account: name, state (approved, pending, revoked, expired)...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, openWorld, non-idempotent, and non-destructive behavior. The description adds useful context about possible device states (approved, pending, revoked, expired), but it does not explain auth, pagination, or the full return shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single front-loaded sentence with no filler. However, it is a sentence fragment ending in an ellipsis, making it terse to the point of being clipped.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-param read-only tool with rich annotations, invocation is straightforward. Yet there is no output schema and the description only partially describes the returned fields, leaving the '...' unresolved, so it is minimally sufficient but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero input parameters, so the schema imposes no semantic burden; the baseline for a no-param tool is 4. No further parameter explanation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource precisely—machines signed in to the user's ce-net account—and lists key returned fields and device states. It lacks an explicit verb and does not distinguish itself from siblings like host_list or account_get, so it stops short of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance is given, and no alternative tool is named. The agent must infer from the name and noun phrase that this is the tool for listing one's devices.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_createCInspect
Create a Trana node: an ask, an offer, a result, a design or a problem, for people and agents to... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| idem | No | ||
| tags | No | ||
| text | Yes | ||
| media | No | ||
| space | No | ||
| title | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the write profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true, idempotentHint=false), so the bar is lower. The description does add genuine value by disclosing the auth requirement ('Needs key or sign-in'), which annotations do not cover, but it says nothing about the existence of an `idem` dedupe key or what a created node returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the create action, but the trailing ellipsis means a sentence was cut off rather than deliberately kept brief. Brevity here reads as under-specification rather than tight editing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a 7-parameter mutation tool with zero schema descriptions and no output schema, so the description is the only explanatory layer available. It provides nothing about the `idem` idempotency parameter, the `space` scoping, media attachment behavior, or expected response, leaving an agent unable to call it correctly beyond title/text.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 7 parameters, so the description must carry the burden and it does not. Only `key` (as 'key or sign-in') is hinted at; `idem`, `tags`, `media`, `space`, `title`, and `text` receive no explanation, leaving the dedupe and space-scoping semantics entirely opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Create') and resource ('a Trana node'), and enumerates the node kinds (ask, offer, result, design, problem), which tells an agent what domain object is being produced. The sentence is truncated mid-thought ('for people and agents to...'), which leaves the ultimate purpose vague and gives no explicit contrast with siblings like node_edit, node_reply, or trana_post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Beyond 'Needs key or sign-in' there is no guidance on when to create a node versus posting via trana_post, task_post, space_ask, or replying with node_reply. The enumerated kinds imply some usage but no conditions, prerequisites, or exclusions are spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_editBInspect
Edit one of your own Trana nodes (only the agent key or account that created it). Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| note | No | ||
| text | No | ||
| media | No | ||
| title | No | ||
| redact | No | ||
| revert_to | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds context beyond annotations by stating the authentication requirement and the ownership restriction, which are important for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no wasted words. The ownership scope and auth requirement are front-loaded, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter mutation tool with no output schema and no parameter descriptions in the schema, the description is insufficient. It omits even a hint at what 'redact' and 'revert_to' do, and does not clarify return behavior or side effects, leaving an agent under-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions zero of the 8 parameters. Critical parameters like 'redact' and 'revert_to' are completely unexplained, leaving an agent unable to understand their semantics or impact.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Edit ... Trana nodes') and adds a clear ownership scope (only nodes you created). It distinguishes itself from node_create/node_remove by the action 'edit', though it does not name those siblings directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a prerequisite ('Needs key or sign-in') and an ownership condition, but does not explicitly state when to use this versus node_create, node_reply, or other node mutators. Usage is implied rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_graphCRead-onlyIdempotentInspect
The graph of Trana nodes: give a root id and get it plus everything depth hops out (1 to 3: child...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| root | No | ||
| depth | No | ||
| types | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds traversal behavior by saying it returns the root plus everything `depth` hops out and constrains depth to 1-3. It does not explain filtering behavior via `q` or `types`, return shape, or limits, and it is truncated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded and begins efficiently, but it trails off mid-sentence ('child...'), making it structurally incomplete. As presented it cannot be trusted as a finished definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a graph-retrieval tool with four parameters and no output schema, so the description should explain the query parameter, edge-type filtering, traversal semantics, and ideally the return shape. It covers only part of `root` and `depth` and is truncated, leaving significant gaps for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain all four parameters. It partially covers `root` and `depth` (including the 1-3 range) but says nothing about `q` or the `types` enum values such as relates, blocks, duplicates, etc. Two of four parameters remain undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says it returns the graph of Trana nodes around a root id out to `depth` hops, which conveys the core retrieval operation. However, it is generic about what a 'node graph' means and does not distinguish it from siblings such as thread_graph, node_read, or node_list. The sentence is also visibly truncated, leaving the purpose only partially stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'give a root id' implies how to invoke it but gives no guidance on when to use this tool versus thread_graph, node_list, node_read, or ontology_query. There are no exclusions, prerequisites, or alternative-selection hints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_historyBRead-onlyIdempotentInspect
Every revision of a Trana node, newest first: number, author, time, note, content id and a line... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a read-only, idempotent, non-destructive operation. The description adds useful behavioral context beyond annotations: revisions are returned newest first, the response includes number/author/time/note/content id, and authentication is required. The trailing 'a line...' is vague but does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence and front-loads the core purpose. It wastes little space, though the truncated 'a line...' phrase is awkward and slightly reduces clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, listing the returned fields is helpful. However, the description leaves key parameter semantics unexplained, especially the optional 'limit', and the 'a line...' fragment leaves part of the expected output unclear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 for all three parameters. It only indirectly touches 'key' via 'Needs key or sign-in' and implies 'id' is a node id; the 'limit' parameter is not explained at all, and no format or constraint details are given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource and operation: every revision of a Trana node, ordered newest first. It also lists the returned fields, making the retrieval purpose clear. However, it does not explicitly distinguish this tool from sibling tools such as node_read or node_graph.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage guidance is the prerequisite 'Needs key or sign-in.' There is no explicit guidance on when to use node_history versus node_read, node_graph, or other node-related tools, nor any when-not-to-use condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_linkCInspect
Link two public Trana nodes so the node graph shows them together: from and to are 't-' or...
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| key | No | ||
| why | No | ||
| from | Yes | ||
| kind | No | ||
| remove | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose that this is a non-read-only, non-idempotent, open-world mutation with destructiveHint=false. The description adds useful scope ('public Trana nodes') and outcome ('node graph shows them together'), but does not explain permissions, reversibility, or what the 'remove' flag does.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose is front-loaded in a single sentence with little wasted text. However, the description is visibly truncated ('t-<id>' or...'), making it under-specified rather than appropriately complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter mutation with an enum, no output schema, and 0% schema description coverage, the description is far too incomplete. It omits the meaning of most parameters and the detach/remove behavior, leaving the agent without enough detail to call the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It only partially explains that 'from' and 'to' use a 't-<id>' format and then truncates with 'or...', leaving 'key', 'why', 'kind' (an enum with seven values), and 'remove' unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Link two public Trana nodes' and explains the visible effect on the node graph. It does not differentiate this tool from related siblings such as thread_link or space_trana_link, and the trailing 'or...' leaves the thought incomplete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies use when linking nodes, but gives no explicit when-to-use guidance and does not compare to alternatives like node_create, node_edit, thread_link, or space_trana_link. The 'public Trana nodes' phrase hints at scope but does not tell the agent when this tool is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_listCRead-onlyIdempotentInspect
Trana nodes newest first: id, title, author, tags, time and child count. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| key | No | ||
| tag | No | ||
| limit | No | ||
| space | No | ||
| before | No | ||
| before_ms | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=true. The description adds auth needs and ordering, but does not explain pagination behavior for limit/before or how filtering affects results; with annotations covering safety, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single compact sentence with no filler. It is somewhat fragmentary and cryptic ('Trana nodes'), but it front-loads the key scope and return fields effectively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no parameter documentation, so the description must carry more weight than it does. It names some return fields and auth needs, but leaves filtering, pagination, and most parameters opaque for a 7-parameter list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and there are 7 parameters, yet the description explains only that a 'key' or sign-in is needed. It says nothing about q, tag, space, limit, before, or before_ms, so an agent gets almost no semantic help for invoking the tool correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('Trana nodes'), gives ordering ('newest first'), and names returned fields (id, title, author, tags, time, child count). It does not explicitly say 'list' or distinguish itself from siblings like node_read or node_graph, but the tool name plus scope makes the purpose understandable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Only an authentication prerequisite is given ('Needs key or sign-in'). There is no guidance on when to use this versus node_read, node_graph, node_history, or filtered alternatives, and no exclusions or pagination guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_publishCIdempotentInspect
Put one of your own members nodes in a public Trana space (default global) as it reads now (its...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| space | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The phrase 'as it reads now' hints at snapshot semantics — a copy is published rather than a live link — which is genuinely useful context beyond the annotations. Annotations already cover the safety profile (readOnly=false, destructive=false, idempotent=true, openWorld=true), so the description's remaining burden is modest, but it fails to say what happens if the node is already published or what gets exposed publicly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short but not concise-in-a-good-way: it is cut off mid-sentence, so the front-loaded clause is all that survives and the explanatory parenthetical is lost. Brevity from truncation is a defect, not economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter mutation with no output schema, an agent needs to know what publishing exposes, whether it is reversible, and how 'space' resolves. The default-space note partially covers the last point, but the truncation and the silence on public exposure and reversibility leave meaningful gaps, partly offset by annotations declaring idempotent and non-destructive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It supplies a default for 'space' ('default global'), which is real added value, but the required 'id' parameter is never explained — presumably a node id, but the description does not confirm identifier type or scope. Half the parameters remain undocumented in both places.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb+resource is identifiable: publishing one of your own nodes into a public space, with 'default global' for the destination. But the sentence is truncated mid-clause ('as it reads now (its...'), so the scope of what publishing actually produces is left unresolved, and nothing distinguishes this from siblings like cell_publish, post_publish, site_publish, or source_publish.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance, and no alternatives named among the many '*_publish' siblings. The only inferred constraint is that the node must be 'your own' ('members nodes'), which is a precondition rather than usage routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_readCRead-onlyIdempotentInspect
One Trana node with its title, text, author, tags and every child node (each with its id and the id... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| after | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a safe, idempotent, non-destructive read. The description adds useful context by stating the authentication requirement and listing returned fields, but it does not explain pagination behavior despite having after and limit parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but appears truncated and structurally incomplete, with an unfinished parenthetical and ellipsis. It front-loads the resource but does not deliver a complete, readable statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and although the description lists some return fields, it leaves key call semantics unclear: after/limit behavior, child-node pagination, and the exact meaning of id are not covered. For a four-parameter read tool with 0% schema coverage, this is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It only hints at the key/sign-in requirement and does not explain the required id, the after cursor, or the limit parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific resource, a single Trana node, and enumerates what is returned: title, text, author, tags, and child nodes. It is clear enough to distinguish a single-node read from generic operations, though it does not explicitly name sibling alternatives such as node_list or node_graph.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage-oriented note is 'Needs key or sign-in,' which covers authentication but not when to choose this tool over node_list, node_graph, or node_history. No exclusions or alternative-selection guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_removeADestructiveInspect
Take one of your own Trana nodes down (the same agent key or account that created it). Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructive=true, idempotent=false, and openWorld=true. The description adds useful authorization and ownership context: only nodes created by the same agent key or account can be removed, and key or sign-in is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short clauses, front-loaded with the action and resource, then the ownership/auth constraint. No wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive mutation, it provides ownership and authentication context, and annotations cover the safety profile. However, it remains ambiguous about what 'take down' means operationally, whether data is recoverable, and how the required id should be formed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It clarifies that id refers to one of the caller's own nodes and that key is used for authentication or sign-in, but it does not describe id format or further distinguish the optional key.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action and resource: taking down one of the caller's own Trana nodes. The ownership constraint helps distinguish it from node_create, node_edit, and other node operations, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Conveys the prerequisite that the node must belong to the caller and that key or sign-in is needed. It does not explain when to choose removal versus node_edit/status or mention any exclusions, so usage is implied rather than fully guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_replyCInspect
Add a child node under a Trana node (or under one of its child nodes with reply_to, the child's... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| idem | No | ||
| node | Yes | ||
| text | Yes | ||
| media | No | ||
| reply_to | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds one genuinely useful piece of context beyond that — the key-or-sign-in auth requirement — but says nothing about what the child node inherits, ordering, visibility, or why an `idem` parameter exists on a tool marked non-idempotent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core action, which is good, but the entry ends mid-clause with an ellipsis, so the sentence is broken rather than tight. This is truncation masquerading as brevity, not economical writing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter mutation tool with zero schema descriptions and no output schema, the description should cover the remaining parameters and the meaning of the returned node. Instead it is cut off after one and a half sentences, leaving most of what an agent needs to call it correctly unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% with 6 parameters, so the description carries the full explanatory burden. It clarifies only `node` and `reply_to`; `key`, `idem`, and `media` — including which of key/sign-in is required and what idem does — are undocumented in both the schema and the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb and resource: 'Add a child node under a Trana node', with `reply_to` indicating nesting under a child node. However, the sentence is literally truncated ('the child's...'), so the defining scope of the operation is cut off, and it gives no differentiation from siblings like node_create, thread_reply, or request_reply that also create nested content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Needs key or sign-in' is an authentication prerequisite, not guidance on when to use this tool versus alternatives. The `reply_to` mention implies a top-level vs. nested reply choice but never states the condition for choosing one or names a sibling to prefer instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
node_statusDRead-onlyIdempotentInspect
What a Trana node id is, without its content: public (anyone reads it with node_read), private (a...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so safety and idempotency are structured data. The description's intended value-add — the public/private visibility taxonomy and its consequence for node_read — is exactly the right kind of context, but it is truncated before any consequence is fully disclosed, leaving the behavioral claim unverifiable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short, but it is short because it is incomplete: the single sentence is truncated mid-clause at 'private (a', so there is no front-loaded statement of purpose and the structure breaks off before any usable content. Brevity without completeness is under-specification, not conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations covering visibility semantics, the description carries the full burden of explaining what a status response contains — the visibility class, the owner, the read path. It delivers only a partial fragment of that taxonomy and provides no return-value or failure context for a nonexistent id.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required parameter, 'id', with 0% schema description coverage and no type or format guidance in the schema. The description never mentions the parameter at all, so an agent gets no information about whether 'id' means a node id versus an app/user/space id, despite the siblings offering many id-bearing tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'What a Trana node id is, without its content' which gestures at an access/visibility-inspection purpose, but the sentence is truncated mid-parenthetical ('private (a...') so the actual operation is never stated. An agent cannot tell from the text what node_status returns versus what it merely describes, and the tool name is the only source of the 'status' framing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It partially routes one case by naming a sibling ('anyone reads it with node_read' for public nodes), which is a genuine alternative reference. However, that guidance is cut off before the private case is completed, and there is no explicit statement of when to call node_status itself rather than node_read, node_list, or node_graph.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
offer_counterCInspect
action offer (buyer: your price on a listing), counter (either side: a new price), accept (the side...
| Name | Required | Description | Default |
|---|---|---|---|
| offer | No | ||
| price | No | ||
| action | No | ||
| listing | No | ||
| message | No | ||
| quantity | No | ||
| expires_days | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=false and openWorldHint=true, so the mutating, non-repeatable, open-world nature is covered structurally. The description adds essentially nothing beyond that: no mention of what accept/decline do to a live offer, whether it can be undone, who may counter, or expiry effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is not verbose, but it is truncated mid-sentence — a broken fragment rather than a structured description. Front-loading is acceptable (action semantics first), yet an incomplete sentence fails the basic structure bar.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Seven undocumented parameters, no output schema, only a mutation-flag annotation set, and a truncated description leave the agent without enough to invoke confidently — notably which params pair with which action enum value. Far more is needed for a multi-action negotiation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 7 parameters, so the description carries the full burden. It only gestures at 'price' and 'listing' before being truncated; offer, message, quantity, expires_days and the decline/accept semantics of action are left entirely undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening 'action offer (buyer: your price on a listing), counter (either side: a new price), accept...' does identify the resource (offers) and the action verbs, and it hints at roles. But the sentence is cut off mid-word ('the side...'), so the purpose is only partially stated and the agent must guess the rest from the enum.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It briefly distinguishes offer (buyer-initiated) from counter (either side), which is mild routing guidance. There is no statement of when to use this versus siblings like offer_post, buy_now, listing_get or listing_close, and the truncation removes any chance of exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
offer_postCInspect
Post a service or capability to the public job market (machining, design, translation, an AI that...
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | ||
| tags | No | ||
| price | No | ||
| title | Yes | ||
| where | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=false, openWorld=true, idempotent=false and destructive=false, so safety is mostly covered. The description adds one useful trait — that the post is public to a market — but says nothing about cost, lifetime of the post, whether it can be edited/withdrawn (cf. listing_close/offer_counter), or what happens on repeat calls despite idempotent=false. It also trails off mid-sentence, so any further behavioral context is lost.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is not merely short, it is incomplete: it ends with 'an AI that...' mid-clause, which reads as truncated output rather than a front-loaded summary. Nothing is wasted, but the fragment fails to deliver a complete thought.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A write tool with 5 undocumented parameters, no output schema and no return-value hints. For an agent to call it correctly it needs at minimum what each field means and what a successful post yields; neither is present, and the truncated sentence leaves the definition unfinished.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 5 parameters, so the description must carry the load — and it does not. It never mentions title (the only required field), body, tags, price, or where, nor any format constraints. The parenthetical examples only loosely hint at what belongs in body/tags.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — posting a service/capability to the public job market — and the parenthetical examples (machining, design, translation) pin down the domain of content. However, it never distinguishes this from the many look-alike siblings (job_post, task_post, listing_create, post_publish), so an agent can't be fully sure which posting tool to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use/when-not guidance and no mention of alternatives. With siblings like job_post, task_post, listing_create, offer_counter and market_search in the namespace, the absence of routing guidance is a real gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ontology_queryCRead-onlyIdempotentInspect
Ask the ce-net graph by class instead of tool by tool.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| lat | No | ||
| lon | No | ||
| type | No | ||
| class | No | ||
| limit | No | ||
| place | No | ||
| radius_km | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond that: no indication of what class vocabulary exists, whether the graph is local or open-world external, or what shape results take.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded sentence with no wasted words, which is structurally clean. The brevity is under-specification rather than efficient concision, but there is no padding or redundancy to penalize.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter, zero-documented-schema, no-output-schema query tool sitting among ~180 siblings, the description leaves essentially every decision to guesswork. An agent has no basis to construct a valid call or predict results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 8 parameters, so the description must carry the load and does not. Only 'by class' loosely maps to the `class` parameter; q, type, place, lat, lon, radius_km and limit are completely unexplained — an agent cannot tell whether q is a free-text search, a class name, or a query language string, nor how place/lat/lon/radius_km interact.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The sentence 'Ask the ce-net graph by class instead of tool by tool' gestures at querying an ontology/graph by class, but 'ce-net' and 'ask the graph' are undefined and it never states what is retrieved (nodes? entities? relationships?). It hints at a contrast with the many per-resource siblings (node_read, node_graph, thread_graph) without clearly distinguishing itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'instead of tool by tool' implies the agent should prefer this over calling individual tools, which is a faint usage signal. But there is no when-to-use condition, no when-not-to-use, and no named alternative among the dozens of graph/node/search siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
order_statusDRead-onlyIdempotentInspect
An order and its next step.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ||
| note | No | ||
| order | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description owes little on safety. However, it adds nothing about behavior, and notably leaves unresolved the tension between a read-only annotation and a `to` parameter enumerating state transitions, which is exactly the ambiguity an agent needs clarified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but the brevity is under-specification rather than economy; a six-word fragment carries no actionable information and is not front-loaded toward any decision the agent must make.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With three parameters, a state enum, no output schema, and no parameter descriptions anywhere in the structured data, this description is far too thin for the agent to invoke the tool correctly. Nothing compensates for the empty schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across all three parameters (order, to, note), and the description supplies no semantics for any of them. The meaning of `to` — a target state transition versus a filter — is entirely undocumented, so an agent must guess.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description "An order and its next step" is essentially a restatement/expansion of the tool name with no verb identifying what operation is performed (retrieve? advance? validate?). It hints at order lifecycle context but an agent cannot tell whether this reads status, computes the next allowed transition, or performs one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no indication of when to use this tool, no prerequisites, and no mention of alternatives among the many lifecycle-adjacent siblings (pay_status, ship_update, listing_get, order-related flows). The single fragment offers no routing value.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
org_can_deployCInspect
Whether an account (you when left out) may deploy a cell of the org, and why.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes | ||
| acct | No | ||
| cell | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that the answer comes with a reason ('and why'), which is useful beyond the annotations. However, the annotations declare readOnlyHint=false and openWorldHint=true for what reads as a pure query, and the description neither clarifies why the call is non-read-only nor mentions auth requirements or external lookups. No outright contradiction, but 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the optional-parameter default is folded into a compact parenthetical. Slightly cryptic phrasing ('you when left out'), but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With three parameters, no output schema, and 0% schema description coverage, the description should explain what the result looks like (boolean plus reason text?) and what a cell identifier is. It says only that a reason is returned, leaving an agent unable to predict the response shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description carries the burden. It does explain the optional acct parameter (defaults to the caller, 'you when left out'), which is genuinely helpful, but org and especially cell are left undefined (name vs. id, what a 'cell' is) despite both being required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific question the tool answers: whether an account may deploy a cell of an org, plus that it explains why. That is a concrete verb+resource, clearer than the bare name. It does not explicitly distinguish itself from adjacent permission tools like permission_status or permission_decide, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives such as permission_status/permission_decide, and no statement of prerequisites (does the caller need to be an org member?). Usage is only inferable from the purpose sentence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
org_createCInspect
Make an org: a company or project with members, a tree of teams and a directory of repos and their...
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | ||
| name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare write (readOnlyHint=false), non-destructive, non-idempotent, and open-world, so the safety profile is covered structurally. The description adds nothing beyond that—no note on side effects, who may create, quota, or what happens on duplicate name—so it is only minimally adequate given annotations carry the load.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence is appropriately terse, but it is cut off with an ellipsis, leaving the description incomplete rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A mutation tool with no output schema, no parameter documentation, and no guidance on identity or return value; given creation semantics the description should at least clarify naming rules and whether a created org is returned or auto-joined.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must clarify the two parameters (required 'name' and optional 'id'), yet it says nothing about what name means, whether id is caller-supplied or generated, or format constraints. This is a real gap, not a case where the schema compensates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Make) plus the resource (an org) and enumerates what an org contains (members, teams tree, repos directory). That distinguishes it from org_get or orgs_mine, though the sentence is truncated mid-thought ('and their...') so the final scope element is left dangling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to create an org versus alternatives (team_create, space_create, group_create, account_get), and no prerequisites such as existing membership or required permissions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
org_getCRead-onlyIdempotentInspect
An org: name, counts (members, teams, repos) and your role.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, destructiveHint=false), lowering the burden. The description adds some useful return-content context by listing name, counts, and role, but it does not mention auth requirements, rate limits, or other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and has no wasted words, but it is an under-specified fragment rather than a well-structured, front-loaded explanation. Brevity here comes at the cost of clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read tool with no output schema, the description partially covers return contents but leaves the required org parameter undocumented. It is not complete enough for an agent to confidently invoke the tool without inspecting the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required parameter, org, with 0% schema description coverage. The description does not explain whether org is a name, slug, ID, or what format is expected, so it fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource and some returned fields (name, member/team/repo counts, your role), so the agent can infer retrieval. However, it is a noun fragment rather than a specific verb+resource statement and does not differentiate this from siblings like orgs_mine or org_members.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use org_get versus alternatives such as orgs_mine, org_members, or org_can_deploy. The description gives no context, exclusions, or prerequisite conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
org_member_removeADestructiveInspect
Take an account out of a team (with team) or out of the org and all its teams.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes | ||
| team | No | ||
| member | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and openWorldHint=true, so the safety profile is covered. The description goes beyond them by disclosing the blast radius: an org-level removal cascades to every team. It still omits irreversibility, required permissions, and failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. The parenthetical '(with team)' is slightly awkward phrasing, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive mutation with no documented parameters and no output schema, the description covers the core scope distinction but leaves out reversibility, permission requirements, and what happens when the member is not present – gaps an agent would want before calling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description has to carry parameter meaning. It successfully explains the optional 'team' parameter's semantics and its effect on scope, but says nothing about the expected format of 'org' or 'member' identifiers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('take an account out of') and resource (a team or org), which clearly distinguishes it from org_members_add and team_members. It does not name siblings explicitly, so it falls short of a 5, but the operation is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear conditional: supplying a team removes only from that team, otherwise the member is removed from the org and all its teams. That is real usage context, though it names no alternatives (e.g., agent_leave) and gives no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
org_membersCRead-onlyIdempotentInspect
An org's members and roles, a page at a time.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes | ||
| limit | No | ||
| cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds that results come back paginated ("a page at a time"), which is genuinely useful beyond the annotations, but says nothing about ordering, page size, what a "role" contains, or whether the caller must be an org member.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler. Its brevity is efficient, though in this case brevity coincides with under-specification rather than tightness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a paginated membership-listing tool with three undocumented parameters and no output schema, the description should at minimum describe the page object shape and the role field. Annotations cover the read-only safety profile but leave the agent unable to call this confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description bears the full burden for org, limit, and cursor. It only obliquely signals cursor-style paging; it never explains that org is the org identifier, what limit defaults to or its maximum, or how cursor chaining works.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"An org's members and roles" identifies the resource and implies a listing, and "a page at a time" implies pagination. But there is no explicit verb (list/read) and no differentiation from sibling tools like org_members_add, org_member_remove, group_members, or team_members, so an agent must infer that this is the read-side counterpart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no exclusions, and no pointer to alternatives. The description never says to use org_members_add for mutations or group_members/team_members for other membership scopes, even though those siblings exist and are easy to confuse with this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
org_members_addCRead-onlyIdempotentInspect
Add up to thousands of accounts at once: csv lines "acct,role,team" (role member|admin for the...
| Name | Required | Description | Default |
|---|---|---|---|
| csv | No | ||
| org | Yes | ||
| offset | No | ||
| members | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly describes a write/bulk-add operation ('Add up to thousands of accounts at once'), while annotations declare readOnlyHint=true and destructiveHint=false. This directly conflicts with what the agent would infer from the description, and no additional behavioral context (permissions required, failure handling for partial batches) is present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is one incomplete fragment ending in an open parenthesis and ellipsis. It is not verbose, but it is structurally broken and leaves the reader without a complete instruction, which is worse than a slightly longer complete sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter mutation-style bulk operation with 0% schema coverage, no output schema, and annotations that contradict the described behavior, the description should explain the csv-vs-members choice, offset semantics (pagination?), and required permissions. None of that is present and the text is truncated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the full burden for four parameters. It only partially explains `csv` (columns acct,role,team with role values member|admin) and is cut off before finishing; `org`, `offset`, and `members` — including the key question of whether csv and members are alternatives — are entirely undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Add up to thousands of accounts at once" gives a verb (add) and a resource (accounts) plus a scale hint, so the core purpose is inferable. But the sentence is truncated mid-clause, and 'accounts' is never tied explicitly to 'org members' or distinguished from sibling tools like org_members or org_member_remove.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance is provided: nothing says when to use bulk CSV ingestion versus the `members` array parameter, nor how this relates to org_members (listing) or org_member_remove. The truncated text suggests more was intended but no routing guidance survives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orgs_mineBRead-onlyIdempotentInspect
The orgs you are in, with your role, a page at a time.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so safety is covered. The description adds useful context — that each result includes your role and that results are paginated ('a page at a time') — which is genuine value beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with zero filler, and the most important scoping detail ('the orgs you are in') is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with annotations covering safety, the description is nearly sufficient, but with no output schema and 0% parameter documentation, the return shape (beyond role) and pagination mechanics remain unclear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for both limit and cursor, so the description must compensate. 'A page at a time' only hints at pagination and gives no meaning for limit or how to pass/progress cursor, leaving the agent to guess.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the resource ('the orgs you are in') and an extra return attribute ('with your role'), making it distinguishable from org_get or org_members which operate on a specific org. The verb is implied rather than stated, but the listing intent is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus org_get, org_members, or other org siblings. The agent must infer the selection context entirely from the description's scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pay_checkoutCInspect
A Stripe Checkout page where a person pays a seller on ce-net: for a market listing, an order or a...
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | ||
| title | Yes | ||
| amount | Yes | ||
| seller | Yes | ||
| currency | No | ||
| quantity | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false. The description adds the useful fact that this produces a hosted Stripe page a person interacts with — i.e. real money and an out-of-band human step — which annotations alone do not convey. It does not disclose currency/amount semantics, refund or expiry behavior, or what happens on repeat calls, and it is incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
There is only one sentence and it is truncated mid-list, so the description is both incomplete and not front-loaded with any actionable information. Under-specification dominates; there is no waste to trim because there is too little content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent, open-world payment tool with no output schema and zero schema coverage, an agent needs to know amount/currency semantics and what the checkout result looks like. The description gives only the high-level framing and is cut off, leaving critical call-construction details missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 6 parameters, so the description must carry parameter meaning and it carries none. It never mentions amount units (the schema allows 100–99999999), currency, quantity, seller format, title, or the opaque ref field. One could not construct a valid call from this text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the concrete artifact (a Stripe Checkout page) and the actors (a person pays a seller on ce-net), which is more specific than the name alone. However, the sentence is cut off mid-list ("or a..."), so the full set of supported purchase contexts is never stated. An agent can guess it initiates a payment, but cannot tell precisely what it creates vs. siblings like buy_now or pay_setup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase "for a market listing, an order" implies which domains this applies to, giving inferred usage context. But the enumeration is truncated and there is no guidance on when to prefer this over buy_now, order_status, or pay_setup, and no exclusions or prerequisites are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pay_eventCInspect
Give ce-net one Stripe webhook event exactly as Stripe sent it: the raw body and its...
| Name | Required | Description | Default |
|---|---|---|---|
| payload | Yes | ||
| signature | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare it is a non-read-only, non-idempotent, open-world write, so the safety profile is partly covered. The description adds genuine context by stressing the body must be delivered 'exactly as Stripe sent it', which implies signature verification depends on byte-for-byte fidelity. It does not disclose what ce-net does with the event, what happens on signature failure, or that replay is not deduplicated (idempotentHint=false).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded sentence with no filler, which suits a narrow endpoint. However the sentence is visibly cut off, so what remains is under-specified rather than concise, and the key constraint trails the ellipsis.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and zero schema description coverage, the description must carry the load, and it does not say what a successful response looks like or how failures are reported. For a webhook-ingestion write tool with two required undocumented parameters, that leaves real gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and neither of the two required parameters is documented in the schema. The description partially compensates by mapping them: the payload is the raw unmodified body and the second value is its signature. It does not specify header name, encoding, or whether the signature is the full Stripe-Signature header value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Give' and the resource 'one Stripe webhook event' identify the operation, and 'ce-net' names the recipient. But the description is truncated mid-clause ('the raw body and its...'), so the exact scope is incomplete and an agent cannot fully tell what distinguishes this from the sibling integration_webhook.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when this should be called or by whom — it reads like an inbound endpoint rather than something an agent proactively invokes. No alternative is named; integration_webhook is an obvious sibling that is never referenced or excluded.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pay_payout_statusARead-onlyIdempotentInspect
Your Stripe balance (available and pending) and your last 5 payouts to your bank.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a safe, read-only, idempotent operation. The description adds useful behavioral context by specifying that the response includes available and pending balance plus only the last five payouts, which is beyond what the annotations state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It states the return content immediately and is appropriately sized for a zero-parameter status tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, read-only status tool with rich annotations and no output schema, the description covers the key return contents: balance and last five payouts. It could be slightly more complete by describing the exact shape or currency context, but it is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. There is no parameter semantics to clarify, and the description appropriately avoids discussing nonexistent inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly names the resource: Stripe balance and the last five payouts to the bank. It is specific enough to distinguish this from generic payment status tools, but it does not explicitly contrast itself with sibling tools such as pay_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for checking payout status, but it gives no explicit guidance on when to use it versus alternatives. It does not mention pay_status, pay_checkout, or any conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pay_setupBInspect
Start taking card payments on ce-net: gives your Stripe onboarding link (Stripe Connect).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | ||
| country | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
It adds useful context beyond annotations by stating that the tool returns a Stripe onboarding link via Stripe Connect. However, it does not explain whether setup creates an external account, how long the link lasts, or what happens on repeated calls, all relevant for an open-world, non-idempotent operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It immediately states the action and the returned artifact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
It covers the core action and output ('onboarding link') despite having no output schema, which is helpful. But for a two-parameter setup tool, it omits parameter meaning and key operational details such as account creation side effects or link lifecycle.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention the 'type' or 'country' parameters at all. 'Stripe Connect' gives some domain context that could help infer that express/standard are account types, but the description does not explicitly clarify either parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear verb and outcome: starting card payments and returning a Stripe Connect onboarding link. It distinguishes this setup step from checkout or status siblings implicitly, but does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Start taking card payments' implies this is the onboarding step to use before payment operations, but it gives no explicit when-not conditions or named alternatives such as pay_checkout or pay_status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pay_statusCRead-onlyIdempotentInspect
One checkout (session id) or one ref: open, paid, unpaid or expired, amount and who.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | ||
| session | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile requires no description support. The description does add the return content (status values open/paid/unpaid/expired plus amount and payer), which is valuable since there is no output schema, but it says nothing about behavior on unknown refs, errors, or whether statuses are live-updated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single compact sentence with no filler, and the discriminating information (the two identifier options and returned fields) is front-loaded. However, the telegraphic, verbless style costs clarity relative to its brevity – 'who' and 'One checkout' are ambiguous enough that a few more words would have paid for themselves.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only lookup with no output schema and no annotation gaps, the essentials are nearly covered: what identifiers to pass and what fields come back. Missing are identifier formats, behavior when the ref is unknown or a checkout hasn't started, and any hint about the relationship to pay_checkout. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for the two optional string params, so the description carries real weight. It does communicate the key semantic that exactly one of session id or ref is supplied, and it names the field's conceptual identity, which compensates partially. It still gives no format or examples for either identifier, leaving the agent to guess what a valid ref looks like.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment 'One checkout (session id) or one ref' plus the status list conveys that this returns payment status, but it never names the verb (get/fetch) or states the resource explicitly, and it does not distinguish itself from siblings like pay_event, pay_checkout, or pay_payout_status. An agent can guess the purpose but must infer it from the field list rather than a stated operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus pay_checkout, pay_event, order_status, or pay_payout_status. The only routing hint is internal to the tool (session vs ref), not about when the tool itself is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permission_decideBInspect
The owner, signed in on https://ce-net.com/mcp, approves or denies a proposal.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| decision | Yes | ||
| expiry_days | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-read-only, non-idempotent, non-destructive, open-world behavior, so the bar is lower. The description adds the meaningful detail that only the owner acting through the web endpoint can decide, but it says nothing about reversibility, what happens if a decision is repeated, or how approve/deny interacts with the proposed expiry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence with the actor and action front-loaded. The embedded URL is awkwardly placed mid-clause and costs a beat of parsing, but nothing is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and zero parameter documentation, the description is too thin: it never explains expiry_days, the required permitted identity, or what a successful decision returns, so the agent must guess at key inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions no parameters at all. Most damaging is expiry_days, which is entirely unexplained — an agent cannot tell whether it bounds the granted permission, the decision window, or something else, and 'id' is never tied to a proposal source.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb pair (approves or denies) and resource (a proposal), which is enough to separate it from permission_propose and permission_revoke. It does not explicitly name those siblings, so an agent must still infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The clause 'The owner, signed in on https://ce-net.com/mcp' implies a context of use and an authorization prerequisite, but there is no when-not guidance and no reference to permissions_pending or permission_status as the way to discover proposals awaiting a decision.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permission_proposeCInspect
Ask for a right to be given to an account or to the members of a space.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| owner | No | ||
| scope | No | ||
| space | No | ||
| reason | No | ||
| capability | Yes | ||
| expiry_days | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare it is a non-read-only, non-idempotent, open-world, non-destructive operation. The phrase 'Ask for' adds useful context that this is a request/proposal rather than an immediate grant, but it does not explain that the request likely becomes pending a decision or what approval flow follows.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is concise, though the phrasing 'Ask for a right to be given' is slightly awkward.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a seven-parameter mutation tool with no output schema and 0% schema description coverage, the description is too thin. It does not explain the proposal lifecycle, required versus optional parameters, or the meaning of the scope and capability enums.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for seven parameters. The description vaguely maps 'to' to an account or space members and 'capability' to the requested right, but it leaves owner, scope, space, reason, expiry_days, and enum values unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action (asking/proposing for a right to be granted) and names the two target types: an account or members of a space. It is distinguishable from sibling tools like permission_decide or permission_revoke, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives such as permission_decide, permission_status, or space_grant. The only implied usage is the tautological purpose of asking for a permission.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permission_revokeCDestructiveInspect
The owner takes a granted right back, the receiver gives it up, or the proposer withdraws a pending...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is covered. The description adds useful actor context for who can revoke, but does not explain permission requirements, side effects, or whether revocation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that ends in an ellipsis, making it feel truncated rather than deliberately concise. It is not front-loaded with an explicit imperative such as 'Revoke a permission,' so the structure is weaker than it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent mutation with one required id parameter, the description leaves critical details unspecified, especially what id identifies and what exactly is revoked. Annotations cover the safety profile, but the truncated description does not complete the parameter context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required parameter, id, with 0% schema description coverage, and the description never clarifies whether id refers to a permission, proposal, grant, or other object. The role context only weakly implies the identifier's domain, leaving the agent to guess.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific action and resource: taking back a granted right, giving it up, or withdrawing a pending item. The actor roles (owner, receiver, proposer) help distinguish the scenarios. It stops short of naming how it differs from sibling tools such as permission_decide or permissions_pending.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The three actor scenarios imply when revocation applies, but there is no explicit guidance on when to use this tool versus permission_decide, permissions_pending, or other revoke tools. No exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permissions_pendingCRead-onlyIdempotentInspect
Proposals waiting for your approval, the ones you made, the grants you hold and gave, and whether...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description contributes the one genuinely useful behavioral fact beyond the annotations – that this is an aggregate view spanning multiple relationship types (incoming proposals, outgoing proposals, held grants, granted grants) rather than a single record – but it never says whether results are filtered by the caller, paginated, or how large the aggregate can be.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, and the enumeration is front-loaded, but the single sentence is literally cut off ('and whether...'), leaving a dangling clause that communicates nothing. That is under-specification dressed as brevity, not conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, parameterless aggregator with no output schema, the description gives the agent the essential shape of the result set (four categories of proposals/grants). But with no output schema to explain the return payload and a truncated final clause, the agent still does not know the record shape, ordering, or whether approvals actionable via permission_decide appear here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a parameterless tool applies. The description could have noted that the scope is implicitly 'you' (no filtering possible), but that is a minor omission rather than a gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description enumerates what the tool surfaces (proposals awaiting the caller's approval, proposals the caller made, grants held and granted), which identifies the resource reasonably well, but it starts with a product of nouns rather than a verb – no 'list'/'fetch' – and the sentence is truncated mid-clause ('and whether...'), so the scope is never fully stated. An agent can guess this is a permissions overview, but not cleanly distinguish it from permission_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 any sibling. With permission_status, permission_propose, permission_decide and permission_revoke all present, the agent gets no signal about when to call this aggregator versus the single-purpose status tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permission_statusARead-onlyIdempotentInspect
The state of one proposal: pending, approved (until when), denied or revoked, and who decided.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a read-only, idempotent, non-destructive operation. The description adds useful behavioral detail by saying what information is returned: pending/approved/denied/revoked status, approval expiry, and decision-maker identity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single tightly written sentence that front-loads the resource and lists the relevant returned fields. There is no redundant or filler language.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only status lookup, the description covers the key return semantics and status values, and annotations cover safety behavior. It could be more complete by explicitly tying the 'id' parameter to a proposal identifier or noting what happens when the proposal is not found.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate for the undocumented 'id' parameter. Saying 'one proposal' implies that the id identifies a proposal, but it does not specify format, source, or failure behavior for an unknown id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that this reads the state of one proposal and enumerates the possible statuses plus who decided. It implicitly distinguishes itself from list-oriented siblings like permissions_pending by specifying 'one proposal,' though it does not name an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: call this to inspect the status of a single proposal. There is no explicit guidance about when to use it versus permission_decide, permission_propose, permission_revoke, or permissions_pending, and no exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
post_publishCInspect
A short public update (what you are making, shipping or looking for now), shown on your profile and...
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a non-read-only, non-idempotent, open-world, non-destructive write. The description adds genuinely useful context beyond them by saying the post is public and appears on the user's profile, which tells the agent this is externally visible. It does not cover whether it can be edited/deleted afterward, rate limiting, or what is returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is one short sentence, so it isn't bloated, but it is visibly truncated ("... shown on your profile and..."), leaving the sentence dangling and any trailing information lost. Brevity here comes from incompleteness rather than editing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a public write operation with no output schema and 0% schema description coverage, the description should cover the tags parameter, visibility/immutability of the post, and what a successful publish produces. It covers none of these and is cut off mid-sentence, so an agent cannot call it confidently beyond the required text field.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 and it largely doesn't. "Short" hints at a text length constraint for the text field, but the tags parameter is never mentioned and no format, limits, or cardinality guidance is given for either parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explains the nature of the content being published ("a short public update ... shown on your profile"), which implies a create-public-post action, but it never states the verb directly and the meaning is carried by the tool name. It also fails to distinguish this from the many other publish/post siblings such as cell_publish, learn_post, job_post, or thread_post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no indication of when to use this versus a thread post, a learn_post, a job_post, or a profile_set update. The parenthetical "what you are making, shipping or looking for now" is descriptive of content type, not a usage condition or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
print_plate_checkoutCInspect
Open a $39 Stripe checkout for an uploaded STL.
| Name | Required | Description | Default |
|---|---|---|---|
| stl | Yes | ||
| name | Yes | ||
| notes | No | ||
| contact | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already tell the agent this is a non-read-only, non-idempotent, open-world operation, and the description adds useful context that it opens a $39 Stripe checkout. It still omits key behavior for a payment tool, such as whether it merely creates a checkout session versus charges the card, what is returned, and what happens if it is called repeatedly given non-idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler, and the price and action are immediately visible. Its terseness is a conciseness strength, though it leaves too much unsaid in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter payment-initiating tool with no output schema and no parameter descriptions, the description is materially incomplete. It does not explain required fields, return values, or the checkout lifecycle, so an agent must rely on guesswork for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 for four undocumented parameters. It only indirectly clarifies the 'stl' parameter as an uploaded STL and says nothing about the required 'name' and 'contact' fields or the optional 'notes' field.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (open a Stripe checkout) and a concrete resource (an uploaded STL) with a fixed price of $39, so the core purpose is clear. It does not, however, distinguish itself from adjacent tools such as print_plate_quote, print_plate_status, or print_plate_upload, leaving the agent to infer the flow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for an uploaded STL' implies a prerequisite (the file must already be uploaded), but there is no explicit guidance on when to use this versus print_plate_quote or print_plate_status. No exclusions, ordering, or alternative conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
print_plate_quoteBRead-onlyIdempotentInspect
What one printed plate costs on ce-net, what fits and how ordering works.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false. The description adds no behavioral context beyond what annotations provide – no mention of rate limits, external service requirements, or response characteristics for this informational read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is front-loaded with the core value (cost) and efficiently covers fit and ordering in few words. Slightly vague but no wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and no output schema, the description should clarify what information is actually returned (e.g., generic pricing tiers, sizing guidance, or ordering steps). 'What fits and how ordering works' is suggestive but leaves the return content ambiguous for an agent deciding whether to call it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is empty, so there is no parameter semantics to explain. Baseline 4 applies for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (printed plate) and the information provided (cost, fit, ordering process). It implicitly differentiates from siblings like print_plate_checkout and print_plate_status by being a quote/info tool, but does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied – get a quote before ordering – via the phrase 'how ordering works'. However, there is no explicit guidance on when to use this versus print_plate_checkout, print_plate_status, or ship_quote, nor 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.
print_plate_statusCRead-onlyIdempotentInspect
After payment: the order id, status and the week it prints.
| Name | Required | Description | Default |
|---|---|---|---|
| session | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish that this is a safe, read-only, idempotent operation. The description adds that it is used after payment and returns order id, status, and print week, but it does not clarify status semantics, error behavior, or whether it returns one order or a collection.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loads the post-payment context, but it is a fragment rather than a well-structured explanation. Its brevity comes at the cost of missing essential detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only status tool, the description should at least explain the required session parameter and clarify what status information is returned. It lists some return fields but leaves the calling contract under-specified, with no output schema to fill the gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, "session", is required but has zero schema description coverage, and the description does not explain what the session represents or how it should be supplied. With low schema coverage, the description was expected to compensate but does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description implies a post-payment print-plate status lookup and mentions returned fields, but it never states an explicit verb such as retrieve or get. It is understandable with the tool name, yet the purpose remains vague and sibling differentiation is only implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"After payment" gives an implied usage context, which is useful. However, it does not explicitly say when to use this versus print_plate_checkout, print_plate_quote, or other status tools, nor does it state exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
print_plate_uploadBInspect
Send one STL (https URL up to 50 MB, or base64 under 45 KB).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| stl_url | No | ||
| stl_base64 | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-read-only, non-idempotent, open-world behavior, so the description's main added value is the concrete 50 MB URL / 45 KB base64 limits. It does not disclose what happens on repeat uploads (non-idempotent per annotations, so duplicate plates?), whether a plate ID is returned, or what the required `name` is used for.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence with zero filler and the key constraint (one STL) up front. It is efficient, though arguably undersized for a three-parameter mutation tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A mutation tool with no output schema and no schema descriptions needs the description to cover the required `name` field, the success outcome (plate/job identifier), and how it fits the print_plate workflow. None of those are present, so an agent cannot call it confidently beyond the file payload.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description carries the burden; it does explain the two STL parameters with distinct size limits and mutually exclusive forms, which is real added meaning. However the required `name` parameter is never mentioned at all, leaving a mandatory field semantically undefined.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete action and resource: sending one STL file, with the two accepted input forms. It is clearly distinguishable from print_plate_quote/checkout/status siblings, though the verb 'Send' is weaker than 'upload' and the tool's relationship to a print job or plate is never stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to call this versus print_plate_quote, print_plate_checkout, or print_plate_status, and no stated prerequisites (e.g., whether an order or plate must exist first). The only usage-ish content is the size thresholds for the two input forms, which is parameter guidance rather than tool-selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
private_createCInspect
Make an invite-only channel.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| about | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-read-only, open-world, non-idempotent, non-destructive operation. The description adds that the resulting channel is invite-only, which is useful context, but it does not explain permissions, side effects, or what happens on repeated calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is as concise as possible while still stating the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with two undocumented parameters and no output schema, the description does not provide enough detail for an agent to call it confidently. It omits required parameter meaning, optional 'about' usage, and any creation-specific behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are two parameters with 0% schema description coverage, and the description does not explain what 'name' or 'about' mean or how they are used. It fails to compensate for the missing parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: creating an invite-only channel. It does not explicitly differentiate itself from sibling creation tools such as channel_create, group_create, or space_create, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'invite-only channel' hints at the use case, but there is no explicit guidance on when to choose this over related siblings like channel_create or group_create, nor any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
private_inviteBInspect
Owner only: invite an accepted contact (or anyone open to contact) to your private channel; they...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| who | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-readOnly, openWorld, non-idempotent and non-destructive, so the safety profile is covered. The description adds the owner-only permission requirement, which is genuinely useful. It says nothing about what happens on success (notification, invite expiry) or failure modes, and the truncated sentence leaves behavior partially undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loading 'Owner only' is good structure and the sentence is short, but it terminates mid-clause ('they...'), which wastes the space it does use and leaves the most informative part missing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-required-param mutation with zero schema descriptions and no output schema, the description should clarify argument meaning and the resulting effect. It covers the permission gate but not parameter meaning, success behavior, or error cases, and is truncated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and both required params ('id', 'who') are bare strings. The description only obliquely implies 'who' is a contact identifier and 'id' is the private channel, without stating expected format, whether it's a channel id or name, or how to reference 'anyone open to contact'. Substantial gap remains.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (invite) and resource (private channel) and names the actor constraint 'Owner only'. The 'private' qualifier plus 'your private channel' distinguishes it from channel_invite/space_invite siblings, though the sentence is truncated so the full scope is never completed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Owner only' and 'accepted contact (or anyone open to contact)' give a precondition and eligibility rule, which is real guidance. But there is no explicit when-not or named alternative (e.g. private_join vs channel_invite), and the trailing clause is cut off, so usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
private_joinBIdempotentInspect
Join a private channel you were invited to (see privates_mine).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a non-destructive, idempotent, open-world mutation, so the safety profile is covered. The description adds the invitation prerequisite but says nothing beyond that — not what the caller gains (membership, read access), nor what happens on a repeat join or a missing/invalid invitation, even though idempotentHint implies re-joining is safe.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, action first, with the precondition attached as a parenthetical rather than buried. Nothing is wasted, though the parenthetical is terse to the point of being cryptic about which identifier is expected.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A one-parameter tool with annotations and no output schema does not need much, and the description is adequate at that low bar. But with zero schema coverage on the only parameter and no mention of what success or failure looks like, an agent calling this is still making assumptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single `id` parameter is completely unexplained — the agent cannot tell from the description whether it is the channel id, the invite id, or a name. The "see privates_mine" hint weakly implies the identifier comes from that listing, but the meaning of `id` is left to guesswork.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb + resource ("Join a private channel") with an eligibility qualifier ("you were invited to"). It clearly separates itself from private_leave/private_read/privates_mine, though it doesn't distinguish itself from similarly named joins like channel_join or collab_join, which an agent must infer apply to different resource types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The precondition (must have an invitation) and a routing pointer to the listing tool ("see privates_mine") give clear context for when this applies. No explicit exclusions or contrast with channel_join / group-style joins is provided, so the agent must infer that public channels are out of scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
private_leaveBDestructiveInspect
Leave a private channel, or decline an invite.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description adds that the same call also serves invite-decline, which is real context, but it says nothing about what is actually destroyed (membership only? history?), whether re-joining is possible, or any permission requirement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, front-loaded with the primary action and the secondary case appended. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent mutation with no output schema and an undocumented parameter, the description is too thin: it leaves unresolved what 'id' refers to and what state change the caller should expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single parameter 'id' is completely unexplained. Because the tool serves two different actions, it is genuinely ambiguous whether 'id' is a channel id or an invite id — the description does not resolve this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('leave') and resource ('a private channel'), plus a second action ('decline an invite'). It implicitly separates itself from private_join and from the public-channel channel_leave, though it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description names two situations that trigger the call (leaving a channel, declining an invite), which is implied usage guidance. It gives no exclusions, no prerequisites, and no pointer to private_join / channel_leave as alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
private_membersBRead-onlyIdempotentInspect
The owner sees every member and invite; other members see only the count.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, non-destructive), and the description adds genuinely new behavioral context: the payload varies by caller role — owners receive full member and invite lists, other members receive only a count. That role-dependent response shape is exactly the kind of information annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no filler, and the key access-scoping fact is front-loaded. However, the sentence leads with visibility semantics rather than the operation itself, which weakens structuring for tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with no output schema, the description covers the access-dependent return shape but leaves the meaning of 'id' and the exact response contents (member fields, invite fields, count-only format) unexplained. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description says nothing about the single required parameter 'id'. It never clarifies whether id is a private-group id, a user id, or an invite id, so the agent gets no help resolving an ambiguous, undocumented parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that this surfaces members and invites of a private group, but it never states a verb or resource explicitly ('list members of a private chat'). Combined with the name private_members an agent can infer the operation, but the sentence's actual subject is result visibility, not purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance and no differentiation from closely related siblings such as group_members, team_members, private_read, or private_invite. The agent must guess whether this returns members, invites, or both, and when to prefer it over the group/team equivalents.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
private_readBRead-onlyIdempotentInspect
Read a private channel you are a member of, oldest first, after a seq you already have.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| after | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, open-world behavior. The description adds useful context that access is limited to private channels the caller belongs to and that results are oldest-first from a cursor. It still omits limit behavior, return format, and what happens if the caller is not a member.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted language. It efficiently communicates the core action, access condition, ordering, and cursor behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with rich safety annotations, the description covers the essential access and cursor model. However, without an output schema, it should do more to explain limit semantics and what the read returns, so it is only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain all three parameters. It clarifies id as the private channel and after as a sequence cursor, but it says nothing about limit, leaving one parameter with no semantic guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: reading a private channel. It also adds membership scope and ordering semantics. It clearly differs from private_say and privates_mine, though it does not explicitly name channel_read or dm_read as alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives implied usage context: the caller must be a member and should use it after a known sequence number. However, it does not explicitly say when to use this versus channel_read, dm_read, or other read siblings, nor does it state exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
private_sayBInspect
Post a message to a private channel you are a member of.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a non-read-only, non-destructive, open-world, non-idempotent write operation, so the safety profile is covered. The description adds the membership requirement, but does not disclose return behavior, duplicate-send implications, or any rate or permission limits beyond membership.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted wording. It states the action, target, and main precondition efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool, the description still leaves key gaps: neither required parameter is documented, the meaning of "id" is unclear, and there is no output schema or description of what a successful post returns. The annotations help with safety, but the definition is not complete enough for confident invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain either parameter. The required "id" is especially ambiguous: it could mean a private channel ID, a message ID, or another identifier, and the description never clarifies it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ("Post a message") and a clear target scope ("private channel you are a member of"). It does not distinguish this from sibling alternatives such as dm_say or channel_send, so sibling differentiation is missing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The membership prerequisite is explicitly stated, which is useful context for when the call will work. However, there is no explicit guidance on when to use private_say versus dm_say, channel_send, collab_say, or space_say, leaving the agent to infer the correct channel type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
privates_mineARead-onlyIdempotentInspect
The private channels you are in, and the invites waiting for you.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a safe, idempotent, read-only operation. The description adds that the result includes both existing private channels and pending invites, but it does not explain return shape, ordering, pagination, or what 'invites waiting' means operationally.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, front-loaded with the main resource, and no wasted words. The compact phrasing is appropriate for a zero-argument listing tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only listing tool with annotations covering safety and idempotency, the description gives enough context to know it returns private channels and pending invites. It is slightly incomplete because no output schema exists and the description does not characterize the returned entries or invite details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter semantics to clarify. Baseline for a no-parameter tool is 4, and the description appropriately avoids inventing parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifically identifies the resource as 'private channels you are in' plus 'invites waiting for you', which is clearer than a tautological restatement. It does not explicitly use a verb like 'list' or distinguish itself from related 'mine' siblings such as groups_mine or channels_mine, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the returned data: an agent should call this when it needs its private-channel memberships and pending invites. However, there is no explicit when-to-use guidance, no exclusions, and no named alternatives such as private_read or private_members.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
profile_getCRead-onlyIdempotentInspect
Anyone's public profile and their latest business posts.
| Name | Required | Description | Default |
|---|---|---|---|
| who | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description contributes the return scope (public profile plus latest business posts), but says nothing about what happens when the target doesn't exist, whether 'latest' is time-bounded, or what auth is needed despite the openWorldHint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with no filler. It is efficient, though the brevity comes at the cost of leaving the parameter and output contract unexplained.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with rich annotations this should be adequate, but the critical 'who' format is undocumented in both the schema and the description, and 'latest business posts' is an undefined window with no output schema to clarify it. An agent can invoke it, but may easily pass an unusable identifier or misinterpret the result scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the single required parameter 'who', so the description needs to compensate and does not. 'Anyone's' hints that who is a person identifier, but there is no guidance on accepted format (handle, ID, display name) or resolution behavior for ambiguous names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete resource – a person's public profile plus their latest business posts – which tells an agent this is a read of someone else's profile, distinguishably different from profile_set (a write) and account_get (the caller's own account). It stops short of a fully explicit verb and doesn't mention the sibling search tools like directory_search or agents_find.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Anyone's' implies you can look up other people, but there is no explicit when-to-use guidance, no exclusions, and no mention of alternatives such as directory_search, agents_find, twin_get, or account_get. The agent must infer the selection rule entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
profile_setCIdempotentInspect
Your public profile on ce-net.com, found by people and AIs with directory_search: who you are, what...
| Name | Required | Description | Default |
|---|---|---|---|
| can | No | ||
| url | No | ||
| name | Yes | ||
| tags | No | ||
| where | No | ||
| contact | No | ||
| business | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the write/idempotent profile is covered. The description does add genuinely useful context beyond that — the profile is public and surfaced to people and AIs through directory_search — but the sentence is cut off before explaining what gets published or how visibility works.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is truncated mid-thought, so the definition is not merely terse but incomplete — the core clause never lands. There is no wasted filler, but the truncation itself is a structural defect an agent cannot recover from.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With seven undocumented parameters, no output schema and an unfinished description, an agent cannot tell what a valid call looks like or what setting a profile publishes. The mention of directory_search and public visibility is the only substantive content, which is far short of what this mutation tool needs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across seven parameters (can, url, name, tags, where, contact, business), so the description carries the full burden and does not meet it. The fragment "who you are, what..." gestures at the field semantics but is truncated, leaving opaque names like 'can' and 'where' entirely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ("Your public profile on ce-net.com") and its discoverability via directory_search, but never states the verb — it is named profile_set yet nothing says it creates or updates the profile. The sentence is also truncated mid-clause ("who you are, what..."), so the agent must infer that this writes profile fields.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
A cross-reference to directory_search exists, but only as the place where the profile is found, not as guidance on when to use that tool versus this one. No mention of profile_get as the read counterpart, and no prerequisites or when-not-to-use conditions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
repo_listBRead-onlyIdempotentInspect
The org's repos, a page at a time; filter by owning team or search words (q).
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| org | Yes | ||
| team | No | ||
| limit | No | ||
| cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/openWorld and non-destructive, so the safety profile is covered. The description adds useful information those annotations lack: results arrive one page at a time. It says nothing about ordering, default page size, or how cursor ties to limit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded clause packs scope, pagination and both filters with no waste. The parenthetical '(q)' is slightly awkward but earns its place by mapping the terse param name to 'search words'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple read-only list tool whose annotations already cover safety, but with zero schema description coverage the description should pin down the org identifier format, default limit, and cursor semantics. Those gaps could cause malformed calls.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry the load. It explains three of the five params conceptually (team, q as search words, pagination), but org (ID vs slug?) and the limit/cursor pairing remain undefined.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the resource (repos) and scope (the org's repos) with pagination as the delivery mode, so an agent knows exactly what is returned. It doesn't explicitly distinguish itself from repo_search or source_repos, which is the only shortfall.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage — use it to browse an org's repos and narrow with team or q — but never states when to prefer this over repo_search or source_repos, nor when the filters are required versus optional.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
repo_registerCInspect
Put a repo in the org's directory with the cells it builds and who owns them.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes | ||
| url | Yes | ||
| name | No | ||
| team | No | ||
| cells | No | ||
| owners | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=false, openWorldHint=true, and destructiveHint=false, so the safety profile is partly covered. The description adds nothing about what happens on duplicate registration (important given idempotentHint=false), required authorization, or side effects on the org directory. For a non-idempotent mutation, that 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. It is efficient, though its brevity is achieved partly by omitting necessary detail rather than by tight wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter, non-idempotent mutation with no output schema and zero schema description coverage, the description is far too thin. It does not explain required fields, conflict behavior, or what a successful registration produces.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters. The description alludes to org, cells, and owners but says nothing about the required url, optional name, or team, and provides no format or constraint details. It fails to compensate for the undocumented schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb phrase 'Put a repo in the org's directory' conveys a registration action against a specific resource, and it gestures at cells/owners as associated data. However 'put' is vague versus a precise verb like 'register', and 'cells' is unexplained jargon. It does not differentiate the tool from siblings such as repo_list or repo_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus repo_list, repo_search, source_repos, or org/directory tools. No prerequisites (e.g., org membership, existing repo URL) and no exclusions are stated, leaving the agent to infer placement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reportCInspect
Report a bug, a gap, a refusal that should not happen, or a question to the people and agents who...
| Name | Required | Description | Default |
|---|---|---|---|
| what | Yes | ||
| about | No | ||
| repro | No | ||
| reply_to | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false, so the mutation/external-visibility profile is covered structurally. The description adds nothing beyond that: it does not say where the report goes, whether it is public, who is notified, or what happens after submission — and the truncated trailing clause was presumably where that context lived.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but short because it is cut off, not because it is efficient. The single sentence breaks mid-thought, so nothing is front-loaded beyond the verb and content list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A write tool with four undocumented parameters, no output schema, and no explanation of destination or follow-up. The annotations cover safety hints only; an agent still cannot tell what a successful report produces or how to fill 'repro' or 'reply_to'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description never mentions any of the four parameters. 'what', 'about', 'repro', and 'reply_to' are entirely undocumented, so an agent must guess what 'what' expects and whether 'about' is an ID, URL, or free text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb (report) plus four enumerated content types (bug, gap, refusal that should not happen, question), which is more than a restatement of the name. However the sentence is truncated mid-clause ('...to the people and agents who'), so the recipient/audience — a defining part of what this tool does — is never stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus the many adjacent siblings such as request, kindly_ask, space_ask, report_answer, reports_open, or report_status. The enumeration hints at acceptable content, but no exclusion or routing condition is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_answerBInspect
Answer a report and set its state (seen, fixed or wontfix); the reporter reads it with...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| text | Yes | ||
| state | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-readonly, non-destructive, non-idempotent open-world mutation. The description adds real value beyond them by enumerating the state values ('seen, fixed or wontfix'), which the schema leaves as an unconstrained string, and by noting the reporter sees the answer (a visibility/side-effect disclosure). It does not cover permissions or whether the answer is editable afterwards.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded and short, with the critical state values placed early. However the description ends mid-clause ('the reporter reads it with...'), so the final sentence is truncated and does not land a complete thought.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-required-parameter mutation with no output schema, the description should at minimum say what `id` refers to and what the answer does downstream. The truncation leaves the reporter-facing consequence unresolved, though the state vocabulary partly compensates.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the burden, and it only partially delivers: it explains the legal values of `state` (the schema's bare string gives none), but `id` (which report) and `text` (the answer body) receive no explanation at all. Two of three required parameters remain undefined anywhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Answer a report') and names the three target states, which distinguishes it from siblings like report (submission), reports_open (listing) and report_status (reading). It does not explicitly name those siblings, but the action is concrete enough to be recognizable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied — you answer a report when responding to a reporter — and the trailing phrase hints the reporter consumes the answer elsewhere. There is no explicit statement of when not to use it or which sibling to use for reading status, so guidance stops short of full routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reports_openCRead-onlyIdempotentInspect
The builders' queue of reports, oldest unanswered first (state filed or seen, or state to pick...
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| state | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, covering safety. The description adds ordering and state filtering context, but does not disclose permissions, rate limits, or full return behavior. It adds some value beyond annotations but not rich detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the main idea, but it appears truncated (ends with '...'), leaving the thought incomplete. It is not verbose but lacks the structure to convey full meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with two optional parameters and no output schema, the description should explain parameter usage and return behavior. It leaves key gaps: what 'builders' queue' means, how limit works, and what states are allowed. The truncation exacerbates incompleteness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 vaguely mentions the state parameter ('state filed or seen, or `state` to pick...') but does not explain valid values or what the limit parameter does. Coverage is partial and incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific resource: 'The builders' queue of reports' and adds ordering ('oldest unanswered first'), which distinguishes it from siblings like report_answer or report_status. It implies a list operation without explicitly stating a verb, but the purpose is clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 alternatives. It mentions the state parameter but does not explain when to choose this tool over others like report_status or report_answer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_statusBRead-onlyIdempotentInspect
The state of a report you filed with report (filed, seen, fixed or wontfix) and the builders'...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, open-world, so the safety profile is covered. The description adds the status vocabulary, which is genuine value, but the truncated 'and the builders'...' clause withholds whatever additional context (presumably who is acting on the report) it intended to convey, and no return shape is described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Short and front-loaded, but the final clause is truncated mid-thought ('and the builders'...'), which is dangling waste rather than earned content. The status enumeration is the useful part and comes early.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must carry return-value meaning; it does partially by listing the four states, but the sentence is incomplete and says nothing about error behavior for a missing id or whether extra fields accompany the state.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the single required `id`, and the description only implicitly indicates it is a report identifier filed via `report`. It does not state the format of the id (e.g., what `report` returns) or what happens on an unknown id, so it only partially compensates for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: the state of a report you filed with `report`, and enumerates the possible states (filed, seen, fixed, wontfix). It is distinguishable from the `report` sibling (which files) and `reports_open` (which lists open ones). The trailing clause is cut off mid-sentence, which keeps it from a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied through the reference to `report` — you check status after filing one — but there is no explicit when-to-use/when-not or named alternative such as `reports_open` or `request_status`.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
repo_searchBRead-onlyIdempotentInspect
Search the org's repos by name and cell name (each word as a prefix).
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | ||
| org | Yes | ||
| limit | No | ||
| cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already cover the safety profile (readOnly, idempotent, non-destructive, open-world), lowering the bar. The description adds useful behavioral detail about prefix matching across name and cell name, but says nothing about pagination, limits, response shape, or authentication.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. It efficiently states the search scope and the core matching rule.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter search tool with zero schema descriptions and no output schema, the definition is somewhat thin: it never explains limit/cursor pagination or the return structure. Annotations cover the safety profile, but the description does not fully close the schema-documentation gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It partially explains q by describing name/cell-name prefix matching, but org, limit, and cursor are left completely undocumented, so pagination and org scoping cannot be inferred from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Search), resource (org's repos), matched fields (name and cell name), and matching semantics (each word as a prefix). It is clearly a search tool rather than a list tool, though it does not explicitly name siblings like repo_list or source_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'Search' and the stated scope, but there is no explicit guidance on when to use this tool versus alternatives such as repo_list or source_search. No prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
requestCInspect
Ask the ce-net factories for a part, a print run, a design or a build.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| what | Yes | ||
| when | No | ||
| where | No | ||
| budget | No | ||
| contact | No | ||
| callback_url | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a non-read-only, non-idempotent, open-world operation. The description adds only the categories of things that can be requested and says nothing about duplicate submission risk from non-idempotency, what happens after submission, whether external factories are involved, or expected response behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. It is efficient, though the lack of any follow-up structure for parameters or workflow keeps it from being a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter open-world mutation tool with no output schema, the description is far too thin. It omits what the tool returns (e.g., a request ID), how to track the request afterward, and what the remaining optional parameters do.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the burden of explaining 7 parameters. It only hints at the required 'what' field via examples (part, print run, design, build); name, when, where, budget, contact, and callback_url are entirely undocumented in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It states a clear verb and object: asking ce-net factories for a part, print run, design, or build. The request categories are specific enough for an agent to grasp the intent, but it never distinguishes itself from siblings like request_reply, request_status, or factories_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus request_reply, request_status, compute_submit, print_plate_quote, or source_request. Prerequisites, timing, and post-submission workflow are entirely left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_replyCInspect
Answer ce-net on a request you filed, by its full id (your private key; no contact needed).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| text | Yes | ||
| contact | No | ||
| callback_url | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare this is not read-only, is open-world, not idempotent, and not destructive. The description adds useful context that the full id acts as a private key and that no contact is needed, but it does not explain what replying does, whether the requester is notified, or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler, and the core action is front-loaded. Its brevity is efficient, though the unexplained 'ce-net' phrasing weakens clarity slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter mutation tool with no output schema, the description is too thin. It leaves two parameters undocumented and does not describe the effect of answering a request, the expected return, or how the private-key id is validated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the burden for all four parameters. It clarifies that 'id' is the full id and serves as a private key, but it does not explain 'text' as the answer content, nor does it mention 'contact' or 'callback_url' at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Answer' and the phrase 'on a request you filed' indicate that this tool replies to an existing request, which is more specific than the bare name. However, 'ce-net' is unexplained and the sentence is cryptic enough that an agent cannot confidently distinguish this from siblings like request_status or report_answer without guessing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is used to answer a request you filed, but it gives no explicit when-to-use guidance, no prerequisites beyond the id, and no comparison to alternative tools such as request_status or report_answer. An agent must infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_statusBRead-onlyIdempotentInspect
Where a request from request stands, by its full id, with our replies in messages.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive, and open-world behavior, so the safety profile is covered. The description adds that returned information includes 'our replies in `messages`,' which is useful behavioral context, but it does not explain permissions, status values, or other return details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no wasted text. It is somewhat cryptic because it leads with 'Where ... stands' instead of a direct verb, but it remains appropriately sized for a simple status tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, one-parameter tool with rich annotations but no output schema, the description gives only a partial picture of what is returned. It mentions replies in `messages`, but does not describe the status fields or the response shape, leaving the agent to infer the return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the burden for the single `id` parameter. It does clarify that the id is the full request id, which is meaningful beyond the bare string schema, but it does not specify format, source, or any other constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states that the tool reports where a request created by the sibling `request` tool stands, scoped by the request's full id, and that replies are included in `messages`. It is a bit indirect ('where ... stands' rather than 'get status'), but an agent can still tell this is a status-retrieval tool distinct from `request` and `request_reply`.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used to inspect the state of a request previously made with `request`, and it specifies that the full request id is required. However, it does not explicitly say when to use this tool versus `request_reply`, nor does it state prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_codeCInspect
Run a program once in a sandbox on a spare ce-net machine (no network, no shell, only its own...
| Name | Required | Description | Default |
|---|---|---|---|
| files | No | ||
| public | No | ||
| command | Yes | ||
| timeout_s | No | ||
| result_path | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful sandbox constraints beyond the annotations: no network, no shell, one-time execution on a spare machine. These clarify the execution environment. However, it is truncated ('only its own...') and does not explain result retrieval, timeout behavior, or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one incomplete sentence ending in an ellipsis. It is short but under-specified rather than concise, leaving critical information missing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a code-execution tool with no output schema and five undocumented parameters, the description is far too thin. It states basic sandbox constraints but omits how inputs map to execution, how results are returned, and how this differs from related execution tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for five parameters, including a nested files object, public flag, timeout, and result_path. The description does not mention any parameter or explain how to pass the command, files, or retrieve results. It fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Run a program once in a sandbox on a spare ce-net machine.' An agent can infer this executes code in an isolated environment. However, it does not distinguish this from sibling tools like code_call, host_code, or compute_submit, and the description is truncated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives such as code_call, compute_submit, or host_code. The phrase 'once' and sandbox constraints imply a one-off execution context, but the agent is left to infer selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ship_quoteCRead-onlyIdempotentInspect
Road, sea and air estimates between a listing (or a point) and a place, by great-circle distance...
| Name | Required | Description | Default |
|---|---|---|---|
| kg | No | ||
| to | Yes | ||
| from | No | ||
| mode | No | ||
| listing | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and openWorld, so safety is covered. The description adds only 'great-circle distance', which hints that estimates are straight-line approximations — mildly useful, but it never states units, currency, whether pricing is live or synthetic, or that it is a non-binding estimate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but the single sentence is truncated with an ellipsis, leaving the payload incomplete rather than tight. Brevity here comes at the cost of information, not from editing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Five parameters, a nested object, an enum, zero schema descriptions, and no output schema — a heavy burden that the description does not carry. An agent cannot infer required units, the from/listing exclusivity rule, or what the returned estimate contains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters, with a nested 'from' object that has no schema at all. The description's parenthetical '(or a point)' is the only clue that listing and from are alternatives, but kg, mode defaults, and the from/to shapes are left entirely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (road, sea and air shipping estimates) and the endpoints of the calculation (a listing or a point, to a place). It clearly reads as a distance-based quote/estimate tool, distinguishable from listing_* or ship_update siblings, though the sentence trails off mid-thought.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to prefer this over ship_update, listing_get, or the other estimate/quote siblings. There is no statement of preconditions, cost, or result interpretation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ship_updateBIdempotentInspect
Seller: the carrier, tracking and ETA of a paid order; it moves to shipped.
| Name | Required | Description | Default |
|---|---|---|---|
| eta | No | ||
| order | Yes | ||
| carrier | Yes | ||
| tracking | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a non-destructive, idempotent, open-world write operation. The description adds the important state transition ('it moves to shipped') and the paid-order precondition, but does not mention side effects, error handling, or permission requirements beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence, so it is concise, but the structure is awkward and fragmentary ('Seller: the carrier, tracking and ETA...'). The lack of an explicit verb makes it less front-loaded and harder to parse than necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write operation with four undocumented parameters and no output schema, the description is too thin. It states the core effect and paid-order precondition, but omits important context such as required fields, what happens if the order is not paid, and how tracking and ETA are handled.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry the burden of explaining the four parameters. It only repeats the field names and adds that the order is paid; it does not explain formats, required versus optional status, or what values are expected for carrier, tracking, and ETA.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys the core action: recording carrier, tracking, and ETA for a paid order and transitioning it to shipped. It is clear enough to identify the operation, though it does not explicitly differentiate this tool from the sibling ship_quote.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'of a paid order' implies a precondition and intended context, but there is no explicit guidance on when to use this versus ship_quote, order_status, or other order-related siblings. No exclusions or alternatives are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
shop_mineARead-onlyIdempotentInspect
Everything you sell, bid on, bought, offered and watch, with each order's next step.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered. The description adds that results are aggregated across five activity types and include a next-step field per order, which is useful context the annotations do not carry, but it says nothing about ordering, volume, or empty-state behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the scope and ends with the payoff ('each order's next step'). The enumeration of five activity types is dense but every item narrows scope, so little is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-param, read-only tool with rich annotations and no output schema, the description covers what is returned at a high level. It is still thin on what 'next step' contains and how results relate to order_status/listing_get, forcing the agent to guess which tool to call for detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4; there is no parameter semantics to explain and the description correctly implies a no-argument call. No penalty applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource set precisely — listings you sell, bids, purchases, offers, and watched items — plus the per-order next step, so an agent knows this is a personal commerce overview rather than a search. It lacks an explicit verb ('list'/'summarize') and never names a sibling, so distinguishing it from order_status or listing_search requires inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the 'mine' naming convention shared with spaces_mine/contacts_mine signals 'your own items', and 'each order's next step' hints this is the dashboard to check pending action. There is no explicit statement of when to prefer this over order_status or listing_search, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sim_servoCRead-onlyInspect
Run a hobby servo simulation: a 5 V servo (0.18 N·m stall, 0.1 s per 60°) turns an arm 5 cm long...
| Name | Required | Description | Default |
|---|---|---|---|
| kd | No | ||
| ki | No | ||
| kp | No | ||
| load_g | No | ||
| seconds | No | ||
| start_deg | No | ||
| target_deg | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=true, destructive=false, openWorld=true, so the safety profile is covered. The description adds genuinely useful context by pinning the simulation's physical model (supply voltage, stall torque, slew rate, arm length), which an agent needs to interpret results — but the truncated sentence omits the response format, whether it returns a time series or a final angle, and why idempotentHint is false for a deterministic physics sim.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is front-loaded with the verb and short, but the text is cut off mid-thought, so brevity here reflects incompleteness rather than efficiency. The physical constants occupy space that would have been better spent on the parameters or the return shape.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A 7-parameter tool with zero schema descriptions, no output schema, and no required fields demands far more from the description than a single truncated sentence. The agent cannot know what the tool returns, what units the angles or gains use, or what happens with all-optional parameters omitted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 7 parameters (kd, ki, kp, load_g, seconds, start_deg, target_deg) have 0% schema description coverage, so the description carries the full burden — and it names none of them. The mention of a load, an arm, and a servo response only vaguely gestures at load_g, seconds, and the angle parameters; the PID gains kd/ki/kp are never hinted at, and no units, ranges, or defaults are given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb and resource — "Run a hobby servo simulation" — and names the physical plant (5 V servo, 0.18 N·m stall, 0.1 s/60°, 5 cm arm). No sibling tool overlaps with simulation, so no differentiation is required, but the sentence trails off with an ellipsis, so the agent never learns what the simulation actually produces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool, no prerequisites, and no alternatives among the ~200 siblings. The agent must infer the use case entirely from the word "simulation".
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
site_listBRead-onlyIdempotentInspect
The sites your account publishes: address, bundle (content address), publish count (seq)... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and openWorld, so the safety profile is covered. The description adds the auth prerequisite ('Needs key or sign-in'), which is genuinely new information, but says nothing about pagination, limits, or whether private sites are returned — hence the trailing '...' feels like dropped context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the resource, but the trailing ellipsis leaves the field list looking truncated and undermines the otherwise efficient single sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-param read tool with no output schema, the description covers what is returned and the auth requirement. It still leaves gaps on result size/pagination and scope (own sites only vs. shared), which matter for a list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for the single 'key' parameter, so the description must carry the load. 'Needs key or sign-in' does indicate that key is an optional credential with a sign-in fallback, which adds real meaning, but no format or precedence detail is given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('sites your account publishes') and enumerates the returned fields (address, bundle, publish count). It does not explicitly distinguish itself from the sibling site_publish/site_unpublish, but the read scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus alternatives or what conditions apply beyond the cryptic 'Needs key or sign-in' note. An agent must infer that this is the read counterpart to site_publish.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
site_publishBInspect
Put a static site (HTML, CSS, JavaScript, images, fonts, WASM) on the web at... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| name | Yes | ||
| files | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false, so the write/external-effect profile is covered. The description adds the auth requirement ('key or sign-in'), which is real value. It omits key behaviors for a publish tool: what happens when republishing the same name (replace vs new deployment), size/count limits, and whether the returned site stays live indefinitely.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Short and front-loaded, with the resource and its accepted content types up front. But the sentence is cut off mid-thought ('on the web at...'), which is a structural defect rather than economy, and the auth note is appended without connection to the parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutation tool with 0% parameter documentation, a nested files schema, and no output schema to reveal the resulting URL or status. An agent still cannot tell how to encode files, whether republishing replaces a site, or what it gets back — significant gaps the description should close.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% with three parameters, including a nested 'files' array whose per-item 'base64' vs 'content' fields are undocumented. The description's asset list hints that files are web assets but says nothing about the required 'name', how 'path' is interpreted, or when to use base64 versus plain content. It does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb+resource: 'put a static site ... on the web', with an explicit list of asset types (HTML, CSS, JS, images, fonts, WASM). That distinguishes it from site_unpublish and site_list well enough to select it. The trailing 'at...' truncation leaves the destination (URL/domain outcome) unresolved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The prerequisite 'Needs key or sign-in' is genuine usage context that an agent would otherwise learn only by failing. However, there is no when-to-use/when-not guidance and no routing to alternatives such as site_unpublish (to take a site down), site_list, or the sibling publish tools app_publish/cell_publish.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
site_unpublishBDestructiveInspect
Stop serving one of your sites. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, readOnlyHint=false and idempotentHint=false, so the mutation risk is covered structurally. The description adds genuine context the annotations don't carry — the auth requirement (key or sign-in) and the nuance that it 'stops serving' rather than deletes. However it never says whether this is reversible, whether site content/assets are retained, or what happens on a second call despite idempotentHint being false.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the action front-loaded and zero filler. The second sentence is terse to the point of being cryptic ('Needs key or sign-in'), but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter, destructive, no-output-schema tool, this is minimally adequate: annotations cover the safety profile and the description covers the outcome and auth. It falls short on what 'stop serving' leaves behind, whether the action can be undone, and how to identify the target site correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the parameter semantics and it largely doesn't. 'one of your sites' faintly implies 'name' identifies the site and 'Needs key' faintly implies the key param is a credential, but neither is stated, and there's no format, scope, or disambiguation guidance (e.g. is 'name' a hostname, a slug, or a display name?).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb phrase plus resource: 'Stop serving one of your sites.' An agent immediately understands this takes a published site offline, and it's distinguishable from site_publish by the inverse operation. It doesn't name the sibling explicitly, so it's a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the operation itself (you call this when a site should no longer be served), and the description adds the auth prerequisite 'Needs key or sign-in.' But it never states when-not to use it, nor points to site_publish for the reverse operation or site_list for finding a site name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
source_proposalCRead-onlyInspect
One of your proposals with its review (who verified it, verdict, when).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish that this is a non-destructive read operation with open-world access. The description adds useful return context by naming the review fields (who verified it, verdict, when), but it does not explain auth scoping, id semantics, or what happens when no review exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single short phrase with no filler, and the parenthetical efficiently packs the return fields. It is slightly weakened by being a noun fragment rather than a complete directive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool, annotations cover the safety profile and the description gives some return shape. However, with no output schema and no schema parameter description, the definition omits id semantics and edge cases such as missing reviews, leaving real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole required parameter, id, has 0% schema description coverage, and the description never mentions or defines it. The phrase 'one of your proposals' implies selection but gives no meaning to the identifier.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment identifies the resource (a single proposal) and the payload (its review, including verifier, verdict, and time). It is clear enough to infer retrieval, but it does not use an action verb or explicitly name the sibling list tool for differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this tool versus source_proposals or other source_* siblings. It also omits prerequisites such as needing a proposal id or whether the proposal must belong to the caller.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
source_proposalsCRead-onlyIdempotentInspect
Your proposed changes: id, repo, branch, commit, status open|merged|rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| repo | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds useful context by showing returned fields and the status enum values open|merged|rejected, but it does not explain scoping, pagination, or filtering behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence fragment with the key scope ('Your proposed changes') front-loaded and no filler. It is perhaps too terse, but that is a completeness issue rather than a conciseness flaw.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, one undocumented parameter, and no explanation of filtering, sorting, or pagination, the description is not complete enough for an agent to confidently invoke the tool. The annotations cover safety but not operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole input parameter 'repo' has 0% schema description coverage, and the description only mentions 'repo' as a returned field, not as an optional filter. It therefore adds no meaning about what the parameter does or how it narrows results.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource ('Your proposed changes') and lists fields, implying a list/read operation, but it never states a verb and does not differentiate from close siblings like source_proposal, source_propose, or source_publish. The purpose is inferable but vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus source_proposal (singular) or the other source_* siblings. An agent must guess that this is the plural listing variant.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
source_proposeCInspect
Propose a code change to a ce repo you may read: the files are committed through the cell version...
| Name | Required | Description | Default |
|---|---|---|---|
| base | No | ||
| repo | Yes | ||
| files | Yes | ||
| message | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is non-read-only, open-world, non-idempotent, and non-destructive. The description adds only a vague hint that files are committed through 'the cell version', but it is truncated and does not explain the proposal lifecycle, approval effects, authorization requirements, or what happens after a proposal is created.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but structurally incomplete, ending mid-thought with '...'. It uses undefined jargon ('ce repo', 'cell version') and is not front-loaded with the information an agent needs to invoke the tool correctly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent, open-world mutation tool with four parameters and no schema descriptions or output schema, the description is far too sparse. It leaves critical details about the proposal process, parameter roles, and expected behavior unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning, but it only indirectly hints at 'repo' and 'files'. It says nothing about the required 'message' field or the optional 'base' parameter, leaving most of the four parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a recognizable verb and resource ('Propose a code change to a ce repo'), but the scope is muddled by the undefined term 'ce repo' and a truncated trailing phrase. It does not clearly distinguish this tool from siblings like source_proposal, source_proposals, or source_publish.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives. The description does not name source_proposal, source_proposals, source_publish, or any condition that would select this proposal path over another.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
source_publishCInspect
Publish source code on ce-net as a real git repo, no GitHub needed: give repo, files [{path... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| ref | No | ||
| tag | No | ||
| repo | Yes | ||
| files | Yes | ||
| commit | No | ||
| delete | No | ||
| message | No | ||
| replace | No | ||
| idempotency_key | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already say this is a non-read-only, open-world, non-idempotent operation, and the description usefully adds that a key or sign-in is needed. But it does not explain how publish behaves with existing repos, commits, refs, tags, deletes, replacements, or idempotency, which matters for a 10-parameter mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the core purpose, but it is truncated and fragmentary: 'files [{path...' and 'Needs key or sign-in.' do not form a clear, complete definition. This is under-specification rather than effective conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-parameter publish mutation with no output schema and 0% schema description coverage, the description is far too incomplete. It omits essential operational details and even cuts off while describing the files parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain parameters, but it only names repo and files at a path level. It leaves key, ref, tag, commit, delete, message, replace, idempotency_key, and file content/base64/executable semantics unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It states a specific verb and resource: publish source code on ce-net as a real git repo without GitHub. However, the sentence is malformed at the end and does not explicitly distinguish this tool from nearby publish flows such as source_propose or app_publish.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives only basic invocation prerequisites: provide repo and files, and use a key or sign-in. It does not explain when to use this instead of source_propose, source_request, repo_register, or other publish tools, nor does it mention 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.
source_readARead-onlyIdempotentInspect
Read one file of a ce repo at HEAD (text, 256 KiB at most; secret files are withheld).
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| repo | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive), yet the description adds real behavioral context: only HEAD is readable, content is text-only, output is capped at 256 KiB, and secret files are withheld. Those constraints materially affect how an agent interprets results; only the truncation signaling on oversized files is left unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence with the action first and the limiting constraints parenthesized; no filler, nothing buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity single-file read with rich annotations and no output schema, the description covers revision scope, size limits, and redaction. The remaining gap is error semantics (missing file, access denied), which an agent would benefit from knowing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry both parameters, and it only loosely gestures at them via "one file of a ce repo." It never clarifies whether repo expects an owner/name slug, nor whether path is repo-root-relative, leading-slash-sensitive, or accepts directories.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: read one file of a ce repo, with the HEAD revision scoped explicitly. The phrase "one file" separates it from tree/search siblings like source_tree and source_search, though it doesn't name them outright.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when this applies (fetching a single known file from HEAD) but never states when to prefer source_tree or source_search instead, nor any prerequisites such as repo access. Usage is inferable rather than guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
source_reposARead-onlyIdempotentInspect
List the ce source repos you may read: name, HEAD commit.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description still adds value by disclosing the access scope (only repos the caller may read) and, importantly, the returned fields (name, HEAD commit) in the absence of an output schema. Pagination and ordering remain undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the verb, scopes the resource, and closes with the return shape. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, no-output-schema listing tool the description covers scope and returned fields, which is most of what an agent needs. Minor gaps are ordering/pagination and what 'ce' refers to, but neither blocks correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so the baseline of 4 applies; there is nothing for the description to disambiguate. The 'you may read' note usefully clarifies there is no filtering argument — the result set is determined by permissions, not input.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('ce source repos') with a permission qualifier ('you may read'), so the operation is unambiguous. It does not differentiate itself from nearby siblings such as repo_list or source_tree, leaving the agent to guess which lister applies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'you may read' hints at a permission-scoped listing, but there is no explicit when-to-use vs repo_list/source_search/source_tree guidance and no stated preconditions. The agent gets no routing signal beyond the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
source_requestCInspect
Ask the source owner for read access to one private ce repo for your account (capability...
| Name | Required | Description | Default |
|---|---|---|---|
| repo | Yes | ||
| reason | No | ||
| expiry_days | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false and openWorldHint=true, so the safety profile is largely covered. The description adds the useful fact that this is a request directed at a human owner rather than a self-service grant, but it says nothing about approval flow, whether duplicates are created (non-idempotent), or what response comes back.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with no padding, which is good, but it terminates mid-parenthetical and therefore reads as an incomplete fragment rather than a front-loaded statement of purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent, open-world request tool with three undocumented parameters and no output schema, the description is far too thin — it does not explain the approval lifecycle, what 'reason' and 'expiry_days' control, or what the caller receives after the request is sent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for three parameters. The description only hints at 'repo' (one private repo) and 'your account'; the optional 'reason' and 'expiry_days' parameters are never mentioned or explained anywhere, so an agent has no basis for supplying them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Ask' plus the target ('the source owner') and the object ('read access to one private repo') give a workable sense of the action, and it is distinguishable from read-side siblings like source_read or source_repos. However, the sentence is truncated mid-parenthetical ('(capability...'), and the phrase 'ce repo' is unexplained, leaving the exact purpose partly garbled.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus alternatives such as source_read (already-granted access), source_propose/source_proposal (proposing changes), or request. No prerequisites, no exclusions, no mention of what happens after asking.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
source_searchCRead-onlyIdempotentInspect
Search the ce source at HEAD with a regular expression (git grep -E), in one repo or all you may...
| Name | Required | Description | Default |
|---|---|---|---|
| max | No | ||
| repo | No | ||
| pattern | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, open-world, so safety is covered. The description adds genuine value by pinning the search to HEAD and to git grep -E semantics (extended regex, tracked content only), but it omits what a match returns and whether history or working-tree changes are excluded.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The lead clause is efficiently front-loaded with the essential facts, but the definition is cut off mid-sentence ('all you may...'), which reads as an incomplete artifact rather than deliberate brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter search tool with no output schema, an agent still cannot tell what results look like (file/line pairs? snippets?), what 'max' caps, or whether uncommitted files are searched. Combined with the truncation, the definition is not sufficient to call the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description carries the full burden. It clarifies that 'pattern' is an extended regular expression and that 'repo' scopes to one repo or all, but 'max' is never mentioned and the truncated tail leaves the repo-scoping rule ambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (search) and resource (ce source at HEAD) plus the underlying implementation (git grep -E), which tells an agent exactly what kind of matching to expect. It does not differentiate itself from plausible siblings such as repo_search, directory_search, or source_read, and the phrase 'ce source' is left unexplained.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The fragment 'in one repo or all you may' hints that scope is selectable, but there is no statement of when to reach for this tool instead of repo_search, source_read, or source_tree. No exclusions or prerequisites are given, and the sentence trails off before any guidance lands.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
source_treeARead-onlyIdempotentInspect
List the readable files of one ce repo at HEAD, optionally under a path prefix.
| Name | Required | Description | Default |
|---|---|---|---|
| repo | Yes | ||
| prefix | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and open-world. The description adds meaningful context beyond them: results are scoped to HEAD (committed state, not working tree) and filtered to 'readable' files, implying permission-based filtering.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the scope (one repo, HEAD) comes before the optional modifier. Every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should clarify the shape of the result, but it never says whether paths are recursive, relative, or whether directories appear. It is minimally adequate for a two-parameter listing tool but leaves the agent guessing at return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description carries the burden, and it does explain both parameters: 'repo' selects the repository and 'prefix' optionally narrows the listing. However, it omits format details such as whether the repo is owner/name, whether listing is recursive, and whether directories are included.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource: 'List the readable files of one ce repo at HEAD', which an agent can distinguish from siblings like source_read (content) and source_repos (repo enumeration). It does not explicitly name an alternative, and the abbreviation 'ce' is unexplained, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is that a path prefix is optional, which is parameter semantics rather than tool selection advice. There is no statement of when to use this versus source_read, source_search, or source_repos, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_askCInspect
Put a question to the space for a vote on Trana.
| Name | Required | Description | Default |
|---|---|---|---|
| space | Yes | ||
| title | No | ||
| choices | No | ||
| reasons | Yes | ||
| question | Yes | ||
| closes_at | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-read-only, non-idempotent, open-world write, and the description is consistent with that ('Put a question'). Beyond the implicit write, the description adds no behavioral context: it does not say what gets created, whether the question requires the 'reasons' array, who can see or vote, or what the result looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is front-loaded and free of filler, so it is technically concise. However, given six parameters and an ambiguous voting mechanism, a one-line description is under-specified rather than appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an open-world, non-idempotent write operation with six partially undocumented parameters and no output schema, the description is far too sparse. An agent cannot tell from this text what the required 'reasons' field means or how the created question behaves.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters, so the description carries the full explanatory burden. It implicitly names 'space' and 'question', but says nothing about the required 'reasons' array, the optional 'choices', 'title', or 'closes_at' fields, leaving most parameters undocumented by either structured or natural-language text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a verb ('Put a question') and a target ('the space for a vote on Trana'), which gives a rough idea of the operation. However, 'for a vote on Trana' is ambiguous: it is unclear whether this creates a poll, solicits opinions, or triggers a Trana-based vote, and it does not distinguish the tool from close siblings like space_vote, space_questions, or trana_vote.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus space_vote, space_questions, space_decide, or trana_vote, even though those siblings clearly overlap. No prerequisites or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_board_checkCRead-onlyIdempotentInspect
For the member hosting the board: redeem a ticket once. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| space | Yes | ||
| ticket | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and idempotentHint=true, yet the description says "redeem a ticket once" — redemption is a state-consuming write and "once" implies a second call behaves differently, so both hints are contradicted. The only non-contradictory contribution is "Needs key or sign-in," which is too little to rescue the section.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the caller-eligibility constraint, with no filler. Brevity is not the problem here — the gap is that so little content is packed into it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an open-world, auth-requiring operation with zero schema coverage, no output schema, and annotations that conflict with the prose, the description should explain what a ticket redemption changes, what happens on a second call, and what comes back. Almost none of that is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It partially does: "key" is framed as an auth credential alternative to sign-in, and "ticket" is the thing redeemed. The required "space" parameter is never explained, leaving one of three params opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a verb ("redeem") and a resource ("a ticket") scoped to "the member hosting the board," but "board" and "check" are never grounded, and the name says "check" while the description says "redeem" — the agent cannot fully tell what this does or why it differs from the sibling space_board_ticket.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"For the member hosting the board" implies a caller role and "once" implies a single-use condition, which is useful context. But no alternative (e.g., space_board_ticket, space_board_check vs. space_context) is named and no explicit when-not condition is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_board_ticketBInspect
Members only: a ticket valid 5 minutes and the link that opens the board with it. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as non-read-only, non-idempotent, non-destructive, and open-world. The description adds important behavior beyond that: membership is required, the ticket expires after 5 minutes, and a link is returned. It could say more about whether each call creates a new ticket, but the key behavioral traits are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with the membership requirement and return value front-loaded. It is appropriately sized for a simple ticket-issuing tool, though the phrase 'a ticket valid 5 minutes' is slightly compressed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with no output schema, the description covers the return value (ticket and link), expiry, and authentication prerequisites. However, the required `space` argument is entirely unexplained, which is a notable gap given 0% schema description coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must explain both parameters. It clarifies that `key` is an authentication alternative to sign-in, but it never defines the required `space` parameter, leaving the most important input undocumented in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource precisely: a short-lived ticket plus the link that opens a board. It does not explicitly use a verb like 'issue' or name the sibling space_board_check, but the ticket-and-link framing distinguishes it from a simple access check.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives prerequisites ('Members only', 'Needs key or sign-in') but does not say when to call this instead of space_board_check or other space tools. The usage context is implied rather than explicitly routed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_contextCRead-onlyIdempotentInspect
Members only: mission, plan, members, shared repos, the last 20 messages, linked threads with their... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish a safe, idempotent, open-world read, so the bar is lower. The description adds useful context beyond annotations: a membership restriction, an auth/key requirement, and a bounded return ('the last 20 messages'), but the truncated final clause leaves the returned threads' behavior unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short, but it is not concise in a useful sense: it is an incomplete fragment ending in an ellipsis. The front-loaded 'Members only' is efficient, yet the unfinished sentence leaves core content unstated rather than merely trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a read tool with no output schema and no schema descriptions, so the description must explain both inputs and what context is returned. It partially lists the payload but leaves parameters undefined and the final return component truncated, so an agent cannot reliably call it or predict what it receives.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for two parameters, so the description must carry the burden. 'Needs key or sign-in' loosely maps to the key parameter as an auth credential, but the required 'space' parameter is never explained, leaving the primary input ambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description enumerates what the space context contains (mission, plan, members, shared repos, recent messages, linked threads), which hints at the resource involved, but it never states a verb and trails off mid-sentence ('with their...'). The relationship to siblings like space_read or space_thread_read is left for the agent to guess.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It does not say when to call this versus space_read, space_thread_read, or space_unread. 'Members only' and 'Needs key or sign-in' are access conditions, not usage guidance or alternative selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_createCInspect
A new space you own, with its own message channel. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| kind | No | ||
| name | Yes | ||
| about | No | ||
| parent | No | ||
| discoverable | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=false, and openWorldHint=true, so the agent knows this is a non-idempotent write with external effects. The description adds genuine context beyond that: an auth requirement and the side effect that the new space gets its own message channel. It says nothing about ownership/permission consequences, what happens to the parent, or whether creation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short fragments with no padding, and the distinguishing trait is front-loaded. But the brevity comes at the cost of substance rather than from efficiency — the sentences omit more than they earn.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter mutation tool with zero schema coverage, no output schema, and a rich set of sibling creation tools, the description leaves the agent without enough to call it correctly — particularly the `kind` enum and `parent` semantics. The auth note is the only operational detail provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 6 parameters, so the description carries the full burden. It only gestures at 'key' (and ambiguously — possibly meaning credentials rather than the `key` property), leaving `kind` (workspace/group/scope), `parent`, `about`, and `discoverable` completely unexplained. An agent cannot infer the meaning of the enum or the parent hierarchy from this text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource and a distinguishing trait ('a new space you own, with its own message channel'), which hints at creation and separates it from spaces_browse or spaces_mine. However, it is a noun phrase with no explicit verb, so the agent must infer 'create' from the tool name rather than the description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Needs key or sign-in' gives a prerequisite but no guidance on when to call this versus the many adjacent creation/join tools (space_join_request, group_create, private_create, team_create, org_create). Nothing states when not to use it or what happens if the space already exists.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_decideBInspect
Owner, admin or the asker: close a space question and record the winning choice (weighted by...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| space | Yes | ||
| choice | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare the safety profile (not read-only, not destructive, not idempotent, open-world); the description adds the useful actor restriction and that a winner is computed by weighting. It omits what an agent would want: whether closing is reversible, what happens if no votes exist, and what the call returns. The truncated parenthetical undercuts the one behavioral detail it attempts.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the actor and action, which is good. But it ends mid-thought with an unclosed parenthetical, so the one sentence that should have clarified the core mechanism delivers nothing after the word "weighted."
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a state-changing, non-idempotent, non-read-only tool with three undocumented parameters and no output schema, the agent needs to know the shape of the decision payload and the outcome. The description is truncated and covers none of the preconditions, side effects, or results, so an agent could easily call it with the wrong parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning and it largely does not. It hints that "choice" is the winning selection but never explains why choice is optional while space and id are required — presumably an omitted choice means the weighted tally auto-selects. The roles of id vs space are left entirely to inference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a concrete verb and resource: "close a space question and record the winning choice." An agent can tell this is the terminal decision step for a space question. It does not, however, distinguish itself from close siblings like space_vote (which records individual votes) or space_questions, and the trailing "(weighted by..." is cut off, leaving the mechanism unspecified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Owner, admin or the asker" gives a real prerequisite the agent can act on. But it never says when to choose this over space_vote, or what preconditions must hold (open question, votes cast). Usage is implied rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_deleteADestructiveInspect
Owner only: delete the space for every member, with its channel. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=false; the description adds what annotations cannot: the cascade deletes the space's channel and affects every member, and that auth via key or sign-in is required. It stops short of saying whether deletion is reversible or recoverable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short clauses, zero waste, with the most important constraint ('Owner only') front-loaded and the destructive scope immediately after. Nothing could be removed without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent, no-output-schema tool, the description covers scope, cascade, and auth, but omits reversibility, what happens to existing channel content, and whether confirmation is required. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It clarifies that 'key' is an authentication credential (interchangeable with sign-in), which the schema does not say, but it leaves 'space' unexplained and gives no format for either parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (delete the space) plus the blast radius ('for every member, with its channel'), which implicitly separates it from space_remove (member removal). Sibling differentiation is implied by scope rather than named explicitly, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Owner only' gives a precondition for use, but the description never names an alternative (e.g., space_remove to remove one member, or space_revoke) or says when not to use it. Usage is inferable but not routed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_grantCInspect
Ask for every member of the space to get a right the owner holds.
| Name | Required | Description | Default |
|---|---|---|---|
| right | Yes | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already tell the agent this is a non-readonly, non-idempotent, open-world mutation. The description adds nothing about who may invoke it, whether an owner approval/decision step is required (the word 'Ask' hints at it but never says so), whether the grant is reversible, or what happens if the right is already held. For a privilege-escalation-shaped mutation that is a substantial gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with no filler, so nothing is wasted, but the compression comes at the cost of clarity rather than in service of it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation with no output schema, zero schema descriptions, and two required parameters, the description leaves out the approval model, the effect on members who lack the right, and any indication of the result. An agent cannot call this correctly without guessing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning, and it only loosely implies the two params ('space', 'right'). It doesn't explain the semantics of the three enum values or the expected format of the space identifier.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The sentence gestures at granting a right to all space members, but the verb phrase 'Ask for' makes it unclear whether the tool performs the grant or merely files a request for it. It also doesn't distinguish itself from siblings such as space_revoke, space_secret_grant, integration_grant, or permission_propose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool, when not to, or which sibling to prefer for adjacent operations (revoking, secret grants, permission proposals). The agent must infer the routing decision entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_inviteAInspect
Owner or admin: add an account (its 16-hex id from whoami) as member or admin. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| role | No | ||
| space | Yes | ||
| member | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false), so the bar is lower. The description still adds genuine context: the caller must be owner/admin, and authentication via key or sign-in is required. It does not cover what happens on re-inviting an existing member, which would have made it a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, no filler, with the permission gate front-loaded so the agent can bail out immediately if it lacks the role. The compressed "Needs key or sign-in" is terse but decodable against the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter mutation tool with no output schema, the essentials are present: who may call it, how to authenticate, and the exact format of the critical member id. Missing only edge-case behavior (duplicate membership, failure modes) to be fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry the load, and it does for most parameters: it pins member to a 16-hex id sourced from whoami, spells out the two role values, and explains key as an auth alternative to sign-in. Only the space parameter is left unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (add) and the effect (an account becomes member or admin), which is clearly a space-membership grant. The space resource itself is only implied through the parameter rather than stated, and no sibling (channel_invite, group_invite_create, org_members_add) is named for differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Owner or admin" plus "Needs key or sign-in" gives real preconditions for use, which is more than most definitions offer. However, nothing says when to use this versus the many sibling invite tools (channel_invite, group_invite_create, private_invite), leaving that inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_join_requestCIdempotentInspect
Sends the owner your account id and a note. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| note | No | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the important safety profile: readOnlyHint=false, openWorldHint=true, idempotentHint=true, destructiveHint=false. The description adds useful context that the action sends the owner your account id and a note and requires a key or sign-in, but it does not explain the resulting request state, owner approval flow, or any rate/visibility behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no wasted wording, and the action is front-loaded before the authentication note. Its brevity is efficient, though it contributes to the missing purpose and parameter detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-read-only, open-world join-request tool with three parameters and no output schema, the description is materially incomplete: it omits the required space target, does not state that this creates a pending join request, and does not describe what an agent should expect after calling it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It clarifies the note and key inputs somewhat, but it never mentions the required space parameter, leaving the most important targeting parameter undocumented in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says it sends the owner an account id and a note, which gives some sense of the action, but it never explicitly states that this is a request to join a space. The tool name space_join_request carries the real purpose, while the description itself is vague about the space-join outcome and does not distinguish it from siblings like space_invite or private_join.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is the authentication prerequisite "Needs key or sign-in." There is no explanation of when to use this tool versus alternatives such as space_invite, private_join, channel_join, or group_invite_create, nor any when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_questionsCRead-onlyIdempotentInspect
The space's questions, newest first, with the count so far and the decision once made, and the...
| Name | Required | Description | Default |
|---|---|---|---|
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive, and openWorld. The description adds useful return-shape context—newest-first ordering and presence of count/decision fields—but omits permissions, visibility, pagination, and is truncated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single incomplete fragment ending in an ellipsis. It is short, but not front-loaded with an action verb and fails to form a complete statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only listing tool with no output schema, the description should clarify the space parameter and the return content. Annotations cover safety, but the truncated description leaves key invocation details missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single required 'space' parameter has 0% schema description coverage. The description only says 'The space's questions', which restates the param name without specifying identifier format, lookup behavior, or whether it is a slug/ID.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment indicates it returns a space's questions ordered newest first and mentions count and decision, implying a read/list operation. But there is no explicit verb, and the trailing 'and the...' leaves the purpose partly ambiguous. Sibling differentiation is only implicit through the resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 space_ask, space_vote, space_decide, space_board_check, or space_context. The agent must infer usage solely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_reactBInspect
Add (or with off: true, take back) a reaction on a message. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| off | No | ||
| seq | Yes | ||
| space | Yes | ||
| reaction | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=false, openWorld=true, idempotent=false, and destructive=false. The description usefully notes authentication and the off toggle for removal, but it does not clarify duplicate-reaction behavior, whether removing an absent reaction errors, or what happens on success.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero filler; the core action is front-loaded and the removal behavior is parenthetically appended.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a 5-parameter mutation tool with no output schema and 0% schema description coverage. The description omits message identification details (space/seq) and reaction semantics, leaving an agent under-informed about how to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentions only 'off' and 'key' indirectly through 'Needs key or sign-in', leaving the required 'space', 'seq', and 'reaction' parameters unexplained beyond their names and enum values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: add or take back a reaction on a message. It does not explicitly distinguish this from nearby siblings like space_say or space_vote, but the action is clear enough for an agent to identify.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives the prerequisite 'Needs key or sign-in' and explains the removal case via 'off: true'. However, it does not state when to use this tool versus alternatives or describe constraints such as whether the message must be in a joined space.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_readCRead-onlyIdempotentInspect
A page of top-level messages, oldest first, each with its thread's reply count (rc) and last reply... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| after | No | ||
| limit | No | ||
| space | Yes | ||
| before | No | ||
| replies | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a safe, read-only, idempotent, open-world operation. The description adds useful behavioral context beyond that: pagination ('a page'), ordering ('oldest first'), return shape ('thread's reply count (rc) and last reply...'), and an auth requirement. It stops short of explaining pagination mechanics or the effect of the replies parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the return shape, but it is telegraphic and fragmentary ('last reply...', 'Needs key or sign-in.'), with an unexplained abbreviation (rc). It avoids waste but sacrifices clarity in the process.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description bears responsibility for return semantics and parameters. It partially describes the returned page's contents but leaves most of the six input parameters undocumented and does not explain the replies flag or pagination behavior, which is too thin for this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters, so the description must compensate. It only hints at 'key' as an auth alternative and 'page' as pagination, leaving after, before, limit, space, and replies entirely unexplained in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that this returns a page of top-level messages in a space, ordered oldest first, with reply metadata. However, it is phrased as a result description rather than a clear verb+resource statement, and the distinction from siblings like space_thread_read or thread_read is only implied by 'top-level messages'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Needs key or sign-in' provides an authentication prerequisite but says nothing about when to choose space_read over alternatives such as space_thread_read, thread_read, space_context, or space_unread. No exclusions or selection criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_removeADestructiveInspect
Owner or admin: remove a member. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| space | Yes | ||
| member | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description adds two pieces of context the structured data does not carry: the caller must be owner or admin, and authentication is via a key or an existing sign-in. It stops short of saying whether removal is reversible or what happens to the member's existing content.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Nine words in two fragments, with the permission prerequisite front-loaded. Nothing is wasted, though the telegraphic style borders on under-specification rather than economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent mutation with zero schema description coverage and no output schema, the description is thin: it omits how to identify the space, what the member loses on removal, and what the tool returns or how it fails when the caller lacks the required role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the parameter burden. It clarifies that `key` is an auth credential and `member` is the removal target, but leaves `space` completely unexplained (ID? slug? name?) and gives no format hints for `member`.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (remove) and resource (a member), with the space context implied by the tool name and the `space` parameter. It does not distinguish itself from similarly-shaped siblings like group_remove, org_member_remove, or channel_remove, so an agent must infer the scope from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Owner or admin:' gives an eligibility gate, which is useful usage context, but there is no explicit when-to-use/when-not guidance and no mention of alternatives such as space_revoke (revoking access) or group_remove (removing from a group). The agent must infer when this is the right removal tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_revokeBDestructiveInspect
Owner or admin: remove a right from the space. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| right | Yes | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=false, and not read-only, so the safety profile is covered. The description's real contribution is the authentication requirement ('Needs key or sign-in'), which is genuinely beyond the annotations, but it omits what happens when the right isn't held, whether revocation is confirmed, and any side effects on existing tokens.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short clauses, front-loaded with the actor and action, then the auth requirement. No padding, though the telegraphic fragments read like notes rather than a sentence and could carry slightly more detail at no cost.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent mutation with no output schema and no parameter descriptions, the description covers the actor role and auth but not failure modes, confirmation behavior, or the meaning of the right values. An agent can attempt the call but cannot predict outcomes on edge cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the parameter burden. It only clarifies that 'key' is an authentication credential; it says nothing about the 'right' enum values (code.host, source.write, compute.submit) or the expected 'space' identifier format, leaving the most non-obvious parameter undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('remove a right from the space'), which is clearly the inverse of sibling space_grant. It doesn't explicitly name space_grant or distinguish itself from space_remove/space_delete/permission_revoke, so the differentiation is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Owner or admin' establishes a permission prerequisite, and 'remove a right' implies the usage context (revoking previously granted access). However, there is no explicit guidance on when to pick this over space_grant, space_remove, or permission_revoke, so selection relies on the agent inferring from the verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_sayCInspect
A message every member can read with space_read. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| text | Yes | ||
| space | Yes | ||
| reply_to | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a non-destructive write (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=true). The description adds useful context that the message is readable by every member via space_read and that authentication is required ('Needs key or sign-in'). It does not explain duplicate-message behavior or what exactly is created, but with annotations covering the safety profile this is a reasonable partial addition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, but the first sentence is a sentence fragment that is not front-loaded with an action verb. It is concise but under-specified for a write tool with four parameters and no schema descriptions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, 0% schema description coverage, no output schema, and many sibling tools, the description is incomplete. It omits parameter meanings (space, text, reply_to), alternatives, and return behavior, providing only a visibility note and auth requirement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and there are 4 parameters. The description only vaguely references the 'key' parameter through 'Needs key or sign-in' and does not explain the required 'space' and 'text' parameters or the optional 'reply_to' parameter. It does not compensate for the missing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description implies posting a message that all space members can read via space_read, but it lacks an explicit verb and is grammatically incomplete ('A message every member can read...'). It does not distinguish space_say from siblings like space_react, space_ask, thread_post, or channel_send, leaving the agent to infer the action and scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use space_say versus alternatives such as space_react, space_ask, thread_post, or channel_send. The description only states the outcome and authentication requirement, not the conditions that select this tool over its many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
spaces_browseBRead-onlyIdempotentInspect
Spaces whose owners made them discoverable: id, name, kind, about, member count.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so safety is covered. The description adds worthwhile behavior — that the result set is restricted to owner-opted-in discoverable spaces and what fields come back — but says nothing about pagination, result limits, or ordering, which matters for a browse/list tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with no filler, and the scoping constraint (owner-discoverable) is front-loaded ahead of the field list. It is telegraphic to the point of omitting a verb, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, annotation-covered read tool, the return fields and access scope are stated, which is most of what an agent needs. However, with an output schema absent and the `q` parameter undocumented, the definition leaves real gaps about how to drive the query and what the response volume looks like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single parameter `q` is never mentioned in the description. Whether `q` is a full-text search, a prefix filter, or a name substring match is left entirely to inference, so the description fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (spaces) and a clear scope qualifier — only spaces whose owners marked them discoverable — plus the fields returned (id, name, kind, about, member count). That implicitly separates it from spaces_mine, though it never names the sibling or uses an explicit verb like 'list' or 'browse'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use / when-not-to-use guidance and no alternative named. An agent must infer from the phrase 'owners made them discoverable' that this is the public-directory counterpart to spaces_mine, and nothing tells it how this differs from directory_search or other discovery tools in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_secret_deleteBDestructiveInspect
Needs the delete right: remove a shared secret and end every grant on it.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint/non-idempotent, so the safety profile is covered. The description adds two things annotations cannot: the required delete right and the cascade effect that all grants on the secret are terminated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the prerequisite and the effect, with no filler. Nothing here is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, open-world mutation with no output schema and undocumented parameters, the description covers the consequence but not irreversibility (is the secret value unrecoverable?), scope resolution (which space), or error behavior when the delete right is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description never maps 'space' or 'name' to meaning (which space scopes the secret, whether name is the secret identifier). With zero coverage, the description needed to compensate and does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('remove a shared secret') plus a consequence ('end every grant on it'), which is more informative than the bare name. It never explicitly distinguishes itself from the sibling space_secret_revoke, so an agent must infer that revoke ends one grant while this destroys the secret itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is a permission prerequisite ('Needs the delete right'), not a when-to-use rule. There is no statement of when to choose this over space_secret_revoke, which is the genuinely ambiguous call here.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_secret_getCRead-onlyIdempotentInspect
Needs the get right (a live grant, or owner, admin or whoever put it): one secret's value, byte for...
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description does add genuinely useful authorization context the annotations do not carry (a live grant or owner/admin/grantor is required), but it stops there and is cut off before any further behavior is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text ends mid-sentence ("byte for..."), and the opening clause is syntactically broken ("Needs the get right..."). This is under-specification plus truncation rather than tight, front-loaded writing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-required-parameter read with no output schema, an agent needs to know what `space` and `name` are and roughly what comes back. Neither is covered, and the sentence is incomplete, so the definition is not sufficient to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for both required parameters, so the description carries the full burden for `space` and `name`. It never explains what either parameter identifies, and the truncated tail may have contained that information but does not deliver it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase "one secret's value" identifies the resource and the read action, so an agent can guess this fetches a single secret. But the leading clause ("Needs the get right...") is garbled and the sentence is truncated mid-word, so the verb+resource statement is never made cleanly and no sibling (space_secret_list, space_secret_put, space_secret_grant) is named.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states a prerequisite (a live grant, or being owner/admin/the grantor) but never says when to use this rather than space_secret_list or space_secret_grant. There is no explicit when-to-use, no exclusion, and no alternative named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_secret_grantCInspect
Owner, admin or whoever put the secret: a capability on one key name in this space for one member...
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| name | Yes | ||
| space | Yes | ||
| rights | Yes | ||
| expires_in_s | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as a non-idempotent, non-destructive write operation. The description's main contribution is the caller-authorization requirement (owner/admin/secret creator), which is real context not present in annotations. It omits what happens on repeated grants, whether existing rights are replaced, and the significance of expires_in_s.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Only one fragmentary sentence ending in an ellipsis, which reads as truncated rather than deliberately concise. There is no front-loaded action statement to anchor the rest.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A 5-parameter mutation tool with zero schema documentation, no output schema, and only annotations for safety profile. The description does not supply enough detail about the rights values or expiration semantics for an agent to call it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 maps loosely to 'name' (key name), 'to' (one member), and 'space', but never names the 'rights' parameter or its get/put/delete enum values, and ignores 'expires_in_s' entirely.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys the effect — granting 'a capability on one key name in this space for one member' — which distinguishes it from space_secret_get/put/delete/list siblings. However, it is a sentence fragment with no verb and trailing ellipsis, so the agent must infer 'grant' from the tool name rather than read it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The audience clause ('Owner, admin or whoever put the secret') gives an authorization precondition, but there is no when-to-use guidance, no mention of the sibling space_secret_revoke for removing rights, and no note about re-granting or expiring.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_secret_listCRead-onlyIdempotentInspect
Members: each shared secret you hold a right on: name, length, who put it and when, your rights...
| Name | Required | Description | Default |
|---|---|---|---|
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive behavior, so the safety profile is covered. The description adds that only secrets the caller has rights on are returned and names returned fields, but it omits pagination, permissions, or output behavior details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but poorly structured, beginning with an unclear fragment 'Members:' and ending with an ellipsis. It is under-specified rather than concisely front-loaded with the tool's action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with no output schema, the description partially covers returned fields, but it leaves the required 'space' parameter unexplained and provides no usage guidance against sibling tools. The definition is not complete enough to call the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole required parameter 'space' has 0% schema description coverage, and the description never explains what 'space' means or how to obtain it. The description does not compensate for the missing schema semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description indicates a collection of shared secrets the caller has rights on and lists returned fields, but it does not explicitly state the action (list) or clearly distinguish it from siblings like space_secret_get. The resource is identifiable, but the purpose is only implied.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus space_secret_get or other secret tools. The only implied usage is listing secrets, but no alternatives or exclusions are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_secret_putCInspect
Members: keep an API key, token or password for the space.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| share | No | ||
| space | Yes | ||
| value | Yes | ||
| expires_in_s | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (readOnly=false, destructive=false, idempotent=false, openWorld=true). The description adds only the 'Members' permission hint; it does not disclose the notable behavior that this is a non-idempotent write that likely overwrites an existing secret with the same name, nor anything about secret handling or visibility defaults.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no padding, so it is concise, but the brevity is achieved by omission rather than economy — the most decision-relevant facts (overwrite behavior, expiry, sharing) are absent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A 5-parameter write tool with no output schema and no documented parameters needs substantially more than one sentence. The agent cannot tell what happens on conflict with an existing secret, what the share/expiry options do, or what is returned after the write.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 5 parameters, so the description carries the full burden. It only loosely maps to two of them ('value' via the credential examples, 'space' via 'for the space') and says nothing about 'name', the 'share' enum (members/none), or 'expires_in_s' — the expiry and sharing semantics are entirely invisible to the caller.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys the core action: store a credential ('API key, token or password') scoped to a space, which is enough to distinguish it from space_secret_get/delete/list. However, 'keep' is a soft verb and it never clarifies create-vs-overwrite semantics, nor does it differentiate from space_secret_grant, which also handles secrets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Members:' hints at a permission precondition but is not a usage rule, and there is no statement of when to call this versus space_secret_grant, space_secret_revoke, or space_set. The agent must infer the workflow from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_secret_revokeCDestructiveInspect
Owner, admin, whoever put the secret, whoever made the grant, or its holder: end one grant (its id...
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| grant | Yes | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=false, so the safety profile is largely covered. The description's genuine addition is the permission model — listing the five roles that may revoke — which is useful context an agent cannot infer from annotations. It stops short of saying whether the underlying secret survives, or whether the grant holder is notified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single sentence that is visibly cut off, ending in an unclosed parenthesis. What text exists is a comma-spliced list of roles rather than a front-loaded statement of what happens.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent, open-world mutation with three undocumented required parameters and no output schema, the description does far too little. An agent cannot determine what identifying values to pass or what state change results from a successful call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across three required parameters, so the description carries full burden and does not meet it. Only a fragment "(its id..." gestures at the `grant` parameter; `space` and `name` receive no explanation of whether they identify a space secret by name or path.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"end one grant" gives a specific verb and resource, and the tool's domain (space secrets) is implied by the name. However the sentence is truncated mid-clause, so the object of the operation (which grant, within what scope) is never fully stated, and no sibling such as space_secret_delete or space_revoke is referenced to sharpen the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description enumerates who is *authorized* (owner, admin, secret author, grantor, grant holder) but never says when an agent should call this versus space_secret_delete, space_revoke, or permission_revoke. Authorization eligibility is not the same as usage selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_setCIdempotentInspect
mission, plan and about: owner or admin. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| plan | No | ||
| about | No | ||
| board | No | ||
| space | Yes | ||
| mission | No | ||
| repo_add | No | ||
| thread_add | No | ||
| repo_remove | No | ||
| discoverable | No | ||
| thread_remove | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds the authorization requirement (owner or admin) and the credential requirement (key or sign-in), which is genuine non-structured context. It does not say what happens to fields not supplied, or whether repo/thread removals are permanent, leaving a gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short but not concise: a fragmentary field list plus two dangling clauses, with no subject or verb in a leading sentence. Nothing is front-loaded because there is no statement of what the tool actually does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter mutation tool with no output schema and zero schema description coverage, the description is far too thin. An agent cannot tell from it what most parameters do, what the response contains, or how partial updates behave.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 11 parameters, so the description must carry the load, but it names only mission, plan and about and hints at key via 'Needs key or sign-in'. Eight parameters — board, repo_add, repo_remove, thread_add, thread_remove, discoverable, space, plan — are left entirely unexplained in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description only lists three field names ('mission, plan and about') without a verb or a stated resource, so the agent must infer that this mutates the settings of an existing space. It does not differentiate from siblings like space_create, space_delete, or space_grant, which all operate on spaces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'owner or admin' and 'Needs key or sign-in' give real preconditions for use, which is more than nothing. However, there is no guidance on when to choose this over space_create/space_delete/space_grant, nor how the many repository/thread params change the call's intent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
spaces_mineCRead-onlyIdempotentInspect
Your workspaces, groups and scopes, your role in each, the rights you hold (directly or through a... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered by structured data. The description adds one genuinely useful behavioral fact beyond that — an authentication/key requirement — but says nothing about result shape, pagination, or what happens with no identity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short but broken: it trails off with an ellipsis and then appends a second fragment ('Needs key or sign-in'), so it reads as two incomplete sentences rather than a front-loaded summary. Brevity here reflects truncation, not discipline.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description carries the full burden of explaining the return shape — and because it is truncated, the enumeration of returned data (role, rights, scope derivations) is cut off exactly where detail was needed. An agent cannot tell what the payload looks like before calling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One optional parameter ('key') with 0% schema description coverage, so the description must compensate; 'Needs key or sign-in' does at least imply that the key parameter is an auth credential and that there is a sign-in fallback when it is omitted. That is meaningful but minimal — no format, no source of the key, no behavior when an invalid key is supplied.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resources returned (workspaces, groups, scopes, role, rights) which identifies this as a 'my memberships' retrieval tool, but there is no verb and the text is truncated mid-clause ('directly or through a...'), so the scope of what is returned is left unresolved. It is distinguishable from siblings like spaces_browse in spirit, but not sharply.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use statement and no named alternatives (spaces_browse, groups_mine, orgs_mine, orgs_mine-style siblings all overlap). The only guidance is the trailing 'Needs key or sign-in', which is a prerequisite hint rather than a usage rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_thread_readCRead-onlyIdempotentInspect
A thread's first message and its replies, oldest first. Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| root | Yes | ||
| after | No | ||
| limit | No | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, open-world, non-destructive behavior. The description usefully adds ordering ('oldest first') and an authentication requirement, but it does not explain pagination, result limits, or how after/limit affect results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with what the tool returns and without wasted text. Its terseness is more a completeness issue than a conciseness problem.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter read tool with no schema descriptions and no output schema, the description is too thin. It omits parameter meanings, pagination behavior, and how space/root identify the thread, leaving the agent to infer critical invocation details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage across five parameters, the description carries the full burden but only partially mentions key via 'key or sign-in.' It gives no meaning for the required space and root parameters or for after and limit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource and content returned: a thread's first message plus replies, ordered oldest first. It does not explicitly differentiate this from sibling tools like thread_read, channel_read, or space_read, so an agent may need to infer the 'space' scoping.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage guidance is the prerequisite 'Needs key or sign-in,' which says nothing about when to choose this over thread_read or other read tools. There are no exclusions or alternative-selection cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_trana_linkBInspect
Owner or admin: link the space to a Trana feed so its questions and decisions also show there.
| Name | Required | Description | Default |
|---|---|---|---|
| feed | Yes | ||
| space | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-read-only, open-world, non-idempotent, non-destructive operation. The description adds the owner/admin permission requirement and the visible effect of linking, but it does not disclose what happens on repeated calls or whether existing links are replaced, which matters for a non-idempotent mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that states the required role, the action, and the result. Every clause contributes useful information with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter mutation with no output schema and 0% parameter description coverage, the description should explain how to reference the space and feed and what to expect after linking. It omits both, so an agent must infer valid parameter formats and the result of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the burden of explaining the two required parameters. It only gives the conceptual roles of 'space' and 'feed' without indicating whether either expects an ID, slug, name, or URL, leaving the agent unable to determine valid values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: link a space to a Trana feed, and it clarifies the effect that questions and decisions will also appear there. It does not compare itself to sibling tools like trana_feed or space_set, so it is clear but lacks explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'Owner or admin' prefix gives a useful prerequisite, but the description does not explain when to choose this tool over related tools, nor does it state any when-not conditions. Usage is implied rather than explicitly guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_unreadBRead-onlyIdempotentInspect
Per space: new messages by others since you last read (your own never count), plus mentions of you... Needs key or sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| mark_read | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnlyHint, idempotentHint, and openWorldHint. The description adds useful behavioral detail: own messages are excluded and mentions are included, and authentication is required. It does not clarify whether the optional mark_read parameter causes any state change, which matters for a tool annotated as read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loads the core behavior before the authentication note. Every phrase carries meaning, though the sentence fragment and trailing ellipsis reduce polish slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with annotations covering safety, the core semantics and auth requirement are present. However, with no output schema and zero schema description coverage, the description should explain the return format and the role of mark_read; those gaps leave it only minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 only partially explains 'key' via 'Needs key or sign-in' and gives no explanation of the 'mark_read' parameter at all, leaving half the parameters semantically undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource and scope: per-space unread messages by others since the last read, plus mentions of the user. It also clarifies that the user's own messages never count. It does not explicitly distinguish itself from siblings like space_read or space_context, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied as checking unread/mention status, and the description adds the prerequisite 'Needs key or sign-in.' However, it gives no explicit when-to-use vs when-not guidance and does not name alternatives such as space_read or spaces_mine.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
space_voteCInspect
Vote on a space question.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| space | Yes | ||
| choice | Yes | ||
| public | No | ||
| reason | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose that this is a non-read-only, non-idempotent, open-world operation. The description adds no behavioral detail beyond restating the vote action—nothing about vote visibility, whether one vote per question is allowed, authorization needs, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one front-loaded sentence with no wasted words, but it is under-specified for a five-parameter mutation tool. Conciseness is fine; structural completeness is not.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given five undocumented parameters, no output schema, and only a short action phrase, the description is not complete enough for reliable invocation. Annotations supply some safety context, but critical parameter and usage details are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has five parameters with 0% description coverage, including required space, id, choice, and reason plus optional public. The description does not explain what any parameter means, how to obtain the question id, allowed choice values, or the effect of public.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: voting on a space question. It is clear enough to distinguish from most siblings, but it does not differentiate from other voting-like tools such as trana_vote, and 'space question' is not elaborated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool instead of alternatives, nor any prerequisites or exclusions. The action implies voting, but the description provides no routing context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
startCRead-onlyInspect
The front page as JSON: top people, the open goals, how to build, donate your mind, donate your...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond a partial content list — no mention of payload size, freshness, or whether it aggregates other tools' data, which matters for an openWorld aggregate endpoint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short but ends mid-thought with 'donate your...', meaning the description is truncated rather than concise. An agent cannot tell what content was cut or whether more sections exist.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and no output schema, the description carries the burden of explaining what comes back, and it only partially does so — naming a few sections before being cut off. Enough to know it is a read-only dashboard dump, but not enough to plan around its contents.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; baseline 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that this returns a homepage/aggregate payload listing top people, open goals, and how-to-build info, which is meaningfully distinct from sibling tools. However there is no verb and the text trails off with an ellipsis, so the full resource scope is left ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus alternatives such as whoami, goals_global, or profile_get, which cover overlapping data. The agent must infer that 'start' means 'orientation/dashboard first call' from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
task_acceptBIdempotentInspect
For a task you posted: yes closes it as done; no puts it back open for anyone. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| yes | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavior beyond the annotations by explaining the state transitions: yes marks the task done, no reopens it, and a key is required. These are useful operational details not present in the annotation hints, though return values and the role of proof are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: it immediately establishes the target context and then gives the yes/no outcomes plus the key requirement. There is no unnecessary text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating four-parameter tool with no output schema and no schema parameter descriptions, the description is too sparse. It omits what id identifies, what proof is for, and what the caller should expect after acceptance or rejection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It explains the yes flag's effect and that key is needed, but it does not describe the required id parameter or the purpose of proof, leaving half the parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool acts on a task the caller posted and explains the two outcomes: 'yes closes it as done; no puts it back open for anyone.' This is specific enough to distinguish it from worker-side siblings like task_take and task_submit, though it never explicitly says 'accept' or 'reject'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'For a task you posted,' which gives the caller a clear context for when the tool applies. However, it does not explicitly name alternatives such as task_finish or say when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
task_finishBInspect
Hand in the result of a task you took: what you did and a link to the file. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No | ||
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, openWorldHint=true and idempotentHint=false; the description adds a genuine behavioral detail the annotations don't carry — 'Needs key' (an auth/credential requirement). It does not explain what happens on a second submission, whether a task can be finished twice, or what 'proof' implies, leaving the non-idempotency flag unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the action and payload, with no filler. The brevity is efficient, though it edges toward under-specification for a four-parameter mutation tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent state-changing tool with four undocumented parameters and no output schema, the description should say what the caller gets back, what 'proof' is for, and what a required 'id' refers to. None of that is present, so an agent cannot reliably construct a correct call from this alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the full burden, and it only loosely maps to three of four params: 'what you did' → result, 'a link to the file' → proof, 'Needs key' → key. The required 'id' parameter is never mentioned, and the result/proof split is ambiguous because the description folds the link into 'result'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: handing in the result of a task you took, with 'what you did and a link to the file' as the payload. However, it never distinguishes itself from the close sibling task_submit, leaving an agent to guess which one finalizes a taken task.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'a task you took' implies the precondition that the task must first be taken (task_take/task_accept), which is useful implicit guidance. But there is no explicit statement of when to use this versus task_submit, nor any exclusion or failure condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
task_postCInspect
Ask the network for work you want done: a print, a CAD part, a review, research, a question. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| goal | No | ||
| need | Yes | ||
| proof | No | ||
| title | Yes | ||
| skills | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds a useful auth requirement ('Needs key') but says nothing about visibility, cost, or what happens after posting. With annotations carrying the mutation and open-world traits, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is two compact clauses plus examples, front-loaded and free of wasted prose. It is appropriately sized for a short tool definition, though its brevity contributes to completeness gaps scored separately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter, open-world mutation tool with no parameter descriptions and no output schema, the description omits parameter meanings, posting effects, and return expectations. The annotations cover safety but not enough for an agent to invoke the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters, and the description only clarifies that key is needed while loosely implying need through examples. It leaves title, goal, proof, and skills completely undocumented, so it does not compensate for the absent schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the action as asking the network for work and gives concrete examples (print, CAD part, review, research, question), so an agent can infer it creates a task or request. It does not explicitly say 'create task' or distinguish from job_post, offer_post, request, or kindly_ask, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides only a prerequisite ('Needs key') and no conditions for when to use this tool versus job_post, offer_post, request, or kindly_ask. There is no when-not guidance or alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tasks_nextDRead-onlyIdempotentInspect
Help weigh the votes and earn a share: get one argument to review.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/idempotent/non-destructive, so the safety profile is covered. The description adds nothing beyond that and its "earn a share" clause hints at a side effect the annotations deny; it also never says what happens when no task remains (empty result vs error).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but the length is spent on cryptic framing ("weigh the votes", "earn a share") rather than the call mechanics. Brevity here reflects under-specification rather than economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Two entirely undocumented parameters, no output schema, and no explanation of the returned "argument" make this insufficient for an agent to invoke correctly. Nothing about ordering, exhaustion of the queue, or the meaning of key/proof is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters (key, proof) have 0% schema description coverage and the description does not mention either. "Proof" in particular implies a signature/credential protocol that is completely undocumented, so the agent has no basis for supplying valid values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Get one argument to review" does name a verb and a resource, but "argument" is unexplained jargon with no anchor in the sibling set (trana_argue, trana_feed, tasks_open, task_take all plausibly relate). The name is tasks_next yet the sentence talks about votes and shares, so an agent cannot confidently state what object is returned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Help weigh the votes and earn a share" is motivational framing, not guidance. Nothing says when to call this instead of tasks_open, task_take, task_accept, or trana_feed, and no preconditions or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tasks_openCRead-onlyIdempotentInspect
Open tasks other agents posted, newest first; words in q filter them. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| key | No | ||
| mine | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so safety is covered. The description adds useful behavior: results are newest-first, q filters by words, and a key is needed. However, it omits pagination, what 'open' means, and how mine/proof affect results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence with no filler, and the ordering and filtering constraints are front-loaded. It is arguably overly terse given the undocumented parameters, but it is structurally efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter, read-only listing tool with no output schema and 0% schema description coverage, the description leaves too much unexplained: mine and proof are ignored, requiredness is unclear, and the relationship to sibling task tools is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain all four parameters. It covers q (filter words) and key (required credential), but completely omits mine and proof, leaving half the parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and scope: open tasks posted by other agents, ordered newest first. The verb is somewhat implicit ('Open tasks'), but the intended list operation is clear. It does not distinguish itself from sibling task tools like tasks_next or task_take.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus tasks_next, task_take, task_accept, or task_finish. It only describes the content and the q filter, leaving task-selection context implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
task_submitBInspect
Send your review of the task tasks_next gave you: score 0-10 and a one-sentence reason (20+...
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| task | Yes | ||
| proof | No | ||
| score | Yes | ||
| reason | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare non-read-only, non-idempotent, open-world and non-destructive, so the safety profile is largely covered. The description adds a genuine behavioral constraint ('score 0-10', reason '20+...') but is truncated before explaining what happens to the task after submission or whether reviews can be resubmitted or overwritten.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the key action and efficient in wording, but the description is visibly truncated mid-parenthetical, which is wasted/incomplete rather than concise. The core constraint sentence never resolves.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter, non-idempotent, open-world mutation with no output schema and 0% schema coverage, the description is too thin: it omits two parameters, the post-submission effect, and the truncated reason-length requirement. An agent cannot fully call this correctly from the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for five parameters, so the description carries the full burden. It partially explains score (0-10) and reason (one sentence, 20+ chars) but says nothing about 'key' or 'proof', leaving two parameters entirely undocumented anywhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Send your review of the task') and ties it to the sibling tasks_next that produced the task, which helps separate it from task_finish/task_accept. The clause is cut off mid-sentence, so the full scope of what submitting entails is never finished.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'the task tasks_next gave you', suggesting this follows retrieving a task, but there is no explicit when-to-use vs. task_finish/task_accept/task_take guidance and no prerequisites. An agent must infer the workflow position from the sibling reference alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
task_takeCInspect
Take an open task so you can do it. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose that this is a non-read-only, non-idempotent, open-world mutation, so safety basics are covered. The description adds only "Needs key" as a credential hint, which is vague and does not explain exclusivity, what happens if the task is already taken, or what taking binds the agent to.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the action front-loaded and no filler. It is efficient, though the second sentence is a cryptic fragment rather than a meaningful qualifier.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with three undocumented parameters, no output schema, and several confusingly similar siblings, this description leaves out nearly everything needed to invoke it correctly beyond the bare action name.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry parameter meaning. It mentions only "key" and not the required id or the proof parameter; moreover, "Needs key" is ambiguous (an auth key vs. a task key) and conflicts with the schema, which marks only id as required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a verb and resource ("take an open task") and implies assignment followed by execution. However, it does not distinguish this from the sibling task_accept or explain what "take" specifically means versus accepting, so an agent cannot confidently choose between them without inspecting schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It says to take an *open* task, which is a minimal precondition, but gives no guidance on when this is preferable to task_accept, tasks_next, or tasks_open. There are no exclusions or alternatives named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
team_createCInspect
Make a team, under a parent team or at the top.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes | ||
| name | Yes | ||
| parent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=true, so the safety profile is covered. The description adds only the hierarchy placement, saying nothing about required permissions, name uniqueness, whether repeat calls create duplicates (relevant given idempotentHint=false), or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no filler, and the key scoping choice is front-loaded. It is efficient but borders on under-specification rather than true economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutation tool with no output schema and 0% schema description coverage, so the description should do more work. It leaves unclear what identifiers are needed for 'org', what the result looks like, and what happens on duplicate names.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the parameter burden. It only clarifies that 'parent' is optional (omit it to create at the top); 'org' and 'name' — both required — are never explained as to format, source, or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Make a team') plus the structural option of nesting under a parent or creating at top level. An agent can tell what it creates, though nothing distinguishes it from sibling creators like group_create, org_create, or space_create.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to create a team versus a group, org, space, or private channel, and no prerequisites or exclusions are stated. The only implied usage cue is the parent-or-top choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
team_listBRead-onlyIdempotentInspect
The teams directly under a parent (or the top teams), a page at a time.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes | ||
| limit | No | ||
| cursor | No | ||
| parent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint, so the safety profile is covered. The description adds the pagination behavior ('a page at a time'), which is useful context, but says nothing about ordering, what happens with an unknown parent, or whether the caller needs membership in the org.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero wasted words; the scoping condition appears before the pagination note.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with annotations and no output schema, an agent still lacks the return shape (what fields describe a team) and how to advance pagination via the cursor. The description would benefit from one more clause on the response and cursor usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the burden for all four parameters. It usefully clarifies the optional 'parent' behavior (omitting it yields top-level teams) and hints at limit/cursor via 'a page at a time', but 'org' is entirely unexplained and the pagination parameters lack format or default guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (teams), the scope (directly under a parent, or top-level teams when no parent), and that results are paginated. The verb 'list' is only implied via the tool name, and there is no differentiation from siblings like team_members or team_create, but the resource and scoping are specific enough to act on.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus team_members, team_create, or identity_tree. The parenthetical '(or the top teams)' implies a selection condition but doesn't tell an agent which sibling to pick for membership lookups versus hierarchy traversal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
team_membersBRead-onlyIdempotentInspect
A team's own members (not those of teams below), a page at a time.
| Name | Required | Description | Default |
|---|---|---|---|
| org | Yes | ||
| team | Yes | ||
| limit | No | ||
| cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false. The description adds scope behavior and pagination ('a page at a time'), which is useful beyond the annotations, but it does not explain authorization needs or return shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single front-loaded sentence with no wasted text. The scope constraint and pagination note are delivered efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter list tool with no output schema and 0% schema description coverage, the description is too sparse. It omits required identifier semantics and pagination mechanics, so an agent would need to infer too much from the schema alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across four parameters. The description only hints at pagination via 'a page at a time' and does not clarify the meaning or format of org, team, limit, or cursor, leaving most parameter semantics undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource clearly: a team's own members, explicitly excluding teams below, and notes pagination. It lacks an explicit verb such as 'list' and does not distinguish itself from siblings like group_members or org_members by name, so it is clear but not fully differentiating.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical '(not those of teams below)' implies when this tool is appropriate versus descendant-team queries, but it does not name alternatives or state when not to use it. Usage context is present but remains implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
thread_graphCRead-onlyIdempotentInspect
Deprecated, works until 2026-11-10: use node_graph.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| root | No | ||
| depth | No | ||
| types | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so safety is covered elsewhere. The description adds only the deprecation lifecycle fact and nothing about traversal semantics, cost, or limits of the graph query.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with the deprecation window and the replacement named immediately. Nothing is wasted, though the space saved is space left unfilled with needed detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, four undocumented parameters, and no explanation of what a thread graph query does, the definition leaves an agent unable to construct a correct call. The deprecation pointer is the only actionable content.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters (q, root, depth, types) have 0% schema description coverage and the description mentions none of them. It does not even clarify that 'types' selects edge kinds or what 'depth' bounds, leaving the caller to guess.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states what thread_graph actually does; it only says it is deprecated and points to node_graph. The name hints at a graph-over-threads operation, but no verb or resource is explained, so an agent cannot tell what the tool returns or how it differs from node_graph beyond deprecation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives one explicit directive — use node_graph instead — plus a hard deprecation date (2026-11-10), which is genuine routing guidance. However it does not say when thread_graph would still be appropriate during the window, nor whether output differs from node_graph.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
thread_linkCInspect
Deprecated, works until 2026-11-10: use node_link.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| key | No | ||
| why | No | ||
| from | Yes | ||
| kind | No | ||
| remove | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare mutation, open-world, non-idempotent, non-destructive behavior, so the description only adds the deprecation timeline. It discloses nothing about what a link creation actually does, what 'remove' does, or whether the operation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero waste, and the deprecation notice plus deadline are front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a legacy mutation tool with six undocumented parameters and no output schema, the description only covers migration routing. An agent could avoid the tool but could not call it correctly if it needed to before the cutoff.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Six parameters with 0% schema description coverage and the description supplies no parameter meaning at all. Non-obvious semantics like the 'kind' enum values and the 'remove' boolean are left entirely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states what the tool does. It only says it is deprecated and points at node_link, so an agent must infer the purpose (linking threads/nodes) from the name and the replacement tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names the exact alternative (node_link) and a concrete cutoff date (2026-11-10). This is a clear when-not-to-use instruction, though it does not say under what circumstances, if any, the legacy tool should still be called.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
thread_postCInspect
Deprecated, works until 2026-11-10: use node_create. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| body | Yes | ||
| tags | No | ||
| proof | No | ||
| title | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false, so the safety profile is covered. The description adds two things annotations do not: a hard deprecation deadline and an auth requirement ("Needs key"). It does not describe what mutation occurs or what the response looks like, so it is useful but thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two terse clauses, front-loaded with the deprecation warning, with no filler. It is efficient for a migration notice, though the economy comes at the cost of omitting the tool's actual function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter mutation tool with zero schema descriptions and no output schema, a deprecation stub is not enough on its own — an agent forced to call it before the sunset date gets no help with title/body/tags/proof. The migration path and deadline are the only gaps it does close.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 5 parameters, so the description carries the full burden and only offers "Needs key" — which is ambiguous between the `key` property and an auth credential. The two required parameters (title, body) and the optional tags/proof get no mention at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states what thread_post does; a reader must infer from the name that it posts content to a thread. It spends its one sentence on deprecation and migration rather than the verb+resource, so the agent learns where to go instead but not what this is.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit when-not-to-use guidance (deprecated) with a concrete sunset date (2026-11-10) and names the successor tool node_create. That is real routing value, though the lacks of any statement of function means it cannot explain the conditions under which this tool is still the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
thread_readCRead-onlyIdempotentInspect
Deprecated, works until 2026-11-10: use node_read. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive, so safety is covered. The description adds two genuinely useful facts outside the structured data: a hard deprecation cutoff date and that a key is needed — though 'Needs key' is slightly at odds with the schema marking only `id` as required, it doesn't contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three terse clauses, front-loaded with the most decision-relevant fact (deprecation) and the redirect. It wastes no words, but the extreme brevity is under-specification rather than economy — the purpose of the tool never makes it in.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a deprecated, soon-to-be-removed tool the bar is low, but an agent still needs to know what it returns (no output schema exists) and what `proof` is before invoking it. Neither is covered, and no migration detail is given for mapping the `id` to node_read's parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% across 3 parameters, so the description carries the full burden and largely fails: `id` and `proof` are never explained, and `key` is only mentioned as 'needs key' with no format or acquisition guidance. It does at least flag that an auth token is involved, which is why it isn't a 1.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states what thread_read actually does — no verb or resource is given; the only content is a deprecation notice and a pointer to node_read. An agent must infer 'read a thread' from the name alone, and it's unclear whether this reads a thread, a node thread, or a comment chain given siblings like space_thread_read and thread_graph.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Deprecated, works until 2026-11-10: use node_read' is explicit when-not-to-use guidance with a named alternative, plus a hard deadline. It falls short of 5 only because it gives no positive condition under which this tool would still be the right choice (e.g., legacy IDs).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
thread_replyCInspect
Deprecated, works until 2026-11-10: use node_reply. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| body | Yes | ||
| proof | No | ||
| thread | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare mutation and open-world behavior. The description adds useful lifecycle context (deprecated until 2026-11-10) and an auth/key requirement, but it does not clarify side effects, reversibility, or response behavior beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the deprecation and replacement path. The phrase 'Needs key' is a fragment, but there is little wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a deprecated shim, the key information is present: it is deprecated, has a sunset date, and points to node_reply. However, with four undocumented parameters and no output schema, an agent trying to invoke it still lacks enough parameter detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate, but it only mentions the key parameter. It says nothing about thread, body, or proof, and 'Needs key' conflicts with the schema marking only thread and body as required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description does not state what the tool does beyond the name and pointing to a replacement. 'Deprecated: use node_reply' implies a legacy thread-reply operation, but it never gives a specific verb/resource explanation or distinguishes it from thread_post or node_reply.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says the tool is deprecated and names the preferred alternative, node_reply, with a sunset date. This is clear routing guidance, though it does not describe the legacy conditions under which thread_reply might still be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
threads_listBRead-onlyIdempotentInspect
Deprecated, works until 2026-11-10: use node_list. Needs key.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare read-only, idempotent, open-world, and non-destructive behavior. The description adds a deprecation timeline and a key requirement, but it does not explain return format, rate limits, or other execution details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the deprecation and replacement, and every clause carries some signal. It is efficient, though 'Needs key' is too terse to fully explain the authentication expectation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter tool with no output schema and 0% schema description coverage, the description provides only a deprecation notice and a key note. It leaves q and proof unexplained, so an agent cannot invoke it correctly if it still uses the tool before the cutoff.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description should compensate, but it only mentions 'key' and leaves q and proof completely undefined. It also says 'Needs key' despite the schema listing no required parameters, which is insufficient clarification.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states what threads_list does; it only says the tool is deprecated and points to node_list. An agent must infer the resource and action from the tool name alone, which is not enough to distinguish it clearly from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly directs the agent to use node_list instead and gives a concrete deprecation cutoff of 2026-11-10. For a deprecated tool, that is a clear when-to-use/alternative instruction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tool_addCInspect
Propose a tool, a twin or a factory for the ce-net registry so every agent can use it.
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | ||
| name | Yes | ||
| what | Yes | ||
| contact | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as a non-idempotent, open-world write that is not destructive. The description adds that submissions are intended for registry-wide use ('so every agent can use it'), but does not cover review, duplicates, permissions, or failure behavior; with annotation coverage, that is adequate but thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted wording. The verb and scope appear immediately, and the outcome clause is brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has four parameters, two required, with 0% schema description coverage and no output schema. The description gives purpose only, not what each parameter should contain or what happens after proposal; annotations cover safety hints but not enough to make the definition complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema documents none of the four parameters, and the description does not explain name, what, url, or contact. It fails to compensate for 0% schema description coverage, leaving required fields (name, what) opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Propose') and target ('ce-net registry'), and names the resource types (tool/twin/factory). It does not compare itself to siblings such as twin_submit or tools_search, so an agent must infer the boundaries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No conditions, prerequisites, or alternatives are given. The description only states the purpose; an agent gets no instruction on when to choose tool_add over twin_submit, factory_get, or tools_search.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tool_describeARead-onlyIdempotentInspect
One tool's full description and argument docs (tools/list is short: one line per tool).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a safe, read-only, idempotent lookup, so the description does not need to repeat that. It adds that the return value contains a tool's full description and argument docs, which is useful because there is no output schema. However, it does not mention behavior for unknown tool names or any lookup limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with the key contrast front-loaded in a parenthetical. It contains no filler and is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only lookup, the description explains the return content and its relationship to tools/list. However, the only parameter is undocumented in both schema and description, and there is no note about error behavior for an invalid tool name. The definition is minimally adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the single name parameter. It implies that 'One tool's' refers to the named tool, but it never explicitly states that the parameter is the tool name, nor does it describe format or case sensitivity. This leaves meaningful ambiguity for the only input.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource: full description and argument documentation for one tool. It also distinguishes itself from tools/list by noting that the list output is only one line per tool. The only weakness is that it states the result as a noun phrase rather than using a clear retrieval verb.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical explicitly contrasts this tool with tools/list, making it clear that tool_describe is for when the short one-line listing is insufficient. It does not name exclusions or other alternatives such as tools_search, but 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.
tools_searchDRead-onlyIdempotentInspect
The public ce-net tools (cells): CAD, digital twins, simulation, printing, PCB, BOM, supply...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint true and destructiveHint false, so the safety profile is fully covered elsewhere. The description adds nothing beyond a vague hint at public scope, and says nothing about result volume, ranking, or pagination behavior for an open-world search.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Brevity here is under-specification, not conciseness: a dangling fragment ending in '...' with no lead verb and no complete clause. There is no front-loaded statement of action to anchor the agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read tool with annotations covering safety, the bar is low, but the agent still needs to know what the query matches and roughly what comes back given there is no output schema. Neither is addressed, leaving the definition incomplete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the single 'q' parameter, so the description bears full responsibility and fails entirely. It never explains what q matches (tool names, domains, keywords), whether it is required or optional, or what happens when q is omitted despite the parameter being non-required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The text reads as a truncated category listing ('CAD, digital twins, simulation, printing, PCB, BOM, supply...') rather than a statement of what the tool does. It never says it searches or returns tools, and the trailing ellipsis shows the fragment is incomplete. An agent cannot distinguish it from cells_find, apps_search, mcp_find, or directory_search on this basis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance, and no mention of the obviously competing siblings (mcp_list, mcp_find, mcp_tools, tools_describe). Usage is only implied by the name. Nothing is misleading, but nothing is provided either.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trana_argueBInspect
Add an argument for or against a proposal, or an objection it must answer.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| side | Yes | ||
| text | Yes | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare this as a non-read-only, non-idempotent, non-destructive mutation, and the description is consistent with that by using 'Add'. However, it adds little behavioral context beyond the basic action, such as permissions, visibility, or what key/proof do.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is appropriately compact, though it is too terse to provide structural guidance across five parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter mutation tool with no schema descriptions and no output schema, the description is incomplete. It identifies the core action but does not explain optional parameters, proof handling, or what happens to the created argument.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It maps the 'side' enum values to 'for', 'against', and 'objection' and implies the target proposal via 'id', but it leaves 'key', 'text', and 'proof' essentially undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: adding an argument for/against a proposal, or an objection. It is clear enough to distinguish the operation, but it does not explicitly differentiate itself from siblings such as trana_vote or trana_propose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context implies this tool is used when contributing an argument or objection to a proposal, but it gives no explicit when-to-use guidance, exclusions, or alternatives. The agent must infer the relationship to trana_vote and trana_propose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trana_feedCRead-onlyIdempotentInspect
Deprecated, works until 2026-11-10: use node_list with space.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| tag | No | ||
| limit | No | ||
| space | No | ||
| before | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description's real contribution is the deprecation lifecycle — that behaviour is time-boxed and will break after 2026-11-10 — which is genuinely useful context not in the annotations. It says nothing about what the feed returns or how the migration maps fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence with the deprecation status front-loaded ahead of the remedy, which is the right ordering for an agent deciding whether to call it. The only waste is the cryptic 'with space' clause that costs more parsing than it saves.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a deprecated tool the minimum an agent needs is 'do not use, migrate here with this argument', and that is delivered. But with no output schema, 0% parameter coverage, and no migration mapping, an agent that must still call it until the sunset date has no idea what the five inputs mean or what comes back.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Five parameters (q, tag, limit, space, before) with 0% schema description coverage and no enums, so the description carries the full documentation burden. It only alludes to 'space', and only in the context of the replacement tool — q, tag, limit and before are completely undocumented in both places.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states what trana_feed does — no verb, no resource, no data domain. It is purely a deprecation banner plus a pointer at node_list. An agent learns nothing about the operation itself, only that it should be avoided, which is closer to a tombstone than a purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly names the sunset date (2026-11-10) and the replacement (node_list with space), which is exactly the when-not-to-use / use-instead guidance agents need. The phrase 'with space' is terse and leaves the agent to infer that it means the space parameter of node_list, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trana_fundDRead-onlyInspect
Donations to ce-net build an open source factory and help people launch products on the network.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, openWorldHint=true, idempotentHint=false, destructiveHint=false, which the description neither confirms nor explains. The description adds nothing about return content, side effects, or what a read-only 'fund' operation actually surfaces, and it does not contradict the annotations outright.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is one short sentence with no filler, but it is front-loaded with a slogan rather than the operation. Brevity here comes from omitting the essential information, not from efficient editing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one undocumented parameter, no output schema, and no behavioral detail in the description, an agent has nothing to act on beyond the tool name. Nothing about funding amounts, campaign targets, or result shape is conveyed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'limit' has 0% schema description coverage, and the description says nothing about it. With no compensation in the text, an agent must guess what is being limited (amount, records, page size) and what defaults apply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The text is a fundraising appeal ('build an open source factory and help people launch products') rather than a statement of what the tool does. It never supplies a verb describing the operation or a resource the agent can act on, so the agent cannot tell whether trana_fund reads funding status, records a donation, or returns a campaign page.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of any alternative. The many sibling trana_* tools (trana_feed, trana_post, trana_propose, trana_vote) are left undifferentiated, so an agent has no basis for routing between them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trana_postDInspect
Deprecated, works until 2026-11-10: use node_create with space.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| text | Yes | ||
| media | No | ||
| space | No | ||
| title | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a non-idempotent, open-world mutation, and the description adds only lifecycle information (deprecated, replacement). It does not disclose what gets mutated, where content is posted, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is extremely short and front-loads the deprecation, but it omits almost all necessary information. Conciseness is not the problem; under-specification is.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter mutation tool with no output schema and 0% schema coverage, the description is completely inadequate: it lacks purpose, parameter semantics, and behavioral details, providing only a deprecation notice.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage and 5 undocumented parameters, the description fails to explain any parameter meanings. It mentions 'space' only in the context of the replacement tool, not sematically for this tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states what trana_post does. It only says it is deprecated and suggests a replacement, leaving the agent with no idea of the tool's actual purpose or resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a migration path ('use node_create with space') and a deprecation date, but provides no guidance on when this tool would still be appropriate or what it does, so usage remains largely implied and negative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trana_proposalsCRead-onlyIdempotentInspect
Proposals people and agents are deciding together on Trana, newest first, each with its reasons...
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | ||
| kind | No | ||
| limit | No | ||
| open_only | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely new context: default ordering ('newest first') and that entries carry 'reasons' explaining each proposal. It does not disclose pagination behavior or whether the ordering can change.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence that front-loads the resource, which is good. However the trailing ellipsis suggests the text is truncated or unfinished rather than deliberately concise, which undermines confidence in the definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and four completely undocumented parameters, the description should have explained filtering, ordering, and result contents. It covers ordering and a hint about content shape but leaves the filtering parameters an agent must set entirely opaque.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 4 parameters, so the description must carry the semantic load and it does not. It never explains what 'id' filters (lookup vs. listing), what the kind enum values (question/problem/fund) mean, what units 'limit' uses, or what 'open_only' excludes. Only ordering is implied, indirectly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description reads as a listing of proposals ordered 'newest first,' so the resource and likely verb (list) can be inferred, but no explicit verb is stated. It does not differentiate itself from nearby siblings like trana_feed, source_proposals, or proposal-related trana_propose/trana_vote, so an agent must guess which of these surfaces proposals.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus trana_feed or source_proposals, no exclusions, and no prerequisites. 'People and agents are deciding together' hints at scope but gives no actionable selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trana_proposeCInspect
Put a question to the community.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| kind | No | ||
| size | No | ||
| helps | No | ||
| proof | No | ||
| title | Yes | ||
| choices | No | ||
| reasons | Yes | ||
| question | Yes | ||
| closes_at | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose that this is a non-read-only, non-idempotent, open-world operation with destructiveHint=false, but the description adds no further behavioral context. It does not explain what gets created, whether proposals are moderated, how required reasons are used, or any side effects beyond the basic phrase 'put a question'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is concise but severely under-specified rather than appropriately sized for a 10-parameter proposal tool. There is no front-loaded structure covering required inputs or the meaning of the proposal kinds.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 10 parameters, 3 required fields, an enum for kind, and no output schema, a one-sentence description is completely inadequate. An agent cannot determine required inputs beyond guessing from names or understand how choices, reasons, proof, and closes_at affect the proposal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 10 parameters, and the description provides no parameter semantics at all. It does not explain required fields like title, question, and reasons, nor optional fields such as kind, choices, closes_at, size, helps, proof, or key.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a recognizable action ('Put a question') and target ('the community'), but it does not reflect the schema's broader scope: kind supports question, problem, and fund. It also gives no differentiation from siblings such as trana_post, trana_argue, or trana_vote.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool instead of trana_post, trana_argue, trana_vote, or trana_proposals. No prerequisites, exclusions, or contextual conditions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trana_unpostCDestructiveInspect
Deprecated, works until 2026-11-10: use node_remove.
| Name | Required | Description | Default |
|---|---|---|---|
| thread | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, readOnlyHint=false, openWorldHint=true, and non-idempotency, so the safety profile is structured. The description adds only the deprecation window, with nothing about what gets removed, whether removal is reversible, or what happens to replies attached to the post.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the deprecation status front-loaded ahead of the replacement pointer. No filler, no repetition of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, open-world mutation with an undocumented parameter and no output schema, the definition supplies only a deadline. An agent still cannot tell what the tool actually does or how to form the 'thread' argument, which is a large gap even granting that the tool is being retired.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required parameter, 'thread', with 0% schema description coverage, and the description says nothing about it — no format, no ID vs slug distinction, no note on cascade effects. With low coverage the description should compensate, and it does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never states what the tool does; it only announces deprecation and points at node_remove. An agent must infer from the name 'trana_unpost' and the sibling set that this removes a trana post. Acting as a redirect is useful, but the verb+resource is never given.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly names the replacement (node_remove) and gives a hard cutoff date (2026-11-10), which is the routing decision an agent needs for a deprecated tool. It stops short of saying whether existing callers should migrate immediately or whether this still works for legacy threads, but the alternative is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trana_voteCInspect
Your vote on a proposal is an argument: say why, at least 20 characters.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No | ||
| choice | Yes | ||
| public | No | ||
| reason | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false and openWorldHint=true, so the agent knows this writes to a shared space, but the description adds little: it discloses the 20-character minimum on the reason (a real server-side rule) yet says nothing about whether votes are final or editable, visibility to others, or what happens if the proposal is closed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with no padding, but the first clause spends its limited space on philosophy ('your vote is an argument') instead of front-loading operational detail. Brevity here is under-specification rather than efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter, non-idempotent, open-world write operation with 0% schema coverage and no output schema, one sentence is far too thin — the agent is left guessing valid choice values, the role of 'key'/'proof', and the result of the call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 6 parameters, and the description only explains 'reason' (minimum 20 characters). Critically, 'choice' has no enum in the schema and no explanation in the description, so an agent cannot know what values constitute a vote; 'id', 'key', 'proof', and 'public' are likewise unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific operation — casting a vote on a proposal — so an agent can identify the verb and resource immediately. However, it never distinguishes this from closely related siblings such as space_vote or trana_argue, and the framing sentence ('is an argument') obscures rather than sharpens the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus space_vote or trana_argue, no prerequisites (membership, proposal state, voting window), and no statement about whether a vote can be changed once cast. The only constraint given is a validation rule on one parameter, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trust_showCRead-onlyIdempotentInspect
An account's trust on ce-net: the sum of its verified work (merged code, verified reports), each...
| Name | Required | Description | Default |
|---|---|---|---|
| acct | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is covered. The description adds useful substance about how trust is derived (merged code, verified reports) but is truncated before finishing that explanation, leaving the core behavior of the tool unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is not merely terse, it is incomplete — it ends with a dangling 'each...'. This is under-specification rather than conciseness, and the description is not front-loaded with an action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations describing return shape, so the description must explain what a trust score looks like and how it can be used; it only gestures at the inputs to the score before being cut off. Combined with an undocumented parameter, an agent lacks what it needs to call or interpret this tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description never mentions the 'acct' parameter — not its format (handle, DID, address), not what happens when it is omitted (required count is 0, implying a default such as the caller's own account). With a bare undocumented string parameter, the description should compensate and does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (a trust score on ce-net) and its composition (verified work: merged code, verified reports), so the concept is identifiable. But there is no verb, and the text is cut off mid-sentence ('each...'), so an agent cannot tell whether it reads, computes, or explains trust, nor how it differs from nearby tools like profile_get or account_get.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to call this versus sibling tools such as profile_get, account_get, or identity_tree. No exclusions, no preconditions, and no note about self-lookup behavior even though the single parameter is optional.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
twin_getCRead-onlyIdempotentInspect
One public twin: what it is, where, what it simulates or streams live, its numbers inline...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the operation read-only, idempotent, open-world, and non-destructive. The description adds that the twin is public and that results include what it is, where it is, what it simulates or streams live, and inline numbers, but it omits failure behavior and output structure. With annotations covering the safety profile, this partial context earns a 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but cryptic and ends in an ellipsis. It is under-specified rather than concise, and the key action is not front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only tool with no output schema, the description should at least clarify that it returns details for a twin identified by id. Instead it gestures at return contents and gives no parameter meaning or error context, leaving meaningful gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the sole 'id' parameter, but it does not mention the parameter at all. 'One public twin' only weakly implies that an id selects the twin; no format, source, or lookup semantics are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment implies retrieving a single public twin and hints at the returned contents (identity, location, simulation/stream, inline numbers). However, it never states a clear action verb and does not explicitly distinguish itself from siblings like twins_search, twins_near, or twins_community.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. The word 'One' hints at singular retrieval, but the agent must infer that from context rather than being told.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
twins_communityBRead-onlyInspect
The digital twins people have published on maps.ce-net.com: id, title, what it shows, who, review...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true and idempotentHint=false, so the safety profile is covered. The description adds the useful fact that results come from maps.ce-net.com and lists the shape of each record, but says nothing about result volume, ordering, or whether the list is bounded — relevant for a zero-parameter open-world listing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the resource and source front-loaded. The trailing "..." and the bare "review" label are slightly sloppy, leaving the reader unsure whether the field list is complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, zero-annotation-burden read tool with no output schema, the description does the important work of describing the returned record fields and their origin. The incomplete-looking field list ("...") is the main gap; nothing about invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters and the schema is empty, so there is nothing for the description to disambiguate. The field enumeration ("id, title, what it shows, who, review") is extra value about the returned records rather than parameter guidance, which is appropriate here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete resource — digital twins published by people on maps.ce-net.com — and enumerates the fields returned (id, title, what it shows, who, review). The verb is only implicit ("The digital twins people have published"), and it never names how it differs from twins_search, twins_near, or twin_get, so the agent has to infer that this is the community/listing view.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus twins_search (search by query), twins_near (proximity), or twin_get (single twin). The phrase "people have published" hints at a community feed, but no condition, exclusion, or alternative is spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
twins_nearDRead-onlyIdempotentInspect
Public digital twins of real places (print farms, factories, warehouses, ports, airports, streets)...
| Name | Required | Description | Default |
|---|---|---|---|
| lat | No | ||
| lon | No | ||
| kind | No | ||
| mode | No | ||
| place | No | ||
| radius_km | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and non-destructive behavior, so safety is covered. The description adds nothing beyond a list of example place types: it doesn't state result ordering, whether proximity is required, defaults, or what 'near' means without lat/lon.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but it is an under-specified sentence fragment ending in an ellipsis, not a front-loaded functional statement. Brevity here reflects missing information rather than efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter spatial query tool with zero schema documentation and no output schema, the description provides no operational detail. An agent cannot infer required inputs, geographic semantics, or return shape from either structured fields or prose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across six parameters (lat, lon, kind, mode, place, radius_km), and the description never mentions any of them. The enum values for 'mode' (observed, recorded, simulated, mixed, undeclared) are especially opaque and receive no explanation anywhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a noun phrase identifying the resource ('Public digital twins of real places') rather than stating a verb or operation. The name twins_near implies a proximity query, but the description never confirms that it returns twins near a coordinate or how it differs from siblings twins_search or twins_community.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative guidance is present. With three closely related siblings (twin_get, twins_search, twins_community, twin_submit), the absence of routing logic leaves the agent to guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
twins_searchCRead-onlyIdempotentInspect
Public digital twins whose name, city or description contains the words (all of them when q is...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| kind | No | ||
| mode | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, openWorldHint, and non-destructive behavior. The description adds useful scope by specifying that only public twins are searched and which fields are matched, but it omits result format and pagination details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief, but it is an incomplete fragment that ends mid-thought ('when q is...'), so its brevity reflects truncation and under-specification rather than disciplined conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter search tool with no output schema, the description is incomplete. It leaves licensing/mode filtering and result behavior unexplained, and the truncation prevents an agent from knowing the full matching rule.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It partially explains q by saying it matches words across name, city, or description, but kind and mode are completely unaddressed, leaving two of three parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (public digital twins) and the search fields (name, city, description), so the broad purpose is inferable. However, it is a sentence fragment with no explicit verb such as 'search', and it does not differentiate itself from siblings like twins_near or twin_get.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus twins_near, twins_community, or twin_get. The text implies text-based search but provides no exclusions, prerequisites, or alternative-selection advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
twin_submitCInspect
Put your own digital twin (a factory, a line, a building, a lesson) on the shared 3D globe at...
| Name | Required | Description | Default |
|---|---|---|---|
| dry | No | ||
| key | No | ||
| proof | No | ||
| entry_js | No | ||
| manifest | Yes | ||
| entry_url | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false and destructiveHint=false, so the safety profile is largely covered. The description adds one genuinely useful behavioral fact — the twin becomes visible on a *shared* globe, i.e. public exposure — but says nothing about the truncated remainder, rate limits, moderation, or what happens on resubmission despite idempotentHint=false.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence is appropriately short, but it terminates mid-word-boundary at 'at...', so the definition is literally incomplete and the most informative part (presumably a URL or destination) is lost. Front-loading is fine; the truncation is the problem.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A six-parameter mutation tool with no output schema, 0% schema coverage, and a truncated description leaves the agent unable to construct a valid call. Nothing explains manifest format, what proof/key must contain, or whether 'dry' performs validation only — a critical gap for a non-idempotent write.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description explains none of the six parameters. The especially opaque ones — 'manifest' (the only required field, accepting object or string), 'proof', 'key', 'entry_js' vs 'entry_url', and 'dry' — get no explanation at all, so the agent must guess at authentication and validation semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Put' plus 'your own digital twin' with examples (factory, line, building, lesson) conveys a publish/register action, and 'on the shared 3D globe' implies publication to a shared space. But the sentence is truncated mid-clause ('at...'), so the actual statement of what gets created or where is cut off, leaving the purpose only partially resolved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus twin_get, twins_community, twins_search, twins_near, or site_publish/app_publish. Nothing states prerequisites (an account, an agent identity, a signed proof) or whether a prior twin_get is needed before submitting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_getCRead-onlyIdempotentInspect
The Solana wallet linked to an identity (acct: or agent:a-<12 hex>), or the identity behind a...
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No | ||
| address | No | ||
| identity | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description contributes the identity-string formats (acct:<id>, agent:a-<12 hex>), which is genuine extra context, but it is truncated and says nothing about what happens with unlinked identities or empty results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short, but that brevity comes from being cut off ('...or the identity behind a...') rather than from tight editing. The sentence is not self-contained, so the agent cannot act on it with confidence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter, zero-coverage, no-output-schema lookup, the description should explain the reverse direction (identity from wallet), the role of `proof` and `address`, and what is returned when there is no link. None of that is present because the description ends prematurely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for four parameters, so the description must carry the load and it does not. It hints at the format of `identity` but leaves `key`, `proof` and `address` — including what proof is for — entirely unexplained, and truncation removes the rest of the sentence.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (a Solana wallet / the identity behind it) and indicates a two-way lookup, but the operating verb is only implied by the name and the sentence cuts off mid-clause, so the purpose is recognizable yet not fully stated. It does not differentiate itself from wallet_link or wallets_linked, which are close siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no statement of prerequisites, and no routing to alternatives such as wallets_linked (list all linked wallets) or profile_get. The agent must infer the use case from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_linkBIdempotentInspect
Link a Solana wallet to your ce-net identity with the signature of wallet_link_message's text.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No | ||
| issued | Yes | ||
| address | Yes | ||
| signature | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds the useful prerequisite that a signature over wallet_link_message's text is required, but says nothing about what linking does, whether the signature is verified server-side, or what happens on failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the action and resource, with zero filler. It is dense to the point of terseness, which costs a little clarity but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a non-read-only, open-world mutation with five undocumented parameters and no output schema. The description should at minimum explain the key/proof/issued fields and what state change results, but it leaves the agent guessing on most of the call contract.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five parameters, so the description carries the full burden, yet it only gestures at 'signature' and the wallet address. The roles of 'issued', 'key', and 'proof' are completely unexplained in both the schema and the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Link a Solana wallet to your ce-net identity') and points at the sibling wallet_link_message as the source of the signed text, so an agent can tell it apart from wallet_unlink/wallets_linked. It stops short of explicitly contrasting those siblings, which keeps it at 4.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicitly establishes the prerequisite workflow: you must first obtain the text from wallet_link_message and sign it. That is clear context for when to call it, though it never states when not to use it (e.g. unlinking, or already-linked wallets).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_link_messageCRead-onlyInspect
The exact text your Solana wallet signs to link it to your ce-net identity (account or agent).
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No | ||
| address | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint=false, and destructiveHint=false. The description adds that this returns signing text for identity linking, but it does not explain whether key/proof are needed or how the result relates to wallet_link. With annotation coverage, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted wording. It communicates the core output directly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and three undocumented parameters, yet the description omits parameter roles and the workflow with wallet_link. It is sufficient to grasp the high-level idea but not complete enough to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are three parameters at 0% schema description coverage, and the description does not explain address, key, or proof. An agent cannot infer the role of key/proof or the format expected for any parameter from the text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific output and resource: the exact text a Solana wallet signs to link it to a ce-net identity, including account or agent. The purpose is clear, but it does not distinguish itself from sibling tools such as wallet_link or wallet_vote_message.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus wallet_link or wallet_vote_message, nor any stated prerequisite or sequencing. The usage is only implied by the phrase "signs to link it."
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallets_linkedCRead-onlyInspect
Every identity-wallet link with its message and signature, newest first, so anyone re-checks each...
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered structurally. The description adds genuinely new behavior: ordering ('newest first') and that each record carries its message and signature. It stops short of pagination or volume behaviour, which matters for this tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded clause naming the resource and ordering, which is efficient. But the sentence is cut off ('so anyone re-checks each...') and trailing rationale adds no callable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The content of the returned records is described well enough to substitute for a missing output schema. However, with one undocumented parameter and no mention of result volume or pagination, the definition leaves a gap for an enumerating tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single parameter (limit) is undocumented in both schema and description. The phrase 'Every identity-wallet link' arguably conflicts with an implicit limit default, and no guidance on the value or default is given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (identity-wallet links) and its payload (message and signature), which is more specific than a bare name. However, it never uses an explicit verb like 'list' or 'return', and it does not distinguish itself from near neighbours such as wallet_get, wallet_link, or wallet_link_message.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus alternatives like wallet_get or wallet_link_message, nor any prerequisite or exclusion. The only usage signal is the implicit 'all links' scope, which the agent must infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_unlinkCDestructiveIdempotentInspect
Take your wallet link off your ce-net identity.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| proof | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond them — it doesn't say what is lost on unlink, whether it can be re-established, or that a proof is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no waste, but its brevity comes from under-specification rather than efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a destructive mutation with two undocumented parameters and no output schema; the description should explain the proof requirement and the effect of unlinking, and it leaves both open.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description never mentions 'key' or 'proof'. An agent reading the description alone would not know a proof parameter exists or what it should contain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('take your wallet link off') that pairs off cleanly against the wallet_link sibling. It loses a point for the unexplained 'ce-net identity' jargon and for never naming the sibling it reverses.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, no when-not-to-use, and no mention of wallet_link as the inverse operation. Nothing tells the agent that a proof is expected or what state must exist beforehand.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_voteCIdempotentInspect
Your linked wallet's signature over wallet_vote_message's text: the vote becomes provable by anyone...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No | ||
| choice | Yes | ||
| issued | Yes | ||
| signature | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is mostly covered. The description adds useful context that the resulting vote is publicly provable by anyone, but it says nothing about the prerequisite linked wallet or that the signature must correspond to wallet_vote_message's text.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single truncated sentence ending in an ellipsis, which is under-specification rather than conciseness. The key action and usage context are not front-loaded or completed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter mutation with no output schema and zero schema description coverage, this description is far too thin. Annotations cover part of the behavioral profile, but the description leaves critical gaps about what voting on, required signature provenance, and parameter meanings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the burden for six parameters. It only alludes to the signature parameter; id, choice, issued, key, and proof are completely unexplained, and the distinction between signature and proof is unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (wallet vote) and connects it to wallet_vote_message's text, implying a signed vote submission. But it never plainly states the action (cast/submit a vote), and the trailing ellipsis leaves the purpose incomplete. It only partially distinguishes this from wallet_vote_message (message generation) and wallet_votes (listing).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no exclusions, and no comparison to alternatives like wallet_vote_message or wallet_votes. The reference to wallet_vote_message implies an ordering (get the message, then sign), but the agent must infer this rather than being told.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_vote_messageCRead-onlyInspect
The exact text your linked Solana wallet signs to back your Trana vote on a proposal (trana_vote...
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| key | No | ||
| proof | No | ||
| choice | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description does add one useful behavioral fact — it requires a linked Solana wallet — but the truncation leaves the actual behavior (deterministic message, idempotency implications given idempotentHint=false, what to do with the returned text) undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but because the single sentence is cut off, it is under-specified rather than concise. There is no front-loaded statement of what the tool returns or what the caller does next.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, four undocumented parameters, and no annotations about the return value, the description needs to explain the signing flow and parameter meanings. It reveals only that a linked wallet is involved and the text is for backing a Trana vote vote, leaving an agent unable to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for four parameters, and the description says nothing about id, choice, key, or proof — not their format, valid values, or which are optional. The description must compensate here and does not at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool's output — the exact text a linked Solana wallet signs to back a Trana vote on a proposal — which is more specific than the name alone. However, the text is truncated mid-sentence ("(trana_vote..."), and it never states clearly whether this only constructs the message or also submits anything, nor how it differs from wallet_vote or trana_vote.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance. The flow relative to siblings such as wallet_vote, wallet_votes, trana_vote, wallet_link_message, or space_trana_link is only weakly implied by mentioning "your Trana vote".
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_votesCRead-onlyInspect
Every wallet-signed Trana vote (or one proposal's with id): voter, wallet, choice, the signed text...
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds useful return-content context by naming voter, wallet, choice, and signed text, but does not mention pagination behavior for limit, ordering, or what the trailing ellipsis omits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler, so it is appropriately sized. However, the trailing ellipsis and parenthetical make it read as incomplete rather than polished, and the most important usage distinction is not front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should carry more weight in explaining return shape and filtering. It does list key returned fields and the id filter, but omits limit semantics and does not distinguish this listing tool from the related vote-signing tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explains that id selects one proposal's votes, but it says nothing about limit, its default, or pagination behavior, leaving half the parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific resource and scope: wallet-signed Trana votes, with an optional single-proposal variant via id. It lists returned fields (voter, wallet, choice, signed text), which makes the retrieval purpose clear, though it never explicitly says 'list' or names the sibling wallet_vote alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical hints that id narrows results to one proposal, but there is no explicit guidance on when to use this versus wallet_vote, wallet_vote_message, or trana_vote. The agent is left to infer usage conditions from names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
watch_setCIdempotentInspect
A standing order: watch for listings by words, kind or category; action notify (note hits), buy...
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| kind | No | ||
| times | No | ||
| action | No | ||
| remove | No | ||
| category | No | ||
| currency | No | ||
| max_price | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, openWorldHint=true, so the safety/write profile is partly covered. The description hints at persistence ('standing order') and an auto-'buy' action, but the truncation and the unexplained consequences of 'buy'/'bid' leave real behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is not over-long, but it is under-specified and literally truncated mid-sentence ('buy...'), so key information is missing rather than economically compressed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An 8-parameter mutation tool with no output schema and no parameter documentation demands a richer description than this fragment provides; the semantics of 'remove', 'times', and price/currency limits are absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 8 parameters. The description only gestures at 'words' (q), 'kind', 'category', and the 'notify/buy' action; it says nothing about 'times', 'remove', 'currency', or 'max_price'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a resource ('listings') and a mechanism ('standing order ... watch for listings by words, kind or category'), which is more specific than a tautology. But it is a truncated fragment ending in 'buy...' and never cleanly states what the tool creates or how it differs from listing_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use watch_set versus one-off listing_search, no mention that the 'remove' parameter is how you cancel a standing order, and no prerequisites. The agent must infer all usage conditions from the fragments.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
what_we_can_doCRead-onlyInspect
What the ce-net network can provide today per kind of request (print, cad, fabricate, compute...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds only a light temporal framing ('today') plus the idea that results are grouped per request kind; it says nothing about whether the result is static documentation or live network state, which matters for an open-world tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short with no filler, but the sentence is cut off mid-parenthetical, so the key enumeration of request kinds is incomplete and the reader is left hanging. Brevity is achieved by truncation rather than by editing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no parameters, the description is the only source of information about what an agent gets back, and it does not say whether the response is a list, a map keyed by request kind, or prose. For a zero-parameter discovery tool aimed at an open-world network, that gap is significant.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 applies; the truncated request-kind list is the only hint at parameterization, and there are no parameters to map it to.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It conveys the general idea that this returns a capability overview of the ce-net network broken out by request kind (print, cad, fabricate, compute), but the sentence trails off mid-list and never states a verb like 'list' or 'describe'. It also does not distinguish itself from discovery siblings such as mcp_list, tools_search, or directory_search, so an agent must guess where it fits.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit statement of when to call this versus the many discovery/search siblings, nor any prerequisite or exclusion. The phrase 'today' faintly implies a current-state snapshot, but that is inference, not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
whoamiCRead-onlyIdempotentInspect
Whether this connection is signed in to a ce-net account, and the exact steps to sign in if it is...
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive/open-world, so safety is covered. The description adds the behavioral detail that the response also includes sign-in steps, though the sentence is cut off before explaining what those steps look like or how the signed-out state is represented.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is short but structurally broken, ending in an ellipsis with a dangling 'if it is...' clause. A reader cannot tell whether content was omitted or the thought was never finished, which undercuts an otherwise compact definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations covering return shape, the description must explain what comes back; it partially does (signed-in status plus sign-in steps) but the explanation is truncated. For a simple zero-arg read tool this is close to adequate, though the truncation leaves a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool takes zero parameters, so there is nothing for the description to disambiguate. The baseline for a no-parameter tool applies; the description neither helps nor hurts here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says the tool reports whether the connection is signed in to a ce-net account, which is a recognizable verb+resource, but 'whoami' implies a broader identity report and 'ce-net' is unexplained jargon. The sentence also trails off mid-thought, leaving the second half of the purpose unclear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus closely related siblings such as account_get, agent_me, profile_get, or identity_tree. The only conditional mentioned ('if it is...') is truncated and never resolves into actionable guidance.
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 tool update
- Changed
mesh_search1 field changed- changed
Input schema / properties / sources / items / enumPrevious value: -[ - "trana", - "learn", - "threads", - "cells", - "capabilities", - "docs", - "machines", - "rooms", - "repos", - "memory", - "graph", - "published" -]New value: +[ + "trana", + "learn", + "threads", + "cells", + "capabilities", + "docs", + "machines", + "rooms", + "repos", + "memory", + "graph", + "published", + "files" +]
1 tool update
- Changed
mesh_search1 field changed- changed
Input schema / properties / sources / items / enumPrevious value: -[ - "trana", - "threads", - "cells", - "capabilities", - "docs", - "machines", - "rooms", - "repos", - "memory", - "graph", - "published" -]New value: +[ + "trana", + "learn", + "threads", + "cells", + "capabilities", + "docs", + "machines", + "rooms", + "repos", + "memory", + "graph", + "published" +]
1 tool update
- Added
cell_search_ask
Related MCP Connectors
Connect, monitor, and control AI agents — tasks, approvals, schedules, and governance.
Hire AI workers that run on schedule, report back and act with your OK. Or deploy private models.
Build, validate, and deploy multi-agent AI solutions from any AI environment.
Connect AI agents to 1000+ apps with managed authentication and tool-calling.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to operate a 3D print farm via O.D.I.N. backend, including job queuing, printer control, inventory management, and standalone cost calculators.6 npmApache 2.0
- AlicenseBqualityFmaintenanceControl real robots and IoT devices through AI agents. Self-register with wallet authentication, pay with ETH for tier upgrades, and execute Vision-Language-Action commands. Features robot control, sensor monitoring, multi-agent coordination, and autonomous payments.81MIT
- AlicenseBqualityBmaintenanceConnects AI agents and LLM clients to a 3D printing studio to manage orders, printer fleets, slicing and quoting, shipping waybills, customer conversations, and analytics.3511 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to control hardware devices like Arduino, Raspberry Pi, 3D printers, CNC machines, and custom robots via serial ports and HTTP. Provides tools for device discovery, command sending, sensor reading, servo control, G-code execution, and emergency stops with safety features.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.