Skip to main content
Glama

独行录 / opcmenu

Server Details

Find founders, collaboration opportunities and events; manage authorized signups and messages.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Available Tools

137 tools
accept_dispatch_arrangement接受安排并发起接洽或报名AInspect

【需要登录】接受 get_my_dispatch 的建议。MEET 会真实建会话并以本人名义发送 opener;省略 opener 会发送平台预写开场白,先展示内容并取得用户授权。ATTEND 会尝试报名,但本工具不证明报名成功,始终返回 signupVerificationRequired=true;按 next 用 get_signup_activity 核对实际报名方式和状态,必要时 list_my_signups 核对投递结果。hasSignupRecordHint 仅表示有记录,可能只是外部留资、投递失败或取消;openSignupSlug 为空也不证明完成。外部表单仍须完成源站提交,缺资料时再用 submit_signup。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 服务只对完成后的重复接受短路,不保证并发去重。

ParametersJSON Schema
NameRequiredDescriptionDefault
openerNo
arrangementIdYes

TDQS

A4.9/5.0
Behavior5/5

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

The description discloses substantial behavior beyond annotations: real conversation creation, sending openers in the user's name, non-guaranteed signup success, always returning signupVerificationRequired=true, no persistent deduplication key, and no concurrent dedupe guarantee. These are critical side-effect and idempotency warnings that annotations only hint at.

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

Conciseness5/5

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

The description is long but every sentence carries essential risk or workflow information. It is front-loaded with the core purpose and login requirement, then layers mode-specific behavior, verification steps, and failure caveats without filler.

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

Completeness5/5

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

For a complex, non-idempotent, side-effect-heavy tool with no output schema, the description covers login requirements, return-field meaning, external form completion, timeout handling, and deduplication behavior. It leaves no critical operational question unanswered.

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

Parameters4/5

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

With 0% schema description coverage, the description compensates well for opener by explaining that omitting it sends a platform-prewritten opener after authorization. arrangementId's meaning is implied through 'accept get_my_dispatch's suggestion' but not explicitly defined, leaving a small semantic gap.

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

Purpose5/5

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

The description opens with a specific verb and resource: accepting the suggestion from get_my_dispatch, and clarifies the two concrete actions MEET and ATTEND. It clearly distinguishes this tool from the sibling decline_dispatch_arrangement by stating what acceptance initiates.

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

Usage Guidelines5/5

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

The description gives explicit routing: use get_signup_activity to verify signup status, list_my_signups to check delivery, and submit_signup only when materials are missing. It also instructs not to auto-resend after unclear results or timeouts, providing strong when-to-use and when-not-to-use guidance.

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

block_user拉黑用户A
Idempotent
Inspect

【需要登录】拉黑某用户:双方互不能私信,并自动解除互相关注。处理骚扰时用。幂等:重复拉黑 no-op。

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes要拉黑的用户 id

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses the login requirement, the mutual DM restriction, the automatic unfollow side effect, and idempotent behavior. This adds meaningful behavioral detail beyond the annotations, which already indicate idempotency and non-destructiveness.

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

Conciseness5/5

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

The description is compact and well-structured, with the key login requirement first, followed by effects, use case, and idempotency. Every sentence adds useful information without redundancy.

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

Completeness5/5

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

For a single-parameter action with strong annotations, the description is complete enough for an agent to call it correctly. It covers the main side effects, the intended scenario, and the idempotency guarantee, which is all the context needed here.

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

Parameters3/5

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

There is only one parameter and the schema covers it fully with a clear description. The tool description does not add extra parameter-level detail, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action: block a user, and specifies the concrete effects: mutual DM restriction and automatic unfollow. It is specific and goes well beyond restating the tool name, making the tool's purpose unambiguous.

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

Usage Guidelines4/5

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

It provides a clear usage context: use when dealing with harassment. However, it does not explicitly mention alternatives or exclusions, such as when to prefer report_content or unfollow_creator instead.

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

bulk_review_signup_submissions批量处置报名者A
Idempotent
Inspect

【需要登录】【何时用】用户说「把做 AI 的都入围、其余候补」这类整批操作时调它。这是 agent 相对 web /pro 最大的效率差:那边要勾 200 个复选框。

【组合链】list_signup_submissions(slug, q='Agent') 拿 ids → 本工具 preview=true 不落库,返回「将被改的 id + 昵称 + 当前状态」念给用户 → 用户确认后 preview=false 真正执行 → 剩下的人换个 reviewStatus 再来一次。

【口径/坑】① 执行前必须把名单念给用户确认——处置结果报名者在「我的报名」里立刻看得见,改错了收不回来。preview=true 就是为这一步设计的(它是 App 那个确认弹层在 agent 端的形态,不是可以省掉的一步)。② 返回体自带 diff:requested / updated / ignoredIds——不属于这场活动的 id 会被服务层静默忽略,传 200 个只改了 197 个时,是哪 3 个掉了这里如实告诉你。③ reviewNote 不接受空串(zod 直接封死):批量清空 200 条留言且无处恢复,风险太高;不传就是不动。④ 一次最多 200 个 id。⑤ 只动报名结果,不碰投递状态。

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYes报名单 id 列表,最多 200
slugYes活动 slug
previewNotrue=只预演不落库,返回将被改的人给用户过目。缺省 false
reviewNoteNo统一写给这批人看的一句话。**不接受空串**(批量清空留言无处恢复);不传=不动各自原有的留言
reviewStatusYes统一改成的报名结果。取值:PENDING(待初审) | REVIEWING(初审中) | SHORTLISTED(已入围) | WAITLIST(候补) | REJECTED(未通过) | WITHDRAWN(已撤回)

TDQS

A4.6/5.0
Behavior5/5

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

Adds far beyond the annotations: login requirement, preview mode that does not persist, mandatory user confirmation before execution, silent ignoring of invalid IDs with diff fields, empty-string rejection on reviewNote, 200-id cap, and the guarantee that only application results are changed and delivery status is untouched. None of this contradicts 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.

Conciseness5/5

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

Dense but structured with clear sections (需要登录, 何时用, 组合链, 口径/坑). It is front-loaded with the trigger condition and the single most important fact (login). Every sentence carries operational value, including the note about why preview exists and the diff return.

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

Completeness4/5

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

Covers preconditions, workflow, return diff fields, limits, and what the tool does not touch. No output schema exists, so the description does well to explain requested/updated/ignoredIds. However, it doesn't describe the full response shape or error behavior, which would be useful for a complex mutation tool.

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

Parameters4/5

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

Schema coverage is 100%, so the schema already documents all parameters. The description adds meaningful behavior for preview (no write, returns candidate list for confirmation), reviewNote (empty string rejected, omitted = no change), and reinforces the 200-id limit. This extra context is valuable but the schema does the baseline heavy lifting.

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

Purpose5/5

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

States a specific verb (bulk update reviewStatus), resource (signup submissions), and scope (batch operations like 'make all AI ones shortlisted, rest waiting'). It clearly differentiates from the 200-checkbox web UI and implies the batch nature. No ambiguity about what the tool does.

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

Usage Guidelines4/5

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

Explicitly says when to call it: when the user voices a batch operation such as '把做 AI 的都入围、其余候补'. It also provides a composition chain with list_signup_submissions and preview=true/false. It doesn't explicitly name the single-submission alternative (review_signup_submission) or say 'use that for one-off changes', so exactly when-not is implied rather than stated.

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

cancel_activity取消我的活动A
DestructiveIdempotent
Inspect

【需要登录】取消(下线)我发起的某个活动。已取消 / 已结束的活动不能再取消。

ParametersJSON Schema
NameRequiredDescriptionDefault
activityIdYes活动 id

TDQS

A4.3/5.0
Behavior4/5

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

注解已声明 destructiveHint=true,描述额外补充了“需要登录”的权限前提和“已取消/已结束不可再取消”的状态约束,为代理提供了注解之外的行为信息。描述与注解一致,不存在矛盾。

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

Conciseness5/5

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

两句话都信息密集且无冗余:第一句说明操作和登录要求,第二句说明状态限制。关键信息前置,结构清晰,没有任何浪费。

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

Completeness5/5

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

该工具只有一个必填参数、无输出 schema,复杂度很低。描述配合注解已完整覆盖登录要求、操作效果、状态前置条件和破坏性语义,足以让代理正确调用。

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

Parameters3/5

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

参数 activityId 在 schema 中已有完整描述(“活动 id”),schema 覆盖率为 100%,描述没有为参数增加额外语义。按高覆盖率基线评为 3 分。

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

Purpose5/5

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

描述使用明确动词“取消(下线)”和资源“我发起的某个活动”,准确表达了操作对象与范围。与同族的 cancel_need、unpublish_need、update_activity 等工具在语义上可清楚区分,不会让代理产生混淆。

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

Usage Guidelines4/5

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

明确给出登录前提,并说明“已取消/已结束的活动不能再取消”这一使用限制,帮助代理避免无效调用。但没有显式指出何时应改用 update_activity 等替代工具,因此未达到最高分。

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

cancel_need取消我的需求A
DestructiveIdempotent
Inspect

【需要登录】发起人取消自己的需求(终态,不可再重开/编辑)。只是暂时不想展示请用 unpublish_need(可逆),不要用本工具。

【失败语义】非本人 403 not_your_need;已完成 409 need_already_completed;已取消 409 need_closed。

ParametersJSON Schema
NameRequiredDescriptionDefault
needIdYes需求 id

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (destructiveHint=true, readOnlyHint=false, idempotentHint=true), the description adds key behavioral context: login is required, only the initiator can cancel, the operation is irreversible, and specific 403/409 failure cases are enumerated. This is strong disclosure for a destructive action.

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

Conciseness5/5

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

The description is compact and well-structured: the critical terminal/irreversible nature and login requirement are front-loaded, the alternative tool is clearly named, and failure semantics are separated in a concise block. Every sentence earns its place.

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

Completeness5/5

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

Given a single required parameter, no output schema, and annotations already covering mutation/destruction, the description covers everything an agent needs: prerequisites, ownership restriction, irreversibility, alternatives, and error expectations. Nothing important is missing.

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

Parameters3/5

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

Schema coverage is 100% and the only parameter, needId, is already documented as '需求 id'. The description implies it must be the caller's own need, which adds a small semantic constraint, but it does not add substantial parameter-level detail beyond the schema.

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

Purpose5/5

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

The description states a specific verb and resource: the initiator cancels their own need, and it clarifies this is a terminal state that cannot be reopened or edited. It also explicitly differentiates from unpublish_need, so the purpose is unambiguous even among many siblings.

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

Usage Guidelines5/5

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

It gives an explicit when-to-use rule (canceling permanently) and a when-not-to-use rule with the alternative (temporarily hiding should use reversible unpublish_need). It also provides concrete failure semantics for common misuses, leaving little to inference.

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

check_activity_eligibility查发起活动资格A
Read-onlyIdempotent
Inspect

【需要登录】检查当前用户是否满足发起活动的前置条件。两条轨,满足任一即可:轨 A 主理人 —— 资料完善(bio + intro≥10 字)且至少 1 个已发布产品;轨 B 主办方 —— 入驻已完成 + 主办方资料四项齐全(主办方名称 / 联系人姓名 / 联系电话 / 一句话介绍)。ok=true 时 via 说明走的是哪条(owner=轨 A,organizer=轨 B)。

【ok=false 的 reason】profile_incomplete = 入驻还没走完(入驻本身就会强制填 bio/intro,所以这条等于「先去完成入驻」);organizer_profile_required = 入驻完了但缺主办方资料四项——这是实际最常见的一条,只差一个已发布产品的轨 A 用户也会落到这里(对正要发活动的人来说,填四项资料比再发布一个产品近);no_published_product = 老枚举,现口径下基本不会返回。

【怎么补】想走轨 A 就用 create_product 发布产品。缺主办方资料这里没有对应的写工具,别拿别的工具去试——那四项要走 POST /v1/me/organizer-profile,联系电话必须过短信验证码,agent 端做不了;请引导用户去 App 或网页版填「主办方资料」(四项一次填完,不拆步、不跳过)。

发起活动(create_organizer_activity)前先用它,免得白填。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark this as read-only, idempotent, and non-destructive, and the description adds meaningful behavior beyond that: login is required, the response has ok/via/reason semantics, and it explains each failure reason and its real-world meaning. Since there is no output schema, this behavioral documentation is essential and well done.

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

Conciseness5/5

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

The description is long but tightly organized with clear headers and bolded key terms. Every section—eligibility rails, failure reasons, remediation paths, and when to call—carries operational value, and the primary purpose is front-loaded.

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

Completeness5/5

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

Given the complexity (two eligibility paths, multiple failure reasons, no output schema), the description fully equips an agent: it documents the response contract, explains the most common failure case, names the only remediation tool, and explicitly warns that agent-side cannot complete the organizer profile flow. Nothing critical is missing.

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

Parameters4/5

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

The tool has zero parameters and the schema coverage is 100%, so there is nothing for the description to add about parameters. Per the baseline for parameter-less tools, a 4 is appropriate because the description instead focuses on response semantics and usage context.

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

Purpose5/5

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

The description opens with a precise verb+resource statement: checks whether the current user meets the prerequisites for initiating an activity. It goes further by naming the two eligibility rails (owner vs organizer) and the via field semantics, which makes it easy to distinguish from any sibling tool.

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

Usage Guidelines5/5

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

It explicitly instructs to call this before create_organizer_activity ('发起活动(create_organizer_activity)前先用它,免得白填'). It also says when not to attempt remediation: missing organizer data cannot be fixed with any available write tool, and it steers the agent away from trying other tools.

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

claim_creator_by_token用邮件令牌认领创客号AInspect

【需要登录】用邮件令牌把某个(爬虫预录的)占位创客号名下的全部产品 + 会话一次性转到当前账号。令牌来自冷启动外联邮件里的链接(/u/{creatorId}?ct={token})。

【注意】不可逆。与 claim_product(单个产品认领码)不同——这是整号认领。失败返回 ok=false + reason(invalid_token / not_found / already_claimed / self)。

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYes认领令牌(邮件链接 ?ct=<token>)
creatorIdYes占位创客号的用户 id(邮件链接 /u/<creatorId>)

TDQS

A4.9/5.0
Behavior5/5

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

The description discloses critical behavioral traits beyond the annotations: the operation is irreversible, it transfers all products and conversations, and failure returns ok=false with specific reasons such as invalid_token, not_found, already_claimed, or self. The irreversibility warning adds meaningful context without contradicting destructiveHint=false, since the operation transfers rather than destroys data.

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

Conciseness5/5

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

The description is compact and well-structured: a lead sentence states the action, a second sentence explains token provenance, and a note block covers irreversibility, sibling differentiation, and failure modes. Every sentence adds information with no filler.

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

Completeness5/5

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

Despite having no output schema, the description covers preconditions, input provenance, effect scope, irreversibility, alternative tools, and failure semantics. This is complete enough for an agent to invoke the tool correctly and interpret likely failure responses.

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

Parameters4/5

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

The input schema already covers both parameters at 100%, and the description adds valuable provenance details: token maps to ?ct=<token> in the email link, while creatorId maps to /u/<creatorId> and refers to a pre-recorded placeholder creator account. This helps the agent correctly populate the parameters.

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

Purpose5/5

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

States a specific verb and resource: using an email token to transfer all products and conversations from a placeholder creator account to the current account. It explicitly distinguishes itself from claim_product, so an agent can tell this is a whole-account claim rather than a single-product claim.

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

Usage Guidelines5/5

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

Provides clear usage context: login is required, the token comes from a cold-start outreach email link, and the intended alternative is claim_product for single-product claim codes. This explicitly routes the agent to the right tool for the right scope.

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

claim_product认领产品A
Idempotent
Inspect

【需要登录】用认领码把一个(管理员 / 爬虫预录的)产品认领到当前账号名下。先过后审:认领后立即发布。认领码一般由管理员发放。

ParametersJSON Schema
NameRequiredDescriptionDefault
claimCodeYes认领码

TDQS

A4/5.0
Behavior4/5

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

Annotations already establish readOnlyHint=false, idempotentHint=true, and destructiveHint=false. The description adds genuinely new behavioral context beyond those annotations: the login requirement, the post-then-review model (先过后审), and the consequential side effect that claiming immediately publishes the product. No contradiction with the annotations exists.

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

Conciseness5/5

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

A single compact sentence that front-loads the login prerequisite, then states the action, the immediate-publish consequence, and the code source. Every clause earns its place and nothing repeats what the schema or annotations already provide.

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

Completeness4/5

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

For a one-parameter tool with no output schema, the description covers the auth prerequisite, target resource type, the side effect of immediate publication, and code provenance. It omits failure behavior (e.g., invalid or already-used codes), which is a minor gap given the tool's simple surface area.

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

Parameters3/5

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

Schema coverage is 100% and the sole claimCode parameter is already described as 认领码. The description adds only marginal value beyond the schema by noting that the code is generally issued by admins, which documents provenance but not format, validation, or failure behavior.

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

Purpose4/5

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

The description states a specific verb (认领/claim), resource (a product pre-recorded by admin or crawler), and mechanism (claim code) that binds the product to the current account. It is clearly about products and claim codes, but it does not explicitly contrast with the close sibling claim_creator_by_token, leaving sibling differentiation implicit 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.

Usage Guidelines4/5

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

The description conveys clear usage context: login is required, the claim code is generally issued by an admin, and the target product is pre-recorded rather than user-created. It does not provide explicit when-not guidance or name alternatives such as claim_creator_by_token or create_product, so exclusions are left to inference.

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

complete_need确认完成需求AInspect

【需要登录】在某个接洽会话里点「完成需求」。双方各确认一次:发起人和承接人都要在同一会话里各调一次本工具,双方都确认后该承接才置 COMPLETED;只有一方调过时处于等待对方确认状态(看返回的 authorDoneAt / claimerDoneAt)。

【前置】conversationId 必须是 contact_need 建立的那个会话。确认是真实状态变更,调用前先向用户确认「事情确实办完了」。

【失败语义】非该需求当事人 403 not_party_to_need;会话没绑这条需求 409 no_claim_for_conversation;已完成 409 need_already_completed;已取消 409 need_closed。

ParametersJSON Schema
NameRequiredDescriptionDefault
needIdYes需求 id
conversationIdYes接洽会话 id(contact_need 返回的那个)

TDQS

A4.7/5.0
Behavior5/5

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

描述超越了 annotations 的内容,明确说明这是真实状态变更、非幂等、双方确认后才完成,并解释了等待确认状态(authorDoneAt / claimerDoneAt)以及各类失败语义。与 readOnlyHint=false、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.

Conciseness5/5

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

描述按【需要登录】【前置】【失败语义】分段组织,信息密度高且无冗余。前置条件和双人确认逻辑放在前面,错误码放在后面,结构清晰。

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

Completeness5/5

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

该工具是包含双方确认状态机和多种失败场景的变更操作,且无 output schema。描述覆盖了前置条件、状态流转、返回字段提示、错误语义以及人工确认要求,对调用者而言足够完整。

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

Parameters4/5

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

input schema 已对参数有 100% 覆盖,描述进一步补充了 conversationId 必须来自 contact_need 建立的会话,并间接说明 needId 与 conversationId 的绑定关系,增强了参数含义。

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

Purpose5/5

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

明确表述了操作:在接洽会话中确认完成需求,并说明双人确认机制(发起人和承接人各调一次)后置为 COMPLETED。与 cancel_need、delete_need、reopen_need 等兄弟工具语义区分清楚。

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

Usage Guidelines4/5

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

给出了明确的使用前提:conversationId 必须是 contact_need 建立的会话,且需要双方各确认一次;还提示调用前先向用户确认事情确实办完。虽然未显式说明与其他工具的对比或排除场景,但语境和前置条件已经足够指导使用。

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

complete_onboarding完成入驻引导A
Idempotent
Inspect

【需要登录】校验前置条件后把入驻引导标记为完成(给 onboardedAt 盖戳)。

【前置】必须已选身份 persona;若是创业者(FOUNDER),还需名下至少 1 个产品且 bio 已填(intro 选填不卡),否则报 onboarding_incomplete。

【注意】这是真实状态变更——调用前先 get_onboarding_status 确认各项已就绪,并向用户确认「确实要完成入驻」。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior5/5

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

Beyond annotations, the description discloses required login, the fact that this is a real state change, the specific error onboarding_incomplete, and the expected preflight sequence. This is exactly the behavioral context an agent needs beyond readOnlyHint/destructiveHint.

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

Conciseness5/5

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

Three short labeled sections: requirement/purpose, preconditions, and caution. The most important operational detail (login, state change) is front-loaded, and every sentence carries actionable information with no filler.

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

Completeness5/5

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

For a zero-parameter state-transition tool with no output schema, the description covers authentication, prerequisites, failure mode, required preflight check, and user confirmation. Nothing essential for correct invocation is missing.

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

Parameters4/5

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

The tool has zero parameters and schema coverage is 100%, so there are no parameter semantics to clarify. The description appropriately focuses on preconditions and side effects instead, matching the baseline for a parameterless tool.

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

Purpose5/5

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

Description states a specific verb and resource: 把入驻引导标记为完成, with the concrete outcome of stamping onboardedAt. It is clearly distinguishable from the sibling get_onboarding_status, which retrieves the same state rather than mutating it.

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

Usage Guidelines4/5

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

Description gives explicit preconditions (persona required; FOUNDER needs at least one product and a filled bio) and tells the agent to call get_onboarding_status first and confirm with the user before proceeding. It does not explicitly discuss alternatives or when-not-to-use, but the context is unambiguous.

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

contact_need接洽需求(找他聊聊)A
Idempotent
Inspect

【需要登录】对某条需求「找他聊聊」:与发起人建立 1-1 会话并登记接洽。任何人都能接洽、人数不设上限,需求不会因被接洽而下架。幂等:重复调用只返回已有会话。

【组合链——这是关键】返回 conversationId,直接接 send_message 在该会话继续谈;开聊前可先 get_conversation_needs 一次拿全双方需求上下文。谈妥交付后双方各调一次 complete_need 完成。

【失败语义】不能接洽自己的需求 400 cannot_contact_own_need;404 need_not_found;429 chat_quota_exhausted = 今天新开会话的额度用完了(回复老会话不受影响),返回体自带出口,别退避重试。

ParametersJSON Schema
NameRequiredDescriptionDefault
needIdYes需求 id,从 list_needs_feed / search_needs / get_need 拿

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already state idempotentHint=true, but the description goes further by detailing idempotency semantics ('重复调用只返回已有会话'), login requirement, 'anyone can contact, no upper limit', and precise failure codes including 429 chat_quota_exhausted. The description also matches annotations and adds valuable operational behavior.

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

Conciseness5/5

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

The description is well-structured into clear sections: core behavior, composition chain, and failure semantics. Each sentence earns its place, and the most important action and login notice are front-loaded. No filler or redundancy is present.

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

Completeness5/5

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

For a tool with one parameter and no output schema, the description covers return value (conversationId), follow-up tool calls, prerequisites, idempotency, and all relevant error cases. It provides everything an agent needs to invoke the tool correctly and handle outcomes.

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

Parameters3/5

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

Schema coverage is 100% and the single parameter needId is already described as the need id sourced from list_needs_feed / search_needs / get_need. The description references the target need but does not add new parameter-level semantics, so the baseline of 3 is appropriate.

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

Purpose5/5

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

The description opens with a specific verb and resource: 对某条需求「找他聊聊」:与发起人建立 1-1 会话并登记接洽. It clearly states what the tool does and differentiates it from related tools like complete_need by explaining the inviting behavior and that the need will not be taken offline.

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

Usage Guidelines5/5

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

The description gives explicit workflow guidance: returns conversationId, then use send_message to continue, optionally get_conversation_needs beforehand, and complete_need after delivery. It also explains quota failure semantics and tells the agent not to retry on 429. This is strong, actionable routing guidance beyond mere context.

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

create_collaboration_goal创建独行录合作目标AInspect

【需要登录】创建一个持久的独行录合作目标;用户成为发起人。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 先 get_my_work 核对已有目标,再创建;返回 id 用于 get_collaboration_goal/create_collaboration_task。

ParametersJSON Schema
NameRequiredDescriptionDefault
dueAtNo截止时刻 ISO 8601,须含时区;null 清空,省略保留现值
titleYes
intentNo

TDQS

A4.3/5.0
Behavior5/5

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

Beyond the annotations, the description discloses that login is required, that the goal is persistent, that there is no persistent request dedup key, and that the agent should query the current state rather than auto-retry after a timeout. This is especially valuable since idempotentHint=false alone does not convey the concrete retry behavior needed to avoid duplicate goals.

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

Conciseness5/5

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

The description is compact and every sentence carries operational value: creation semantics, timeout handling, and a pre-creation check plus downstream id usage. It is front-loaded with the core purpose and contains no filler or redundant restatements of the schema.

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

Completeness4/5

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

For a create tool with no output schema, the description covers essential operational needs: auth requirement, duplicate avoidance via get_my_work, non-idempotency handling, and the returned id's use in subsequent tools. However, the lack of parameter semantics for title and intent means an agent still has to guess at their exact meaning, preventing a perfect score.

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

Parameters2/5

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

Schema description coverage is only 33% — title and intent have no descriptions in the schema. The tool description adds no parameter-level meaning; it never explains what 'title' or 'intent' should contain or how they relate to the goal. Given the low coverage, this is a clear gap.

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

Purpose5/5

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

The description opens with a specific verb and resource: '创建一个持久的独行录合作目标' (create a persistent collaboration goal) and clarifies that '用户成为发起人' (the user becomes the initiator). This clearly distinguishes the tool from siblings like create_collaboration_task by naming a distinct resource and describing its key semantic.

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

Usage Guidelines4/5

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

The description gives explicit instructions on when to use this tool: '先 get_my_work 核对已有目标,再创建' (first check existing goals via get_my_work, then create), and how to handle uncertain outcomes: '结果不明或超时后先查询现值,不要自动重发'. It does not explicitly contrast with create_collaboration_task, but the preconditions and follow-up id usage imply a well-defined workflow.

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

create_collaboration_task创建或指派合作任务AInspect

【需要登录】在独行录目标中创建任务;assigneeId 省略为自己,指定他人必须是目标合作人,会通知对方。用户授权派给该人后才调用。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 创建前后用 get_collaboration_goal 核对。

ParametersJSON Schema
NameRequiredDescriptionDefault
dueAtNo截止时刻 ISO 8601,须含时区;null 清空,省略保留现值
titleYes
detailNo
goalIdYes
assigneeIdNo

TDQS

A4.3/5.0
Behavior5/5

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

The description goes well beyond annotations by disclosing login requirements, notification side effects, collaborator authorization constraints, non-idempotency with no dedup key, and the recommended verification workflow. These are substantive behavioral facts that annotations alone do not convey, and nothing contradicts 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.

Conciseness5/5

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

The description is dense but well-structured, front-loading the core action and login requirement before important caveats. Every sentence carries meaningful guidance about authorization, idempotency, notifications, or verification, with no filler.

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

Completeness4/5

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

For a side-effecting, non-idempotent creation tool with no output schema, the description covers the most important operational concerns: authorization, notification, timeout handling, and verification via get_collaboration_goal. It does not explicitly describe the success return value, but its verification guidance effectively compensates for that gap.

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

Parameters2/5

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

Schema description coverage is only 20%, so the description must compensate. It does clarify assigneeId semantics (omitted means self, must be a goal collaborator if specified), but it does not explain title, detail, or goalId meaning beyond obvious inference, and dueAt semantics are left to the schema. That is partial compensation for a low-coverage schema.

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

Purpose5/5

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

The description states a specific action and resource: creating a task within a collaboration goal, and it explicitly covers assignment behavior when assigneeId is provided. This distinguishes it from siblings like create_collaboration_goal and update_collaboration_task, since it is clearly about task creation/assignment rather than goal creation or task modification.

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

Usage Guidelines4/5

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

The description gives clear usage context: call only after the user authorizes assigning to a collaborator, use get_collaboration_goal to verify before/after creation, and do not auto-retry on timeout or unclear results. It does not explicitly mention update_collaboration_task as the alternative for changing an existing task, so it stops short of a full when-not-to-use statement.

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

create_company创建我的公司A
Idempotent
Inspect

【需要登录】为当前用户创建一人公司主页(每个用户最多一家;已存在则等价于更新)。slug 全局唯一(被别人占用会报 slug_taken)。

【发布】先过后审:立即生效,后台异步风控审计。

【提示】description 越详细,主页内容质量越高。建到了就可以在引导里 complete_onboarding。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes公司 / 工作室名称
sizeNo团队规模,可选:SOLO(一人公司) | SIZE_2_5(2-5 人) | SIZE_6_10(6-10 人) | SIZE_11_50(11-50 人) | SIZE_50_PLUS(50 人以上)
slugYes公司主页 URL 标识,小写字母/数字/连字符,全局唯一
logoUrlNoLogo 图 URL,可选
taglineNo一句话定位,可选
locationNo所在地,可选
websiteUrlNo官网 URL,可选
descriptionNo详细介绍:在做什么、为谁做、进展,越详细内容质量越高
foundedYearNo成立年份,可选

TDQS

A4.6/5.0
Behavior5/5

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

在 annotations 只提供 readOnlyHint/idempotentHint 等布尔提示的情况下,描述额外披露了需要登录、先过后审的异步风控、slug 全局唯一及 slug_taken 错误、description 影响内容质量。这些是调用方做决策和预期管理的重要行为信息,且与 idempotentHint=true 一致,无矛盾。

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

Conciseness5/5

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

用三个短段落【需要登录】【发布】【提示】结构化呈现,第一句就点明核心用途,后续每句都携带独立信息,无冗余。

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

Completeness4/5

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

对于无 output schema 的创建类工具,描述覆盖了登录要求、幂等 upsert、唯一性错误、审核机制和后续动作,已经相当完整;唯一缺口是没有说明成功后的返回内容,但这个缺失不严重影响工具选择与调用。

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

Parameters4/5

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

schema 对 9 个参数覆盖 100%,已承担主要说明责任;描述额外补充了 slug 的全局唯一性与冲突错误,以及 description 越详细内容质量越高这一语义,提升了参数的理解价值。

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

Purpose5/5

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

明确说出“为当前用户创建一人公司主页”,动词+资源+归属都清楚;还补充“已存在则等价于更新”“每个用户最多一家”,把 create 工具的实际 upsert 行为讲明,能与其他 get/list 类公司工具区分开。

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

Usage Guidelines4/5

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

给出了明确使用场景:当前用户、最多一家、已存在则更新,并指示“建到了就可以在引导里 complete_onboarding”。虽然没有点名替换工具 update_my_company,但“已存在则等价于更新”已经隐含了覆盖更新场景的路由语义。

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

create_need发布需求AInspect

【需要登录】以当前用户身份发布一条需求(需求互换核心 loop 的起点)。先过后审:发布即展示在需求信息流,后台异步风控,不用等审核。发布后系统自动做向量撮合、推送给最匹配的主理人;也可以随后用 get_need_recommendations 主动看谁能满足。

【写好它】title 认真写清楚要什么(3–120 字);detail 越具体,撮合和搜索越准。示例:「找人合作把我的效率工具做出海版本」「找能提供小程序代开发的主理人」。发布是公开动作:发布前把拟发的 title / detail 给用户过目确认。

【挂载】contextType+contextId 可把需求挂到自己的产品/活动/某人(成对传)。配图先用 upload_image_from_url 拿稳定 URL。

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYes需求类型:EXPERIENCE(寻找产品/作品) | QA(答疑求助) | RESOURCE(介绍资源) | COLLAB(寻求合作) | FINANCING(融资需求) | CHAT(找人聊聊找灵感) | GIG(兼职招募) | OTHER(其它)
titleYes需求标题,一句话说清要什么
detailNo详情:背景 / 具体要什么 / 什么样算合适,越具体越好
imagesNo配图 URL(先用 upload_image_from_url 镜像),最多 9 张
contextIdNo挂载对象 id,与 contextType 配对
contextTypeNo挂载对象类型,与 contextId 配对

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only say readOnlyHint=false, idempotentHint=false, and destructiveHint=false. The description adds substantial behavioral context: publishing is public, appears immediately in the feed, undergoes background async moderation, triggers automatic vector matching and push to managers, and requires user confirmation before posting. No contradiction with annotations.

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

Conciseness5/5

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

Description is organized into clear labeled sections (【需要登录】【写好它】【挂载】), front-loads the core behavior, includes useful examples, and every sentence adds practical guidance. It is moderately long but appropriate for the tool's complexity and the behavioral caveats.

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

Completeness4/5

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

Covers login, async review, public visibility, auto-matching, parameter-writing guidance, user confirmation, context mounting, and image prerequisite. It does not describe the API response or created-need identifier, and does not explicitly warn about duplicate creation, but given no output schema and the descriptive richness elsewhere, the coverage is strong.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds real value: title must be 3–120 characters and clearly state the need; detail specificity improves matching and search; contextType+contextId must be passed as a pair; images should be mirrored via upload_image_from_url. It doesn't explain the type enum, but the schema already does thoroughly.

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

Purpose5/5

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

Description states a clear verb and resource: '以当前用户身份发布一条需求' (publish a need as the current user), and frames it as the starting point of the need-exchange core loop. It explicitly distinguishes the follow-up action by naming get_need_recommendations as a separate tool for viewing matches.

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

Usage Guidelines4/5

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

Provides clear when-to-use context: login required, publish immediately visible, no need to wait for review, and async risk control. It also points to get_need_recommendations as a follow-up alternative and tells agents to pre-upload images via upload_image_from_url. It does not explicitly say 'use update_need instead of creating a duplicate', but the create-vs-modify boundary is reasonably implied.

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

create_organizer_activity发起一场可报名的活动AInspect

【需要登录】【何时用】用户说「帮我发一场分享会 / 建一个报名」时调它。这是站内建活动的唯一正确入口:活动本体 + 报名配置一次写入,建完立刻进报名 feed、报名页立刻可用(先过后审,不留灰度闸)。

【组合链】建完拿 slug → signupPageUrl 直接发给用户去转发 → get_organizer_activity(slug) 读现值 → update_organizer_signup_config(slug) 改题目/联系方式 → 报名进来后 list_signup_submissions(slug) 看名单 → bulk_review_signup_submissions 批量处置 → issue_signup_export_link 导出。活动本体(标题/时间/地点/截止/名额)改动走 update_activity。

【口径/坑】① 别逐字段构造几十题的表单:不传 extraQuestions 就落系统基线四项(姓名/手机号/微信号/一句话项目介绍,全是跨活动复用的稳定 key,报名者一键带出);额外题只要一行一个中文题面丢进 extraQuestions,key/type 由服务端生成。真要做复杂表单让用户去 opcmenu.com/pro。② 额外题一律生成为选填——把新题设成必填会把已经在填的人挡在门外。③ type 不含 COMPETITION(那是外部赛事导入专属,站内报不了名)。④ 线下活动(OFFLINE_GATHERING)必须填 location。⑤ 活动卡上的主办方名:不传 organizerName 就取你在 App/网页填过的「主办方资料」里的机构名(那个子树要短信验证码,agent 端刻意不做写入口)——两处都空,卡片上主办方那行就不出。联合主办/承办单位直接把完整署名传 organizerName。⑥ 资格不足会返回 error=organizer_profile_required / profile_incomplete / no_published_product,exits 里写了各自怎么补。⑦ 超时重试安全:同 clientRequestId、或同标题 5 分钟内重复调用,返回既有那场而不是再建一场(返回 deduped=true)。

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNo城市,报名 feed 卡片按它显示地域
slugNo报名页 URL 标识,小写字母/数字/连字符;不填按标题自动生成
typeYes活动类型:BETA_RECRUIT(内测招募) | ONLINE_GATHERING(线上聚会) | OFFLINE_GATHERING(线下聚会) | OTHER(其他)。刻意不含 COMPETITION(那是导入的外部赛事专属,站内报不了名)
endAtNo结束时间 ISO 8601,可选(只给日期不给结束时间的线下场等于没说时段)
titleYes活动标题
meetUrlNo线上会议链接,可选
startAtYes开始时间 ISO 8601,如 2026-09-01T19:00:00+08:00
capacityNo人数上限,可选
coverUrlNo封面图 URL,可选
locationNo地点(OFFLINE_GATHERING 必填)
productIdNo关联产品 id(须是你已发布的产品),可选
signupUrlNo外部报名表单地址(金数据/问卷星/飞书等),可选
posterUrlsNo活动长图(公众号推文长图那种),最多 9 张
signupKindNo报名类目(决定它在报名 feed 里进哪个 chip),缺省 EVENT。取值:HACKATHON(黑客松) | COMPETITION(创业赛事) | INCUBATOR(孵化营) | FUNDING(融资申请) | COMMUNITY(社区入驻) | EVENT(活动报名) | OTHER(其他)
articleUrlsNo活动图文/推文链接,可选
contactNoteNo报名成功页的一句话说明,可选
descriptionYes活动详情(必填):讲清做什么、给谁、有什么收获
contactQrUrlNo报名成功页展示的答疑/组队群二维码图 URL,可选
hostedEnabledNo站内直接收报名。缺省:没给 signupUrl 就 true(站内收),给了 signupUrl 就 false(正式报名在对方表单)
organizerNameNo主办方署名(报名页「主办方」那一行)。不填=用他「主办方资料」里的机构名。联合主办/承办单位写全,如「A 中心 · B 社区」
extraQuestionsNo在基线四项之外要加问的题,一行一个中文题面(如「你想在这场解决什么问题」)。key/type 由服务端生成,一律选填。只对站内收报名(hostedEnabled)有效
clientRequestIdNo重复提交保护:超时重试时**原样重传同一个值**,命中就返回既有那场而不是再建一场
registrationDeadlineNo报名截止 ISO 8601,可选;不填=长期有效。截止是硬闸,到点即封口

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only say the tool writes (readOnlyHint=false) and is not idempotent, but the description adds far more: login requirement, post-create feed visibility semantics (先过后审, no gray release), error codes with remediation routes (organizer_profile_required / profile_incomplete / no_published_product), dedup semantics (same clientRequestId or title within 5 min returns the existing activity with deduped=true), and the deliberate absence of an agent-side organizer-name write path (SMS-gated subtree). No contradiction with annotations.

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

Conciseness5/5

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

Long but fully earned for a 23-parameter creation entry point: it is organized into labeled sections (需要登录/何时用/组合链/口径·坑) with numbered pitfalls and bold key terms, and the decision-relevant content (when to call, chain position) is front-loaded. No filler sentences; even the COMPETITION reminder that echoes the schema functions as a trap warning rather than duplication.

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

Completeness4/5

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

For a write tool with no output schema, the description nearly suffices: it covers prerequisites, error handling, dedup, auth, and the post-create workflow. The return contract is only implied via the chain (slug → signupPageUrl, deduped=true) rather than spelled out, and the 'exits 里写了各自怎么补' reference presumes external documentation not present here. Minor gaps against an otherwise comprehensive definition.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description still adds genuine meaning: the baseline four-question set that lands when extraQuestions is omitted (and the warning not to hand-build dozens of fields), the 'all extra questions are optional' rule, the organizerName fallback chain with its SMS-verification constraint, and the 5-minute dedup window for clientRequestId. This exceeds baseline by explaining cross-parameter behavior and rationale the schema does not.

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

Purpose5/5

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

The description states a concrete trigger ('用户说「帮我发一场分享会 / 建一个报名」时调它') and names the exact resource scope (活动本体 + 报名配置一次写入). It declares itself the '唯一正确入口' for in-site activity creation, explicitly distinguishing it from updates (update_activity) and downstream read/management tools. An agent can pick this tool over the ~130 siblings without opening the schema.

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

Usage Guidelines5/5

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

Gives the exact user utterances that should trigger the call, plus an explicit exclusion: activity body changes go through update_activity. The 【组合链】 section lays out the entire lifecycle (create → get slug/signupPageUrl → read → reconfigure → review submissions → export), so it is unambiguous where this tool sits versus siblings like list_signup_feed, bulk_review_signup_submissions, or issue_signup_export_link.

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

create_product发布新产品AInspect

【需要登录】新建一个产品 / 作品,先过后审:创建后立即发布对外可见。slug 可选:不填由服务端按名称自动生成;被占用会自动改派生地址。创建后可用 update_my_product 继续补充链接 / 媒体 / 标签。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
slugNoURL 标识,小写字母/数字/连字符;可选,不填自动生成
tagsNo
linksNo
logoUrlNo
taglineYes一句话简介
categoryNo产品分类,可选;不传则服务端 AI 按内容自动判。取值:SAAS(SaaS / 微 SaaS) | APP(App) | MINI_PROGRAM(小程序) | AI_AGENT(AI 工具 / 智能体 / 数字人) | DEV_TOOL(开发者工具 / API / 开源 / 插件) | GAME(独立游戏) | CONTENT(自媒体 / 播客 / 视频 / Newsletter) | DESIGN(设计 / 插画 / 创意) | DIGITAL_GOODS(模板 / 素材 / 课程 / 数字下载) | SERVICE(服务 / 咨询) | PHYSICAL(实体 / 手作 / 主理人 / 硬件) | COMMUNITY(社群 / 会员) | OTHER(其他)
coverUrlNo
descriptionNo详细介绍,可选;越详细内容质量越高,建议写清做什么、给谁用、亮点

TDQS

A4.4/5.0
Behavior4/5

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

Annotations show readOnlyHint=false, destructiveHint=false, but the description adds valuable context: it requires login ('【需要登录】'), it's a post-hoc review flow ('先过后审'), and the result is immediately published and visible. It also discloses slug auto-generation and collision handling. This exceeds the annotation baseline meaningfully.

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

Conciseness5/5

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

Three sentences, all dense with information: login requirement, publication status, review flow, slug behavior, and forward pointer to update_my_product. No redundant phrasing. The call to action and routing are front-loaded.

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

Completeness4/5

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

Given 9 parameters and no output schema, the description explains the critical creation semantics: immediate visibility, review flow, slug generation/collision, and next-step tool. It doesn't mention output/response, but the tool is a creation action where the created product ID might be expected; however, the description is still sufficient for an agent to select and invoke the tool correctly. Slight gap: no mention that name/tagline are required, though the schema handles that.

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

Parameters4/5

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

Schema coverage is 44%, so the description must compensate. It specifically adds meaning for the most important derived behavior: slug optional/auto-generation with derived suffix when occupied. It also states that name is used for URL generation, and that update_my_product handles links/media/tags, guiding whether to pass those params now. However, many params (cat e.g., description, links, tags) are not explained in the description, relying on schema.

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

Purpose5/5

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

The description clearly states: '新建一个产品 / 作品,先过后审:创建后立即发布对外可见' — a specific verb (create) + resource (product/work) with a clear behavioral outcome (publish immediately, visible externally). It also distinguishes itself from sibling tools by noting that update_my_product is for subsequent edits. The title 发布新产品 reinforces the action.

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

Usage Guidelines4/5

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

The description states when to use it (to create a new product) and explicitly routes the agent to update_my_product for continuing to add links/media/tags. It also explains slug behavior. However, it doesn't explicitly describe when NOT to use it versus claim_product or follow_product, though the distinction is reasonably clear.

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

decline_dispatch_arrangement拒绝或更换安排A
Destructive
Inspect

【需要登录】拒绝尚未接受的建议。SWAP 换一个;WRONG_DIRECTION/OTHER 可能重排;HAVE_ALREADY/NOT_NOW 跳过这一步。可能调用平台 LLM、后台排人和通知。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 用 get_my_dispatch 核对新安排。

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNo
reasonYes
arrangementIdYes

TDQS

A4.7/5.0
Behavior5/5

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

The annotations already mark the operation as destructive, non-idempotent, and open-world, and the description adds substantial context beyond that: login is required, the tool may call platform LLM/backend scheduling/notifications, there is no persistent deduplication key, and uncertain or timed-out results should be checked before reattempting. This is rich, non-redundant behavioral disclosure and 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.

Conciseness5/5

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

The description is dense but every sentence earns its place: auth requirement, core action, reason semantics, side effects, retry policy, and verification path. It is front-loaded with the primary purpose and then logically layered with caveats. No filler or redundant restatement of the tool name.

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

Completeness5/5

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

Given the tool's side-effect complexity, no output schema, and open-world/idempotent-false annotations, the description is remarkably complete. It tells the agent what the tool does, what each reason means, what side effects may occur, how to handle uncertainty or timeout, and how to verify the resulting state. The agent has enough information to invoke the tool correctly and recover from ambiguous outcomes.

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

Parameters4/5

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

Schema description coverage is 0%, so the description carries the burden of explaining parameters. It does valuable work by defining the nuanced reason enum (SWAP, WRONG_DIRECTION/OTHER, HAVE_ALREADY/NOT_NOW) with concrete effects. arrangementId and note are left to their self-explanatory names and schema constraints, which is a minor gap but not a serious one.

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

Purpose5/5

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

The description states a specific action ('拒绝' reject) applied to a clear resource ('尚未接受的建议' not-yet-accepted suggestions), and it distinguishes this tool from acceptance or dispatch-related siblings by explaining the reason-code outcomes. It is not a tautology and gives the agent enough to know what operation is performed.

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

Usage Guidelines4/5

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

The description explicitly maps each reason code to a behavioral outcome: SWAP means change to another, WRONG_DIRECTION/OTHER may reschedule, HAVE_ALREADY/NOT_NOW skip the step. It also tells the agent to verify with get_my_dispatch and not auto-retry. It does not explicitly name accept_dispatch_arrangement as the alternative, but the contextual routing is otherwise clear.

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

delete_my_rating删除我的评价A
DestructiveIdempotent
Inspect

【需要登录】删除当前用户对某对象(产品/园区/主理人)的评价(幂等:没有则 no-op)。

ParametersJSON Schema
NameRequiredDescriptionDefault
targetIdYes目标对象 id
targetTypeYesPRODUCT 产品 | PARK 园区 | USER 主理人

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already convey destructive, non-read-only, and idempotent behavior. The description adds the login requirement and explicitly explains the no-op behavior when no rating exists, which complements the idempotentHint annotation. No contradictions with annotations are present.

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

Conciseness5/5

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

The description is a single compact sentence with no filler. It front-loads the login requirement, then states the action, scope, and idempotency behavior, making every part informative.

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

Completeness5/5

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

For a simple two-parameter delete operation with rich annotations covering destructive and idempotent behavior, the description is complete. It includes authentication needs, target scope, and the no-op edge case, so an agent has all necessary context to invoke the tool correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so both targetType and targetId are already documented. The description clarifies that the target can be a product, park, or manager, which aligns with the enum, but adds little beyond what the schema provides. Baseline 3 is appropriate given full schema coverage.

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

Purpose5/5

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

The description uses a specific verb ('删除' delete) and a specific resource ('当前用户对某对象的评价' the current user's rating for a target). It clearly distinguishes this from sibling tools like rate_product, which creates a rating, and delete_need, which deletes a need rather than a rating.

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

Usage Guidelines4/5

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

The description states that login is required and that the operation is idempotent, which gives clear context for when to call it. It does not explicitly name alternative tools or exclusion cases, but the context is sufficient for an agent to understand this is the deletion counterpart to rating operations.

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

delete_need删除我的需求A
DestructiveIdempotent
Inspect

【需要登录】硬删除自己的需求(连同全部接洽记录,不可恢复)。日常收尾优先用 cancel_need(保留记录)或 unpublish_need(可逆下架),删除只用于确实要抹掉时——调用前先向用户确认。

【失败语义】非本人 403 not_your_need。

ParametersJSON Schema
NameRequiredDescriptionDefault
needIdYes需求 id

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the destructiveHint annotation, the description discloses that the operation is irreversible, cascades to all contact records, requires login, and returns 403 not_your_need for non-owners. It also explicitly frames the tool as a hard delete rather than a reversible action, adding meaningful behavioral context not present in 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.

Conciseness5/5

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

The description is compact and well-structured, front-loading the critical hard-delete and irreversibility facts, then providing routing guidance, and ending with failure semantics. Every sentence carries useful information with no filler.

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

Completeness5/5

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

For a one-parameter destructive tool with no output schema, the description covers all essential context: authentication, irreversibility, cascade behavior, preferred alternatives, user confirmation, and error semantics. Nothing an agent needs to safely invoke this tool is missing.

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

Parameters3/5

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

The input schema has 100% description coverage for the single needId parameter, so the schema already explains the parameter. The description adds ownership context ('自己的需求') but does not need to explain the parameter format further; baseline 3 is appropriate.

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

Purpose5/5

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

The description states a specific verb and resource: '硬删除自己的需求' (hard delete one's own need), with explicit scope ('自己的需求') and consequences ('连同全部接洽记录,不可恢复'). It also distinguishes itself from siblings cancel_need and unpublish_need, so an agent can reliably tell them apart.

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

Usage Guidelines5/5

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

The description explicitly says when to use this tool versus alternatives: '日常收尾优先用 cancel_need(保留记录)或 unpublish_need(可逆下架)', and reserves delete for cases where the data should truly be erased. It also instructs the agent to confirm with the user before calling, which is clear operational guidance.

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

endorse_creator给主理人写口碑A
Idempotent
Inspect

【需要登录】给某位主理人写一段推荐口碑(无星级,文字必填 ≥4 字,可选关系 relation)。不能给自己 / 未认领占位号写;互相拉黑时不可写。一人对一人一条,再次调用即编辑。

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes推荐口碑文字(必填,≥4 字)
userIdYes主理人用户 id
relationNo你与 TA 的关系,如 合作过/用户/同行,可选

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, idempotentHint=true), the description discloses login requirements, the one-record-per-pair constraint, and the important upsert behavior that calling again edits the existing endorsement. It also adds business rules around self-endorsement, unclaimed accounts, and mutual blocks that 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.

Conciseness5/5

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

A single dense sentence front-loads the login requirement, then states the operation, parameter essentials, target exclusions, and create-or-edit behavior. No filler or redundant restatement of the tool name exists.

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

Completeness5/5

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, the definition covers auth, required/optional fields, invalid target cases, and edit-on-recall semantics. With schema covering parameter formats and annotations covering read-only/destructive flags, nothing essential for correct invocation is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds value beyond the schema by constraining userId semantics: the target cannot be the caller, cannot be an unclaimed placeholder, and the operation is blocked under mutual block. It also clarifies the relation parameter is optional and body is required text, though the schema already encodes body minLength and relation optionality.

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

Purpose5/5

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

The description states a specific verb and resource: writing a recommendation testimonial for a specific 主理人. It also distinguishes from siblings by noting '无星级' (no star rating), separating it from rate_product, and by describing the create-or-edit behavior that get_creator_endorsements would not cover.

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

Usage Guidelines4/5

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

It gives clear when-to-use context and explicit when-not constraints: cannot write for yourself, cannot write for an unclaimed placeholder, and cannot write when mutually blocked. However, it does not name alternative tools or explicitly route the agent to a read-only sibling for viewing endorsements, so it stops short of full alternative guidance.

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

follow_creator关注主理人A
Idempotent
Inspect

【需要登录】关注某位主理人(用户 id)。互相关注即成为好友,对方设为「好友可见」的链接会对你可见。幂等:重复关注 no-op。先用 list_creators / get_creator 拿 id。

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes目标用户 id(cuid)

TDQS

A4.7/5.0
Behavior5/5

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

描述在注解之外补充了关键行为:需要登录、互相关注成为好友、好友可见链接的可见性变化、以及幂等重复关注无效果。这些副作用和前置条件不是注解能直接推导出来的,对代理正确评估调用后果非常有价值。

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

Conciseness5/5

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

描述仅四句话,每句话都有明确用途:登录要求、动作对象、副作用、幂等性、参数获取方式。信息密度高且前置了最重要的登录限制,无冗余内容。

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

Completeness5/5

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

对于单参数、无输出 schema 的简单关注操作,描述已覆盖登录条件、参数来源、幂等性、好友关系效果和可见性变化。注解也补充了 idempotentHint 和 destructiveHint,整体信息完整,没有明显缺失。

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

Parameters4/5

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

输入 schema 对 userId 的描述已覆盖 100%,基线为 3。描述额外说明“先用 list_creators / get_creator 拿 id”,为代理提供了获取该参数的实用路径,这超出了 schema 本身的信息,因此加一分。

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

Purpose5/5

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

描述明确说明具体动作是“关注某位主理人(用户 id)”,并进一步解释互相关注会成为好友、好友可见链接会对你可见。这清楚地将 follow_creator 与 follow_product、unfollow_creator 等同类工具区分开,动词和对象都具体无歧义。

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

Usage Guidelines4/5

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

描述给出了明确的使用上下文:需要登录后才能关注,并建议先用 list_creators / get_creator 获取目标用户 id。虽然没有逐一说明何时不应使用本工具,但已提供足够的前置条件和操作路径,AI 能据此正确触发或引导用户。

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

follow_product关注产品A
Idempotent
Inspect

【需要登录】【何时用】用户说「这个产品我先存着 / 关注一下 / 回头再看」。关注的是产品,不是人(关注人用 follow_creator,那个才影响好友关系和「好友可见」链接)。

【组合链】search_products / list_service_products / get_product 拿到 productId → 本工具关注 → 之后用 get_my_card 看我关注了哪些(关注列表并在名片里,没有单独的列表工具)→ 想找主理人聊就 get_creator → start_conversation。

【口径/坑】幂等,重复关注 no-op。只能关注已发布的产品,找不到或已下架报 404。关注是单方面的、对方看不到通知,不算打招呼——真想让对方知道就去开聊。

ParametersJSON Schema
NameRequiredDescriptionDefault
productIdYes产品 id(cuid),从 get_product / search_products 拿

TDQS

A4.9/5.0
Behavior5/5

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

Even though annotations already include idempotentHint=true and readOnlyHint=false, the description adds valuable behavioral context: repeated following is a no-op, only published products can be followed, missing/unpublished products return 404, the follow is unilateral with no notification to the other party, and it does not count as a greeting. This goes well beyond annotation defaults and discloses important side effects and error behavior.

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

Conciseness5/5

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

The description is structured into clear labeled sections: login requirement, when to use, combination chain, and edge cases. Although dense, every sentence carries operational value and there is no filler or repetition of annotation data.

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

Completeness5/5

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

For a single-parameter mutation tool with no output schema, the description covers login requirements, usage triggers, alternative tools, the full workflow, error conditions, idempotency, and side effects. Nothing that an agent needs to correctly invoke this tool is missing.

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

Parameters4/5

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

The input schema already fully documents productId as a cuid obtained from get_product/search_products, so the baseline is 3. The description adds list_service_products as another source and embeds productId in a concrete workflow, which is modest additional value beyond the schema.

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

Purpose5/5

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

The description states exactly what the tool does in the first line: it follows/saves a product. It explicitly distinguishes itself from follow_creator by clarifying this tool is for products, not people, and notes that follow_creator affects friend relationships and 'friend-visible' links. This is a specific verb+resource with strong sibling differentiation.

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

Usage Guidelines5/5

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

It gives concrete trigger phrases ('我先存着 / 关注一下 / 回头再看'), clearly states when NOT to use it (following a person → use follow_creator), and provides a full combination chain: obtain productId from search_products, list_service_products, or get_product → follow → view via get_my_card. This is explicit usage guidance with no ambiguity.

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

get_activity查活动详情A
Read-onlyIdempotent
Inspect

按 id 或 slug 拿活动详情:标题 / 描述 / 时间地点 / organizer / 报名情况。两个参数二选一,slug 优先。

【怎么报名——判据只看 signup,不看 type】

  • signup 不为空 → 站内能报:用 get_signup_activity 看要填什么、submit_signup 提交。站内报名只有这一条链。(平台自办/承办的赛事也常是 type=COMPETITION,一样在站内报——别拿 type 判。)

  • signup 为空且 externalUrl 非空 → 这是导入的外部赛事资讯,站内报不了,如实让用户去 externalUrl 那儿报。

  • 两个都空 → 这场就是没开报名,别编一个入口出来。

【相关 resource】opcmenu://activity/{slug}

ParametersJSON Schema
NameRequiredDescriptionDefault
idNo活动 id(cuid)
slugNo活动 slug

TDQS

A5/5.0
Behavior5/5

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

Annotations declare readOnly/openWorld/idempotent/not destructive, and the description adds behavior beyond them: slug takes priority over id, only one of the two params is expected, and the signup field determines whether in-platform signup is possible. It also exposes the related deep link and edge cases.

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

Conciseness5/5

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

The core purpose is front-loaded, and the signup routing is organized as a scannable list. No sentence is filler: the type warning and the 'only one chain' note each address a real failure mode.

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

Completeness5/5

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

With no output schema, the description supplies the return-value scope (title, description, time/location, organizer, signup status) and covers the main edge cases an agent will encounter. The tool definition is effectively self-contained for correct invocation.

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

Parameters5/5

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

The schema only defines id and slug; the description adds the critical constraint '两个参数二选一,slug 优先'. This tells the agent that one parameter is needed and which to prefer when both are supplied, which is not inferable from the schema.

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

Purpose5/5

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

The description opens with a specific verb-resource pair ('按 id 或 slug 拿活动详情') and lists the returned fields. It also distinguishes the tool from get_signup_activity by stating that signup-specific actions belong to that sibling. The title '查活动详情' is consistent.

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

Usage Guidelines5/5

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

It provides an explicit decision tree: if signup is non-empty, use get_signup_activity and submit_signup; if empty and externalUrl exists, direct the user to externalUrl; if both are empty, there is no signup entry. It also warns not to rely on the type field, which prevents a common misrouting.

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

get_chain_anchor看产业链链位(以任意节点为锚)A
Idempotent
Inspect

【需要登录】【何时用】「我在产业链的什么位置」「我的上游下游是谁」「这家公司的上下游有哪些」。返回以某个节点为锚的自我中心视图:上游若干环 + 锚点自己的链位 + 下游若干环,每环带成员。

【组合链·多跳】 · 不传 subjectType/subjectId 就直接落在「我」身上(我 + 我的已发布产品里的默认锚点),一次调用就位;返回体里带 myAnchors 告诉你我还有哪些锚点可切。 · 拿链上任意成员的 id 再调本接口就是下一跳(「上游的上游」)——这就是递归展开产业链的全部方法。 · 先 metadataOnly=true 探方向(只出类别和计数,不判成员,快且省),锁定要看的那一类再用 list_chain_group_members 翻它的成员。 · 成员 members[].id(type=user)→ get_creator → start_conversation;members[].claimed===false 表示这条是爬虫抓来的目录条目,背后没有能对话的真人,别去开聊,引导用户看 siteUrl。 · 我自己还没归位(anchor.placed=false)→ set_my_chain_position 用一段自由文本归位。

【口径/坑】 · 这个接口真花钱:成员是 LLM 成对审核判出来的(判完落缓存)。别为了看全而循环翻到底,一屏够用;也别对同一个锚点反复调。 · memberLimit 不对外开放任意数值(照 apps/api chain/anchor 路由的约束),只给 metadataOnly 一个开关:true = 一个成员都不判,只要类别元数据。 · warming=true 表示还有候选没判完、后台在续判——这时候空成员不等于没人,如实说「还没判完,等会儿再看」,不许下「这一环没人」的结论。 · 每组的 supply 字段区分三种空:none(站内确实还没有这类主体)/ gated(有候选但证明不了真实价值流,宁缺毋滥)/ warming(还在判)。三种说法完全不同,别混成一句「没有」。 · profileVersion 是分页游标的绑定版本,翻成员时要原样带上(见 list_chain_group_members)。

ParametersJSON Schema
NameRequiredDescriptionDefault
subjectIdNo锚点 id;与 subjectType 成对给,留空就用我自己的
subjectTypeNo锚点类型 user|product;**留空就用我自己的默认锚点**
metadataOnlyNotrue = 只要类别元数据、一个成员都不判(快、省钱,探方向用)。默认 false = 每类给一屏预览成员

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses traits absent from annotations: it requires login, costs money because members are LLM-pair-reviewed and cached, metadataOnly skips member judgment, warming indicates background processing, supply has three distinct empty states, and pagination needs profileVersion. These enrich the sparse annotations (readOnlyHint=false, openWorldHint=true) without contradicting them.

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

Conciseness5/5

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

The description is long but tightly organized with clear headers (何时用 / 组合链·多跳 / 口径/坑) and bulleted pitfalls. Every section carries load-bearing operational guidance, and the purpose is front-loaded before the details.

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

Completeness5/5

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

With no output schema, the description compensates by explaining the response shape: ego-centric rings with members, myAnchors, anchor.placed, members[].id/claimed, supply values, warming flag, and profileVersion cursor. It also covers the main follow-up tools and edge cases, leaving little ambiguity for an agent.

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

Parameters3/5

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

Schema descriptions already cover all three parameters with 100% coverage, including the default-fallback behavior and metadataOnly semantics. The description adds workflow context (recursive expansion, cost implications) but no new parameter-level meaning, so baseline 3 is appropriate.

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

Purpose5/5

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

The description names a specific verb and resource: it returns an ego-centric supply-chain view anchored at a node ('返回以某个节点为锚的自我中心视图'), and lists concrete user questions it answers. It also differentiates itself by naming sibling tools like list_chain_group_members and set_my_chain_position for follow-up actions.

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

Usage Guidelines5/5

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

A dedicated 【何时用】 section states the exact questions this tool answers, and the workflow guidance explicitly tells when to use metadataOnly=true to probe before switching to list_chain_group_members to inspect members. It also gives exclusions: don't iterate to the end, don't re-call the same anchor, and don't start conversations with unclaimed members.

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

get_collaboration_goal看合作目标和任务板A
Idempotent
Inspect

【需要登录】看独行录目标详情、我的权限、合作人、任务。服务校验成员权限;includeClosed=true 包含已了结任务,最多 200 条,reachingLimit 表示可能截断。读任务会幂等补周期期次。创建任务用 create_collaboration_task,发起人改目标用 update_collaboration_goal。

ParametersJSON Schema
NameRequiredDescriptionDefault
goalIdYes
includeClosedNo

TDQS

A4.7/5.0
Behavior5/5

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

Beyond annotations, the description discloses authentication needs, server-side permission checks, the closed-task filtering behavior, the 200-row cap, the reachingLimit truncation signal, and the idempotent backfill of periodic iterations on read. This adds substantial behavioral context without contradicting 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.

Conciseness5/5

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

The description is compact and information-dense. Every sentence contributes a distinct fact: purpose, login/permission, filtering and limits, idempotent side effect, and routing to sibling tools. There is no filler or redundancy.

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

Completeness5/5

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

Even without an output schema, the description enumerates what is returned (goal details, permissions, collaborators, tasks), covers auth and permission checks, explains edge-case behavior (truncation, closed tasks, backfill), and points to sibling tools for related mutations. This is sufficiently complete for an agent to invoke it correctly.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must carry weight. It provides strong semantics for includeClosed (closed tasks, max 200, reachingLimit truncation), but goalId is only implied as the target goal, not explicitly documented. Since goalId is the sole required parameter, this is a partial gap.

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

Purpose5/5

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

The description clearly states the tool views goal details, permissions, collaborators, and tasks ('看独行录目标详情、我的权限、合作人、任务'). It uses a specific verb and resource, and the mention of create_collaboration_task and update_collaboration_goal helps distinguish it from mutation siblings.

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

Usage Guidelines5/5

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

It explicitly states the login and member-permission requirement, explains includeClosed=true behavior and the 200-item limit, and routes the agent to create_collaboration_task for creating tasks and update_collaboration_goal for initiator edits. This gives clear when-to-use and when-to-use-alternative guidance.

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

get_company查一人公司主页A
Read-onlyIdempotent
Inspect

按 slug 获取某个一人公司主页(公开视角:仅返回已发布 PUBLISHED 的公司;本人 owner 可见自己任意状态的公司)。查不到返回 found=false。

【何时用】用户想看某家一人公司在做什么。

【相关 resource】opcmenu://company/{slug}

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes公司主页 slug(URL 上 /c/<slug>)

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already signal read-only and idempotent behavior, and the description adds meaningful context beyond that: only PUBLISHED companies are returned for the public, owners can see their own non-published companies, and a not-found result returns found=false. This gives the agent a clear behavioral contract even without an output schema.

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

Conciseness5/5

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

The description is compact and well-structured: core function first, then when-to-use guidance, then a resource link. Each section earns its place and adds distinct value without redundancy.

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

Completeness5/5

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

For a single-parameter read tool, the description covers the lookup mechanism, visibility rules, owner exception, and not-found behavior. With no output schema, the found=false note helps fill the return-value gap. Nothing critical is missing for correct invocation.

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

Parameters3/5

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

Schema coverage is 100%, and the slug parameter already has a description ('公司主页 slug(URL 上 /c/<slug>)'). The tool description adds no new parameter semantics beyond restating that lookup is by slug, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description states a specific verb and resource ('按 slug 获取某个一人公司主页') and clarifies the public/owner visibility distinction. It differentiates itself from sibling tools like get_my_company and list_companies by scoping to a single company by slug with PUBLISHED-only behavior.

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

Usage Guidelines4/5

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

The '【何时用】' section gives clear context: use it when the user wants to see what a specific one-person company does. It does not explicitly name alternatives or exclusion cases, but the visibility rules ('仅返回已发布 PUBLISHED 的公司;本人 owner 可见自己任意状态的公司') imply when it applies and when it might not.

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

get_contact_exchange_state查交换联系方式状态A
Read-onlyIdempotent
Inspect

【需要登录】查看某个 1-1 会话的「交换联系方式」状态:exchange = 最近一次交换(status=ACCEPTED 时 contacts 里双方联系方式互见),myContacts = 我会被交换出去的联系方式,canRequest = 当前能否发起新请求。

【组合链】canRequest=true → request_contact_exchange 发起;对方发起的 PENDING → 与用户确认后 respond_contact_exchange 响应;myContacts 为空 → 先用 add_profile_link 补 contact 组链接(微信/电话/邮箱)。

ParametersJSON Schema
NameRequiredDescriptionDefault
conversationIdYes会话 id(仅 1-1 会话)

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already convey readOnlyHint, idempotentHint, openWorldHint, and non-destructiveness. The description adds meaningful context beyond those: login is required, and the semantics of exchange/myContacts/canRequest are explained including the ACCEPTED visibility condition. It could add output format or error details, but for a simple read tool this is sufficient.

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

Conciseness5/5

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

Two tightly organized sections: first the purpose and return-field semantics, then the actionable combination chain. Every sentence adds value, and the most important constraints are front-loaded.

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

Completeness5/5

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

For a single-parameter read-only tool with no output schema, the description covers the essential context: login requirement, input constraint, output field meanings, and downstream action routing. Nothing needed to invoke it correctly is missing.

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

Parameters3/5

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

The sole parameter conversationId is already fully documented in the schema as the 1-1 conversation id. The description reinforces the 1-1 constraint but adds no extra parameter syntax or format details. High schema coverage keeps this at the baseline of 3.

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

Purpose5/5

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

The description names a precise operation: view the contact-exchange state of a specific 1-1 conversation. It clearly distinguishes this read query from siblings like request_contact_exchange and respond_contact_exchange by describing its read-only scope and the three state fields it returns.

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

Usage Guidelines5/5

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

Explicitly states the login requirement and 1-1 conversation constraint, then gives a concrete combination chain: canRequest=true routes to request_contact_exchange, inbound PENDING routes to respond_contact_exchange, and empty myContacts routes to add_profile_link first. This is strong when-to-use and alternative guidance.

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

get_conversation查会话详情A
Read-onlyIdempotent
Inspect

【需要登录】返回当前用户参与的某个会话的详情(成员 / 关联产品 / 最近预览 / 我的已读位 / 是否静音)。只能查自己参与的会话。读消息用 read_messages。

ParametersJSON Schema
NameRequiredDescriptionDefault
conversationIdYes会话 id

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered. The description adds meaningful behavioral context beyond annotations: authentication is required, the user can only access their own conversations, and message contents are not returned here since '读消息用 read_messages'.

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

Conciseness5/5

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

Two dense sentences front-load the auth requirement and operation, list returned fields, state the access scope, and give a routing pointer. Every sentence earns its place with zero filler.

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

Completeness5/5

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

For a simple single-parameter read-only getter, the description covers auth, access scope, returned fields, and alternative routing. Even without an output schema, an agent knows what to expect and when to choose a different tool.

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

Parameters4/5

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

The schema fully documents the single conversationId parameter, so the baseline is 3. The description adds the important semantic constraint that the ID must refer to a conversation the current user participates in, which is not captured in the schema description.

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

Purpose5/5

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

The description states a specific verb and resource ('返回...某个会话的详情') and enumerates the returned fields (members, linked products, recent preview, read position, mute). It also scopes the operation to conversations the current user participates in and explicitly redirects message reading to read_messages, distinguishing it from that sibling.

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

Usage Guidelines5/5

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

It states the login prerequisite, the access precondition ('只能查自己参与的会话'), and explicitly names read_messages as the tool to use when the goal is reading messages. This provides concrete when-to-use and when-not-to-use guidance, though it does not compare against list_my_conversations or get_conversation_needs.

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

get_conversation_needs查会话的需求上下文A
Read-onlyIdempotent
Inspect

【需要登录】聊天前情报一步到位:一次调用同时返回 (1) conversationNeed——该会话绑定的接洽需求(含双方完成握手状态 authorDoneAt / claimerDoneAt,判断能否 / 是否该 complete_need);(2) peerOpenNeeds——对方最近的 OPEN 需求(最多 10 条,了解对方还在找什么,找合作切入点)。没绑需求时 conversationNeed=null。

【组合链】list_my_conversations 拿 conversationId → 本工具补上下文 → send_message 回复 / complete_need 确认完成。只能查自己参与的会话。

ParametersJSON Schema
NameRequiredDescriptionDefault
conversationIdYes会话 id

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/destructiveHint=false, and the description states 需要登录, which is beyond what annotations provide. It also discloses boundary behavior (conversationNeed=null when unbound, peerOpenNeeds capped at 10). It does not detail pagination or ordering of peerOpenNeeds, which prevents a 5, but the combination of auth note + null case + cap is strong.

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

Conciseness5/5

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

The description is dense but well-structured: a headline result, a bullet-like enumeration of payloads, a null case, a chain, and a scope restriction. Every sentence earns its place and the critical usage context is front-loaded.

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

Completeness4/5

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

For a read-only tool with one fully documented parameter and no output schema, the description covers the main usage context, auth requirement, return highlights, and integration with send_message/complete_need. Missing an explicit note that the response contains both fields even when peerOpenNeeds is empty, and no details about sorting, but these are minor given the richness already present.

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

Parameters4/5

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

Schema coverage is 100%, so the schema fully documents conversationId; the description reinforces that it is the id from list_my_conversations and implies it must be a conversation the user participates in. That adds a validity condition beyond the schema's one-line field description.

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

Purpose5/5

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

The description names a specific verb ('查'), a precise resource ('会话的需求上下文'), and immediately enumerates the two return payloads (conversationNeed and peerOpenNeeds) with their relevant fields. It also contrasts with siblings like get_conversation and list_my_conversations by stating exactly what layered context it adds.

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

Usage Guidelines5/5

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

It gives an explicit combination chain: list_my_conversations → this tool → send_message / complete_need, tells conditions (only own conversations), and says what to use it for ('判断能否/是否该 complete_need', '找合作切入点'). It also preempts misuse by noting it cannot query other people's conversations.

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

get_creator查主理人详情A
Read-onlyIdempotent
Inspect

按 id 查主理人 profile + 已发布作品列表(按热度+发布时间排序)。

【何时用】用户想了解某位主理人在做什么、关注他/她的全部作品。

【相关 resource】opcmenu://creator/{id}

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes用户 id(cuid)

TDQS

A4.3/5.0
Behavior4/5

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

注释已声明 readOnlyHint、idempotentHint、destructiveHint,说明这是安全只读操作。描述额外补充了返回内容包含 profile 和已发布作品列表,且按热度和发布时间排序,这对调用后的预期有实质帮助。

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

Conciseness5/5

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

描述精简,核心功能前置,随后用【何时用】【相关 resource】分段补充,没有任何冗余信息,每句话都有用途。

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

Completeness5/5

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

这是一个单参数只读查询工具,描述涵盖了功能、使用时机、返回内容、排序方式和相关 deep link,虽然没有 output schema,但返回内容已被有效说明,整体完整度足够。

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

Parameters3/5

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

参数 schema 覆盖率为 100%,id 已有“用户 id(cuid)”的说明。描述只重复“按 id”,没有提供超出 schema 的额外语义,符合高覆盖场景下的基线 3 分。

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

Purpose5/5

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

动词明确(按 id 查),资源明确(主理人 profile + 已发布作品列表),并附排序规则。与 list_creators、get_creator_endorsements 等兄弟工具在内容上足以区分,不是泛泛的“查询”描述。

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

Usage Guidelines4/5

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

【何时用】明确给出了使用场景:“用户想了解某位主理人在做什么、关注他/她的全部作品”。但没有说明何时不该用或给出替代工具的对比,因此未达到 5 分标准。

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

get_creator_endorsements查主理人口碑A
Read-onlyIdempotent
Inspect

返回某主理人收到的推荐口碑(无星级,只有文字 + 关系 relation)+ 总数。登录时附带 myRating(我给 TA 的口碑)。

【何时用】人物尽调:谁背书过 TA、以什么关系、说了什么。

【口径】全站至今几乎没有人写过主理人口碑,空返回是常态。真要判断一个人靠不靠谱,看 get_creator 的作品列表比看这里有用。写口碑用 endorse_creator。

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNorecent 最新(默认)| helpful 最有用
limitNo返回条数,默认 20
cursorNo分页游标
userIdYes主理人用户 id(cuid)

TDQS

A4.5/5.0
Behavior5/5

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

Annotations (readOnlyHint, openWorldHint, idempotentHint, destructiveHint=false) already cover the safety profile, and the description adds genuinely valuable behavioral context beyond them: response contents (text + relation, no star, total count, myRating when logged in) and the critical data-sparsity caveat that empty returns are normal rather than an error. This prevents an agent from misinterpreting empty results as a failure.

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

Conciseness4/5

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

Three short labeled sections front-load the core return value first, then usage guidance, then calibration context. The 口径 section is the longest but earns its place because it carries the unique data-sparsity warning; no sentence is pure filler.

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

Completeness4/5

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

For a read-only call with one required param and a fully documented schema, the main completion risk is response interpretation. The description partially compensates for the missing output schema by naming the response fields (text, relation, total, myRating) and flagging empty returns as the norm, though it stops short of a precise response shape or pagination details.

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

Parameters3/5

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

Schema description coverage is 100% — userId, sort (enum with Chinese descriptions), limit (with default), and cursor are all documented in the input schema. The description adds little per-parameter meaning beyond that; its extra details (no star rating, myRating) are response semantics rather than parameter semantics. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose5/5

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

The description opens with a specific verb and resource: '返回某主理人收到的推荐口碑' and specifies the exact return shape (text + relation, no star rating, plus total count), with myRating when logged in. This clearly distinguishes it from sibling read tools like get_creator (works list) and from the write tool endorse_creator.

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

Usage Guidelines5/5

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

The 【何时用】 section states the intended scenario explicitly — person due diligence ('谁背书过 TA、以什么关系、说了什么'). It also provides a when-not-to-use signal (endorsements are nearly nonexistent site-wide, so get_creator's works list is more reliable for judging someone) and explicitly names endorse_creator for the write path.

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

get_my_brief我的今日全景A
Idempotent
Inspect

【需要登录】【何时用】任何「今天怎么样 / 有什么要处理的 / 日报 / 早上问一句」的场景都从这里开始。它把 App 里分散在六屏、且必须由用户自己想起来去点的六件事并成一次返回: ① 未读私信数 ② 最近 7 天谁看过我(计数 + 具名前几位)③ 今日开聊额度 ④ 7 天内截止且我还没报的场次 ⑤ 定位栏「最该做的三件事」⑥ 我办的活动待审报名数。 这是 agent 面独有的形态——App 里没有、也不该有这一屏;一次调用换一段话。

【组合链】 · unread>0 → list_my_conversations 找出是谁 → read_messages 看内容 → send_message 回。 · attention.top[].viewerId → get_creator 看他是谁 → start_conversation 主动开聊(这是全站转化最高的一条链)。 · deadlines[].slug → get_signup_activity 看要填什么 → submit_signup 报名。 · positioning.nextUp[].suggestedTool 就是「这件事该调哪个工具」,用户说「把这周能做的都做了」就照着一条条真做完再汇报。 · organizer.activities[].slug → 去主办方那条链审报名。 · 合作目标、合作任务与待回应合作邀请不在这六路里,用 get_my_work;安排路径与结果反馈用 get_my_dispatch(该读取会标记建议已看,不要后台顺手调用)。 · chatQuota.remaining=0 时别再张罗开聊,先 get_my_invite(引荐一位完成入驻的同行 = 每天永久 +1 次)。

【口径/坑】 · 六路并发取,任何一路失败都降级成 null,整体永不失败。哪几路挂了写在 degraded[] 里——null ≠ 0,别把「取不到」说成「没有」。 · 未读数、额度、待审数都是实时推导的,没有重置任务;额度不会在白天自己回来。 · 具名访客只有真人登录后浏览才认得出;anonymous 那部分没有身份可查,是计数下限(按 ipHash 折叠),不许编人名。 · 报名 feed 服务端是「置顶优先、再按截止近的排」,这里已按截止时间重排并只留 7 天内、我还没报的。 · 不是纯只读:定位那一路走的是不落算分快照的算法,但没有新鲜阶段结论时会在后台排一次 LLM 阶段重判并写回结论。所以标了 readOnlyHint=false。代价有硬闸:结论 7 天新鲜期内不重判、同一人 10 分钟内只排一次、证据没变不重判——当日报天天调、定时调都不会放大成本,放心调。 · 要完整任务清单(39 条的完成态)用 get_my_positioning。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

The description openly explains behavior beyond the annotations: it is not purely read-only because the positioning path may trigger a background LLM re-judgment and write back, matching readOnlyHint=false. It also discloses failure degradation to null, the meaning of degraded[], and why null ≠ 0, along with rate-limit safeguards ensuring repeated calls are safe.

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

Conciseness5/5

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

Although long, the description is densely structured with clear sections (when to use, combination chains, pitfalls/scope) and every sentence carries actionable information. It front-loads purpose and uses explicit formatting to make the length navigable.

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

Completeness5/5

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 compensate, and it does: it lists all six returned components, provides the exact field paths used in chains, explains degradation semantics, and covers the non-read-only cost guards. An agent has enough to call the tool and interpret the response correctly.

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

Parameters4/5

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

With zero parameters, the schema leaves nothing to explain; the baseline is 4. The description adds no parameter detail but does enrich understanding of the response structure through field paths like unread, attention.top[].viewerId, deadlines[].slug, and chatQuota.remaining, which supports the separate return-value semantics.

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

Purpose5/5

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

The description is explicit and specific: it aggregates six named items scattered across six screens into one response for 'today' queries, naming each item (unread messages, recent viewers, chat quota, deadlines, top three actions, pending review counts). It also distinguishes itself from siblings like get_my_work and get_my_dispatch, making its purpose unmistakable.

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

Usage Guidelines5/5

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

It states exactly when to start here ('any how is today / what needs handling / daily report' scenario') and gives explicit routing rules: use get_my_work for collaboration goals, get_my_dispatch for dispatch, get_my_invite when chatQuota.remaining=0, and get_my_positioning for the full task list. This is exemplary when-to-use vs alternative guidance.

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

get_my_card导出我的创客数据卡A
Read-onlyIdempotent
Inspect

【需要登录】一次调用拿全「我是谁」的结构化全集:基本信息(含 canOffer 我能提供什么)+ 按分组聚合的全部链接(标注每条可见范围)+ 已发布产品 + 多角色画像 roleProfile(融资/投资人/机构/资源寻找者/在校/阶段)+ 我关注的产品。

【何时用】写开场白、填外部平台的表单、生成 BP 大纲、判断该不该接某条需求——这些事都要先有这一份。别为了凑齐这些信息去连调四五个工具,这里一次给全。

【组合链】get_my_card → 拿 canOffer 对照 list_needs_feed 挑能接的 → contact_need → send_message。 【想改】资料本体走 update_my_profile;角色画像走 set_my_role_profile;也可以用 resource opcmenu://me/card 拿同样数据。 【完整度】missing 列出还没填的关键项(照名片完整度口径),是「还差哪几步」的现成代办清单。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnly, openWorld, idempotent, and non-destructive hints. The description adds meaningful behavioral context beyond annotations: login is required, the tool returns grouped and visibility-tagged data, and the 'missing' field serves as a ready-made completeness checklist. No contradiction with annotations.

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

Conciseness5/5

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

The description is well-structured with labeled sections: content summary, when to use, combination chain, modification routing, and completeness semantics. Despite its length, every section adds practical value and the core promise is front-loaded in the first sentence.

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

Completeness5/5

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

For a zero-parameter read-only aggregation tool with no output schema, the description fully covers what data is returned, when to use it, how to chain it with other tools, and where to go for modifications. Nothing essential is missing for an agent to invoke it correctly.

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

Parameters4/5

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

The tool has zero parameters and schema description coverage is 100%, so the description has no parameter burden. It correctly implies no inputs are needed and focuses on what the response contains.

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

Purpose5/5

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

The description states a specific verb-resource relationship: one call retrieves the complete structured set of 'who I am' data, enumerating basic info, links with visibility, published products, role profiles, and followed products. It clearly differentiates from sibling getters by emphasizing aggregation ('一次调用拿全') and by naming alternative tools for modifications.

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

Usage Guidelines5/5

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

The description explicitly lists when to use this tool (writing openers, filling external forms, generating BP outlines, judging demand fit) and advises against chaining multiple tools for the same data. It also routes modifications to update_my_profile and set_my_role_profile, giving clear alternatives.

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

get_my_chat_opener看我的自动开场语A
Read-onlyIdempotent
Inspect

【需要登录】【何时用】要改开场语之前先读现状;或者用户问「别人点找我聊聊时会收到什么」。

【组合链】读完 → 觉得该改就 set_my_chat_opener 写一句更像人说的。写之前先 get_my_card / get_my_products 读一遍他的「我能提供什么」和产品,写出来的话才有具体内容。

【口径/坑】opener=null 表示他没自定义,实际发出去的是 effective(全站默认那句)。这不是「没设置好」,默认那句本来就够用。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

The description adds meaningful behavioral nuance beyond the annotations: it explains the opener=null case and that the effective message is the platform default, preventing the agent from misinterpreting null as an error. This is exactly the kind of context annotations cannot convey.

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

Conciseness5/5

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

The description is organized into clear labeled sections: when to use, combination chain, and pitfalls. Every sentence adds value, and the critical null/effective caveat is given dedicated space. It is concise despite covering several important aspects.

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

Completeness5/5

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 with no output schema, the description covers what the agent needs: when to call it, how it fits with sibling tools, and the key semantic trap (null vs effective). Nothing important is missing.

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

Parameters4/5

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

The tool has zero parameters, so the schema covers everything trivially. The description adds no parameter detail, but none is needed. Baseline 4 for no-parameter tools applies.

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

Purpose5/5

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

The description clearly identifies the tool as a read operation for the user's chat opener, with explicit use cases: '要改开场语之前先读现状' and answering what others see when contacting. It also implicitly differentiates from the sibling set_my_chat_opener by naming it in the combination chain.

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

Usage Guidelines5/5

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

Provides explicit when-to-use guidance: read before editing, and when users ask what others receive. It also gives a usage chain, telling the agent to use set_my_chat_opener after reading, and to read get_my_card/get_my_products before writing. This is clear and actionable.

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

get_my_company读我的公司A
Read-onlyIdempotent
Inspect

【需要登录】返回当前用户名下的一人公司主页(任意状态,含已归档 ARCHIVED;PENDING_REVIEW 仅历史遗留数据)。没建过则返回 company=null。

【何时用】改公司资料前先用它读现状拿到现有字段 / slug / 状态。每个用户最多一家公司。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare readOnly, idempotent, and non-destructive behavior, and the description adds valuable context: login requirement, included statuses, legacy PENDING_REVIEW semantics, null-return behavior, and uniqueness per user. No contradiction with annotations.

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

Conciseness5/5

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

The description is compact, front-loaded with the login requirement, and organized into what it does and when to use it. Every sentence adds information; no filler or redundant restatement of the schema or title.

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

Completeness5/5

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 no output schema, the description covers authentication, return semantics, edge cases (null, archived, legacy pending review), and a concrete use case. An agent has enough to decide when to call it and what to expect.

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

Parameters4/5

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

The tool has zero parameters and 100% schema coverage, so there are no parameter meanings to document. The baseline for zero-parameter tools is 4, and the description correctly relies on implicit current-user context instead of padding with parameter details.

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

Purpose5/5

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

Description states a specific verb ('返回') and resource ('当前用户名下的一人公司主页'), and adds scope details: any status including ARCHIVED, PENDING_REVIEW as legacy-only, and company=null when not created. This differentiates it from siblings like get_company, update_my_company, and list_companies.

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

Usage Guidelines4/5

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

Provides clear when-to-use guidance: read current fields, slug, and status before modifying company profile, plus the one-company-per-user invariant. It does not explicitly name alternatives or state when not to use it, so it stops short of full alternative routing.

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

get_my_dispatch查看独行录给我的安排A
Idempotent
Inspect

【需要登录】查看安排路径、建议接洽的人/活动、等待结果反馈的安排和对方来找我的请求。仅服务端灰度已开启的账户可用。此调用会将展示的当前建议标记为已看,影响后台自动换人,故不是纯只读。fillStatus=FILLING 可稍后重查;FAILED 如实报告失败,不自动重新汇报。接受建议用 accept_dispatch_arrangement,反馈用 set_dispatch_outcome。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses the key side effect beyond annotations: calling this tool marks the current suggestion as seen and affects backend automatic replacement, explicitly stating '不是纯只读'. It also explains fillStatus semantics and that FAILED results are not automatically re-reported. This aligns with readOnlyHint=false and adds meaningful operational nuance.

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

Conciseness5/5

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

The description is compact but information-dense, front-loading the login requirement and scope, then covering side effects, state handling, and alternatives without wasted words. Semicolon-separated clauses keep related behaviors grouped and scannable.

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

Completeness5/5

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

For a zero-parameter, no-output-schema tool, this description is remarkably complete: it states prerequisites, scope, side effects, retry semantics, and even cross-references the relevant sibling tools. An agent has enough context to decide when to call it and what to do with the result.

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

Parameters4/5

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

There are zero parameters and the input schema is empty, so the baseline is 4. The description adds no parameter-related confusion and even references fillStatus, which is a response/state field rather than an input parameter. No additional parameter documentation is needed.

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

Purpose5/5

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

The description uses the specific verb '查看' and identifies the resource as dispatch arrangements, enumerating the exact categories it covers (paths, suggested contacts/activities, items awaiting feedback, and inbound requests). It also names accept_dispatch_arrangement and set_dispatch_outcome as the follow-up tools, making the boundary between viewing and acting explicit.

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

Usage Guidelines4/5

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

The description gives clear context: it requires login, is gated by a server-side gray release, and should be used for viewing rather than accepting or providing feedback—those are explicitly routed to sibling tools. It also advises on retry behavior for FILLING and how to treat FAILED results. However, it does not mention when to use decline/skip/report/respond_dispatch_inbound, so guidance is not exhaustive.

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

get_my_invite我的引荐物料A
Read-onlyIdempotent
Inspect

【需要登录】【何时用】用户说「帮我拉几个朋友进来」「发个邀请给他」,或者开聊额度不够、需要长期加额度时。返回形状几乎就是为 agent 设计的:5 条短信话术 + 2 条微信话术 + 专属短链 + 三段统计(点开 / 注册 / 已入驻)。

【组合链】拿到 smsTemplates / wechatTemplates → 按收件人挑一条(label 就是场景:通用 / 发给同行 / 发给老朋友 / 发给还没创业的 / 发给投资人媒体)→ 交给用户本人去发(短信从他手机发出去才有人信)。发完隔天再调本工具看 stats.onboarded 有没有涨;额度实况看 get_my_brief 或 chatQuota 字段。

【口径/坑】 · 话术是产品写好的,改写后给用户发,别自己另编一套——这几条是按「不像群发」调过的(比如「刚想起你」那条交代了发送动机,「不合适就当我没说」那条降低了转化率反而更像真人)。你要改就只改称呼。 · 引荐一位完成入驻的同行 = 你每天永久 +1 次开场额度(只注册不入驻不算数,stats 里分开列)。 · 短信正文用 shortLink(省 8 个字符;一条中文短信上限 70 字,超了就分条发、也开始像群发);微信 / 其它 IM 用 link。 · 引荐码是懒生成的,第一次调用会顺手铸一个,属正常。 · joined 里只给昵称和入驻状态,不给被引荐人的联系方式。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

The description goes well beyond the annotations by disclosing the lazy generation of the referral code on first call, the login requirement, and that joined only exposes nickname/status without contact info. It also warns against rewriting the canned copy and explains shortLink vs link constraints, giving the agent critical operational context.

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

Conciseness5/5

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

The description is dense but well-structured with headed sections and front-loaded trigger conditions. Every block carries actionable guidance—copy constraints, message-length limits, stats semantics, and follow-up workflow—so no sentence feels like filler.

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

Completeness5/5

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

With no output schema present, the description compensates thoroughly by enumerating the returned fields and their business meaning. It covers the full end-to-end usage flow, including how to choose, personalize, deliver, and later verify referral outcomes, leaving no obvious gap for correct invocation and interpretation.

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

Parameters4/5

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

This tool has zero parameters, so the baseline is 4; there is no input ambiguity to resolve. The description instead adds valuable output semantics—template labels, stats fields, and link selection—which is more than sufficient for a no-parameter tool.

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

Purpose5/5

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

The description clearly specifies what the tool returns: 5 SMS templates, 2 WeChat templates, an exclusive short link, and three-part stats (opens/registrations/onboarded). It anchors the purpose to concrete user intents like inviting friends or needing more opening quota, which separates it from siblings such as get_my_brief.

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

Usage Guidelines5/5

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

The '何时用' section gives explicit trigger phrases and conditions. The '组合链' section prescribes the actual workflow: choose a template by label, send it from the user's phone, then check stats.onboarded later. It also explicitly redirects quota checks to get_my_brief or chatQuota, naming the alternative tool.

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

get_my_positioning我的定位(五级主线 + 六维 + 任务)A
Idempotent
Inspect

【需要登录】【何时用】用户问「我现在到哪一步了」「接下来该干嘛」「帮我把这周能做的都做了」。返回五级主线的当前等级、六维画像、称号与总分,以及全部任务的完成态与 nextUp(最该做的三件事)。

【组合链·代办】nextUp 里每条任务都带 suggestedTool——这是 agent 面相对 App 的关键差别:App 的 CTA 只能把人跳到那一屏让他自己动手,你能直接把这件事做完。 对照表: · 写「我能提供什么」/ 一句话说清项目 → update_my_profile(canOffer)(partner.can_offer 与 funding.one_liner 两条任务判的就是 User.canOffer 的字数,分别 ≥30 / ≥20 字,写虚了过不了) · 融资资料、轮次金额、传 BP → set_my_role_profile(fundraising) · 邀请同行 → get_my_invite · 发需求(招兼职 / 找合伙人 / 找资源)→ create_need · 发布产品 → create_product · 归位产业链 → set_my_chain_position · 看看我的名片长什么样 → get_my_card;去回消息 → list_my_conversations 用户说「把这周能做的都做了」就真的一条条做完再汇报,别只念清单。

【口径/坑】 · 本工具会刷新你的定位快照(写 PositioningState:算分快照 + auto 任务的完成戳),所以它不是纯读工具,别当免费接口循环调。只想看个大概用 get_my_brief。 · level.source='declared'(用户自报)永远优先于 inferred(LLM 读证据判的)/ observed(确定性兜底)。要改自报值走 set_my_role_profile(venture.stage)。 · basis / signals / confidence 是 LLM 给的判词,转述它,别自己另判一个等级,更别说「我觉得你其实已经到 XX 了」。 · 任务只增不减:达标那刻盖戳,之后数据回落也不打回未完成(用户不会莫名其妙掉级)。 · 默认裁掉全部 39 条任务的培训正文(guide),否则一次调用几万 token。真要看某一条的正文:includeGuides=true 且必须同时给 taskKey,只取那一条。 · verify='manual' 的任务平台观测不到,要用 mark_positioning_task 自报打勾。

ParametersJSON Schema
NameRequiredDescriptionDefault
taskKeyNo只看某一条任务(配合 includeGuides 取它的培训正文)
includeGuidesNo是否带回培训正文 guide,默认 false。设 true 时**必须同时给 taskKey**,且只返回那一条的正文

TDQS

A4.9/5.0
Behavior5/5

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

The description goes well beyond annotations by disclosing that this tool refreshes the positioning snapshot and writes PositioningState, so it is not a pure read tool and should not be called in a loop. It also explains level precedence (declared > inferred > observed), the monotonicity of task completion, the default omission of guides, and the instruction to rephrase LLM judgments rather than inventing levels. These are meaningful behavioral disclosures.

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

Conciseness5/5

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

The description is long but densely organized with clear sections: when to use, the agent-vs-App differentiation, a concrete tool mapping table, and pitfalls. It is front-loaded with the most important trigger phrases and alternative routing, and every section adds operational value.

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

Completeness5/5

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

Given the tool's complexity, the absence of an output schema, and the subtle side effects, the description covers everything an agent needs: what is returned, how to interpret levels, how to handle nextUp items, which sibling tools to call, what parameters are required together, and which tasks require manual verification via mark_positioning_task.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds valuable context: includeGuides=true must be paired with taskKey, only that one guide is returned, and all 39 guides are stripped by default to avoid tens of thousands of tokens per call. This is more actionable than the bare schema descriptions.

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

Purpose5/5

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

The description states a specific verb and resource: it returns the current five-level main storyline position, six-dimension profile, title and total score, plus all task completion states and nextUp. It also names the user queries that should trigger this tool, which makes it easy to distinguish from get_my_brief and other getters.

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

Usage Guidelines5/5

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

Usage guidance is explicit: it gives the exact user-phrase triggers, names get_my_brief as the lightweight alternative, and provides a detailed mapping from nextUp items to sibling tools like update_my_profile, set_my_role_profile, get_my_invite, create_need, create_product, set_my_chain_position, get_my_card, and list_my_conversations. It even tells the agent to execute the tasks rather than just read the list.

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

get_my_preferences读我的兴趣偏好A
Read-onlyIdempotent
Inspect

【需要登录】返回当前用户设置的兴趣标签(用于回显,改前先读)。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

注解已提供 readOnlyHint=true、idempotentHint=true、destructiveHint=false 的完整安全画像,描述在此基础上补充了“需要登录”的认证前提——这是注解未覆盖且对调用成败至关重要的信息。描述与注解无矛盾,且增加了场景说明。

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

Conciseness5/5

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

单句描述包含三项关键信息:登录要求、返回值、调用时机,且认证这一前置条件被前置标注。没有冗余文字,每部分都承载独立信息。

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

Completeness4/5

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

对零参数、注解丰富的简单读取工具而言,描述已覆盖认证前提、返回内容和调用时机,基本完备。缺少返回格式的具体说明,也未显式写出写对应工具名,但由于无输出 schema 且工具极简,影响很小。

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

Parameters4/5

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

工具无参数,按规则基准为 4。描述中的“当前用户”补充了身份解析语义——即工具基于登录会话确定目标对象,而非接受用户 ID 参数,这对代理理解调用方式有实际价值。

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

Purpose5/5

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

描述使用具体动词“返回”和明确资源“当前用户设置的兴趣标签”,清楚说明了工具的功能与范围,并点明数据用途是“回显”。这与众多 get_my_* 兄弟工具(如 get_my_profile、get_my_card)能自然区分开。

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

Usage Guidelines4/5

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

“用于回显,改前先读”明确给出了使用时机:在修改偏好之前先读取当前值用于界面回显。虽然没有直接点名 set_my_preferences 这个写操作兄弟工具,但“改前先读”已隐含了读写配对的调用顺序,上下文清晰。

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

get_my_products列我的产品A
Read-onlyIdempotent
Inspect

【需要登录】列出当前用户名下的产品(含待认领 / 已发布 / 已下架等全部状态,以及每个产品的全部链接)。

【何时用】agent 要改某个产品的链接/资料前先列出来拿 productId;或盘点「我发布了哪些东西」。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

The description discloses a login requirement ('需要登录') and clarifies that the result includes all product statuses and all links, adding behavioral context beyond the readOnly/idempotent annotations. It does not detail pagination or exact response shape, but that is a minor gap for a simple read-only 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.

Conciseness5/5

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

The description is compact and well-structured, with the core function stated first, followed by output scope and practical usage guidance. Every sentence adds value and there is no redundancy or filler.

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

Completeness5/5

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, the description covers the login requirement, the exact scope of results, and the intended use case of obtaining productId. Even without an output schema, an agent has enough information to select and invoke the tool correctly.

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

Parameters4/5

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

The tool has zero parameters and an empty input schema, so there are no parameter semantics for the description to clarify. The baseline of 4 for zero-parameter tools applies here.

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

Purpose5/5

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

The description clearly states a specific action and resource: '列出当前用户名下的产品' (list the current user's products). It also specifies the output scope — all statuses and all links — which distinguishes it from sibling tools like list_products or search_products.

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

Usage Guidelines4/5

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

The '【何时用】' section gives concrete use cases: getting a productId before modifying a product's links/profile, or taking inventory of published items. It provides clear context for when to use the tool, though it does not explicitly say when not to use it or name alternatives.

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

get_my_profile读我的资料A
Read-onlyIdempotent
Inspect

【需要登录】返回当前用户的完整资料:昵称 / 简介 / 介绍 / 所在地 / 全部链接(含 friends/private 等所有可见范围)/ 身份 persona。

【何时用】agent 要帮用户「把资料填到别的平台」「检查我留了哪些联系方式」「改我的链接」之前,先用它把现状读出来。比 get_creator 多了私有链接和 persona(get_creator 是公开视角,只吐 public)。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

注解已声明 readOnlyHint、openWorldHint、idempotentHint,描述在此基础上补充了“需要登录”这一认证前提,并说明返回内容包含私有链接和 persona,这些是对注解之外有意义的行为披露。没有与注解矛盾之处。

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

Conciseness5/5

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

描述分为“功能说明”和“何时使用”两部分,每句话都有实际价值。需要登录、返回内容、使用场景和与替代工具的对比均在一段简洁文字中完整呈现,没有冗余。

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

Completeness5/5

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

该工具无参数,注解已覆盖只读、幂等、非破坏性等安全属性,描述则补充了认证要求和返回数据的详细范围,并给出了与 get_creator 的对比。在无输出 schema 的情况下,描述列出的字段类别足以让 agent 理解调用结果。

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

Parameters4/5

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

该工具没有参数,输入 schema 为空,描述不需要解释参数。描述通过列出返回资料的字段类别,补充了输入 schema 无法提供的语义信息,符合 0 参数场景的基线水平。

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

Purpose5/5

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

描述以具体动词“返回”明确说明该工具的功能是获取当前用户的完整资料,并列出昵称、简介、介绍、所在地、链接和 persona 等具体内容。它明确区分了与 get_creator 的差异(get_creator 仅公开视角),使 agent 能清楚识别此工具用途。

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

Usage Guidelines5/5

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

描述明确给出使用场景:在帮助用户填写资料到其他平台、检查联系方式、修改链接之前,先读取此工具的数据。还明确指出当需要公开视角时应选用 get_creator,提供了替代工具的选择依据。

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

get_my_work我的合作目标与待办A
Idempotent
Inspect

【需要登录】查看独行录合作目标、待我做/我派出的任务、待回应合作邀请。任务保留目标与指派人,便于持续跟进。目标列表最多返回 limit 条并给总数,goalOffset 按 nextOffset 翻页(只影响目标列表);任务 reachingLimit=true 时可能还有,按 goalId 调 list_collaboration_tasks 查看。邀请最多 50 条。读任务会幂等补齐周期任务的期次,故不是纯只读。不会读取或标记安排。下一步:get_collaboration_goal 看目标详情;set_collaboration_task_status 回报进展;respond_collaboration_invite 回应邀请;安排另用 get_my_dispatch。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
goalOffsetNo
includeArchivedNo

TDQS

A4.9/5.0
Behavior5/5

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

The description discloses a non-obvious side effect not fully captured by annotations: '读任务会幂等补齐周期任务的期次,故不是纯只读' — reading tasks idempotently fills recurring task periods, so this is not purely read-only. It also states the tool will not read or mark arrangements, and explains pagination and limits. This aligns with readOnlyHint=false and idempotentHint=true, adding meaningful detail 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.

Conciseness5/5

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

The description is dense but every clause earns its place: purpose, pagination behavior, side effects, exclusions, and next-step routing. It is front-loaded with the core purpose, and the spatial separation of concerns makes the complexity navigable without redundancy.

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

Completeness5/5

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

Despite having no output schema, the description covers the key return behaviors: goal list limits and totals, nextOffset pagination, task reachingLimit and follow-up via list_collaboration_tasks, invite caps, side effects, and exclusions. It also notes login requirements. This is enough for an agent to select and invoke the tool correctly; the only minor gap is the undocumented includeArchived parameter.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate. It does explain limit and goalOffset meaningfully: the goal list returns at most limit entries with a total, and goalOffset uses nextOffset for pagination and only affects the goal list. However, includeArchived is not mentioned at all, leaving one of the three parameters undocumented.

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

Purpose5/5

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

The description names a specific verb ('查看') and clear resources: collaboration goals, tasks pending on me or dispatched by me, and invites awaiting response. It also distinguishes itself from siblings by explicitly saying arrangements should use get_my_dispatch and goal details should use get_collaboration_goal, which prevents confusion with the many sibling get_* tools.

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

Usage Guidelines5/5

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

The description gives explicit routing guidance: when tasks have reachingLimit=true, call list_collaboration_tasks by goalId; for goal details use get_collaboration_goal; for progress reporting use set_collaboration_task_status; for invites use respond_collaboration_invite; for arrangements use get_my_dispatch. This directly tells the agent when to use this tool versus alternatives.

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

get_need查需求详情A
Read-onlyIdempotent
Inspect

按 id 查单条需求的完整卡片:类型 / 标题 / 详情 / 配图 / 状态 / 作者(含 canOffer 与代表产品)。登录时附带 isMine 与 displaying。查不到返回 found=false。

【口径】接洽不限人数(没有名额概念),也没有报酬/感谢费。displaying=false 表示作者手动下架了(status 仍是 OPEN——下架只改展示期不改状态),别再向用户推荐它。

【相关 resource】opcmenu://need/{id} 【后续】想接这条需求 → contact_need(需登录),它返回 conversationId 可以直接接 send_message。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes需求 id(cuid)

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnlyHint/idempotentHint annotations, the description discloses auth-dependent fields (isMine, displaying), not-found behavior (found=false), the semantics of displaying=false (manual delist, status stays OPEN), and the no-quota/no-reward business rule.

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

Conciseness5/5

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

The main purpose is front-loaded, and the additional domain rules, resource link, and follow-up route are separated into labeled sections. Every sentence adds operational value; there is no filler.

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

Completeness5/5

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 burden of explaining return content, conditional fields, missing-record behavior, and critical display/status semantics. It also tells the agent what to do next, making it complete for a single getter.

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

Parameters3/5

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

Schema coverage is 100% and the only parameter id is already described as '需求 id(cuid)'. The description references '按 id' and the resource link but adds no substantive parameter details beyond the schema, so the baseline 3 applies.

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

Purpose5/5

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

The first line states a specific verb and resource: '按 id 查单条需求的完整卡片' and enumerates the returned fields. It clearly distinguishes this single-id detail getter from list/search/recommendation siblings.

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

Usage Guidelines4/5

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

It gives clear context: use for a single need card by id, and explains not to recommend needs with displaying=false. It also routes to contact_need for taking the need, but does not explicitly contrast with sibling query tools like search_needs or list_needs_feed.

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

get_need_recommendations看谁能满足我的需求A
Read-onlyIdempotent
Inspect

【需要登录】对自己发布的某条需求拉个性化推荐:谁最可能满足它(一人一卡,按「对方能提供的 ↔ 我的需求」向量匹配 + 回复率/活跃度加权,含 matchScore / matchReason / authorNeeds)。这是「发完需求主动出击」的工具,不用干等撮合推送。

【组合链】看中某人 → contact_need 对方的需求或 start_conversation 直接开聊。续拉传回 nextCursor,并把已看过的需求 id 放进 seen 软性下沉。

【越权】只能查自己的需求,别人的会被拒(not_your_need)。

ParametersJSON Schema
NameRequiredDescriptionDefault
seenNo本会话已看过的需求 id,续拉时传入软性下沉
limitNo返回条数,默认 20
cursorNo分页游标 nextCursor,原样回传延续同一副牌
needIdYes我的需求 id,从 list_my_needs 拿

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already signal readOnly/idempotent/non-destructive, and the description adds meaningful behavioral context: login requirement, authorization boundary with error name (not_your_need), soft downweighting of seen needs, and the scoring/weighting mechanism. No contradiction with annotations.

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

Conciseness5/5

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

The description is well structured with clear sections (【需要登录】【组合链】【越权】), front-loads the core purpose, and every sentence conveys distinct, useful information without redundancy.

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

Completeness5/5

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

Despite no output schema, the description names the returned fields and explains the authorization, pagination, and follow-up actions. For a read-only recommendation tool, this provides all essential context an agent needs to select and invoke it correctly.

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

Parameters3/5

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

Schema description coverage is 100% and already documents needId, seen, limit, and cursor with their intended usage. The description reinforces cursor and seen behavior but does not add material meaning beyond what the schema provides, so the baseline of 3 applies.

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

Purpose5/5

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

The description clearly states the action: fetch personalized recommendations for one of the user's own published needs. It specifies the matching logic, result fields (matchScore / matchReason / authorNeeds), and scope ('自己发布的', '别人的会被拒'), which distinguishes it from general feeds and search tools.

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

Usage Guidelines5/5

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

Explicitly frames when to use it ('发完需求主动出击的工具,不用干等撮合推送'), restricts it to one's own needs, and gives the follow-up chain: contact_need or start_conversation. It also explains pagination behavior with nextCursor and seen, leaving little ambiguity about how to invoke and continue using the tool.

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

get_notification_prefs读我的通知偏好A
Read-onlyIdempotent
Inspect

【需要登录】返回当前用户的通知开关:follows(新增关注)/ dms(私信)/ activities(活动)/ drops(新品播报)/ matches(新需求与我价值匹配时的撮合推送)/ nudge(未读私信触达提醒)。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, and non-destructive behavior. The description adds value beyond that by requiring login and by enumerating the exact returned notification categories (follows, dms, activities, drops, matches, nudge), giving the agent a concrete picture of the response contents.

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

Conciseness5/5

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

The description is a single dense sentence, front-loaded with the login requirement and the core purpose. Each parenthetical explanation earns its place by clarifying a switch name without unnecessary filler.

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

Completeness4/5

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

For a simple parameterless getter, the description is nearly complete: it identifies the resource, auth context, and all six returned fields. It does not specify the value format (e.g., booleans) or unauthenticated error behavior, but those are minor gaps given the low complexity and strong annotations.

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

Parameters4/5

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

This tool has zero parameters and the schema coverage is 100%, so there are no parameter semantics for the description to clarify. The baseline for a parameterless tool is 4, and the description appropriately focuses on the returned switches instead.

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

Purpose5/5

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

The description opens with '返回当前用户的通知开关' (returns the current user's notification switches) and then enumerates each switch with a plain-language gloss. The read verb and specific resource clearly distinguish it from the sibling setter set_notification_prefs.

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

Usage Guidelines4/5

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

The description states the login requirement and scopes the tool to the current user's notification switches, giving clear context for when to call it. It does not explicitly name alternatives or exclusion cases, such as using get_my_preferences for broader preference retrieval, so it stops short of full routing guidance.

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

get_onboarding_status查我的入驻引导状态A
Read-onlyIdempotent
Inspect

【需要登录】返回当前用户的入驻引导状态:completed(是否已完成)/ persona(身份)/ isFounder / creatorType(创造者类型)/ hasProduct(名下是否有产品)/ hasProfile(bio 是否已填;详细介绍 intro 是选填,不算门槛)/ hasCompany(是否建了公司)。

【何时用】帮用户「完成入驻 / 看还差哪步」时第一步先读它,再按缺口补:选身份(set_persona)→发产品(create_product)→完善资料(update_my_profile,记得写 canOffer)→可选建公司(create_company)→complete_onboarding。

【prefill——别从零开始问】返回里可能带 prefill:这个人此前在网页上报过名、或被运营在现场当面录过资料,服务端手里就有一份现成的(含 LLM 通读其报名答卷得出的 understanding 要点)。有它就当上下文用,能少打很多字

预填只减打字,不减追问:每一项都要念给用户确认,必填项一项都不能跳,complete_onboarding 的校验一条都不能绕。prefill 为 null 是常态(大多数人没有)。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive. The description adds valuable behavioral context beyond this: login requirement, the prefill field's origin and meaning, the warning that prefill only reduces typing and never reduces confirmation requirements, and that prefill is null by default. No contradiction with annotations.

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

Conciseness4/5

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

The description is organized into clear sections and front-loads the core purpose. It is somewhat long, and the prefill warning is repeated in two places, but the extra length is mostly justified because of the subtle and important prefill behavior.

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

Completeness5/5

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

With no output schema, the description fully compensates by enumerating the return fields and their exact semantics. It also covers login requirements, prefill behavior, and the downstream workflow, so an agent has everything needed to invoke and interpret this tool correctly.

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

Parameters4/5

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

The tool has zero parameters, so there are no parameter semantics to document. The baseline for 0-param tools is 4, and the description correctly avoids inventing parameter-related content.

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

Purpose5/5

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

The description states the specific verb '返回' with a clear resource ('当前用户的入驻引导状态') and enumerates every returned field. It also differentiates itself from siblings by positioning itself as the first step in the onboarding workflow, with complete_onboarding as the final step.

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

Usage Guidelines4/5

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

The description explicitly says when to use this tool: when helping users '完成入驻 / 看还差哪步', read this first. It even provides the ordered sequence of sibling tools to call based on gaps. However, it does not explicitly state when not to use it or name exclusions.

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

get_organizer_activity读我这场活动的完整配置A
Read-onlyIdempotent
Inspect

【需要登录】【何时用】改配置前的读-改-写第一步,或用户问「这场我是怎么配的 / 报名表都有哪些题」。返回活动本体现值 + 报名配置(题目表 formSchema、外部表单地址、类目、联系方式二维码)+ 我在这场的权限档(myAccess: OWNER / ADMIN / PLATFORM_ADMIN)。

【组合链】本工具读现值 → update_organizer_signup_config(slug) 改报名配置(题目/类目/联系方式);活动本体(标题/时间/地点/截止/名额)改动走 update_activity。要看报名进来多少人走 list_signup_submissions。

【口径/坑】① activityRef 收 slug 或活动 id 都行。② 只要能读就返回,活动被下架/取消后照样能读——报名的人还等着主办方联系。③ 返回里没有任何报名者数据。④ 不返回 learnedPageKeys(客户端学表单的内部账本,对你没用)。

ParametersJSON Schema
NameRequiredDescriptionDefault
activityRefYes活动 slug 或活动 id

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=true, idempotentHint=true, etc.), the description discloses login requirement, the behavior of still returning results after an event is delisted/cancelled, and explicitly states the response contains no registrant data and no learnedPageKeys. These edge-case behaviors are not inferable from the schema or annotation, adding significant value.

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

Conciseness5/5

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

The description is organized into clearly labeled sections 【需要登录】【何时用】【组合链】【口径/坑】, front-loading the login requirement and usage context. Every sentence provides actionable information for the agent, with no filler or redundant restatement of the tool name.

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

Completeness5/5

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

With no output schema, the description enumerates the return content (event current values, formSchema, external form address, category, contact QR code, myAccess with possible values), exclusions (no registrant data, no learnedPageKeys), and the read-after-delisting edge case. This is sufficient for an agent to correctly call the tool and interpret its response for a single-parameter read operation.

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

Parameters3/5

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

Schema description coverage is 100%, and the schema already describes activityRef as '活动 slug 或活动 id'. The description's pitfall ① repeats this exact information, adding no new semantic detail about the parameter. The baseline of 3 is appropriate because the schema carries the full burden of parameter documentation.

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

Purpose5/5

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

The description states a specific verb (读/reads the complete configuration), names the resource (活动本体现值 + 报名配置 + myAccess permission), and distinguishes itself from siblings by excluding registrant data and learnedPageKeys. The combination chain explicitly routes to update_organizer_signup_config, update_activity, and list_signup_submissions, making differentiation unambiguous.

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

Usage Guidelines5/5

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

It tells exactly when to use the tool: as the first step of read-edit-write before configuration changes, or when the user asks about their own activity configuration and registration form content. It also names the alternatives: update_organizer_signup_config for registration config, update_activity for event body changes, and list_signup_submissions for seeing registrants, so the agent knows which tool to select.

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

get_park查园区详情A
Read-onlyIdempotent
Inspect

按 id 查园区完整详情:补贴明细(类型 / 金额 / 条件)+ 运营方 + 地址坐标 + 入驻主理人 + 渠道 + 信源 + 最近新闻。查不到 found=false。

【口径】园区是运营维护的目录数据,站内没有用户打卡/点评(那套 UGC 已下线),别编「有 N 人打过卡」「评分 4.5」这类内容。

【相关】list_city_policies 查所在城市政策红利。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes园区 id(cuid)

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare readOnlyHint/idempotentHint, but the description adds meaningful behavioral context beyond them: 'found=false' when not found, and the crucial data-caliber warning that UGC check-ins/reviews are offline and must not be invented. This directly helps the agent avoid hallucinated content, which is a strong behavioral disclosure.

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

Conciseness5/5

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

The description is well-structured: a front-loaded purpose sentence with a compact field list, followed by a clearly labeled '口径' section and a '相关' section. Every sentence earns its place, and the anti-hallucination caveat is placed where it will be noticed.

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

Completeness5/5

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

With no output schema present, the description carries the burden of explaining return values, and it does: it lists the substantive content areas and the failure behavior ('查不到 found=false'). For a simple get-by-id tool with a single required parameter, this is complete enough for an agent to invoke it correctly.

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

Parameters3/5

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

Schema coverage is 100%: the single parameter 'id' is already documented as '园区 id(cuid)'. The description only restates that the lookup is by id and adds no new format, constraints, or semantics beyond what the schema provides. This matches the baseline for high schema coverage.

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

Purpose5/5

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

The description opens with a specific verb and resource: '按 id 查园区完整详情', then enumerates the exact fields returned (subsidies, operator, address/coordinates, creators, channels, sources, news). This clearly distinguishes it from nearby list-style siblings like list_parks, and '查不到 found=false' further pins down its behavior.

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

Usage Guidelines4/5

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

The description makes the usage context clear: use with an id to fetch complete park details. It also names 'list_city_policies 查所在城市政策红利' as an alternative for city-level policy needs. It does not explicitly list exclusions for all sibling tools (e.g., list_parks or list_park_news), so it falls just 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.

get_post查内容详情A
Read-onlyIdempotent
Inspect

按 id 查内容流里的单条(正文 / 图片视频 / 挂卡 attach / 作者)。登录时附带 viewerHasLiked / isMine。

【口径】绝大多数是官方生成的内容(每日选品 / 赛事导入),不是用户动态;评论区全站至今零条,别向用户提「去评论区看看」。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes内容 id(cuid)

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already mark the tool read-only, idempotent, and non-destructive. The description adds meaningful behavior beyond those: results include viewerHasLiked/isMine only when authenticated, and the content is predominantly official-generated with zero site-wide comments, which prevents the agent from suggesting a comment section that doesn't exist. This is valuable context the annotations do not convey.

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

Conciseness5/5

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

Two tight paragraphs: the first states the operation and returned components; the second contains a single critical data caveat. Each sentence provides distinct information, front-loaded, and there is no filler.

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

Completeness5/5

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

For a one-parameter, read-only, idempotent lookup, the description covers the return scope (body/media/attach/author), auth-dependent fields, the official-content origin, and the empty-comment warning. With no output schema present, the description sufficiently explains what to expect, and nothing essential is missing for correct invocation.

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

Parameters3/5

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

The schema already fully documents the single id parameter (type, required, description '内容 id(cuid)') with 100% coverage. The description only repeats '按 id' and adds no format, semantics, or edge-case information beyond the schema, so the baseline 3 applies.

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

Purpose5/5

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

The description states the exact operation (query by id), the resource (a single item in the content feed), and enumerates its components (body, media, attached card, author). This clearly differentiates it from sibling getters like get_activity, get_product, and get_creator, and from list_posts, which lists rather than fetches a single post.

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

Usage Guidelines4/5

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

The description implies the usage context: fetching a single content item by id, with login-dependent fields. It also provides situational guidance via the caveat about official content and empty comments. However, it doesn't explicitly name alternatives or exclusion criteria, such as pointing to list_posts for browsing the feed, so it lacks the explicit routing found in a 5.

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

get_product查产品详情A
Read-onlyIdempotent
Inspect

按 id 或 slug 获取产品完整详情(owner 主理人 / 描述 / 链接 / 媒体 / 分类 / 标签 / 发布时间)。两个参数二选一,slug 优先。

【何时用】用户点了某个产品想看详情,或 search/list 返回后要展开看某条。

【相关 resource】也可以用 resources/read URI: opcmenu://product/{slug}。

ParametersJSON Schema
NameRequiredDescriptionDefault
idNo产品 id(cuid)
slugNo产品 slug(URL 上 /p/<slug>)

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable behavioral context beyond that: the two parameters are mutually exclusive, slug takes priority, and the returned detail fields are listed. No contradiction with annotations.

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

Conciseness5/5

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

The description is compact and well-structured with three labeled sections: action, when-to-use, and related resource. Every sentence earns its place, and the main behavior is front-loaded.

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

Completeness5/5

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

For a read-only getter with no output schema, the description covers input selection, parameter precedence, usage scenarios, and the content of the returned detail. An agent has everything needed to call it correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds the important rule '两个参数二选一,slug 优先', which the schema does not encode (both are optional). This meaningfully improves invocation correctness.

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

Purpose5/5

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

Description clearly states '按 id 或 slug 获取产品完整详情' and enumerates the fields returned (owner, description, links, media, categories, tags, publish time). It is unmistakably a single-product detail fetcher, distinct from list/search/rating siblings.

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

Usage Guidelines4/5

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

The '【何时用】' section explicitly tells an agent when to invoke: when a user clicks a product or wants to expand a search/list result. It does not explicitly name alternative tools or exclusions, so it falls just 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.

get_product_ratings查产品评价A
Read-onlyIdempotent
Inspect

返回某产品的口碑:星级汇总(平均分 + 1~5 星分布 + 总数)+ 评价列表(文字 + 星级)。登录时附带 myRating。get_product 详情不含评价,要口碑必须调本工具。

【口径】站内口碑刚起步,绝大多数产品是 0 条评价——空返回是常态,不是查询失败。别因为查空就换别的工具反复试,更别去站外找评价冒充站内口碑。 【写】rate_product 打分写评。

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNorecent 最新(默认)| helpful 最有用
limitNo返回条数,默认 20
cursorNo分页游标
productIdYes产品 id(cuid)

TDQS

A4.4/5.0
Behavior4/5

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

注解已经声明 readOnlyHint=true、idempotentHint=true、destructiveHint=false,因此安全画像由注解承担;描述额外补充了登录时附带 myRating、站内口碑刚起步导致多数产品为空返回等注解未覆盖的行为特质。这些信息有助于代理正确解释返回结果,但未涉及分页/游标行为,不过 schema 已覆盖。

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

Conciseness5/5

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

描述用三段式组织:核心功能 → 口径/空结果提醒 → 写评价入口,核心信息置于开头,每条都有实际价值。没有冗余从句或重复 schema 内容,长度紧凑,可读性强。

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

Completeness4/5

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

虽然没有输出 schema,但描述明确说明了返回结构(星级汇总 + 评价列表)以及登录后额外附带 myRating,足够代理理解结果。空返回的常态性提示也很关键。唯一欠缺的是未提及同族工具 get_product_rating_summary 可用于仅获取汇总的场景,但对完成本工具的调用目标而言已足够完整。

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

Parameters3/5

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

输入 schema 的字段覆盖率为 100%,productId、sort、limit、cursor 都已有明确描述,因此描述无需重复参数含义。描述中“登录时附带 myRating”属于输出行为而非参数语义,没有为参数增加额外解释,按基线评 3。

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

Purpose5/5

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

描述以明确动词“返回”+ 资源“某产品的口碑”开头,并具体列出返回内容(星级汇总 + 评价列表),让代理立刻知道工具做什么。它还通过与 get_product(不含评价)和 rate_product(写评价)的对比,进一步界定了自己的定位,虽然未显式提及 get_product_rating_summary,但“汇总 + 列表”的组合已经足够清晰。

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

Usage Guidelines5/5

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

明确说明使用场景:“get_product 详情不含评价,要口碑必须调本工具”,并给出写操作的替代工具 rate_product。还专门提示“绝大多数产品是 0 条评价——空返回是常态,不是查询失败”,防止代理误判空结果并反复重试或去站外找数据,这是非常实用的使用边界。

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

get_product_rating_summary查产品评分摘要A
Read-onlyIdempotent
Inspect

只取某产品的星级汇总(平均分 + 分布 + 总数),不拉评价列表——省 token 的「评分多少」快查。要看评价文字用 get_product_ratings。

ParametersJSON Schema
NameRequiredDescriptionDefault
productIdYes产品 id(cuid)

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare the operation read-only, idempotent, and non-destructive. The description adds useful behavioral context beyond that: it returns only aggregate rating data, not the review list, and frames itself as a token-saving summary call. It does not specify the exact distribution shape or edge cases like zero ratings, but the added context is meaningful.

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

Conciseness5/5

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

Two short sentences, front-loaded with the core purpose and contents, followed by an explicit sibling alternative. Every word earns its place; no filler or repetition of schema/annotation data.

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

Completeness5/5

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 is complete: it names the input, specifies what the output contains, and points to the alternative for detailed reviews. Nothing essential is missing for correct invocation.

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

Parameters3/5

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

Schema description coverage is 100%, and the single parameter productId is already documented as '产品 id(cuid)'. The description adds no new parameter-level detail, so the baseline of 3 is appropriate because the schema carries the burden.

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

Purpose5/5

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

The description names a specific verb-resource pair ('取某产品的星级汇总') and spells out the exact contents: average, distribution, and total. It also explicitly distinguishes itself from get_product_ratings by stating that it does not pull the review list, so an agent can tell them apart immediately.

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

Usage Guidelines5/5

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

It states when to use this tool ('省 token 的「评分多少」快查') and gives a direct alternative: '要看评价文字用 get_product_ratings.' This is explicit routing guidance with no ambiguity.

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

get_relationship查我与某人的关系A
Read-onlyIdempotent
Inspect

【需要登录】返回当前用户与目标用户的关系:following(我是否关注 TA)/ followedBy(TA 是否关注我)/ isFriend(互相关注)/ isSelf。决定是 follow 还是已是好友(好友可见对方「好友可见」链接)。

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes目标用户 id

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds the login requirement, which is not present in the annotations, and clarifies the exact meaning of each returned relationship state. No contradiction with annotations exists.

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

Conciseness5/5

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

The description is a single dense sentence that front-loads the login requirement, states the return object, defines each field, and gives practical decision guidance. Every element earns its place with no redundant filler.

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

Completeness5/5

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

For a simple read-only tool with one parameter and no output schema, the description is complete: it covers authentication, return value semantics, and the decision context. There are no critical gaps that would prevent an agent from calling this tool correctly.

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

Parameters3/5

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

The input schema already documents userId as '目标用户 id' with 100% coverage, so the description doesn't need to add much. The description adds context about the target user's role in the relationship, but it doesn't provide additional parameter-level detail beyond the schema.

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

Purpose5/5

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

The description states a specific verb and resource: it returns the relationship between the current user and a target user. It explicitly enumerates the four relationship states (following, followedBy, isFriend, isSelf), making the tool's purpose unmistakable and distinct from siblings like follow_creator or unfollow_creator.

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

Usage Guidelines4/5

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

The description gives clear context for when to use this tool: to decide whether to follow the target user or determine they are already a friend. It doesn't explicitly name alternative tools or state when not to use it, but the practical decision context is clear enough to guide tool selection.

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

get_share_card_manifest取分享卡素材A
Read-onlyIdempotent
Inspect

【需要登录】返回某对象的分享卡 manifest:shareText(现成的分享文案)+ link(落地页链接),外加卡片页数/版式元数据。agent 帮用户「把我的主页/需求分享出去」时用它拿文案和链接,可直接转发到任何渠道。

【kind 取值】owner(主理人主页卡,id=用户 id,自己或他人皆可)| need(需求卡,id=需求 id)| card(我的个人名片卡,仅本人,id 固定传 "me")| position(我的定位卡,仅本人,id 固定传 "me";定位栏唯一的分享出口)| onboarding(入驻完成卡,id 固定传 "me")。

【注意】返回里没有图片 URL——卡片图片的渲染接口是登录态 + private 缓存的站内接口,不要自己拼 image URL 当公开资源发给第三方;对外分享一律用 shareText + link。

【失败语义】对象不存在返回 found=false;kind=card / onboarding 而 id 不是 "me" 报 403。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes对象 id:owner=用户 id;need=需求 id;onboarding 固定 "me"
kindYes分享卡类型:owner 主理人主页(id=用户 id) | need 需求(id=需求 id) | card 我的个人名片(id 固定 "me") | position 我的定位卡(id 固定 "me") | onboarding 入驻完成(id 固定 "me")

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the readOnly/idempotent annotations by disclosing the login requirement, the absence of public image URLs, the private rendering API for card images, the instruction to share only shareText+link, and exact failure semantics (found=false and 403 cases). This is thorough behavioral disclosure.

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

Conciseness5/5

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

Well-structured and front-loaded: it starts with the auth requirement, then the return value and use case, and uses labeled sections for kind values, image caveats, and failure semantics. Every section contributes operational value with no filler.

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

Completeness4/5

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

Given there is no output schema, the description covers return contents, auth, kind/id combinations, an important image-sharing caveat, and failure behavior. The only notable gap is that the 'activity' enum value is not explained, so one valid invocation path remains partially unspecified.

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

Parameters4/5

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

Adds substantial meaning beyond the schema, such as owner being usable for self or others, card/position/onboarding requiring id='me', and position being the only share outlet for the positioning bar. However, the enum includes 'activity' but the description does not explain it, leaving one valid kind semantically undocumented.

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

Purpose5/5

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

The description names a specific operation: return a share-card manifest containing shareText and a link, plus card metadata. It also ties the tool to a clear user scenario—helping an agent share a profile or need—making it easy to distinguish from generic getters and from send_share_card.

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

Usage Guidelines4/5

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

It explicitly states when to use the tool: when the agent helps the user share their home page or need by fetching ready-made copy and a link for forwarding. It does not explicitly name alternatives or state when not to use it, so it falls just short of the highest bar.

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

get_signup_activity看一场报名详情(含我的报名状态)A
Read-onlyIdempotent
Inspect

【何时用】用户对某一场感兴趣、或准备报名之前调它。一次调用给全上下文:公开详情(简介/时间/地点/名额/题目表/答疑群)+(登录时)我的报名状态、每题的现值、还缺哪几个必填项——App 上这是两个接口两屏,agent 端合成一次。

【组合链】① viewer.missingRequired 非空 → 照 fields 里的 label/hint/options 问用户,答完直接 submit_signup(slug, answers=[…]);② 缺的题在别的场次也要填 → get_signup_gaps 一次问完;③ 已经 submitted=true → 用 list_my_signups 看主办方处置到哪一步了,别重复报。

【口径/坑】① fields[].fillable=false 的题(基本都是 type=file 的附件题,如商业计划书)agent 通道传不了文件,只能让用户去 App / 报名页传——绝不许瞎编「已填」或塞一个链接冒充。② 本工具不返回 autofillScript(那是注入 webview 的几 KB JS,对 agent 零价值)。③ fields[].valuePreview 里,联系方式/证件类的题一律打码——那是给你判断「填没填」的,不是拿来复述给用户听的。④ signup.externalIsCanonical=true 表示正式报名在主办方的外部表单上,站内提交只是留资+代填。⑤ requiresPhoneVerification=true 只约束公开报名页上的游客(没登录填表要短信验证码);你带着密钥就是已登录用户,submit_signup 不需要验码,别拿这个字段去劝退用户。⑥ signup.canOneClick=false 且没有 externalUrl 时这场的报名还没配好,submit_signup 会直接拒(error=signup_not_open),别硬报。

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes活动 slug(取自 list_signup_feed 的 items[].slug)

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already mark the tool readOnly, idempotent, and non-destructive, and the description adds substantial behavioral context beyond them: it does not return autofillScript, valuePreview values are masked, externalIsCanonical changes the meaning of submission, requiresPhoneVerification does not apply to the authenticated agent, and canOneClick=false without externalUrl means submit_signup will reject. No contradiction with annotations.

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

Conciseness5/5

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

The description is long but organized into three labeled sections—when to use, combination chain, and pitfalls—with numbered items. Every sentence carries operational value, from '绝不许瞎编' to '别拿这个字段去劝退用户', and the load-bearing info is front-loaded.

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

Completeness5/5

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

Despite no output schema, the description tells the agent what the call returns (public details plus my status, current answers, missing required fields), how to chain follow-up tools, and six edge cases that affect downstream behavior. This is complete for safe and correct invocation.

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

Parameters3/5

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

The schema covers the only parameter fully (slug minLength 1, described as '活动 slug(取自 list_signup_feed 的 items[].slug)'), so the baseline is 3. The description also references slug in the submit chain, but it adds no new semantic details beyond the schema.

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

Purpose5/5

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

The description opens with an explicit trigger ('用户对某一场感兴趣、或准备报名之前调它') and a precise verb+resource: one call returns both public signup details and the caller's signup status. It also differentiates itself by naming related tools in the combination chain, so an agent can separate it from get_signup_gaps, submit_signup, and list_my_signups.

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

Usage Guidelines5/5

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

It states exactly when to call and gives a workflow: if viewer.missingRequired is non-empty, ask the user and call submit_signup; if gaps span other sessions, use get_signup_gaps; if already submitted, use list_my_signups. This is explicit when-to-use/alternative guidance.

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

get_signup_gaps批量算「还差哪几题」A
Read-onlyIdempotent
Inspect

【需要登录】【何时用】用户想一口气报好几场(或问「我现在能报的都缺什么」)时调它。这是 agent 独有、App 永远不会有的接口:一次算完多场的缺口,并把同一个题目跨场去重合并——「姓名、微信、一句话项目介绍」问一遍就够,不用一场问一遍。

【组合链】① 不传 slugs 就自动取 list_signup_feed 前 N 场我还没报的;② 拿 missingCombined 一轮问完用户;③ 通用项 update_my_signup_profile 一次落库;④ 逐场 submit_signup(这时基本零缺口)。想看某一场的完整题面再 get_signup_activity。

【口径/坑】① missingCombined 里每项带 activities=[这几场都要],问一次可以覆盖多场——别自己在上下文里做集合运算,那既费 token 又容易漏。② fillable=false 的项是附件题,agent 传不了,只能提示用户去报名页/App 传。③ 已报过的场次(submitted=true)默认不进结果,除非显式点名在 slugs 里。④ 一次最多 10 场,服务端分批取,别指望它当全站扫描器用。

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNo不传 slugs 时按类目取。取值:HACKATHON(黑客松) | COMPETITION(创业赛事) | INCUBATOR(孵化营) | FUNDING(融资申请) | COMMUNITY(社区入驻) | EVENT(活动报名) | OTHER(其他)
limitNo不传 slugs 时取几场,缺省 5,上限 10
slugsNo要盘的活动 slug 列表,最多 10 个;不传就取 list_signup_feed 前 limit 场里我还没报的

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint, idempotentHint), the description discloses login requirements, cross-activity deduplication behavior, fillable=false attachment semantics, exclusion of submitted activities, the 10-activity limit, server-side batching, and explicitly warns the agent not to perform set operations manually. This is rich, non-obvious 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.

Conciseness5/5

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

The description is dense but well-structured with clear headers (需要登录/何时用, 组合链, 口径/坑) and front-loaded use cases. Every sentence carries actionable information; the length is justified by the tool's complexity and the need to prevent common agent mistakes.

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

Completeness5/5

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

Given the tool's complexity and absence of an output schema, the description adequately covers return semantics (missingCombined with activities), edge cases (fillable=false, submitted=true), scope limits, and the downstream workflow. An agent has enough context to invoke the tool correctly and interpret its results.

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

Parameters4/5

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

Schema coverage is already 100%, so the parameters are documented. The description adds important semantics beyond the schema: omitting slugs auto-selects unsubmitted activities from list_signup_feed, limit defaults to 5, and the 10-activity cap is tied to server-side batching. This meaningfully enriches the schema.

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

Purpose5/5

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

The description clearly states the tool computes gaps across multiple signup activities at once and deduplicates common questions, which goes well beyond the name. It also explicitly contrasts with get_signup_activity for viewing a single activity's full question set, making the tool's purpose and boundaries unambiguous.

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

Usage Guidelines5/5

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

The 何时用 section gives explicit trigger conditions: the user wants to batch-sign-up or asks what is missing across all signable activities. The 组合链 section specifies the exact workflow with list_signup_feed, update_my_signup_profile, and submit_signup, and names get_signup_activity as the alternative when a single activity's full form is needed.

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

get_signup_submission看一个报名者的详情(含联系方式)A
Read-onlyIdempotent
Inspect

【需要登录】【何时用】用户明确说「我要联系这个人 / 把他的微信给我 / 他报名时写了什么」时才调。这里才解密联系方式(微信/邮箱/手机),list_signup_submissions 默认是不给的。

【组合链】list_signup_submissions(slug, q=…) 定位到某一行 → 本工具取该行完整答案与联系方式 → review_signup_submission 单独处置他 → 想直接在站内找他聊就用 start_conversation(仅当他是站内注册用户,见返回的 user.id)。

【口径/坑】① 证件号(身份证等)永远不解密,返回的是打码值——那条只有站方 admin 的显式 reveal 能解且写审计。② 报名者账号上的手机号(他没在这场表单里填、而是注册手机号)会打码成尾 4 位:主办方没收集的东西,不该因为换了个接口就拿到明文。他在表单里亲手填的手机号照给。③ 拿到的联系方式是给用户去联系人的,不要在对话里主动复述整串,除非用户要求。④ submissionId 必须属于这场活动,否则 404。

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes活动 slug
submissionIdYes报名单 id(取自 list_signup_submissions 的 items[].id)

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark it read-only/idempotent, and the description adds meaningful behavior: login required, ID numbers never decrypted, registered-account phone masked to last 4 while form-entered phone is returned, and not to recite the full contact string in conversation unless requested. It also discloses the 404 for a submissionId outside the activity. No contradiction with annotations.

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

Conciseness5/5

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

Though long, the description is organized into clearly labeled sections (when, chain, caveats) and every sentence carries operational value. The key scoping fact—contact info is only decrypted here—is front-loaded. For a privacy-sensitive tool, this density is appropriate, not bloated.

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

Completeness5/5

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

With only two simple parameters and no output schema, the description covers all an agent needs to invoke and use it correctly: exact triggers, chain inputs, masking rules, privacy behavior, error condition, and the returned user.id condition for the conversation sibling. Nothing material is missing.

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

Parameters4/5

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

Schema descriptions already cover both parameters (slug and submissionId, with source via list items). The description adds the validation constraint that submissionId must belong to the given activity or return 404, and reinforces the chain relationship to list_signup_submissions. This modest addition above the 100% schema coverage merits a 4.

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

Purpose5/5

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

Description states the tool fetches one signup submission's full answers and decrypted contact info (WeChat/email/phone), which matches name and title. It explicitly differentiates from list_signup_submissions by saying that list excludes contact details by default. The purpose is unmistakable.

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

Usage Guidelines5/5

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

The '何时用' section gives precise trigger conditions: user explicitly asks to contact the person, get WeChat, or see what they submitted. It also provides a full chain listing list_signup_submissions for locating the row, review_signup_submission for disposition, and start_conversation with a condition (only if registered user via returned user.id). This clearly tells the agent when to use it and when to use alternatives.

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

invite_collaboration_member邀请站内用户合作AInspect

【需要登录】目标发起人向指定站内用户发出合作邀请,会通知对方。必须已有用户对邀请对象和内容的授权。仅支持站内定向邀请;返回不含手机号或可转发邀请令牌。服务会复用尚有效的同人待回应邀请;并发无持久去重保证。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。

ParametersJSON Schema
NameRequiredDescriptionDefault
goalIdYes
messageNo
inviteeIdYes
contributionNo

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, idempotentHint=false), the description discloses multiple important behaviors: the invitee is notified, valid pending invitations to the same person are reused, there is no persistent or concurrent deduplication guarantee, and no persistent request dedup key exists. This materially affects how an agent should invoke and verify the call. No contradiction with annotations.

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

Conciseness4/5

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

The description is compact and information-dense: each sentence adds a distinct constraint or caveat, and the core action plus login requirement is front-loaded. It is structured and free of filler, though the density makes it slightly harder to parse quickly.

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

Completeness4/5

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

For a mutating tool with no output schema and no parameter descriptions in the schema, the description covers the main operational risks: authorization, notification side effects, scope limitation, non-idempotency, dedup limits, and timeout handling. It even gives partial return information by stating what the response excludes. It does not describe the success response shape or the exact meaning of message/contribution, so minor gaps remain.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the four parameters, but it only refers to them indirectly via phrases like '指定站内用户' and '目标发起人'. goalId and inviteeId can be inferred, but message and contribution are never explicitly explained, and the required parameters are not called out in the description. The global context helps, but per-parameter meaning is largely left to inference.

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

Purpose5/5

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

The description states a concrete action: the target initiator sends a collaboration invitation to a specified in-site user and the user is notified. It also narrows scope with '仅支持站内定向邀请' (only targeted in-site invitations), which distinguishes this from external or bulk invitation flows. This is far more specific than the tool title alone.

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

Usage Guidelines5/5

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

The description gives explicit prerequisites and boundaries: login is required, prior authorization of the invitee and content is needed, only on-site targeted invitations are supported, and the response will not contain phone numbers or forwardable tokens. It also tells the agent what to do on ambiguous results or timeout: query current state first and do not auto-resend. This is strong operational guidance.

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

list_activities列活动A
Read-onlyIdempotent
Inspect

查活动列表(线上/线下聚会、讲座、demo day、内测招募,以及 COMPETITION 创业大赛/外部机会)。支持按类型、城市过滤,仅看未来场次,游标分页。

【何时用】用户问「最近有什么活动」「下周有没有线下聚会」「上海有什么创业大赛/机会」时。找大赛/机会用 type=COMPETITION + city。upcomingOnly=true 是大部分情况下你想要的。

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNo按城市筛选(主要给 COMPETITION 大赛/机会用),如 北京/上海/深圳/杭州/广州/成都/全国
typeNo活动类型:BETA_RECRUIT(内测招募)|ONLINE_GATHERING(线上聚会)|OFFLINE_GATHERING(线下聚会)|COMPETITION(创业大赛/外部机会)|OTHER;不传则不过滤
limitNo返回条数,默认 20
cursorNo分页游标
upcomingOnlyNo只返回未来场次,默认 false

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior. The description adds useful behavioral context by specifying the supported filter dimensions, cursor pagination, and the upcoming-only option. No contradictions or hidden side effects are present.

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

Conciseness5/5

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

The description is compact, front-loaded with the core purpose, and organized with a clear 'when to use' section. Every sentence carries functional value, and the structure makes it easy to parse quickly.

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

Completeness4/5

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

For a read-only list tool with well-documented schema parameters and clear usage triggers, the definition is largely complete. It covers filtering, pagination, and user-intent mapping. The lack of an output schema is not compensated by a description of the return shape, but this is a minor gap given the list-query nature and existing annotations.

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

Parameters4/5

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

The schema already describes all 5 parameters at 100% coverage. The description adds meaningful usage guidance beyond the schema, notably that COMPETITION should be paired with city, and that upcomingOnly=true is the common expectation. This elevates it above the baseline 3.

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

Purpose4/5

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

The description clearly states the tool queries an activity list, enumerates the content categories (线上/线下聚会、讲座、demo day、内测招募、COMPETITION), and explains available filters. It does not explicitly differentiate from sibling list tools like list_my_activities, but the plural list scope and COMPETITION/city focus make its purpose reasonably distinct.

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

Usage Guidelines4/5

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

The 【何时用】 section gives concrete user intents that should trigger this tool, such as '最近有什么活动' and '上海有什么创业大赛/机会', and recommends upcomingOnly=true for most cases. It lacks explicit exclusions or references to alternative sibling tools, but the provided triggers are actionable and context-rich.

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

list_chain_group_members翻某一环的成员(分页)A
Idempotent
Inspect

【需要登录】【何时用】get_chain_anchor 某一类只给了一屏预览,用户想再看几个时。按 groupId 单独翻那一组。

【组合链】get_chain_anchor 拿 groupId + direction → 本工具翻页 → items[].id 再喂回 get_chain_anchor 就是下一跳;items[].id(type=user)→ get_creator → start_conversation。

【口径/坑】 · 游标是 HMAC 签名的、且绑定 profileVersion:nextCursor 必须原样透传,改一个字符就 400 invalid_cursor。 · 撞 409 chain_cursor_stale = 锚点画像在你翻页期间变了(他改了资料/产品)。别拿同一个游标重试,重新调 get_chain_anchor 从第一页来。 · 同样真花钱(每翻一页都是一批 LLM 成对审核),同样别循环翻到底。 · warming=true / supply=warming 时空批只代表「还没判完」;supply=gated 是「判过了,没有一个能证明存在真实价值流」;supply=none 才是「站内确实没有这类主体」。 · pageInfo.total 经常是 null(不穷举 LLM 判定就得不到精确总数)——null 就说不知道,绝不拿当前页长度冒充总量

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo每页条数,默认 20,最多 50
cursorNo上一页返回的 nextCursor,**原样透传**
groupIdYes组 id,从 get_chain_anchor 的 upstream/downstream[].groupId 拿
directionYes上游还是下游
subjectIdNo锚点 id;留空同上
subjectTypeNo锚点类型;留空就用我自己的默认锚点(须与拿 groupId 时的锚点一致)

TDQS

A4.9/5.0
Behavior5/5

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

描述补充了大量注解之外的行为:需要登录、游标 HMAC 签名且绑定 profileVersion、修改会 400、撞 409 表示锚点画像变更、每页都会产生 LLM 审核成本、supply 取值口径和 pageInfo.total 可能为 null 且不能拿当前页长度冒充总量。这些与 readOnlyHint=false、openWorldHint=true 一致,无矛盾。

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

Conciseness5/5

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

描述分节且要点前置,「需要登录」和「何时用」放在最前,后续用「组合链」「口径/坑」两个小节压缩大量必要信息。每个短句都有信息量,没有冗余,长度与工具的风险面相称。

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

Completeness5/5

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

工具无输出 schema,描述主动说明了 items[].id 的接续用法、supply 不同取值含义、pageInfo.total 的 null 语义和错误恢复路径。既有输入来源说明,也有与上下游工具的配合方式,足以支撑正确调用和结果解释。

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

Parameters4/5

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

输入 schema 已 100% 覆盖参数说明,描述在此基础上进一步补充 cursor 必须原样透传及其签名属性、groupId 从 get_chain_anchor 的 upstream/downstream[].groupId 获取、subjectType 须与取 groupId 时的锚点一致。这些是 schema 没有的操作性语义,因此高于基线。

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

Purpose5/5

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

描述明确说明本工具是「翻某一环的成员(分页)」,并在「何时用」中指出当 get_chain_anchor 只给一屏预览、用户需要按 groupId 单独翻组时使用。动词、资源对象和分页场景都很具体,能与同链路的 get_chain_anchor 清晰区分。

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

Usage Guidelines5/5

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

「何时用」直接给出使用场景:get_chain_anchor 只给一屏预览、用户想看更多成员时。「组合链」说明与 get_chain_anchor、get_creator、start_conversation 的衔接方式,并明确列出 409 后不要用同一游标重试、应重新调 get_chain_anchor。使用边界和替代路径都很清楚。

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

list_city_policies列城市政策A
Read-onlyIdempotent
Inspect

各城市 / 区的创业政策红利(政策大礼包:标题 / 发文单位 / 日期 / 亮点 / 信源)。

【何时用】「深圳 OPC 有什么政策红利」「入驻前看看当地政策」。不传 city 返回全部。

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNo城市过滤,不传返回全部

TDQS

A4.1/5.0
Behavior4/5

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

Beyond the read-only/idempotent annotations, the description discloses the payload contents (标题/发文单位/日期/亮点/信源) and the default all-cities behavior. This adds meaningful behavioral context that the annotations do not provide, though ordering and pagination are not addressed.

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

Conciseness5/5

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

The description is compact and well-structured: a one-line resource definition, a short when-to-use section, and the optionality behavior. Every sentence earns its place, and the key filter behavior appears early.

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

Completeness5/5

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 one optional parameter and no output schema, the description is complete: it names the return fields, the filtering behavior, and typical usage contexts. No critical information for invoking the tool correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%: the city parameter already documents '城市过滤,不传返回全部'. The description repeats this behavior and adds example queries but no substantive parameter semantics beyond what the schema provides, so it stays at the baseline 3.

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

Purpose4/5

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

The description clearly identifies the resource as city/district entrepreneurial policy benefits and lists the returned fields (标题/发文单位/日期/亮点/信源). It is unambiguous about what the tool returns, though the verb '列出' is only implied by the title and it does not explicitly differentiate itself from sibling list tools, so it does not earn a 5.

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

Usage Guidelines4/5

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

The 【何时用】 section provides concrete example queries ('深圳 OPC 有什么政策红利', '入驻前看看当地政策') that clearly signal when an agent should call this tool. It does not mention when not to use it or name alternative tools, so it falls short of the highest bar.

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

list_collaboration_tasks列我的合作任务A
Idempotent
Inspect

【需要登录】按 assigned_to_me(待我做)或 assigned_by_me(我派给他人)列独行录任务;done=true 查看已了结记录,goalId 缩小到某目标。归档目标不在此列表,归档目标任务用 get_collaboration_goal。任务查询会幂等补周期期次。reachingLimit=true 表示可能截断,不代表总数。

ParametersJSON Schema
NameRequiredDescriptionDefault
boxNoassigned_to_me
doneNo
limitNo
goalIdNo

TDQS

A4.6/5.0
Behavior5/5

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

Beyond annotations (idempotentHint=true, destructiveHint=false), the description discloses the required login, the idempotent period-filling side effect ('任务查询会幂等补周期期次'), and the meaning of reachingLimit as possible truncation rather than total count. These are genuinely informative and consistent with 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.

Conciseness5/5

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

Three dense sentences each add value: authentication, core filters, archived-goal exclusion, idempotent period behavior, and truncation semantics. Information is front-loaded, and there is no filler or repetition.

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

Completeness4/5

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

Given no output schema, the description covers authentication, filtering options, side effects, and truncation semantics. It does not describe the general shape of the returned task list, and the limit parameter is omitted, but the core call contract is still well communicated.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It adds meaning for box (待我做/我派给他人), done (查看已了结记录), and goalId (缩小到某目标), but it gives no explanation of the limit parameter at all. The schema supplies type and constraints, but the semantic role of limit is left unstated, leaving a notable gap.

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

Purpose5/5

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

The description states a specific verb ('列' / list) and resource (collaboration tasks), and clearly distinguishes the two relevant boxes (assigned_to_me and assigned_by_me). It also differentiates itself from the sibling get_collaboration_goal by explicitly saying archived goals are not in this list.

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

Usage Guidelines5/5

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

It gives direct usage conditions: filters by box, done, and goalId, and explicitly routes archived-goal cases to get_collaboration_goal. It also clarifies the reachingLimit semantics, so an agent knows when results may be incomplete.

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

list_companies列一人公司A
Read-onlyIdempotent
Inspect

列出已发布的一人公司主页(最新优先)。可选 q 关键词命中名称 / 定位。

【何时用】用户想浏览「有哪些一人公司」或按关键词找公司。drill-down 用 get_company。

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo关键词,命中公司名称 / 一句话定位;不传则按最新列出
limitNo返回条数,默认 24,最多 50

TDQS

A4.3/5.0
Behavior3/5

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

注释已声明 readOnlyHint、idempotentHint、openWorldHint 和 destructiveHint=false,覆盖了安全画像。描述额外补充了「已发布」「最新优先」的排序范围,但没有说明返回格式或分页行为,因此只算部分披露。

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

Conciseness5/5

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

描述极其精简:第一句说明核心行为,第二句给出使用时机和替代工具,没有任何冗余。关键信息前置,便于 agent 快速理解。

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

Completeness5/5

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

对于两个可选参数、无输出 schema 的只读列表工具,描述结合 schema 与注释已足够完整。排序方式、过滤范围、使用场景和 drill-down 路径都已覆盖,agent 能正确选择并调用。

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

Parameters3/5

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

Schema 对 q 和 limit 的说明覆盖率为 100%,描述中对 q 的说明与 schema 基本重复,未显著增加信息量。在 schema 已承担参数文档职责的情况下,不额外加分符合基线。

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

Purpose5/5

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

描述使用明确动词和资源:「列出已发布的一人公司主页」,并补充了「最新优先」的排序行为。它还明确指向 get_company 作为 drill-down 工具,使 agent 能清楚地区分列表与详情查询。

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

Usage Guidelines5/5

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

描述明确给出使用场景:用户想浏览「有哪些一人公司」或按关键词找公司。同时明确指出 drill-down 应使用 get_company,提供了直接的替代工具路由,没有留出推断空间。

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

list_creators列热门主理人A
Read-onlyIdempotent
Inspect

【何时用】用户想看「有哪些做一人公司的人」「最热门的主理人」时。返回主理人卡片:昵称 / 头像 / 简介 / 作品数 / isStub(是否爬虫导入占位号,false=已认领真人)。

【后续 drill-down】可以接 get_creator 看某位主理人的完整作品列表。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo返回条数,默认 12

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover readOnlyHint, idempotentHint, and destructiveHint, so the description doesn't need to restate safety. It adds valuable behavioral context by defining the isStub field's semantics (crawler placeholder vs. claimed real person) and listing the exact fields returned in each creator card. A small gap is that it doesn't mention ordering by popularity, despite 'hot' in the title.

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

Conciseness5/5

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

The description is compact and well-structured, with clear sections for 'when to use' and 'follow-up drill-down'. Every sentence adds value: trigger condition, return card fields, the important isStub clarification, and the downstream get_creator suggestion. No filler or redundant restatement of the name/title.

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

Completeness4/5

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

For a simple read-only list tool with one optional parameter and no output schema, the description covers the essential context: when to invoke it, what the response contains, and what to do next (get_creator). It is slightly incomplete in not specifying result ordering or pagination behavior beyond the schema's limit default, but these are minor given the tool's simplicity.

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

Parameters3/5

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

The input schema fully documents the only parameter 'limit' with type, range, and default value, so schema coverage is 100%. The description adds no extra meaning for the limit parameter, which is acceptable; baseline 3 is appropriate when the schema handles parameter semantics completely.

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

Purpose4/5

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

The description clearly states the tool's action: returning a list of hot creators ('returns creator cards') with a specific trigger condition ('when users want to see who runs one-person companies'). The scope is differentiated from general people search by the 'hot creator' and 'one-person company' framing, but it does not explicitly contrast with siblings like list_talent, so it misses full distinction.

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

Usage Guidelines4/5

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

The description provides an explicit 'when to use' condition: when users want to discover well-known solo-company creators. It also suggests a follow-up action (get_creator) for drill-down, which helps agent routing. However, it does not mention when NOT to use this tool or name alternative listing/search tools such as search_people or list_talent, so a fully explicit comparison is absent.

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

list_funding融资双透镜(找投资人 / 找项目)A
Read-onlyIdempotent
Inspect

【何时用】一个工具两个透镜,用 side 切:side=investor 找投资人(个人/产投/机构),side=project 找在融资的项目。用户说「帮我找看 AI 应用的天使」走前者,「最近有哪些一人公司在融钱」走后者。

【组合链】items[].user.id → get_creator 看完整主页 → start_conversation 开聊(开聊走每日额度,撞 429 会直接返回「怎么办」的出口,别重试);user.id → follow_creator 先关注不打扰;items[].company.slug → get_company;side=project 时 items[].product.slug → get_product。想让投资人反过来找你,用 set_my_role_profile(fundraising) 把自己挂上这个榜。

【口径/坑】 · 轮次(round)是对自由文本做的宽松包含匹配,不是结构化字段——「A 轮」「A」「Pre-A」全靠字面碰。别对用户吹「精确筛选」,也别拿它当统计口径。参考写法:种子 / 天使 / Pre-A / A 轮 / B 轮及以后。 · side=investor:老账号 / 运营种子机构号大多没填结构化 investor,type 是从 personaTags + canOffer 里出来的(只用于筛选展示,不反写)。所以 type 筛出来的结果里有推断值,不是本人自报。 · side=project:主召回是 roleProfile.fundraising.active=true,另外补量了「发了 FINANCING 需求的人」——那批人 fundraising 会是 null 而 financingNeed 有值,别当数据缺失。 · BP 拿不到:项目卡只给 hasBp 布尔(有没有传过 BP),别人的 BP 文件链接永远不出现在返回里。不许去猜路径、拼 URL 或让用户「试试这个地址」。要 BP 就让用户去跟对方开聊要。 · 规模很小(百级),召回后内存过滤;分页同样是 offset。

ParametersJSON Schema
NameRequiredDescriptionDefault
sideYesinvestor=看投资人一侧 | project=看在融资的项目一侧
typeNo仅 side=investor 有效,投资人类型:individual(个人投资人) | corporate(产业投资) | institution(投资机构)
limitNo返回条数,默认 20,最多 50
roundNo轮次关键词(自由文本宽松匹配,非精确)
offsetNo偏移量,默认 0;用上一次返回的 nextCursor

TDQS

A4.7/5.0
Behavior5/5

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

Even though annotations already mark this read-only, idempotent, and non-destructive, the description adds essential behavioral disclosures: round is a loose free-text containment match, type may be inferred from personaTags/canOffer rather than self-reported, project mode includes records where fundraising is null but financingNeed has a value, BP files are never returned, and the dataset is small enough to filter in memory. These are exactly the kind of non-obvious behavioral caveats an agent needs.

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

Conciseness5/5

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

The description is long but tightly structured with clear sections (何时用, 组合链, 口径/坑) and bullet-like caveats. Each sentence adds decision-relevant information or prevents a costly mistake, such as the BP URL prohibition and the round matching caveat. The examples are concrete and the layout makes the content easy to scan.

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

Completeness5/5

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

With no output schema, the description provides the key fields for downstream chaining (items[].user.id, items[].company.slug, items[].product.slug, hasBp), covers both side-specific data quirks, explains what cannot be returned (BP files), and clarifies pagination behavior. For a complex dual-mode list tool with data-quality caveats, this is comprehensive.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful parameter semantics: side is tied to concrete user intents, round gets matching rule and example values, type is flagged as inferred/not authoritative, and offset is described with the nextCursor convention. Only limit gets no extra explanation, but its schema description is already sufficient.

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

Purpose5/5

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

The description explicitly states a dual-lens search: side=investor finds investors (个人/产投/机构) and side=project finds projects currently fundraising. It provides concrete user-phrase examples ('帮我找看 AI 应用的天使' vs '最近有哪些一人公司在融钱') that make the tool's purpose and scope unmistakable.

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

Usage Guidelines4/5

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

The '何时用' section gives clear selection criteria with concrete examples, and the combination chain tells the agent exactly how to follow up (get_creator, start_conversation, follow_creator, get_company, get_product, set_my_role_profile). It does not explicitly contrast list_funding with sibling listing/search tools like list_creators or search_people, but the examples and routing guidance make when-to-use clear.

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

list_my_activities列我办的活动A
Read-onlyIdempotent
Inspect

【需要登录】列出我作为主办方/管理员能管的全部活动(含已发布 / 已取消 / 已结束 / 被下架),每场带 submissionCount 报名总数 + pendingCount 待处置数 + myRole 我的角色 + 报名配置概况

【何时用】「我那几场活动各报了多少人 / 还有多少没处置」——一次调用就答完,不用再逐场查。改活动或看名单前先用它拿 slug / activityId。

【组合链】pendingCount>0 的那场 → list_signup_submissions 看是谁 → bulk_review_signup_submissions 一次处置完。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already mark it read-only and non-destructive, and the description adds useful context beyond that: login is required, scope is host/admin activities, and each entry includes submissionCount, pendingCount, myRole, and a signup-config summary. It does not disclose pagination/ordering or a full output shape, but for a zero-parameter read-only listing the added behavior is well covered.

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

Conciseness5/5

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

The description is organized into three compact labeled sections (overview, when-to-use, combination chain) with no filler. Every sentence contributes either invocation scope, return-value semantics, or downstream workflow guidance.

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

Completeness5/5

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, the description is complete: it gives auth context, result fields, a trigger question, and an explicit follow-on tool chain. Even without an output schema, an agent has enough to invoke it correctly and decide what to do next.

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

Parameters4/5

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

The tool has no parameters, and schema coverage is vacuously 100%, so there is nothing for the description to explain. The no-arg nature is implicitly confirmed by the description emphasizing that a single call returns all needed aggregate counts.

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

Purpose5/5

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

The description states the verb '列出' (list) with a precise resource: activities the caller manages as host/admin, including all statuses (published/cancelled/ended/removed). This scope clearly distinguishes it from the sibling list_activities without needing to inspect that tool.

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

Usage Guidelines5/5

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

The '何时用' section gives a concrete question it answers ('how many signups / how many pending for my events') and says to call it before modifying an activity or viewing rosters to get slug/activityId. The '组合链' section explicitly names the follow-up tools list_signup_submissions and bulk_review_signup_submissions, so the agent knows exactly when and how to chain it.

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

list_my_blocks列我的拉黑名单A
Read-onlyIdempotent
Inspect

【需要登录】列出当前用户拉黑的所有用户。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds useful context beyond annotations by requiring authentication and clarifying that results are scoped to the current user. No contradiction with annotations.

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

Conciseness5/5

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

A single, front-loaded sentence that conveys the auth requirement and the exact resource being listed. There is no redundant wording or filler.

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

Completeness5/5

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

For a zero-parameter read-only list operation, this description is complete: it states authentication needs, user scope, and the resource returned. The annotations cover safety traits, and no output schema is present, but the description makes the expected result unambiguous.

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

Parameters4/5

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

The tool has zero parameters and schema description coverage is 100%, so there is nothing for the description to add at the parameter level. The baseline for zero-parameter tools applies, and the description's mention of 'current user' provides relevant implicit context.

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

Purpose5/5

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

States a specific verb+resource: '列出当前用户拉黑的所有用户' (list all users blocked by the current user). This clearly distinguishes it from sibling tools like block_user and unblock_user, which are mutation actions rather than listing operations.

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

Usage Guidelines4/5

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

The description specifies the login requirement and makes the intended use clear: retrieve the current user's block list. It does not explicitly name alternatives or exclusions, but there is no obvious sibling that provides the same block-list read capability, so the context is sufficient.

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

list_my_conversations列我的会话A
Read-onlyIdempotent
Inspect

【需要登录】列出当前用户的所有私信会话(含未读数 unread、最近一条预览、成员信息)。先用它拿 conversationId 再 read_messages / send_message。

【两种会话】type=DM 是一对一私信;type=GROUP 是平台的破冰介绍群(系统把两位可能互相有用的人和官方号拉在一起,带 title 和成员列表)。群里不做交换联系方式,要联系方式在 DM 里走 request_contact_exchange。 【未读】每条自带 unread,别再去找什么「未读总数」工具,加起来就是。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already carry the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false), so the description only needs to add context beyond that — and it does: login is required, type=GROUP conversations are system-formed ice-breaker groups containing two users plus an official account, and unread is per-item rather than a global total. These are meaningful non-obvious behaviors, though ordering and pagination are not disclosed.

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

Conciseness5/5

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

The description is compact and front-loaded: login requirement and core purpose appear in the first sentence, followed by three cleanly labeled sections (【需要登录】【两种会话】【未读】). Every sentence earns its place — the GROUP vs DM distinction and the unread summation note are high-value domain context, not filler or restatement.

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

Completeness4/5

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

For a zero-parameter, read-only listing tool whose safety profile is fully covered by annotations, the description covers the essentials: what is returned, the two conversation types and their semantics, and downstream routing to read_messages / send_message / request_contact_exchange. With no output schema, the listed fields partially compensate; only ordering and pagination limits are left unstated, which is minor for the core 'list then pick a conversationId' workflow.

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

Parameters4/5

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

The input schema has zero parameters, so the baseline is 4 and the description carries no obligation to document parameters. It instead adds value by clarifying output semantics (unread, latest preview, member info, title), which is the closest analog to parameter meaning for this tool. There is no parameter documentation gap to compensate for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: '列出当前用户的所有私信会话' (list all the current user's private message conversations), and enumerates what each item contains (unread, latest preview, member info). It also distinguishes it from downstream siblings by framing it as the entry point that yields conversationId for read_messages / send_message, and its GROUP type discussion separates it from get_conversation and mark_conversation_read.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when-to-use and workflow guidance: '先用它拿 conversationId 再 read_messages / send_message' tells the agent to call this first. It also gives an explicit exclusion — '别再去找什么「未读总数」工具' — and routes contact-exchange needs to request_contact_exchange in DM rather than GROUP, which is actionable alternative selection, not vague implication.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_my_devices列我的接入设备A
Read-onlyIdempotent
Inspect

【需要登录】列出当前用户的 agent / CLI 接入设备(名称 / 客户端 / token 末 6 位 / 创建·最近使用·过期·吊销时间)。吊销某台用 revoke_my_device。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as read-only and non-destructive; the description adds the login requirement and clarifies the kind of data returned (device name, client, token suffix, timestamps). This goes beyond the annotations without contradicting them, though it does not elaborate on pagination or response format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One compact, front-loaded sentence conveys scope, auth requirement, output fields, and the relevant alternative. Every segment contributes meaning and there is no redundancy with the schema or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read-only list tool, the description is complete: it states the required auth, the exact resource scope, the fields returned, and the related destructive action in the sibling list. No output schema exists, but the description covers the return contents sufficiently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there are no parameter semantics to document. The description still adds value by enumerating the output fields, which helps the agent understand what calling the tool will yield. Baseline for zero parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '列出' and the specific resource: the current user's agent/CLI attached devices, including the fields returned. It is distinct from other list tools by scoping to 'current user' and specifying device/token context, and it also names the sibling revoke_my_device as a related but different operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly notes the login requirement as a prerequisite and direct the agent to revoke_my_device when the goal is to revoke a device rather than list them. This gives a clear when-to-use vs. alternative signal with no guesswork.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_my_needs列我的需求A
Read-onlyIdempotent
Inspect

【需要登录】列出当前用户发布的需求(现行状态只有 OPEN / CANCELLED;IN_PROGRESS / COMPLETED / EXPIRED 仅历史遗留数据——完成态记在每条承接(claim)上,需求不因某条承接完成而关单),时间倒序、游标分页。编辑 / 下架 / 取消 / 拉推荐之前先用它拿 needId;查某条承接是否完成用 get_conversation_needs 看 claim 状态,别按 status=COMPLETED 过滤。信息流里不会出现自己的需求,盘点自己的一律走这里。

【下架 ≠ 改状态】手动下架只把需求移出信息流,status 仍是 OPEN——判据是每条返回里的 displaying 布尔(服务端按服务器时钟算好的),别拿 status 猜。只想看还在展示的传 displaying=true。

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo按类型过滤:EXPERIENCE(寻找产品/作品) | QA(答疑求助) | RESOURCE(介绍资源) | COLLAB(寻求合作) | FINANCING(融资需求) | CHAT(找人聊聊找灵感) | GIG(兼职招募) | OTHER(其它)
limitNo返回条数,默认 20
cursorNo分页游标 nextCursor
statusNo按状态过滤:OPEN|CANCELLED(IN_PROGRESS/COMPLETED/EXPIRED 仅历史遗留数据);不传则全部
displayingNotrue=只看还挂在信息流里的;false=只看我手动下架的;不传=全部。下架不改 status,只能靠这个分

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as read-only, idempotent, and non-destructive, so the bar is lower, but the description adds substantial behavioral context: login is required, status semantics are clarified, completion is tracked on claims rather than needs, and the displaying boolean is computed server-side by server clock. It also explains that manual unpublishing does not change status, a non-obvious behavior that could easily be misused.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every sentence carries information: scope, ordering, pagination, sibling routing, status-model warning, and the displaying distinction. The bold headers and structured warnings make it scannable. No filler or restatement of the name or title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity—non-obvious status semantics, a manual unpublish quirk, and overlap with several sibling tools—the description covers all needed operational context. It explains pagination via nextCursor, the displaying filter, and where to get needId. The absence of an output schema is mitigated by explicit mention of the key returned fields (needId, displaying, nextCursor).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful semantics beyond the schema: it explains that IN_PROGRESS/COMPLETED/EXPIRED are legacy, that status=OPEN remains after unpublishing, and that displaying must be used instead of status to determine whether an item is still in the feed. This goes beyond what the parameter descriptions alone convey, though the type/limit/cursor params are already well-documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: list the current user's published needs, with ordering and pagination. It actively distinguishes itself from siblings by noting that the information feed never shows one's own needs and that this is the route for taking stock of one's own items. It also clarifies the status model, which prevents confusion with other need-related tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance: before editing, unpublishing, cancelling, or pulling recommendations, use this tool to obtain needId. It also names the alternative for checking claim completion (get_conversation_needs) and explicitly warns not to filter by status=COMPLETED, giving clear exclusion criteria. This is exemplary usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_my_network列我的关系网A
Read-onlyIdempotent
Inspect

【需要登录】返回当前用户的关注 / 粉丝 / 好友(互相关注)列表与计数。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注释已声明只读、幂等、非破坏性,描述额外补充了“需要登录”这一重要前置条件,并解释了“好友”即互相关注,超越了注释已有信息。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

单句描述,登录要求置前,功能定义紧随其后,无冗余信息,高效且结构清晰。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

无输出 schema,描述提供了返回内容(三类关系列表及计数),足以指导调用。若进一步说明响应结构会更完善,但对无参工具的复杂度而言已较完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

工具无参数,schema 覆盖完整,描述无需补充参数信息。按规则 0 参数基线为 4。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述使用具体动词“返回”和明确资源“当前用户的关注/粉丝/好友列表与计数”,清晰说明工具功能。与列表中其他工具如 get_relationship、search_people 明显区分,不会混淆。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述明确限定为当前用户的关系网,使用场景清晰。但没有显式说明何时不应使用(如 get_relationship 或 search_people),不过由于作用域自明,不影响使用判断。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_my_signups我报过的名 + 报名结果A
Read-onlyIdempotent
Inspect

【需要登录】【何时用】用户问「我报过哪些 / 那个赛事结果出来没 / 主办方回我了吗」时调它。一次给全:我报过的所有场次(最多 50 条,新的在前)+ 每一场的投递状态与主办方处置结果(reviewStatus:PENDING(待初审) | REVIEWING(初审中) | SHORTLISTED(已入围) | WAITLIST(候补) | REJECTED(未通过) | WITHDRAWN(已撤回))+ 主办方留言 reviewNote。App 上这是「我的报名」那一屏。

【组合链】看到某场 reviewStatus=SHORTLISTED 或 reviewNote 里要求补材料 → get_signup_activity(slug) 看还缺哪几题 → submit_signup(slug) 补交(重新提交会覆盖上一版)。想一次盘所有在报的场次还缺什么 → get_signup_gaps。

【口径/坑】① 默认不返回答案全文(50 条里全是本人的手机号/微信/证件字段,没必要整份灌进上下文),只给答了哪几题的 key 列表;确实要看内容再传 includeAnswers=true。② submission.status(SUBMITTED/DELIVERED/DELIVERY_FAILED…)是「有没有投递到源表单」,reviewStatus 才是「主办方录不录你」——两者严格分离,别混着念。③ DELIVERY_FAILED 不是「你被拒了」,是代填投递没成功,让用户去报名页手动补交。④ PENDING 只是主办方还没处置,不代表落选。

ParametersJSON Schema
NameRequiredDescriptionDefault
includeAnswersNo是否带上每条报名单的答案全文,缺省 false(默认只给题目 key 列表)

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as read-only and idempotent, but the description adds major non-obvious behavior: default omission of full answers, 50-item newest-first cap, strict separation of submission.status from reviewStatus, and clarifications that DELIVERY_FAILED is not rejection and PENDING is not failure. This substantially exceeds what annotations alone provide, and there is no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but well organized into 【需要登录】【何时用】【组合链】【口径/坑】 sections. Each section has a distinct purpose, the most important usage signal is front-loaded, and every sentence earns its place by covering a real selection or invocation pitfall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description fully carries the burden of explaining return shape: max 50, newest first, submission.status enum, reviewStatus enum, reviewNote, and answer-key-only behavior. It also covers login requirements, common misinterpretations, and follow-up tool routing, so nothing needed to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although the schema already describes includeAnswers with 100% coverage, the description adds meaningful rationale: defaulting to false avoids flooding context with personal data, and includeAnswers=true is only needed when full answer text must be inspected. This helps the agent decide when to override the default, not just what the parameter means.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with explicit user intents (「我报过哪些 / 那个赛事结果出来没 / 主办方回我了吗」) and states the resource: all the user's signed-up sessions with delivery status, reviewStatus, and reviewNote. It also differentiates the tool from nearby siblings by positioning it as the「我的报名」screen and naming get_signup_gaps for a different cross-signup need.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit when-to-use triggers: call when the user asks about past signups or organizer results. It also provides chaining rules — seeing SHORTLISTED or a reviewNote requesting materials leads to get_signup_activity then submit_signup, while a full gap sweep routes to get_signup_gaps — so the agent knows exactly when this tool is and is not the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_needs_feed需求信息流A
Read-onlyIdempotent
Inspect

【何时用】用户想看「大家都在找什么」「有什么我能帮上/接得住的需求」时——这是需求互换的主入口。

【结构】一人一卡按作者聚合:每张卡是一位主理人(主打 author.canOffer「能提供什么」+ 代表产品),主需求平铺在卡上,authorNeeds 列出该作者在架需求(最多 6 条,主卡需求在首位)。登录后按「TA 的需求 ↔ 我的价值」轻个性化排序并附 matchScore/matchReason;匿名同管线纯先验排序。

【组合链】看中某人 → contact_need 该需求拿 conversationId → send_message 直接开聊。定向找用 search_needs / search_people。想让匹配更准就先补自己的 canOffer(update_my_profile)——排序就是拿它跟对方需求比的。

【口径】接洽不限人数,没有「名额」这回事,也没有报酬/感谢费——看到谁在找就直接聊。

【分页】cursor 原样回传延续同一副牌;不传 = 重新洗牌。

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo按需求类型过滤:EXPERIENCE(寻找产品/作品) | QA(答疑求助) | RESOURCE(介绍资源) | COLLAB(寻求合作) | FINANCING(融资需求) | CHAT(找人聊聊找灵感) | GIG(兼职招募) | OTHER(其它);不传则全部
limitNo返回条数,默认 20
cursorNo分页游标 nextCursor,原样回传

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnly, idempotent, and non-destructive behavior. The description adds substantial behavioral context beyond that: logged-in vs anonymous sorting differences, matchScore/matchReason inclusion, card aggregation by author, max 6 authorNeeds, pagination semantics ('cursor 原样回传延续同一副牌;不传 = 重新洗牌'), and the business rule that contact is unlimited with no fee/reward. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with labeled sections (【何时用】【结构】【组合链】【口径】【分页】) that front-load the most important usage decision. Every section earns its place by providing operationally relevant guidance rather than filler. Despite its length, it remains scannable and purposeful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description compensates by explaining the card layout, authorNeeds limit, ordering behavior, match fields, pagination, and related workflow. It also covers the business context (no quota, no reward, direct chat) that an agent needs to set expectations. This is complete for a list-feed tool with only three optional parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains type, limit, and cursor. The description adds valuable behavior beyond the schema, especially for cursor: passing it back continues the same paginated set, while omitting it reshuffles the deck. This extra pagination semantics justifies a score above the baseline 3, though most parameter meaning still comes from the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with an explicit when-to-use statement: it is the main entry for the demand-exchange feed, showing '大家都在找什么' and needs an agent can help with. It also distinguishes itself from targeted tools by naming search_needs / search_people as the directed-search alternative. The card structure (one person per card, author.canOffer + authorNeeds) makes the resource and shape unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 【何时用】 section states exactly when this tool is appropriate, while the 【组合链】 section gives the follow-up workflow: contact_need → send_message. It explicitly routes targeted discovery to search_needs / search_people and recommends update_my_profile to improve ranking. Exclusions and alternatives are explicit, not merely implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_park_city_stats园区城市概览A
Read-onlyIdempotent
Inspect

各城市园区总数 + 已运营数(按总数倒序),宏观选址用。传 benefitType 则只统计含该补贴的园区,与列表口径一致。

ParametersJSON Schema
NameRequiredDescriptionDefault
benefitTypeNo只统计含某类补贴的园区

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior. The description adds valuable behavioral detail beyond annotations: aggregation dimensions, descending sort order by total count, and the claim that filtering is consistent with the list endpoint's criteria. It stops short of specifying the response envelope, but for a simple aggregate read this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense clauses deliver the core metric, sort order, intended use, and optional filter behavior with no filler. The purpose is front-loaded and every phrase earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-optional-parameter, read-only aggregate tool, the description fully covers what is counted, how it is sorted, when it is appropriate, and how the optional parameter changes results. No output schema exists, but the description states the output dimensions sufficiently for an agent to invoke and interpret the call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the enum already documents benefitType's meaning. The description reinforces it and adds cross-tool consistency ('与列表口径一致'), which clarifies that the same filter semantics apply as in the corresponding list operation. This is a meaningful addition beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('list/count') and resource ('park city stats'), and defines the exact outputs: total parks per city plus operating count, sorted by total descending. The phrase '宏观选址用' (macro site selection) separates it from sibling park listing endpoints like list_parks and list_park_news.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear context: use for macro site selection, and describes the optional benefitType filter behavior. It does not explicitly name alternative tools or state when not to use it, but the intended use case is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_park_news列园区新闻A
Read-onlyIdempotent
Inspect

园区新闻 feed(开园 / 招商 / 补贴变化等时效信息)。可按城市或具体园区过滤。

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNo城市过滤
limitNo返回条数,默认 30
parkIdNo某园区 id 过滤

TDQS

A3.8/5.0
Behavior3/5

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 adds content context (news categories) but no additional behavioral traits such as pagination behavior, sorting, or output structure, so it adds limited value beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the resource type ('园区新闻 feed') and includes relevant examples of content categories. Every clause earns its place; there is no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool with fully documented optional parameters and rich annotations, the description provides sufficient context for an agent to know what the tool does and how to filter. The lack of an output schema is somewhat mitigated by the 'feed' framing, though explicit details about result ordering or fields would make it more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter (city, limit, parkId) already documented in the input schema. The description's mention of filtering by city or park simply restates the schema notes without adding new semantics, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as a park news feed ('园区新闻 feed') with specific content examples (开园 / 招商 / 补贴变化等时效信息), making the resource and operation clear. It is implicitly distinct from sibling list tools dealing with parks, stats, or policies, though it does not explicitly name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context by explaining that this is for time-sensitive park news and that it can be filtered by city or specific park ('可按城市或具体园区过滤'). It does not explicitly state when to avoid this tool or mention alternatives, so it falls 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.

list_parks列 OPC 园区A
Read-onlyIdempotent
Inspect

浏览 / 筛选 OPC 园区目录(六城)。

【杀手用法】按补贴类型筛:benefitType=RENT_SUBSIDY 找「有租金补贴的园区」——这是主理人/找资源者最高频的诉求。可叠加 city / track / 状态 / 关键词。

【drill-down】get_park 看补贴明细 + 入驻条件 + 信源。

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo关键词,命中名称 / 运营方 / 区域
cityNo城市,如 北京/上海/深圳/杭州/广州/成都
limitNo返回条数,默认 20
trackNo赛道标签过滤,如 新消费/AI
cursorNo分页游标
statusNoOPERATING 已运营 | PLANNED 规划中
benefitTypeNo只看含某类补贴的园区:RENT_FREE(免租) | RENT_SUBSIDY(租金补贴) | COMPUTE_VOUCHER(算力券) | MODEL_VOUCHER(模型券) | STARTUP_FUND(创业资金) | SETTLEMENT(落户) | FUND(产业基金) | ORDER(订单导入) | TALENT_HOUSING(人才公寓) | LOAN(创业贷款) | OTHER(其他)

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnlyHint, idempotentHint, and destructiveHint=false. The description adds useful behavioral context: the tool covers a six-city OPC directory, and detail-level data such as subsidy breakdowns and entry conditions is intentionally delegated to get_park. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and well-structured: purpose statement, killer use case, and drill-down pointer. Every sentence earns its place, and the most important operational guidance is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The schema documents all 7 optional parameters with Chinese labels and enum meanings, annotations cover the safety profile, and the description completes the picture with usage intent and the get_park drill-down. For a simple list/filter tool, nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description goes further by teaching combinability of filters ('可叠加 city / track / 状态 / 关键词') and by highlighting the RENT_SUBSIDY enum value as the most important use case.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with '浏览 / 筛选 OPC 园区目录(六城)', giving a specific verb, resource, and scope. It also differentiates from the get_park drill-down sibling, so an agent can tell catalog browsing from detail lookup without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly presents the highest-frequency use case: benefitType=RENT_SUBSIDY to find parks with rent subsidies, and states that city / track / status / keyword can be stacked. It also gives the alternative route: get_park for subsidy details, entry conditions, and sources.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_posts列官方内容流A
Read-onlyIdempotent
Inspect

独行录的官方内容流:每日发现选品、创业大赛机会、园区与政策资讯。

【何时用】用户想看「最近站里推了什么」「有哪些新的创业大赛机会」时;也可以传 attachType+attachId 查挂在某产品/活动/园区上的相关内容。

【重要口径——别说成社区】这不是用户社区:站内没有用户发帖入口(App 的动态 tab 已换成产业链),流里几乎全是系统生成的官方内容。别向用户描述成「大家在聊什么」,也别建议用户「去发个动态」——没有那个入口。

【feed】recommend(默认)| following(只看我关注的人,需登录;因为几乎没有用户帖,这个流通常是空的)。

ParametersJSON Schema
NameRequiredDescriptionDefault
feedNorecommend 推荐流(默认)| following 关注流(需登录,没关注任何人则空)
limitNo返回条数,默认 20
topicNo话题过滤
cursorNo分页游标 nextCursor
attachIdNo相关动态的对象 id,与 attachType 配对
authorIdNo只看某主理人的动态(用户 id)
attachTypeNo相关动态:挂在某对象上,与 attachId 配对

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool read-only/idempotent/non-destructive, and the description adds non-obvious behavior: the feed contains almost no user-generated posts, there is no user posting entry, following requires login and is usually empty. This prevents an agent from misdescribing the feed as a community. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well structured with bold headers, a when-to-use section, a critical semantic caveat, and feed options. Every sentence adds needed context; there is no filler or repetition of schema fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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 100% schema coverage and safety annotations, the description covers usage context, feed semantics, auth requirement, and the critical community-vs-official distinction. Nothing an agent needs to select and invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds semantic value by explaining the attachType+attachId pairing for finding content attached to a product/activity/park, and clarifies that following is usually empty because there are few user posts. It does not elaborate on limit/cursor/topic, but those are already documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource as the official content stream (官方内容流) containing daily product picks, startup competition opportunities, park and policy info. It differentiates this from a user community feed, which helps distinguish it from sibling feed tools, but it never names an alternative explicitly and lacks a direct verb statement in the description itself (the verb only appears in the title).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 【何时用】 section explicitly states when to use: when the user wants recent site recommendations or new startup competition opportunities, and when passing attachType+attachId. It also gives a strong when-not warning (do not describe as community, no posting entry). However, it does not mention alternative sibling tools by name, so routing between feeds is partly left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_products列产品榜单A
Read-onlyIdempotent
Inspect

【何时用】用户想看「热门」「今日新品」「随机逛逛」「月度榜」时。比 search 更适合无明确意图的浏览。

【type 取值】

  • hottest: 已认领主理人优先 + 累计浏览量排序

  • today: 今日新发布

  • random: 随机抽取(已认领优先,探索用)

  • leaderboard: 上月榜(上个自然月的预计算快照,与 hottest 的累计热度不是一回事)

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYes榜单类型:hottest|today|random|leaderboard
limitNo返回条数,默认 12

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/openWorld/idempotent annotations, the description discloses concrete behavior: hottest sorts by claimed-owner priority and accumulated views, leaderboard is a precomputed snapshot of the previous natural month, and random prioritizes claimed products. This meaningfully explains how results are produced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is tightly structured with a 'when to use' section and a bulleted enum breakdown. Every sentence carries useful information, and the most important usage guidance is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter list endpoint with no output schema, the description covers the key decision points: when to call it, what each type means, and how results are ordered. It leaves no major gap for selecting the right type, though it could more explicitly disambiguate from the discover/random feed siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters and the enum values. The description adds valuable semantic detail for each type value, clarifying the ordering and meaning of hottest vs leaderboard, which goes beyond the simple schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as a product-ranking list for specific browse intents (热门/今日新品/随机逛逛/月度榜) and contrasts it with search for unfocused browsing. It does not explicitly distinguish it from close siblings like list_products_discover or random_feed, 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.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description opens with an explicit 'when to use' section and states that this tool is better than search for browsing without a clear intent. It gives clear context but does not spell out when not to use it or name specific alternative tools like list_products_discover or random_feed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_products_discover按分类逛产品A
Read-onlyIdempotent
Inspect

按分类系统性地逛已发布产品(已认领主理人优先)。比 list_products 多了分类过滤,比 search_products 更适合「结构化浏览某一类」而非语义搜索。

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNohot 最热(默认)| new 最新
limitNo返回条数,默认 60
categoryNo产品分类枚举值;不传则全部

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds valuable behavioral context beyond the annotations and schema: '已认领主理人优先' (products with claimed owners are prioritized) and the 'browse rather than search' intent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences with zero redundancy. The core purpose is front-loaded, and the sibling differentiators follow immediately, making it easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only, open-world, idempotent tool with three optional, fully described parameters and no output schema, the description provides all necessary context for correct selection and invocation. It covers ranking behavior, category focus, and routes to alternatives.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all three parameters (sort, limit, category) already documented. The description reinforces that category is the filtering dimension but does not add any parameter-specific details like format, defaults, or enum semantics beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('系统地逛'), a resource ('已发布产品'), and a distinguishing scope ('按分类'). It explicitly contrasts with list_products (adds category filtering) and search_products (structured browsing vs semantic search), so an agent can clearly tell it apart from both siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description names the two relevant alternatives (list_products and search_products) and gives the exact conditions for choosing this tool: when category filtering is desired and when structured browsing rather than semantic search fits the task. This is explicit when-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_recent_attention最近谁看过我A
Read-onlyIdempotent
Inspect

【需要登录】【何时用】用户问「最近有人关注我吗」「谁看了我的产品」,或者你要给他找主动开聊的由头时。三路合并:产品被浏览 / 主页被浏览 / 需求作者页被点开。

【组合链】这条链是本工具存在的全部理由,App 里要三次点击两次跳转: named[].viewerId → get_creator 看他是谁、在做什么 → start_conversation 开聊(开场语可以直接引用 named[].what:「看到你翻了我那条 XX」,这是真的、可验证的话头)。要先看看关系 → get_relationship;不想立刻打扰 → follow_creator。

【口径/坑】 · 匿名那部分只是计数,没有身份可查,也不许编。 anonymous 是按 ipHash 折叠后的下限,不是精确人数。 · 具名访客要求对方登录状态下浏览;查不到人(注销 / 占位号)的会被降级计进 anonymous,所以 named 恒少于真实关注量。 · 机器流量已剔(站内约 41% 的产品浏览是爬虫),自己看自己也已剔。 · 默认窗口 7 天。窗口拉太长会翻旧账——两周前看过你一眼的人,你现在去搭话是尴尬的。 · 每天有具名访客的人本来就少(生产实测每天 2~12 位主理人),空返回是常态,如实说「这几天没人来看」,别改参数反复试。 · named 最多回 limit 条(默认 20,最近的在前),namedCount 始终是窗口内的真实总数——两者不等时 truncated=true,别拿 named.length 当总人数。

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo回看天数,默认 7,最多 30
limitNo最多列出几位具名访客(默认 20,最多 50);namedCount 不受它影响,永远是真实总数

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, and the description adds substantial semantics beyond them: anonymous is an ipHash-folded lower bound that must not be fabricated into identities, named requires logged-in viewers with unidentifiable accounts downgraded to anonymous, bot traffic (~41%) and self-views are pre-filtered, empty returns are statistically normal (2~12 named visitors/day), and named.length ≠ namedCount implies truncated=true. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Despite its length, the text is organized into scannable labeled sections (需要登录/何时用, 组合链, 口径/坑) and front-loaded with the use case. Every sentence prevents a concrete failure mode — fabrication, miscounting totals, parameter retry loops, stale social outreach — so there is no padding; the density justifies the size.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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 full burden of return semantics, and it delivers: named[].viewerId, named[].what, namedCount, anonymous, and truncated are all defined well enough to execute the composition chain correctly. The only omitted detail is the exact response envelope shape, which is minor given the operational fields are all specified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers both params at 100% with defaults and ranges, so the baseline is 3. The description adds operational meaning beyond the schema: the social rationale for the 7-day default, the guarantee that namedCount is always the true window total regardless of limit, and a warning not to probe params when empty is the norm. This is meaningful additive value, though the schema still does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete verb and resource: listing recent viewers merged from three streams (产品被浏览 / 主页被浏览 / 需求作者页被点开), with explicit trigger phrasings (「最近有人关注我吗」「谁看了我的产品」) plus the non-obvious use case of finding a conversation starter. This sharply distinguishes it from the ~120 sibling list tools without needing to open the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

An explicit 【何时用】 section states trigger conditions and the proactive-chat use case. The 【组合链】 section routes to complementary tools conditionally (get_relationship first, follow_creator if not ready to disturb, get_creator → start_conversation after), and pitfalls give when-not guidance: don't retry with changed params on empty returns, don't stretch the window because two-week-old views make outreach awkward.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_service_products找服务商(推广 / 企服目录)A
Read-onlyIdempotent
Inspect

【何时用】用户要买一类服务而不是找某个具体产品时:「GPU 租赁」「代理记账」「商标代办」「法务咨询」「找人帮我投流」「大模型 token 哪买便宜」——这是高意图检索的正确入口。按服务域精确取整组,比 search_products 关键词碰运气稳。

【组合链】items[].id → get_product 看详情 / follow_product 关注跟进;items[].owner.id → get_creator 看这家谁在做 → start_conversation 直接开聊;整组翻完都不合适 → create_need 发一条需求(needType=RESOURCE)让服务商反过来找你。

【口径/坑】 · 这是目录不是搜索:没有相关度排序。顺序 = 已认领梯队优先 → 站内推广位 → 发布时间。所以第一屏未必最匹配,看 tagline 自己挑。 · sub 必须落在 domain 那一组里;给了外组的 sub 服务层不报错,会静默退回整组结果(防止用 sub 越权掏另一组)。别把「返回了一堆不相干的」当成数据问题。 · 空结果是常态:不少子类目前站内确实没有供给,如实说「这一类还没有」并转 create_need,别改词反复重试。 · 分页用 offset(nextCursor 就是下一次的 offset 字符串),不是 id 游标。

ParametersJSON Schema
NameRequiredDescriptionDefault
subNo细分服务域,可选;不传出整组。取值: PROMOTION 组:PROMO_SEO_GEO(SEO · GEO) | PROMO_ADS(投放) | PROMO_MEDIA(媒体宣传) | PROMO_GROWTH(增长工具) INFRA 组:INFRA_OFFICE_PARK(园区办公) | INFRA_INCORP(工商注册) | INFRA_FINANCE(财务) | INFRA_IP(知识产权) | INFRA_LEGAL(法务) | INFRA_LLM_TOKEN(大模型 Token) | INFRA_BANK(银行金融) | INFRA_DEV_TOOL(编程工具) | INFRA_GPU(GPU 租赁) | INFRA_CLOUD(云服务)
limitNo返回条数,默认 20,最多 50
domainYes服务大组:PROMOTION(把产品推出去:SEO/投放/媒体/增长)| INFRA(把公司跑起来:园区/工商/财务/知产/法务/算力/云…)
offsetNo偏移量,默认 0;用上一次返回的 nextCursor

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations establish the safety profile (readOnly, openWorld, idempotent, non-destructive), and the description adds substantial non-obvious behaviors beyond them: no relevance ranking with a specific ordering rule (已认领梯队优先 → 站内推广位 → 发布时间), silent fallback to the full group when sub is out-of-domain (服务层不报错), empty results being a normal state, and offset-based pagination (nextCursor is an offset string, not an id cursor). These are exactly the failure modes an agent cannot infer from annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Long but every sentence earns its place: section headers (【何时用】【组合链】【口径/坑】) make it scannable, the highest-value routing guidance is front-loaded, and each pitfall bullet conveys a distinct behavior the agent would otherwise learn only by failing. There is no filler, repetition, or restating of schema content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema and several behavioral quirks, the description covers everything needed to call it correctly: ordering semantics, silent fallback, empty-result handling, pagination mechanics, and the essential return fields for chaining (items[].id, items[].owner.id, tagline, nextCursor). The only minor gap is the full item shape, but the navigation-critical fields are all named, which is sufficient for correct invocation and downstream routing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with labeled enums, defaults, and min/max, so the baseline is 3. The description adds genuine value beyond the schema by explaining the non-obvious sub/domain interaction — an out-of-group sub silently returns the whole group rather than erroring, a failure mode the schema cannot express — and by clarifying that nextCursor is an offset string rather than an id-style cursor. Slight overlap exists with the schema's offset description, but the grouping constraint is a real semantic addition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise verb+resource: retrieve the entire group of service products by service domain ("按服务域精确取整组"), and explicitly contrasts itself with search_products ("比 search_products 关键词碰运气稳"), making the sibling distinction unambiguous. The title "找服务商(推广 / 企服目录)" reinforces that the resource is a service-provider directory, not a product search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Opens with an explicit when-to-use rule — user wants a category of service, not a specific product — backed by concrete examples (GPU 租赁, 代理记账, 找人帮我投流). It names alternatives and chaining routes explicitly: search_products for keyword matching, get_product/follow_product for item follow-up, get_creator/start_conversation for owner engagement, and create_need (needType=RESOURCE) as the fallback when nothing fits.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_signup_feed列可报名的机会A
Read-onlyIdempotent
Inspect

【何时用】用户问「最近有什么能报名的 / 这周截止的有哪些 / 有没有黑客松」时调它。这是站内唯一能真报名的机会列表:每一场都挂着可用的报名表单。

【组合链】拿到 slug 后:① get_signup_activity(slug) 一次拿全「详情 + 我的报名状态 + 还缺哪几题」;② 缺项补齐后 submit_signup(slug) 直接报;③ 想一次盘几场就 get_signup_gaps(slugs=[…]) 拿跨场合并的待答清单,问一轮就够。

【口径/坑】① 本工具返回的每一条都当场能在站内报(判据是这场挂了报名配置,与 Activity.type 无关——平台自办/承办的赛事也是 type=COMPETITION,照样在这条 feed 里)。list_activities 是更宽的活动资讯面,其中导入的外部赛事只能去主办方官网报,两者别混。② feed 已按「置顶 → 截止近的优先(无截止排最后)」排好序,「这周截止的」直接按顺序截即可,别自己重排。③ 首屏返回的 kinds 是服务端算的真实类目计数,空类目根本不出现——照它渲染选项,别拿 SIGNUP_KINDS 全集当菜单。④ 登录时每条带 submitted=true/false,已报的别再问用户要不要报。⑤ startAtKnown=false 表示这场的开始时间是导入时兜底顶上的假值,别对用户念那个日期

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNo报名类目筛选,可选。取值:HACKATHON(黑客松) | COMPETITION(创业赛事) | INCUBATOR(孵化营) | FUNDING(融资申请) | COMMUNITY(社区入驻) | EVENT(活动报名) | OTHER(其他)
limitNo每页条数,缺省 20,上限 50
cursorNo翻页游标,取上一页的 nextCursor
includeExpiredNo是否含已截止的场次,缺省 false(只给还能报的)

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as readOnly, idempotent, and non-destructive, but the description adds valuable behavioral context beyond that: every returned item is actually registrable, ordering is already server-set with a defined priority and should not be re-sorted, kinds are real server-computed counts, submitted=true/false indicates prior signup status, and startAtKnown=false means the start time is a placeholder that should not be read to users. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but tightly organized into three labeled sections: when to use, follow-up tool chain, and semantics/pitfalls. Every sentence carries operational value, and the critical constraints are front-loaded and highlighted. No filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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 burden of explaining return semantics, and it does so well: it covers item meaning (signup-able), ordering, kinds counts, submitted flag, startAtKnown placeholder behavior, and how to chain follow-up tools. It also handles the main sibling ambiguity with list_activities. This is complete for an agent to invoke and use the result correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3 because parameter meaning is already fully documented. The description adds some related behavioral context (e.g., first-screen kinds are real counts, don't reorder the feed), but it does not meaningfully extend the meanings of kind, limit, cursor, or includeExpired beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool lists signup-able opportunities and gives concrete triggers ('最近有什么能报名的 / 这周截止的有哪些 / 有没有黑客松'). It also differentiates itself from list_activities by calling itself the site's only feed for opportunities that can actually be registered for on-site.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides an explicit when-to-use section, contrasts itself against list_activities (broader info feed; external events must be registered via organizer's site), and gives a follow-up tool chain: get_signup_activity(slug), submit_signup(slug), and get_signup_gaps(slugs=[…]). This gives the agent clear routing and next-step guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_signup_submissions看这场的报名名单A
Read-onlyIdempotent
Inspect

【需要登录】【何时用】主办方问「报了多少人 / 今天新增几个 / 有哪些做 AI 的报了」时调它。返回名单页 + 首页概览(总数 / 今日新增 / 待初审 / 渠道分布)。

【组合链·批量处置,这是 agent 对 web /pro 的碾压位】list_signup_submissions(slug, q='Agent') 拿到 items[].id → bulk_review_signup_submissions(slug, ids=[…], reviewStatus='SHORTLISTED', preview=true) 先让用户过目 → 确认后 preview=false 落库 → 剩下的人 reviewStatus='WAITLIST' 再来一次。在 web /pro 上这是勾 200 个复选框。要联系某个具体的人再用 get_signup_submission(该行 id) 单独取联系方式;要整份表格用 issue_signup_export_link。

【口径/坑】① 默认不返回答案全文:只给每行答了哪几题的 key 列表 + 昵称。要看某几题的内容用 fields=['project_intro'] 点名投影。② 默认不返回联系方式(手机号/微信/邮箱一律裁掉或打码),只告诉你 hasContacts / contactKinds;确实要联系人再传 includeContacts=true,或对单个人用 get_signup_submission。证件号任何时候都不解密。③ 投影出来的答案里,夹带在自由文本中的手机号/邮箱同样会被清洗掉——那是刻意的,不是数据坏了。④ limit 默认 20、上限 50(服务层能给 100,这里刻意收窄:一屏 100 行报名答案灌进上下文没有意义)。⑤ q 是跨三处搜的(匿名单字段 / 报名者账号昵称手机 / 答案全文),搜项目名和公司名最好用。⑥ status(投递态)与 reviewStatus(录不录)严格分离,别混着筛。⑦ overview 只在第一页(不带 cursor)返回。

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo关键词,跨「匿名单字段 / 报名者账号 / 答案全文」三处搜
slugYes活动 slug
limitNo每页条数,缺省 20,上限 50
sinceNo起始时间 ISO 8601
untilNo截止时间 ISO 8601
cursorNo翻页游标,取上一页的 nextCursor
fieldsNo只返回这几道题的答案(题目 key)。不传就一条答案值都不返回,只给 key 列表
statusNo按投递状态筛(不是录取状态)
channelNo按报名渠道筛(agent = 经 MCP 由 agent 代提)
reviewStatusNo按报名结果筛。取值:PENDING(待初审) | REVIEWING(初审中) | SHORTLISTED(已入围) | WAITLIST(候补) | REJECTED(未通过) | WITHDRAWN(已撤回)
includeContactsNo是否带上联系方式明文(手机/微信/邮箱),缺省 false。用户明说要联系人才开

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly/openWorld/idempotent/non-destructive, and the description adds substantial behavior beyond them: login is required, answers and contacts are masked by default (only hasContacts/contactKinds), PII embedded in free-text projections is deliberately scrubbed, ID numbers are never decrypted, limit is deliberately capped at 50 with rationale, and overview stats only appear on the first page. These are exactly the traps an agent would otherwise hit. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but scannable: bracketed section headers (【需要登录】【何时用】, 【组合链·批量处置】, 【口径/坑】) and a numbered ①-⑦ pitfall list earn their space for an 11-param tool. Minor deduction for the editorializing '碾压位' phrasing and the combo-chain paragraph being somewhat verbose relative to the tool's own scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 11-param tool with no output schema, the description covers the return overview stats, per-row shape (question-key list, nickname, hasContacts/contactKinds), all masking defaults, and the pagination quirk. Remaining gaps are minor: no explicit sort order, no mention of a nextCursor field in the response, and no error/auth-failure behavior. The critical behavioral landmines are all disclosed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema itself is already descriptive (q's three-place search, fields' key-list default, reviewStatus enum meanings), so the baseline is 3. The description adds real operational value beyond it: q is best for project/company names, the concrete projection example fields=['project_intro'], the scrubbing caveat for projected answers, the rationale for the 50-row cap, and the overview-only-without-cursor pagination rule. Meaningful but incremental — the schema already carried most parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a concrete trigger ('主办方问「报了多少人 / 今天新增几个 / 有哪些做 AI 的报了」时调它') and states the exact return shape (名单页 + 首页概览:总数/今日新增/待初审/渠道分布). It names the siblings it is not — get_signup_submission, issue_signup_export_link, bulk_review_signup_submissions — so an agent can route correctly without opening their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when-to-use is front-loaded (organizer count questions), and exclusions are concrete: for contacting one person use get_signup_submission, for the full spreadsheet use issue_signup_export_link, and for batch disposition chain into bulk_review_signup_submissions with the preview=true → preview=false pattern. No inference is required.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_talent找人才(按职业找人,不是找产品)A
Read-onlyIdempotent
Inspect

【何时用】用户要的是某一类人本人而不是某个产品/服务时用:「帮我找个能写代码的」「有没有做出海的人」「找几个律师/财税顾问聊聊」。和 list_service_products 的区别:那边是「他卖什么」(产品目录),这边是「他本人是干什么的」(人的目录);和 search_people 的区别:那边是语义搜,这边是结构化职业筛选,适合按类目扫一遍。

【组合链】items[].user.id → get_creator 看完整主页 → start_conversation 开聊(开聊走每日额度,撞 429 会直接返回「怎么办」的出口,别重试);user.id → follow_creator 先关注不打扰;items[].company.slug → get_company。人卡唯一动作就是进个人主页,没有别的落点。

【口径/坑】 · 职业(items[].professions)是机判闭集:由资料/名片/自述跑分类器写入,不是本人勾选;一人最多两个主职业。没被判出职业的人不进这个目录,想找他走 search_people。 · chip 是职业的合并桶(比如律师/财税/HR 都并在「咨询·顾问」里),卡片上的职业胶囊是细粒度标签,两者不是一回事。 · chip 全集以 GET /v1/talent/chips(首页下发)为准:服务端按真实人数 ≥ 阈值才下发,这里的枚举只是合法值集合,不代表此刻每个都有人。传了没下发的 chip 会拿到很少甚至 0 条,不是报错。不传 chip 或传 all = 全部;传不认识的 key 按全部处理(不 400)。 · 只回真人(在册、已入驻、非测试号、非运营机构号);返回里没有手机/邮箱/外链,要联系只能开聊。 · 规模小(百级),分页是 offset(nextCursor 就是下一次的 offset)。

ParametersJSON Schema
NameRequiredDescriptionDefault
chipNo职业 chip,可选;不传或 all=全部。合法值:all / dev / creative / growth / consult / product / training / hardware / sales / global / health(dev=开发·技术,creative=内容·创意,growth=运营·增长,consult=咨询·顾问,product=产品,training=培训·教育,hardware=硬件·供应链,sales=销售·BD,global=出海·跨境,health=健康·心理)。此刻实际可用的 chip 以 GET /v1/talent/chips 为准
limitNo返回条数,默认 20,最多 50
offsetNo偏移量,默认 0;用上一次返回的 nextCursor

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false, and the description goes well beyond them: it reveals that professions are machine-classified, that chip availability depends on a server-side threshold, that unknown chips default to 'all' without error, that results are real users only, that no contact details are returned, and that nextCursor is just the next offset. This is rich behavioral disclosure with no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but tightly organized into clearly labeled sections — when to use, sibling differences, chaining, and pitfalls. Every sentence carries either a usage rule, a behavioral caveat, or a downstream routing hint. No filler or repetition; the structure makes dense content scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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 burden of explaining the response shape, and it does: it references items[].user.id, items[].company.slug, items[].professions, and nextCursor. It also explains edge cases like sparse chips returning zero results, pagination limits, and the absence of contact info. An agent has enough context to call and interpret this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds substantial semantic value beyond the schema: chip is a merged bucket vs fine-grained profession labels, the actual chip set is determined by GET /v1/talent/chips, unrecognized chip keys are treated as 'all', and offset pagination is explained with nextCursor semantics. The description fully compensates and more.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states this tool lists people by profession, not products/services, and uses concrete user examples like '帮我找个能写代码的'. It explicitly distinguishes itself from list_service_products and search_people, making the tool's scope unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance with real-world prompts, contrasts against list_service_products ('he sells what' vs 'he is what'), and against search_people (semantic search vs structured category browsing). It also tells the agent to use search_people when a person has no detected profession, which is a valuable exclusion rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mark_conversation_read标记会话已读A
Idempotent
Inspect

【需要登录】把某个会话标记为已读(更新我的 lastReadAt)。

ParametersJSON Schema
NameRequiredDescriptionDefault
conversationIdYes会话 id

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description provides useful behavioral context beyond the annotations: login is required and the operation only updates 'my lastReadAt'. This clarifies the mutation's scope and side effect. It does not contradict the annotations, and the idempotent/non-destructive hints are already covered by annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly written sentence that front-loads the auth requirement and clearly states the operation and its effect. Every piece of text earns its place; there is no fluff or unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple one-parameter mutation tool with robust annotations and full schema coverage. The description adds the two missing pieces an agent needs — authentication requirement and what state changes — making the tool complete enough for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already has 100% description coverage for conversationId ('会话 id'), so the description does not need to add much. It mentions '某个会话' in passing, which reinforces the parameter's meaning but adds no new semantic detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('mark a conversation as read') with a precise resource and side effect ('updates my lastReadAt'). This clearly differentiates it from read/list/message tools and leaves no ambiguity about what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by the verb phrase '把某个会话标记为已读', and it gives a login prerequisite. However, it does not explicitly state when to prefer this over related tools like read_messages or get_conversation, nor does it mention alternative tools for different intents.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mark_positioning_task给定位任务打勾(线下动作自报)A
Idempotent
Inspect

【需要登录】【何时用】用户完成了平台观测不到的线下动作:注册了公司、拿到商标 / 软著 / ICP 备案、收到第一笔钱、开始盈利……由他自报,平台不审核(可以顺手把备案号/注册号填进 note)。

【组合链】打完勾返回体自带涨分回执(打勾前后的总分与段位、本次新完成了哪些任务)——直接念给用户,别再调 get_my_positioning 前后各拉一次自己减。段位变了就顺势给下一步:get_my_positioning 看新一级的任务,或按 nextUp 的 suggestedTool 直接接着做。

【口径/坑】 · 只有 manual 类任务能打勾,auto 类(发产品、聊过多少人、发过几条需求)是平台记录算出来的,硬打会 400 task_not_manual——那不是 bug,是防止分数变成自助填空。 · 合法 taskKey(从服务层的 manual 任务集合生成):build.company(公司注册) | build.trademark(商标注册) | build.copyright(软件著作权登记) | build.copyright_ec(电子软著(电子证书)) | build.icp(ICP 备案) | build.police(公安备案) | build.app_filing(App 备案) | build.mp_filing(小程序备案) | build.llm_filing(大模型 / 算法备案) | build.security_assessment(互联网信息服务安全评估) | build.patent(专利申请) | revenue.first_pay(拿到第一笔收入) | revenue.repeat(有第二个不认识的付费客户) | profit.covered(收入覆盖成本) | growth.ad_basics(学会:一条广告只干一件事) · done=false 是取消打勾(连 note 一起删)。 · 不做任何审核校验:note 就是个备忘,填错也只影响他自己。别拦着用户填。

ParametersJSON Schema
NameRequiredDescriptionDefault
doneNotrue=打勾(默认),false=取消打勾
noteNo备忘,比如备案号 / 注册号,可选
taskKeyYes要打勾的任务 key。合法值:build.company(公司注册) | build.trademark(商标注册) | build.copyright(软件著作权登记) | build.copyright_ec(电子软著(电子证书)) | build.icp(ICP 备案) | build.police(公安备案) | build.app_filing(App 备案) | build.mp_filing(小程序备案) | build.llm_filing(大模型 / 算法备案) | build.security_assessment(互联网信息服务安全评估) | build.patent(专利申请) | revenue.first_pay(拿到第一笔收入) | revenue.repeat(有第二个不认识的付费客户) | profit.covered(收入覆盖成本) | growth.ad_basics(学会:一条广告只干一件事)

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a mutating, idempotent, non-read-only operation. The description adds meaningful behavioral context: login is required, the platform performs no audit or validation, note is only a memo, done=false deletes the note, illegal manual-task keys produce a specific 400 error, and the response carries a score receipt. These details go well beyond the annotations, and there is no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but tightly organized with clear sections: login, when to use, combination-chain behavior, and pitfalls. Every sentence carries operational value—there is no filler. The duplicated taskKey list is acceptable because it is embedded with the rule that only manual tasks are legal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even without an output schema, the description covers the return behavior (score receipt with before/after totals, rank, newly completed tasks), the error mode (400 task_not_manual), authentication, cancellation semantics, and follow-up routing. For a state-changing tool with edge cases, this is a complete and self-sufficient definition.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters. The description adds value by explaining semantics not obvious from the schema alone: the default for done is true, false cancels and deletes the note, note should not block the user because it is never validated, and taskKey must come from the manual-task set. The taskKey list is partially redundant with the schema but is wrapped in the manual-only rule.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: the user self-reports offline actions to check off positioning tasks (给定位任务打勾). It distinguishes this tool from sibling tools by clarifying that only manual tasks can be marked, while auto tasks are computed by the platform. It also references get_my_positioning as the read-side counterpart, so an agent can tell them apart.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'when to use' with concrete triggers: user completed actions invisible to the platform such as company registration, trademark, ICP filing, first revenue, profitability. It also gives clear exclusions: auto tasks cannot be checked and will return 400 task_not_manual; done=false means cancel and deletes the note. It tells the agent not to re-fetch get_my_positioning before/after and instead use the returned receipt or nextUp.suggestedTool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

personalized_feed个性化发现 feedA
Read-onlyIdempotent
Inspect

返回千人千面的发现 feed:登录且设过兴趣(set_my_preferences)时按兴趣语义排序,否则回落「已认领优先 + 热度」。比 random_feed 更贴合用户口味,是网页登录后的默认发现页。续拉时把 nextCursor 原样回传以延续同一副牌。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo返回条数,默认 18
cursorNo分页游标 nextCursor,原样回带

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注解已覆盖 readOnlyHint、idempotentHint、destructiveHint 等安全画像,描述在此基础上补充了条件排序逻辑与「续拉时把 nextCursor 原样回传以延续同一副牌」的分页行为,价值超越注解本身。唯一小缺口是无输出 schema 时未说明返回条目结构,但这是次要信息。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

三句话依次完成核心行为、条件分支、sibling 对比与分页须知,信息密度高且零冗余。关键约束(nextCursor 原样回传)单独成句收尾,结构清晰、重点前置。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

两参数均已在 schema 中完整说明,注解覆盖安全属性,描述又补齐了算法、回落条件、默认页面定位与分页延续规则,对只读 feed 工具而言几乎无缺。唯一缺口是缺少返回条目结构的说明,但因无输出 schema 且工具语义直观,影响有限。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema 对 limit(默认 18)和 cursor(原样回带)的覆盖率达 100%,参数语义已由 schema 完整承担。描述仅复述 cursor 的分页行为并补充「延续同一副牌」的语境,属于锦上添花而非必要补偿,按基线规则给 3 分。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述以具体动词「返回」界定行为,资源明确为「千人千面的发现 feed」,并披露核心算法(按兴趣语义排序,否则回落「已认领优先 + 热度」)。同时点名「比 random_feed 更贴合用户口味」,直接与同名 sibling 区分,无同义反复。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

清晰给出两条分支的使用前提——登录且设过兴趣时走个性化路径,否则走回落路径,并指明「是网页登录后的默认发现页」这一具体场景。虽以 random_feed 作对比并暗示了取舍,但未显式说明何时应改选 random_feed,缺少排除性指引。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

random_feed随机发现 feedA
Read-onlyIdempotent
Inspect

【何时用】用户说「随便看看」「让我发现些有意思的」「给我推荐点东西」时。随机抽 已发布 的产品(已认领主理人的产品优先出现)。比 search 更适合「我也不知道我想要什么」场景。续拉时把已看过的产品 id 传进 exclude 去重。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo返回条数,默认 10
excludeNo已看过的产品 id 列表,续拉时传入避免重复

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnly, idempotent, and non-destructive behavior. The description adds valuable behavioral details: random sampling, publication status filtering, owner-claim prioritization, and deduplication via exclude. This goes beyond what annotations alone convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded with a clear 'when to use' marker. Every sentence contributes: trigger phrases, sampling behavior, prioritization, comparison to search, and exclude usage. No filler or redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, zero-required-parameter random feed tool, the description covers the key aspects: when to invoke, what it returns conceptually, how results are prioritized, and how to paginate without duplicates. No output schema exists, but the resource being returned (products) is clear from the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters. The description reiterates the exclude parameter's purpose for continuation requests but adds no new semantic information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool randomly samples published products, prioritizing products with claimed owners. It distinguishes itself from search by explicitly saying it fits the 'I don't know what I want' scenario, making its purpose and identity clear among sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit trigger phrases ('随便看看', '让我发现些有意思的', '给我推荐点东西') and explains why random_feed is preferable to search in open-ended discovery scenarios. It also gives continuation guidance with exclude. However, it does not contrast against other discovery-style siblings like personalized_feed or list_products_discover.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rate_product评价产品A
Idempotent
Inspect

【需要登录】给某产品打 1–5 星 + 可选文字评价(一人一产品一条,再次调用即编辑)。不能评价自己的产品。先用 get_product / search_products 拿 productId。

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo文字评价,可选
scoreYes星级 1–5
productIdYes产品 id

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description discloses the login requirement, the single-review-per-user-per-product rule, the idempotent edit-on-recall behavior, and the self-rating prohibition. These are meaningful behavioral details that the annotations alone do not convey, and they align with idempotentHint=true and destructiveHint=false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one dense, purposeful sentence. It front-loads the core action and includes only high-value constraints and prerequisites, with no repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema and only three parameters, the description is complete: it covers authentication, usage constraints, idempotent behavior, and how to obtain the required productId. Nothing critical for a correct first call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all three parameters. The description adds slight context by linking productId to get_product / search_products and confirming body is optional, but does not go beyond the schema in a substantial way.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the action: rate a product with 1–5 stars plus an optional text review. The phrase '一人一产品一条,再次调用即编辑' (one per person per product, calling again edits) distinguishes it from sibling rating-related tools like delete_my_rating and get_product_ratings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit prerequisites and constraints: requires login, cannot rate your own product, and must obtain productId via get_product / search_products first. It does not explicitly mention when to avoid this tool in favor of an alternative, but the guidance is clear enough for correct invocation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_messages读会话消息A
Read-onlyIdempotent
Inspect

【需要登录】读取某个会话的消息。默认返回最近若干条(倒序,含 nextBefore 游标向前翻);传 after= 则增量拉取该消息之后的新消息(正序,用于轮询)。只能读自己参与的会话。

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNo增量:取该 messageId 之后更新的消息
limitNo返回条数,默认 30
beforeNo向前翻页:取该 messageId 之前更老的消息
conversationIdYes会话 id

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnlyHint, idempotentHint, etc.), the description discloses the login requirement, default ordering, pagination cursor behavior, and the authorization restriction to conversations the user participates in. This adds meaningful behavioral context not present in 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with the login requirement, and uses two sentences to convey default behavior, pagination, incremental polling, and access restrictions. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only message retrieval tool with 4 parameters fully documented in the schema and safety annotations already present, the description sufficiently covers authentication, pagination semantics, ordering, and authorization. No critical information is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although the schema already describes all four parameters at 100% coverage, the description adds important semantics: default returns recent messages in reverse order, after enables forward incremental polling, and nextBefore cursor supports backward paging. This goes beyond the raw schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action '读取某个会话的消息' (read messages of a conversation) and adds the scope constraint '只能读自己参与的会话'. This distinguishes it from sibling tools like get_conversation or list_my_conversations by focusing on message content within a specific conversation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly explains the default behavior (recent messages, reverse order, nextBefore cursor) and when to use after=<messageId> for incremental polling. It provides clear usage context but does not explicitly name sibling alternatives or state 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.

redeem_chat_quota用积分兑换今日 +1 次开场AInspect

【需要登录】【何时用】只在开聊额度用尽、用户明确要求今天就多聊一个人时。花 500 积分换今天 +1 次开场,每日限 1 次。这是应急安全阀,不是常规出口。

【必须先征得同意】agent 不许自动兑换。先把「这要花 500 积分」原话念给用户,拿到明确同意再调。撞额度墙时 start_conversation / contact_need 的失败返回体里已经带了这个出口和你的余额,照着念即可。

【组合链】兑换成功 → 立刻 start_conversation 把这一次用掉(额度只加今天,过夜作废)。不想花积分 → get_my_invite 走引荐(那是永久加额度,兑换只加一天)。

【口径/坑】 · 两种失败都是终态,绝不重试:409 insufficient_points(余额不够)/ 409 chat_quota_redeem_limit(今天已经兑换过了)。返回体里会带上当前额度和余额,直接转述。 · 如果你刚调过一次然后超时了,再调撞到 chat_quota_redeem_limit —— 那说明上一次其实成功了(每日上限靠全表唯一键原子兜底)。读返回体里的 quota 确认,不要当失败。 · 额度只拦「新开一个会话」;回复老会话、别人来找你都不受影响。 · 积分体系 2026-07-03 已从用户面下线,这是全站唯一一个还露在 agent 面的积分动作。别去找别的积分工具,没有。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations, the description discloses login requirements, mandatory explicit user consent with a specified script, terminal 409 failure modes with no retry, the timeout ambiguity that may mean a previous call actually succeeded, same-day quota expiry, and the fact that points were decommissioned from the user side. Since there is no output schema, this context is essential and is fully supplied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but densely structured into labeled sections, each carrying safety-critical or operational information. Every sentence earns its place, and the most important gating conditions are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With sparse annotations and no output schema, the description carries the full burden. It covers when to use, consent procedure, alternatives, failure/retry handling, side-effect scope, and system status. Nothing needed for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the baseline is 4. The description adds fixed-cost and daily-limit context, but these are behavioral facts rather than parameter semantics; no additional compensation is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action with a concrete resource: spending 500 points to gain +1 chat opener for today. It clearly distinguishes this tool from start_conversation/contact_need and get_my_invite, positioning it as an emergency valve rather than a regular channel.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The '何时用' section gives an explicit triggering condition: only when chat quota is exhausted and the user explicitly asks to chat with one more person today. It also names the alternative (get_my_invite for a permanent increase) and an exclusion ('不是常规出口').

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reopen_need重新展示我的需求A
Idempotent
Inspect

【需要登录】把手动下架过的需求放回信息流(与 unpublish_need 成对,免费、可反复切)。

【失败语义】非本人 403 not_your_need;已取消/完成的不可重开 409 need_closed(那种情况请用 create_need 重新发布)。

ParametersJSON Schema
NameRequiredDescriptionDefault
needIdYes需求 id

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnly=false, openWorld=true, idempotent=true, destructive=false), the description adds login requirement, free cost, reversibility, and detailed failure semantics (403 not_your_need, 409 need_closed). This gives an agent practical behavioral knowledge not present in structured metadata.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and well-structured: the primary action and pairing are front-loaded, followed by a concise failure-semantics section. Every sentence earns its place, with no redundant or generic filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, reversible operation with existing annotations and no output schema, the description covers all essential context: auth, pairing, cost, reusability, failure modes, and the alternative tool to use. Nothing needed for a correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with needId described as '需求 id'. The description does not add further parameter-level meaning, so the baseline of 3 applies. It does indirectly clarify that needId must be a manually unpublished need owned by the user, but this is part of the tool-level context, not parameter syntax.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (把...放回信息流) and resource (手动下架过的需求), and explicitly names its counterpart unpublish_need. It also differentiates from create_need for closed needs, so an agent can distinguish it from closely related siblings without guessing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly says when to use: for needs that were manually unpublished, to restore them to the feed. It also gives an exclusion: if the need is cancelled or completed, use create_need instead. This explicit when/when-not and alternative routing is ideal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

report_content举报内容AInspect

【需要登录】举报违规内容 / 用户。targetType 决定举报对象,reason 是原因。审核后台会处理。

ParametersJSON Schema
NameRequiredDescriptionDefault
detailNo补充说明,可选
reasonYes原因:spam 垃圾 | abuse 辱骂 | porn 色情 | illegal 违法 | other 其他
targetIdYes举报对象 id
targetTypeYes举报对象类型

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds useful context beyond annotations: it states login is required and that the audit backend will process the report, implying no immediate action. This is meaningful for a mutation tool with no destructive hint and no existing auth/flow information.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that communicates login requirement, the action, and the key dispatch logic without waste. It is concise and every part earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a moderate-complexity action with full schema coverage, the description plus schema covers required inputs and behavior sufficiently. It does not describe response format, but 'audit backend will handle' implies asynchronous processing, reducing the need for return-value details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameter details are fully documented. The description reiterates targetType and reason roles but adds no new meaning beyond the schema, which is acceptable given full coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: reporting violation content or users, and clarifies that targetType determines the target. This distinguishes it from related actions like report_dispatch and block_user, even without naming them explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: use this to report inappropriate content or users, and the backend will review. There is no explicit when-not-to-use guidance or mention of alternatives like report_dispatch for dispatch-specific reports.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

report_dispatch汇报情况并安排下一步AInspect

【需要登录】把用户确认的现状/目标交给独行录排安排:首次建路径,后续追加汇报并重排未接受部分。会调用平台 LLM、写入记录,可能后台排人和发通知,需灰度已开启。按用户限流,提示汇报过于频繁时不要立即重试。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 用 get_my_dispatch 的 reports 核对是否已收到,FILLING 时等候后查询。

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (readOnlyHint=false, idempotentHint=false), the description discloses that the tool calls the platform LLM, writes records, may schedule people in the background, sends notifications, requires the gray-release flag, is rate-limited per user, and—critically—has no persistent request deduplication key, so retries can duplicate. This matches and enriches the annotations rather than contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every sentence earns its place: core function first, then side effects and prerequisites, then failure handling and verification. It is front-loaded with the primary purpose and front-loads each caveat before its consequence. No filler or restatement of the title or schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description still covers the full post-call flow: how to verify receipt via get_my_dispatch, what to do in the FILLING state, how to handle rate-limit, unclear-result, and timeout cases, plus prerequisites (login, gray-release flag) and side effects. Given the tool's complexity and non-idempotency, nothing an agent needs to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does meaningfully: it tells the agent that the single text parameter should contain the user-confirmed current status/goal on first call and the appended report on later calls. It stops short of specifying the expected content structure or format, which is why it isn't a 5, but for a bare free-text parameter this is solid compensation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource—handing user-confirmed status/goals to the dispatch scheduler (独行录排) for arrangement—and explains the two call modes: first call builds a path, later calls append reports and reschedule unaccepted portions. This clearly separates it from dispatch siblings like accept_dispatch_arrangement, decline_dispatch_arrangement, set_dispatch_outcome, and skip_dispatch_step, all of which are distinct actions in the same workflow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use context (after the user confirms status/goals, with distinct first-vs-subsequent behavior) and explicit when-not-to: do not retry immediately after a rate-limit warning, and do not auto-resend on unclear results or timeout. It names the verification alternative (get_my_dispatch's reports) and specifies the FILLING state means wait-then-query, leaving nothing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

request_contact_exchange发起交换联系方式A
Idempotent
Inspect

【需要登录】在 1-1 会话里发起「交换联系方式」请求:对方同意后,双方的微信/电话/邮箱等联系方式互见(各自快照,之后改资料不回溯)。要求自己至少填了一条联系方式(no_contact_info 时先用 add_profile_link 补 contact 组链接)。已交换过会报 already_exchanged;对方已有待处理请求会报 peer_request_pending(此时应改走 respond_contact_exchange)。自己重复发起幂等回放。

【注意】这会真的向对方发出请求消息——发起前请向用户确认。

ParametersJSON Schema
NameRequiredDescriptionDefault
conversationIdYes会话 id(仅 1-1 会话)

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only convey readOnly=false, idempotent=true, and openWorld=true. The description adds crucial behavioral context: it sends a real request message to the peer, contact snapshots do not retroactively update, specific error codes occur, and repeated self-initiation is idempotently replayed. Nothing contradicts 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every sentence earns its place: main action, snapshot semantics, prerequisite, error routing, idempotence, and a user-confirmation warning. It is front-loaded with the core purpose and structured so an agent can quickly extract the critical constraint.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a side-effectful mutation with no output schema, this is complete: it covers prerequisites, failure modes, alternative routes, idempotent behavior, snapshot semantics, and the need for user confirmation before sending. An agent has everything required to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter conversationId is already fully described in the schema with '会话 id(仅 1-1 会话)'. The description reinforces the 1-1 constraint but does not add new parameter-level meaning beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('发起') and resource ('交换联系方式请求') scoped to 1-1 conversations. It clearly differentiates from the sibling respond_contact_exchange by positioning this as the initiating side of the exchange.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit usage conditions: only in 1-1 sessions, requires the user to have contact info, and directs the agent to add_profile_link when no_contact_info applies. It also names the exact alternate path (respond_contact_exchange) for peer_request_pending and instructs confirming with the user before sending.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

respond_collaboration_invite回应合作邀请AInspect

【需要登录】回应 get_my_work 返回的本人定向合作邀请。接受会加入目标并向合作人公开参与关系;婉拒后邀请不再待处理。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 接受后用 get_collaboration_goal 核对,待回应列表用 get_my_work。

ParametersJSON Schema
NameRequiredDescriptionDefault
acceptYes
inviteIdYes

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses side effects beyond annotations: acceptance joins the goal and exposes participation to the collaborator; rejection removes the invite from pending. Also warns that there is no persistent dedup key and that the agent should query current state on timeout/unknown results, which is critical 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences, each adding operational value: scope/auth, behavior, and failure handling. Information is front-loaded with the most important context first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Fully covers auth, input source, side effects, non-idempotency, timeout guidance, and post-action verification. Given only two simple parameters and existing annotations, nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate. It does: inviteId is tied to invites returned by get_my_work, and accept true/false maps to accepting or declining. It stops short of explicitly naming the exact field-to-effect mapping, but enough meaning is conveyed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description explicitly states the tool responds to collaboration invites from get_my_work and contrasts accept vs reject behaviors. It clearly differentiates from invite_collaboration_member which sends invites.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit context: only for personal targeted invites returned by get_my_work, verification via get_collaboration_goal after acceptance, and pending list via get_my_work. Also warns not to auto-resend after unclear outcomes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

respond_contact_exchange响应交换联系方式AInspect

【需要登录】同意或婉拒对方发来的「交换联系方式」请求(exchangeId 从 get_contact_exchange_state 的 PENDING exchange 拿)。accept=true 表示同意:把我的联系方式快照交给对方、同时拿到对方的(结果在返回的 contacts 里),此操作不可撤回——必须先向用户明确确认;同意方也需至少一条联系方式。accept=false 婉拒,之后对方可再次发起。重复响应幂等回放。

ParametersJSON Schema
NameRequiredDescriptionDefault
acceptYestrue=同意(交出联系方式,不可撤回),false=婉拒
exchangeIdYes交换请求 id
conversationIdYes会话 id(仅 1-1 会话)

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=true. The description adds important behavioral context beyond annotations: accepting is irreversible, requires user confirmation, shares contact snapshots bidirectionally, and requires the accepting party to have at least one contact. It also mentions idempotent replay for repeated responses. However, it doesn't detail exactly what happens to the conversation or whether rejection notifies the other party, but the core irreversible and confirmation requirements 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact but information-dense. Every sentence earns its place: authentication requirement, source of exchangeId, both accept branches, irreversibility, user confirmation requirement, and idempotency. It is well-structured with clear cause-effect phrasing and front-loads the most critical operational constraint (login + confirmation).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter tool with no output schema, the description covers the essential operational context: prerequisite state (PENDING exchange), auth, irreversible action and confirmation duty, the need for at least one contact, and idempotent behavior. There is no missing information that would prevent an agent from invoking it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters are already documented in the schema. The description adds meaningful semantics: it ties exchangeId to a PENDING exchange from a specific tool, explains accept=true/false consequences, and clarifies that results appear in the returned contacts. It doesn't add syntax details, but the value added over the schema is strong.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: respond to a contact-exchange request by accepting or declining (同意或婉拒). It specifies the source of the exchangeId (from get_contact_exchange_state's PENDING exchange), the semantic of accept=true/false, and the irreversible nature of acceptance. This distinguishes it from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly instructs when to use this tool (when there is a PENDING exchange from get_contact_exchange_state), what must happen before accepting (must explicitly confirm with the user), and what the consequences are for each accept value. It also notes that declining allows the other party to re-request.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

respond_dispatch_inbound回应安排来找我的人AInspect

【需要登录】回应 get_my_dispatch.inbound 中的请求。接受返回既有会话;拒绝会告诉平台双方不合适、可能通知对方并为其重排。先取得用户对回应的授权。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 用 get_my_dispatch 核对。

ParametersJSON Schema
NameRequiredDescriptionDefault
acceptYes
reasonNo
arrangementIdYes

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes well beyond annotations, disclosing that accepting returns an existing conversation, rejecting tells the platform the parties are unsuitable and may notify the other party and trigger re-arrangement, and that results can be ambiguous or timeout. The warning about no persistent dedup key directly explains the non-idempotentHint. This is rich, non-contradictory 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense and front-loaded: it opens with the login requirement, then states the purpose, outcomes, authorization prerequisite, timeout/idempotency warning, and verification step. Every sentence carries operational value with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers prerequisites, side effects, idempotency behavior, and a verification path, and even hints at return behavior by saying accept returns an existing conversation. It does not describe error/return formats or how to obtain arrangementId, but these are minor gaps given the strong operational context provided.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It adds meaning to the accept boolean by describing consequences of accept and reject, but it does not explain arrangementId or the optional reason parameter, leaving those to inference. Partial compensation only.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it responds to requests in get_my_dispatch.inbound, and explains what accept and reject do. It clearly identifies the domain and source, but it does not explicitly distinguish itself from sibling tools like accept_dispatch_arrangement or decline_dispatch_arrangement, so agents must infer the difference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives strong operational guidance: login is required, user authorization must be obtained first, unclear results or timeouts should be checked via get_my_dispatch rather than auto-retried, and the service has no dedup key. It does not, however, explain when to prefer this over the accept/decline sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

review_signup_submission处置一个报名者A
Idempotent
Inspect

【需要登录】【何时用】用户对某一个人下结论(入围/候补/未通过)时调它。处置结果报名者在「我的报名」里看得见,reviewNote 是直接给他看的一句话。

【组合链】list_signup_submissions 定位 → get_signup_submission 看清这个人 → 本工具处置。一次要处置很多人用 bulk_review_signup_submissions(那边有 preview 可以先过目)。

【口径/坑】① 执行前把「谁 → 改成什么」念给用户确认——报名者那头会看到。② reviewNote 缺省=不动之前写的留言,传空串会清空它。③ 只动报名结果,不碰投递状态(那是「有没有投到源表单」,两码事)。④ 取值:PENDING(待初审) | REVIEWING(初审中) | SHORTLISTED(已入围) | WAITLIST(候补) | REJECTED(未通过) | WITHDRAWN(已撤回)。

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes活动 slug
reviewNoteNo给报名者看的一句话(如「初审通过,请在 9 月上旬填入围确认表」)。不传=不动之前的留言;传空串=清空它
reviewStatusYes报名结果。取值:PENDING(待初审) | REVIEWING(初审中) | SHORTLISTED(已入围) | WAITLIST(候补) | REJECTED(未通过) | WITHDRAWN(已撤回)
submissionIdYes报名单 id

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as read-write, non-destructive, and idempotent. The description adds essential behavioral detail: login is required, the outcome is visible to the applicant in 'My Applications', reviewNote is shown directly to the applicant, and the default vs empty-string behavior for reviewNote is clarified. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well structured into labeled sections (需要登录/何时用/组合链/口径/坑) with bolded key warnings and a numbered list. It is dense but every sentence carries high-value information, and the most important scoping and side-effect details are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even without an output schema, the description covers the login requirement, exact trigger condition, routing among sibling tools, the visible side effect to the applicant, all enum values, reviewNote semantics, and the boundary vs delivery status. Nothing an agent needs to select or invoke this tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters, the enum labels, and the reviewNote default/clear semantics are already documented in the schema. The description repeats this information rather than adding new parameter-level meaning. Baseline 3 applies due to full schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: decide one applicant's review outcome (SHORTLISTED/WAITLIST/REJECTED, etc.) for a single signup submission. Explicitly distinguishes from bulk_review_signup_submissions and positions itself inside a list -> get -> review chain, so an agent can tell it apart from its siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use context ('when the user reaches a conclusion on one person'), a recommended combination chain (list_signup_submissions -> get_signup_submission -> this tool), and an explicit alternative for many people (bulk_review_signup_submissions with preview). Also states what the tool does NOT touch (delivery status).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

revoke_my_device吊销我的接入设备A
DestructiveIdempotent
Inspect

【需要登录】吊销当前用户的某台接入设备(其 token 立即失效)。先用 list_my_devices 拿 deviceId。返回 revoked 是否实际吊销了一条。

ParametersJSON Schema
NameRequiredDescriptionDefault
deviceIdYes设备 id

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already indicate destructive behavior, non-read-only, and idempotent semantics. The description adds meaningful context: the token becomes invalid immediately, login is required, and the return value 'revoked' indicates whether an actual revocation occurred. These details go beyond the annotations and help the agent anticipate 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and every clause earns its place: login requirement, operation and effect, prerequisite workflow, and return-value semantics. It is front-loaded with the most critical gate ('需要登录') and avoids any filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no output schema, this description provides everything an agent needs to invoke it correctly: authentication requirement, how to acquire the parameter, what the operation does, and what the response means. No critical information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of the parameter with a minimal description ('设备 id'), while the tool description adds important semantic guidance: the deviceId should come from list_my_devices. This provenance information is genuinely useful for correctly populating the parameter, raising it above the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('吊销'/revoke), names the resource ('当前用户的某台接入设备'), and states the effect ('token 立即失效'). It clearly distinguishes this tool from siblings by scoping it to the current user's own device and explicitly referencing list_my_devices as the way to obtain the deviceId.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says it requires login and instructs the agent to first call list_my_devices to obtain a deviceId, which is a clear workflow guideline. It does not mention exclusions or alternative tools explicitly, but the usage context is unambiguous: revoke one of the current user's devices.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_needs搜需求A
Read-onlyIdempotent
Inspect

【何时用】用户想定向找「有没有人在找 X」时——「有没有人想找设计合作」「谁在找出海经验交流」。比 list_needs_feed(推荐流)更适合带明确关键词的检索。

【机制】标题/详情关键词 + need_embedding 向量混合检索(RRF 融合),只出在架需求(与信息流可见性口径一致)。返回完整需求卡(含作者 canOffer)。

【组合链】命中 → get_need 看详情 → contact_need 接洽拿 conversationId → send_message 开聊。

ParametersJSON Schema
NameRequiredDescriptionDefault
qYes搜索查询,自然语言或关键词
limitNo返回条数,默认 20

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

annotations 已声明 readOnlyHint=true、idempotentHint=true、destructiveHint=false,安全画像完整。描述在此基础上补充了有意义的机制细节:标题/详情关键词 + need_embedding 向量混合检索(RRF 融合)、只出在架需求(与信息流可见性口径一致)、返回完整需求卡(含作者 canOffer)。这些行为信息超出了 annotation 和 schema 能提供的范围。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述采用三个带标签的段落(何时用/机制/组合链),信息密度高且结构清晰易扫读。「何时用」置于最前,符合 front-loaded 原则。组合链段落虽超出单工具描述范畴,但对 agent 的后续调用路径有实际指导价值,不算冗余。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

对于只有 2 个参数、schema 全覆盖、annotations 丰富的只读搜索工具,描述已覆盖使用时机、检索机制、可见性过滤、返回内容以及下游工作流(命中 → get_need → contact_need → send_message)。虽无 output schema,但描述已说明返回「完整需求卡」,整体对 agent 正确调用已足够完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema 覆盖率为 100%,q 和 limit 均在 schema 中有完整描述(q 为自然语言或关键词,limit 有范围与默认值),因此基线为 3。描述中的查询示例(设计合作、出海经验交流)对 q 的语义有轻微强化作用,但未添加 schema 之外的结构性或格式性信息,符合高覆盖率下的基线评分。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述以「搜需求」这一具体动词+资源开头,并用两个查询示例(「有没有人想找设计合作」「谁在找出海经验交流」)明确了工具的用途。同时明确区分了 sibling list_needs_feed(推荐流),指出本工具更适合带关键词的定向检索,agent 无需打开 schema 即可判断职责边界。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

「【何时用】」段落直接给出了使用条件——用户想定向找「有没有人在找 X」,并明确对比了替代工具 list_needs_feed(推荐流),说明带明确关键词时应选本工具而非推荐流。这是显式的 when 与 alternative 说明,没有任何留给推断的空间。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_people搜主理人(按能提供什么)A
Read-onlyIdempotent
Inspect

【何时用】用户想找「人」时——「找能提供小程序代开发的主理人」「谁懂跨境电商供应链」「找人合作做 AI 出海产品」。搜的是主理人的供给侧(canOffer 能提供什么 + 昵称/介绍/身份标签),这是 OPC 之间撮合合作的刚需入口。

【机制】关键词 + 向量混合检索(RRF 融合),真人(已认领)梯队前置。结果含 canOffer / similarity / claimed。

【组合链】命中后 get_creator 看作品尽调 → start_conversation 开聊;对方若发过需求也可 contact_need 顺着需求接洽。搜「产品」用 search_products,搜「需求」用 search_needs。

【常见 pitfall】不支持按手机号搜人(隐私保护,服务端对手机号查询恒返回空)——用户给的是手机号时直接说明不支持,改问对方的昵称或能提供什么。

ParametersJSON Schema
NameRequiredDescriptionDefault
qYes搜索查询:想要对方能提供的能力/资源/领域,自然语言即可
limitNo返回条数,默认 20

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already indicate a read-only, non-destructive operation, and the description adds substantial context beyond that: keyword+vector hybrid retrieval with RRF fusion, claimed creators ranked first, result fields (canOffer/similarity/claimed), and the server-side privacy behavior that phone-number queries always return empty. This gives the agent a realistic model of how the tool behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with clear section headers (何时用, 机制, 组合链, 常见 pitfall) and every sentence adds information an agent needs. It is information-dense but not bloated, and the most important usage guidance is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool with no output schema, the description compensates well by listing the returned signals, ranking behavior, and post-search follow-up tools. It also covers the main failure mode (phone-number search) and directs to sibling search tools, making the decision context complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful nuance beyond the schema: q should express the kind of capability/resource the user wants the other person to provide, and phone numbers are explicitly not supported. The limit parameter is sufficiently documented in the schema, so no further elaboration is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool searches for people by what they can offer, using examples like '找能提供小程序代开发的主理人' and explicitly scoping to supply-side fields (canOffer, name/intro/identity tags). It also distinguishes itself from search_products and search_needs, making it easy for an agent to pick the right search tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description opens with '何时用' and gives concrete use cases, then names the sibling alternatives for products and needs. It also provides a follow-up chain (get_creator, start_conversation, contact_need) and explicitly warns against phone-number queries, so an agent knows what to do and what not to do.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_products搜索 OPC 产品A
Read-onlyIdempotent
Inspect

【何时用】用户用自然语言找产品/作品时,比如「有没有给独立开发者用的财务工具」「记笔记的极简 app」「Notion 替代品」。返回按相关度排序的产品卡片,含 slug / tagline / 所属主理人。

【只管产品】找「人」(能提供某种价值的主理人)用 search_people;搜需求用 search_needs。

【机制】关键词 + 向量(阿里云百炼 text-embedding-v3)双路并行召回后 RRF 融合,另有 LLM 查询扩展 / 精排,各步可自动降级。结果里的 mode 一般为 hybrid。

【常见 pitfall】问 "什么是独行录"、"如何注册" 这种 meta 问题不要用本工具,那是站点介绍不在数据里。

ParametersJSON Schema
NameRequiredDescriptionDefault
qYes搜索查询,自然语言或关键词
limitNo返回条数,默认 12,最多 30

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly/idempotent/non-destructive behavior, so the description's burden is lower. It adds useful behavioral context beyond annotations: the hybrid retrieval mechanism ('关键词 + 向量...RRF 融合'), auto-degradation ('各步可自动降级'), and the expected 'mode 一般为 hybrid' field. However, it does not detail error responses or edge cases like 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is organized into four labeled blocks, front-loading when-to-use and sibling differentiation before mechanism and pitfalls. It is somewhat longer than strictly necessary, but every section earns its place and the structure makes it easy for an agent to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description compensates by naming return fields (slug/tagline/主理人) and warning against meta queries. The mechanism and sibling routing are covered. A full response shape would be nice, but for a read-only search tool this is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both q and limit already documented. The description reinforces the natural-language intent with examples but adds no new parameter-specific details beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool finds products/works ('用户用自然语言找**产品/作品**时') and describes the return output ('返回按相关度排序的产品卡片,含 slug / tagline / 所属主理人'). It also explicitly distinguishes itself from sibling tools, search_people and search_needs, in the '只管产品' section.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use guidance with concrete natural-language examples, and explicitly routes the agent to alternatives: '找「人」...用 search_people;搜需求用 search_needs'. Additional when-not-to-use guidance comes from the meta-question pitfall ('什么是独行录'、'如何注册'), leaving no ambiguity about scope.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

send_message发消息AInspect

【需要登录】在某个会话里以当前用户身份发一条文字消息。先用 list_my_conversations / start_conversation 拿 conversationId。

【注意】这会真的把消息发给对方——发送前请向用户确认收件人和内容。

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYes消息正文(纯文本)
conversationIdYes会话 id

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only mark it as non-read-only and non-idempotent, but the description goes further by warning that the message is actually delivered to the recipient and instructing the agent to confirm recipient and content before sending. This is exactly the kind of side-effect disclosure needed for a messaging tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two terse, front-loaded sections: prerequisites and action first, side-effect warning second. No redundant words; every sentence adds necessary operational or safety information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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 no output schema, the description covers authentication, prerequisite tools, the action, and the real-world consequence. It is complete enough for an agent to invoke it correctly and safely.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameters have descriptions in the schema. The description only calls content a 'text message' and mentions 'recipient and content' in the confirmation warning, reinforcing but not adding new parameter semantics. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action — sending a text message in an existing conversation as the current user — and names the resource (conversation). This clearly separates it from read_messages and send_share_card, so the tool's role is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It tells the agent the prerequisites: authentication and obtaining a conversationId via list_my_conversations or start_conversation. This establishes the correct call sequence and context. It does not explicitly list when-not-to-use or alternatives, but the prerequisite examples make the intended usage clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

send_share_card转发站内卡片AInspect

【需要登录】在会话里转发一张站内卡片(与 App 聊天里的「名片/需求卡转发」同源):type=owner 转某位主理人的名片(把「我自己的名片」发给对方 = 用 get_my_profile 拿到自己的 id 再转),type=need 转某条需求卡。标题/头图/链接由服务端从库里重建可信快照,不接受自定义内容。

【注意】这会真的把卡片发给对方——发送前请向用户确认收件人和卡片对象。

ParametersJSON Schema
NameRequiredDescriptionDefault
cardIdYes对象 id:owner 传用户 id,need 传需求 id
cardTypeYes卡片类型:owner=主理人名片,need=需求卡
conversationIdYes会话 id

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations do not reveal that this is a real user-visible send, but the description explicitly warns '这会真的把卡片发给对方' and instructs the agent to confirm with the user. It also discloses that the server rebuilds a trusted snapshot and that custom content is rejected, which is material behavior beyond the schema and annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with labeled blocks for login/scope and a user-confirmation warning. Every sentence contributes either usage guidance or behavioral disclosure, with no redundant filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating tool with three required parameters and no output schema, the description covers prerequisites, parameter selection, server-side behavior, and the need for user confirmation. Nothing essential for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds value by mapping cardType to the correct cardId usage and by telling the agent how to obtain the user's own id when forwarding their own profile card, which is not obvious from the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete verb ('转发') and resource ('站内卡片') in a conversation, and enumerates the two card subtypes (owner/need). It also references App-native card forwarding, which clearly distinguishes it from generic messaging tools like send_message.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: requires login, operates in a conversation, and explains how to send different card types, including how to send your own card via get_my_profile. The '不接受自定义内容' clause implicitly rules out send_message or free-form content, though it does not explicitly name the alternative tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_collaboration_task_status回报合作任务进度A
Destructive
Inspect

【需要登录】被指派人可设 TODO/DOING/DONE/DECLINED;只有指派人可设 CANCELLED。DONE/DECLINED 的 note 会作为完成留言/婉拒理由并通知指派人。不能代替他人宣称工作已完成。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 用 list_collaboration_tasks(done=true) 或 get_collaboration_goal(includeClosed=true) 核对。

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNo
statusYes
taskIdYes

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations, the description discloses login requirements, role-based restriction (assignee vs assigner), note side effects where DONE/DECLINED notifies the assigner, and lack of a persistent dedup key. These behavioral details align with destructiveHint=true and idempotentHint=false, with no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense and front-loaded with login and role constraints, then covers side effects, retry safety, and verification. Every sentence adds operational value; there is no filler or repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a state-transition tool with role permissions, notification side effects, and idempotency concerns, the description covers all essential aspects: who can do what, what note does, why retries are unsafe, and how to confirm results. The verification tools are named, which compensates for the absence of an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description carries the burden and compensates well by explaining status semantics per role and the special meaning of note for DONE/DECLINED. It does not explicitly define taskId or note behavior for other statuses, but the most critical parameter semantics are covered.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly identifies the verb (set status), resource (collaboration task), and enumerates specific statuses and role-based permissions. It distinguishes itself from generic sibling tools like update_collaboration_task by focusing on status progression and assignment semantics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly instructs the agent to verify with list_collaboration_tasks(done=true) or get_collaboration_goal(includeClosed=true) after uncertain results or timeouts, and not to auto-retry. It does not directly contrast with update_collaboration_task, but provides clear operational guidance for when to use verification alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_dispatch_outcome反馈安排的真实结果AInspect

【需要登录】对已接受的安排反馈用户告知的结果:HELPFUL 有帮助、OK 一般、NO_REPLY 没回复、NO_SHOW 没聊上、NOT_FIT 不合适。可能完成步骤、安排下一步或补排人,消耗平台 LLM 并可能通知。不要根据已读或时间猜测用户结果。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 用 get_my_dispatch 核对。

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNo
outcomeYes
arrangementIdYes

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnlyHint=false, idempotentHint=false), the description discloses that the call may complete steps, schedule next steps, or re-dispatch people, consumes platform LLM, may trigger notifications, requires login, and has no persistent dedup key so automatic retries risk duplicates. The non-idempotency warning is especially valuable and consistent with 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but logically ordered: auth → purpose → outcome values → side effects → constraints → verification pointer. Every sentence carries operational value; the length is justified by the tool's non-idempotent, side-effectful nature, though it requires careful reading.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a write operation with no output schema, the description covers auth, outcome semantics, side effects, dedup/retry behavior, and verification. Minor gaps: the return value is unspecified and the note parameter's purpose is not explained, but the explicit get_my_dispatch pointer mitigates the return-value gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description carries the full burden and compensates well by translating all five enum values into concrete meanings (有帮助/一般/没回复/没聊上/不合适) and clarifying the arrangementId context. The optional note parameter (maxLength 300) is left unexplained, which is the only gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (反馈/report) and resource (已接受的安排/accepted arrangement), and enumerates all five outcome values with Chinese meanings. This clearly differentiates it from sibling tools like accept_dispatch_arrangement, decline_dispatch_arrangement, and report_dispatch.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly scopes use to accepted arrangements, forbids guessing outcomes from read receipts or time, instructs the agent to query the current value when the outcome is unclear or after a timeout instead of auto-retrying, and names get_my_dispatch as the verification tool. This is explicit routing with both when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_my_chain_position一段话把自己归位到产业链A
Idempotent
Inspect

【需要登录】【何时用】全平台唯一一个「自由文本即写入」的接口,正是 agent 的主场。 用户在对话里刚说完自己在干什么,你把那段话整理成一句 describe 直接提交,LLM 据此推出链位并把他并进链网。App 里这一步要用户自己打开定位页、切到产业链、想一段话再打字。

【组合链】提交成功 → get_chain_anchor 立刻能看到他新的上下游环 → 从环里挑人 get_creator → start_conversation。不传 subjectType/subjectId 就是给「我」归位;给产品归位就传 subjectType=product + 产品 id(必须是我自己的产品,先 get_my_products 拿 id)。

【怎么写 describe】把用户原话整理成「给谁做什么、用什么做、做完交付什么」,5~500 字。别替他编——他没说的上下游不许你加。

【口径/坑】 · 归位记 source='declared':用户拍板的链位钉死,后续系统自动重推不会覆盖它(画像的其它字段照常刷新)。 · 失败分支返回体自带出口,照着念:position_unclear(看不出你在干什么,要补「给谁做什么」,别重试)/ position_relations_unclear(看得出做什么、看不出上下游是谁,要追问「活儿从谁手上接、做完交给谁用」,别重试)/ chain_source_changed(你刚改过资料或产品,原样重提一次即可)/ llm_unavailable(判链位的模型不在,过几分钟再试,别说成描述有问题)。 · 这是一次完整的 LLM 重推,慢且花钱。同一段描述重复提交会被本工具去重(返回 deduped=true),别靠重复调来「催」。 · 归位会改变他在别人产业链视图里的位置——这是对外可见的写操作,不是本地设置。

ParametersJSON Schema
NameRequiredDescriptionDefault
describeYes一段自由文本:我在产业链上是干什么的(给谁做什么、用什么做、交付什么),5~500 字
subjectIdNoproduct 时必给产品 id;user 时留空即可
subjectTypeNo给谁归位:user(默认,就是我自己)| product(我的某个产品)

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as a non-read, idempotent, non-destructive write, and the description adds significant behavioral context: it is a full slow/expensive LLM re-derivation, identical submits are deduplicated (deduped=true), the declared position is pinned and will not be overwritten by later automatic pushes, and it is an externally visible write affecting how others see the user in the chain. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but well-structured with bolded section headers and front-loaded purpose. Every part carries operational information, though some sentences (e.g., the comparison to the app's manual flow) are explanatory rather than directly actionable. It is appropriately sized for the tool's complexity, but slightly less crisp than a minimal high-quality definition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers prerequisites, combination flows, dedup behavior, external visibility, and all named failure branches with response keys and follow-up actions. However, since there is no output schema, the success response shape is left vague—only deduped=true is mentioned. This is a minor gap given the post-success verification path is described, but it prevents a perfect score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds genuine value by teaching how to compose describe ('what you do for whom, with what, delivering what', 5–500 chars, no fabrication) and by adding the rule that product positioning requires one's own product id from get_my_products. This goes beyond the schema, but not drastically enough to warrant a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states this is 'the only free-text-to-write interface' on the platform, takes the user's words, submits them as a describe string, and has an LLM derive the chain position and merge the user into the chain network. It clearly identifies the resource (the user's or own product's chain position) and is fully distinguishable from any sibling tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

An explicit '何时用' (when to use) section opens the description, positioning it as the agent's entry point. It provides a concrete follow-up chain (get_chain_anchor → get_creator → start_conversation), rules for defaulting to 'me' vs. targeting a product, and the prerequisite get_my_products. Failure branches each come with exact next actions and explicit 'don't retry' guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_my_chat_opener写我的自动开场语A
Idempotent
Inspect

【需要登录】【何时用】这是纯文案活,正是 agent 最该替用户干的事:读一遍他的「我能提供什么」和产品,替他写一句像真人说的开场白。

【这句话会自动发出去】别人点「找 TA 聊聊」时,服务端会替你自动发出这一句作为第一条消息(只在新建会话时发一次,不会刷屏)。所以它是一条自动广播通道,不是一条普通私信。

【怎么写】朴素、具体、不做当场能被戳穿的断言。三条硬规矩:① 不写「我懂你想要什么」这类你按按钮那刻根本不知道的话,对方回一句「那你说说」就穿帮;② 不用对仗押韵金句——顺口正是模板和 AI 文案的指纹;③ 说清「我从哪儿看到你的」,这是真的、可验证的,也天然给了对方话头。不许出现任何「我是 AI 助手 / 自动发送」之类的标识(产品口径:这就是他本人说的第一句话)。

【组合链】get_my_card(读 canOffer / 产品)→ 本工具写 → get_my_chat_opener 复核 → 之后 start_conversation 开的每个新会话都会自动带上它。传 null 或空串 = 恢复全站默认。

【口径/坑】 · 上限 120 字,超了报 chat_opener_too_long(400,终态,改短再提)。 · 不许夹联系方式和外链:手机号 / 微信号 / QQ / 邮箱 / http 链接一律拒(chat_opener_has_contact)。这是自动广播面,放开就成了「加我微信卖课」的免费群发口。要换联系方式走双同意的 request_contact_exchange。 · 过敏感词闸(与私信同一把尺),命中报 content_rejected(400,终态,换写法,别原样重试)。

ParametersJSON Schema
NameRequiredDescriptionDefault
openerYes自定义开场语;传 null 或空串 = 恢复全站默认。最长 120 字

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description reveals critical behavior not visible in annotations: the opener is automatically broadcast as the first message in every new conversation, and only once per new session. It also discloses content restrictions (no AI/auto-send markers, no contact links, sensitive-word filtering), maximum length, and terminal error codes. No contradiction with annotations; idempotentHint and openWorldHint align with the described semantics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Though long, the description is tightly organized with clear headers and every section carries operational value. The most important behavior (auto-send, broadcast nature) and hard constraints are front-loaded, and there is no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter setter with no output schema, the description supplies complete context: prerequisites and composition chain, side effects, reset behavior via null/empty, validation limits, error handling, and content policy. Nothing an agent needs to call this correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description goes beyond the schema by providing substantive content rules for the opener value: be concrete, avoid unverifiable claims, avoid template-sounding phrases, mention where you saw the user, and never include AI disclaimers or contact info. This materially helps the agent construct a valid, high-quality parameter value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: writing a personalized automatic opener that is sent as the first message when someone starts a conversation with the user. It differentiates this from get_my_chat_opener (reviewing the current opener) and frames it as a copywriting task, not a generic setter.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

A dedicated '何时用' section explicitly identifies this as a pure copywriting task the agent should perform. The composition chain (get_my_card → set_my_chat_opener → get_my_chat_opener → start_conversation) gives clear workflow guidance, and the description routes contact-information requests to request_contact_exchange, providing an explicit alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_my_preferences设置我的兴趣偏好A
Idempotent
Inspect

【需要登录】设置当前用户的兴趣标签(+ 可选自由描述),用于计算兴趣向量、驱动 personalized_feed 的千人千面排序。一句话即可调教推荐,是个性化读写闭环的写入端。整组替换。

ParametersJSON Schema
NameRequiredDescriptionDefault
freeTextNo一句自由描述(与标签一起 embed),可选
interestsYes兴趣标签(整组替换,最多 20 个)

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotence, and destructiveness; the description adds a crucial non-obvious behavior: the whole interest set is replaced ('整组替换'), not merged. It also discloses the login requirement and that freeText is embedded together with tags. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: login requirement first, then the action, then downstream use, then replacement semantics. A few marketing-style phrases ('一句话即可调教推荐', '千人千面排序') add flavor but are not strictly necessary, keeping it just below a perfect 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity setter with rich schemas and annotations, the description covers auth, purpose, relationship to personalized_feed, whole-group replacement behavior, and optional freeText handling. An output schema is unnecessary for this simple write operation, and no critical information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema already documents both parameters with 100% coverage, so the baseline is 3. The description adds meaningful semantics: interests are replaced as a whole set, freeText is embedded with tags, and the interaction with personalized_feed is clarified. This goes beyond what the schema alone provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description names a specific verb '设置' and resource '当前用户的兴趣标签', plus optional free text, and explains its downstream effect on personalized_feed ranking. This clearly distinguishes it from its read counterpart get_my_preferences.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states it requires login and positions the tool as the write side of the personalization loop that drives personalized_feed, so an agent can infer when to invoke it. It does not explicitly mention get_my_preferences as the read alternative or state exclusions, so it falls just short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_my_role_profile更新我的多角色画像A
Idempotent
Inspect

【需要登录】【何时用】用户在对话里透露了角色信息就顺手写进去:在融资(轮次/金额/要求)、我是投资人(类型/关注轮次/单笔规模/赛道)、我代表机构(园区/赛事/企服,能给什么资源)、我是来找人的媒体/HR/采购/合作方、我还在上学、我的创业阶段变了。这些字段决定他出现在首页哪个 tab、被谁搜到。

【组合链】写完 fundraising.active=true → 他就进了 list_funding(side=project) 的池子,可以马上 list_funding(side=investor) 找对口的钱 → get_creator → start_conversation。写完 investor → 反过来出现在别人的 list_funding(side=investor) 里。venture.stage 改完 → get_my_positioning 会给出这一级的新任务清单。

【口径/坑】 · 本工具已做好逐字段合并:只传你确知的那几个字段即可,没传的老值原样保留。(服务层本身是「顶层键整体替换」,直传 fundraising:{round:"A"} 会把 amount/requirements/BP 一次抹掉——这里先读后并挡掉了这个坑。) · 想清空某个字段:传空字符串或跟用户确认后整棵子树重传,不要靠不传来清空。 · venture.stage 走特殊路径:它同时是定位栏的主线阶段,本工具会调专门的写入口(传 null = 撤销自报,系统当场重判一次并把判词带回来)。取值:idea(找想法) | build(开发产品) | launch(产品上线) | revenue(有收入) | profit(有盈利)。 · 主办方资料(orgName/联系人/联系电话)不在这里,本工具写不了也不该写:那是唯一一条带短信验证码的通道,绕过它就是让 agent 能冒名办活动。用户要改主办方资料,请他去 App 里改。 · 自由文本会出现在公开卡片上(等同 UGC 广播面),过敏感词闸,命中报 content_rejected。 · 返回的是变更回执:哪几棵子树被合并了、合并前后各是什么。念给用户听,别只说「已更新」。

ParametersJSON Schema
NameRequiredDescriptionDefault
orgNo机构身份。type 必须有(新建时必给):park(园区) | competition(赛事主办) | service(企业服务);resources 是**字符串数组**(工位/注册地址/政策补贴/算力…),不是一段话
seekerNo来找主理人的那批人:kind = media(媒体) | recruiter(招人) | buyer(采购) | partner(找合作) | other(其它);lookingFor 想找什么、purpose 办成什么事、org 所属机构名(≠自有公司)、timeline 什么时候要
ventureNo创业阶段(同时就是定位栏主线阶段,走专门的写入口)
aspiringNo在校/待入行:education 一句话经历、weeklyHours 每周可投入、gigWilling 愿不愿先接活
investorNo投资人身份。type 必须有(新建时必给):individual(个人投资人) | corporate(产业投资) | institution(投资机构);rounds/sectors 是字符串数组
fundraisingNo融资情况。active=是否在融资(新建这棵子树时必须给);round/amount/requirements 都是自由文本;bpUrl 是已上传的 BP 文件地址
needsOfficeNo主理人:需要办公/注册地址
needsGigHelpNo主理人:需要兼职帮手

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, it discloses login requirement, field-level merge semantics (read-then-write prevents clobbering), how to clear fields, the special venture.stage path and null behavior, sensitive-word gate with content_rejected, and the change receipt returned. None of this is visible in annotations or schema, and it substantially reduces surprise for a mutating tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long, but it is front-loaded with the 'when to use' section and organized into labeled blocks. Each dense caveat (merge, clearing, venture special path, organizer exclusion, content gate, receipt) earns its place for a tool with 8 nested parameter objects and no output schema; a little redundancy with schema enum lists is the only cost.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex multi-subtree mutation with zero required parameters, no output schema, and several non-obvious behaviors, the description covers the essential operating contract: prerequisites, semantics, error on content rejection, return value and how to present it, and exclusions. An agent has enough to call it correctly and explain the result to the user.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaning on top: which subtrees map to which role, that fundraising.active=true puts the user into list_funding matching, and that venture.stage null means 'withdraw self-report and trigger system re-judgment'. This is genuinely useful semantics not inferable from the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete action — update the user's multi-role profile — and enumerates the exact role fields it covers (fundraising, investor, org representative, seeker, student, venture stage) plus the effect on tabs and search visibility. This is specific enough to distinguish it from siblings like update_my_profile or set_persona without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit trigger ('when the user reveals role info in conversation, write it in'), enumerates the role scenarios, and states a hard exclusion: organizer data is not writable here because it belongs to the SMS-verified channel. The combination-chain section even shows what to call after writing fundraising or investor state, which is more than enough routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_notification_prefs设置我的通知偏好A
Idempotent
Inspect

【需要登录】更新当前用户的通知开关(只传想改的,其余保持不变)。

ParametersJSON Schema
NameRequiredDescriptionDefault
dmsNo私信推送
dropsNo新品播报
nudgeNo未读私信的邮件/短信触达提醒
followsNo新增关注通知
matchesNo新需求与我价值匹配时的撮合推送
activitiesNo活动通知

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds '需要登录' (login required) and the partial update semantics ('只传想改的,其余保持不变'), both of which are useful behavioral context not present in annotations. It does not contradict the idempotentHint or readOnlyHint annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence delivers the login requirement, the action, the target resource, and the partial-update behavior with no filler. The most critical information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is sufficient for a simple setter with six optional booleans: it covers the operation, authentication need, and update semantics. No output schema exists, but for an idempotent boolean-toggle update, this is acceptable and leaves little ambiguity for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents each boolean parameter's meaning clearly. The description adds the important partial-update behavior, but it does not further elaborate individual parameter semantics, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a specific verb ('更新') and resource ('当前用户的通知开关'), making it clear this tool updates notification preferences for the current user. This distinguishes it from sibling read tools like get_notification_prefs and broader preference tools like set_my_preferences.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies when to use the tool: when the agent needs to modify the current user's notification switches. It provides context through the '当前用户' scope and partial-update behavior, though it does not explicitly name alternatives or when-not-to-use scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_persona设置我的身份A
Idempotent
Inspect

【需要登录】设置当前用户的身份 / 来意 persona。可选:GENERAL_PUBLIC(随便看看)/ FOUNDER(发布项目)/ INVESTOR(投资)/ MEDIA(观察趋势)/ RECRUITER(招聘)/ SERVICE_BUYER(买服务)/ PARTNER(谈合作)/ OTHER(其它,需填 personaOther)。

【多重身份】可同时是多个身份(如 主理人+投资人):persona 是主身份,personas 传全部身份。注意:这是整组替换——不传 personas 会把用户已设的多重身份收缩成单身份,改之前先用 get_my_profile 看现状。

【创业者分叉】persona=FOUNDER 时可顺带传 creatorType(创造者类型),驱动默认产品分类与后续填写提示;非创业者忽略。

ParametersJSON Schema
NameRequiredDescriptionDefault
personaYes
personasNo全部身份(多重身份,自动含主身份并去重);不传 = 收缩为仅主身份
creatorTypeNo创造者类型(persona=FOUNDER 时建议带上),取值:INDIE_DEV(独立开发者) | AI_BUILDER(AI 应用 / Agent 开发者) | GAME_DEV(独立游戏开发者) | CREATOR(自媒体 / 创作者) | DESIGNER(独立设计师 / 插画师) | RESEARCHER(独立研究者 / 民间高手) | CONSULTANT(独立咨询 / 自由专家) | PHOTOGRAPHER(独立摄影 / 写真 / 跟妆) | BRAND_MAKER(独立品牌 / 手作 / 主理人) | HARDWARE(独立硬件 / 机器人) | OTHER(其他创造者)
personaOtherNopersona=OTHER 时必填的自定义身份

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, it discloses the replacement semantics (整组替换), warns that omitting personas collapses multiple identities to a single one, and clarifies the conditional creatorType behavior. This is valuable context about side effects that annotations alone do not provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, organized into three labeled sections, and front-loads the core purpose and the most important replacement warning. No sentence is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a conditional 4-parameter setter with no output schema, the description covers login requirements, option meanings, multi-identity semantics, the risky edge case, and conditional field guidance. An agent has enough to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds Chinese meanings to enum values, explains that personas automatically includes and dedupes the primary persona, and explains when personaOther and creatorType are needed. However, it omits PRODUCT_BUYER and BROWSER from its option list even though the schema includes them, leaving a small completeness gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action and resource: setting the current user's identity/intent persona, and enumerates the meaningful option values. This differentiates set_persona from sibling profile/preference setters by naming the unique persona concept.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides practical conditions: login is required, creatorType is only relevant for FOUNDER, and it explicitly tells the agent to call get_my_profile first to avoid shrinking existing multi-identity settings. It stops short of naming alternative setter tools, so it earns a 4 rather than a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_product_status上架/下架我的产品A
Idempotent
Inspect

【需要登录】把我的产品在「已发布 ⇄ 已下架」之间切换(仅这两个状态互切,其余状态由系统管理)。先用 get_my_products 拿 productId 和当前 status。

ParametersJSON Schema
NameRequiredDescriptionDefault
statusYes目标状态
productIdYes产品 id

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark readOnlyHint=false, idempotentHint=true, destructiveHint=false. The description adds that login is required, that only PUBLISHED/ARCHIVED transitions are allowed, and that other statuses are system-managed. It does not contradict any annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the auth note, then the action and constraint, then the prerequisite. No filler; every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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, the description plus annotations cover auth, state constraints, idempotency/safety, and how to obtain both inputs. Nothing essential is missing 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.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for both parameters, so baseline is 3. The description adds meaning by saying productId must come from get_my_products (ownership context) and that status must be one of the two allowed states, which is helpful beyond the bare schema labels.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses a specific verb ('switch/publish/unpublish') and resource ('my product') and narrows the operation to exactly two states, PUBLISHED ⇄ ARCHIVED. This distinguishes it from broader siblings like update_my_product and set_collaboration_task_status without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides a clear prerequisite: call get_my_products first to obtain productId and current status, and states login is required. It does not explicitly name alternatives or exclusion conditions, but the 'only these two states' constraint implicitly scopes when to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

skip_dispatch_step跳过已自行完成的安排步骤A
Destructive
Inspect

【需要登录】用户明确表示这步自行搞定/不再需要时跳过,终结该步骤未接受建议并推进后续步骤,可能触发平台 LLM 排人。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 用 get_my_dispatch 核对。

ParametersJSON Schema
NameRequiredDescriptionDefault
stepIdYes

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds valuable behavioral context beyond the annotations: login is required, skipping may trigger platform LLM staffing, and there is no persistent deduplication key. It explains the destructive nature by saying the step's unaccepted suggestion is terminated and later steps are advanced, consistent with destructiveHint=true and 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences carry all essential information: trigger condition, effect, side effect, retry guidance, and verification path. The content is front-loaded with the login requirement and usage condition, with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given a single parameter, no output schema, and a destructive mutation, the description covers the important operational concerns: when to act, what changes, what may be triggered, how to handle ambiguity, and how to verify. Enough is provided for an agent to call the tool safely.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, stepId, is not described at all in the description, and schema description coverage is 0%. The phrase 'this step' is too generic to explain where stepId comes from, what identifiers are valid, or how it maps to a dispatch step.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: skip a dispatch step when the user explicitly says they will handle it themselves or no longer need it. It also explains the effect: ending the unaccepted suggestion and advancing subsequent steps, which distinguishes it from accept/decline dispatch actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit when-to-use condition: only when the user clearly indicates they will handle the step themselves or no longer need it. It also provides cautionary guidance: after an unclear result or timeout, query current state first, do not auto-retry, and use get_my_dispatch to verify.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_conversation发起会话A
Idempotent
Inspect

【需要登录】与某位用户开启 1-1 私信会话(已存在则返回原会话,幂等)。可选 productId 标记围绕哪个产品咨询。不能和自己开会话。先用 get_creator / search_people 拿对方 userId。

【返回】conversation(含 id)+ created(这次是不是新建的)+ openerSent(服务端是否已自动替你递了开场语)+ opener/openerKind(你设过自定义开场语就带原文 kind=custom;没设时服务端按对方的产品现生成一句,kind=product/generic,原文不回传,别编)。created=true 且 openerSent=true 时对方已经收到你的开场语了,别再重复问一遍好——接着说正事即可。开场语内容用 get_my_chat_opener 看,改用 set_my_chat_opener。

【每日开场额度】只有新建会话才占额度(回复老会话、别人来找你都不占)。撞上限时返回 429 chat_quota_exhausted,且返回体里直接带出口(额度实况 / 引荐短链与话术 / 积分兑换报价)。那不是临时故障,今天的额度不会自己回来,不要退避重试——照返回里的 exits 跟用户说清楚。

ParametersJSON Schema
NameRequiredDescriptionDefault
productIdNo可选,围绕哪个产品的咨询
peerUserIdYes对方用户 id(cuid)

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, it reveals login requirements, server-side automatic opener sending, the created/openerSent semantics, and that opener text is not returned when generated server-side. It also discloses the exact 429 behavior and directs the agent not to treat it as a transient failure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Although the description is long, it is well-organized into labeled sections, and every sentence carries operational weight. The formatting makes dense details like return semantics, quota rules, and related tools easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description takes on the responsibility of explaining return values and does so thoroughly: conversation id, created, openerSent, opener/openerKind. It also covers quota errors, the exits payload, and related tools, making it complete for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully describes both parameters, so the baseline is 3. The description adds useful context: peerUserId must come from get_creator/search_people, cannot be the agent's own user, and productId marks which product the conversation is about.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific action: starting a 1-1 private conversation with a user, and immediately clarifies idempotency (returns existing conversation) and the optional productId. This clearly distinguishes it from siblings like get_conversation, send_message, and set_my_chat_opener.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly tells the agent to obtain peerUserId via get_creator/search_people, forbids self-conversations, and explains quota consumption only applies to newly created conversations. It also gives a clear when-not-to-retry instruction for the 429 quota-exhausted case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

submit_signup提交报名A
Idempotent
Inspect

【需要登录】【何时用】用户说「帮我报这场」时调它。只传这次要新填/要改的答案即可:handler 自己会先读一遍我在这场活动的全部现值(上一版提交 + 跨表单复用的资料覆盖层 + 主页/公司/产品推导),打上你的补丁后提交全集

【组合链】get_signup_activity(slug) 看 viewer.missingRequired → 照 label/hint/options 问用户 → 本工具 answers=[{key,value}] 提交 → 返回的 submission.reviewStatus 之后用 list_my_signups 跟进。撞「已截止」时返回体自带还能报的替代场次(照 exits[].detail.alternatives 里的 slug 再走一遍 get_signup_activity)。

【口径/坑】① 省略 ≠ 清空:这是 agent 通道相对客户端的刻意差异——客户端有确认页(用户亲眼看着自己清掉了微信号),agent 没有,所以这里不继承服务层「传了 answers 就以 answers 为全集、没传的一律置空」那条语义。要真的清空某题,把 key 放进 clearKeys(它会连跨表单复用层里那一行一起删掉——否则下次报别的表又会被解析回来;文件行不删)。② type=file 的附件题(BP/营业执照)agent 传不了,会被整键省略以保住用户此前传过的文件——绝不许把文件名或一个链接当答案填进去。③ 合并后仍缺必填项时不会提交,直接返回 error=missing_required_fields + 逐条「要问用户什么」,把这些问完再调一次。④ 返回 delivery.kind='webview' 时报名还没投到主办方源站,站内只存了留资和代填答案——此时逐字禁止对用户说「已报名成功」,必须说「站内已留档,还要在主办方表单上完成提交」,并把 delivery.url 给他。⑤ 重新提交会以合并后的全集覆盖上一版。证件号这类敏感题的明文是加密存的、读不回来:上一版填过而这次没给值时会直接拒绝提交(sensitive_answer_would_be_wiped),因为提交上去就会把它覆盖成空且不可恢复——按返回里的 exits 让用户重说一遍,或者明确不要了就放进 clearKeys。⑥ channel 恒为 'agent',主办方在报名单里看得见这笔是 agent 代提的。

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes活动 slug
answersNo这次要新填/要改的答案。没传的题**不会被清空**(自动沿用现值)
clearKeysNo要显式清空的题目 key(用户明说「把微信号删掉」才用;不传就一个都不清)

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the sparse annotations, it discloses the merge/read-current semantics, 'omission ≠ clear', clearKeys deleting the cross-form reuse row, sensitive answers being unreadable, webview meaning not yet submitted to the source site, and the fixed channel='agent'. No contradiction with readOnlyHint=false, idempotentHint=true, or destructiveHint=false is apparent; destructive clearing is explicitly limited to clearKeys.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but tightly structured into labeled sections and numbered pitfalls, with the trigger front-loaded. Every sentence carries a distinct operational constraint, so the length is justified by the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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-behavior burden and does so thoroughly: error=missing_required_fields, sensitive_answer_would_be_wiped, delivery.kind='webview' plus required user-facing wording, delivery.url, submission.reviewStatus, and exits[].detail.alternatives are all covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Even though schema coverage is 100%, the description adds meaning: answers are a delta patch rather than the full set, clearKeys is the only way to clear and also deletes the reuse-layer row, and sensitive fields behave specially. This is exactly the semantic context an agent needs to construct correct arguments.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific trigger ('用户说「帮我报这场」时调它'), the action (submit the merged full answer set for an activity), and places it in a chain with get_signup_activity and list_my_signups. This clearly distinguishes it from the many signup-related siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit when-to-call condition, a recommended sequence (get_signup_activity → ask user → submit → follow up via list_my_signups), and explicit exclusions: file-type answers cannot be submitted, missing required fields must not be submitted, and webview delivery must not be reported as success.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

track_event上报追踪事件AInspect

【需要登录】上报一个追踪事件(点击 / 浏览 / 分享 / 下载 等)。targetType + targetId 决定目标对象,type 是动作。

【常见用法】当 agent 帮用户完成「分享某产品」「点开某主理人主页」时记一笔,让推荐算法更准。

【type 例】 view | click_link | share | download | follow

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYes事件类型,例 view/click_link/share/follow
metadataNo附加 metadata,自由字段
targetIdYes目标对象 id
targetTypeYes目标对象类型

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds the auth requirement “需要登录” and explains the downstream effect (“让推荐算法更准”), which are useful beyond the annotations. It does not contradict the annotations, and for a simple event-reporting tool the safety profile is already covered by readOnlyHint=false, idempotentHint=false, and destructiveHint=false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and well organized with three labeled sections:【需要登录】【常见用法】【type 例】. The core definition is front-loaded, and every sentence serves a purpose with no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a moderate-complexity tool with 4 parameters and no output schema, the description covers auth, usage context, parameter roles, and type examples. The main gap is that it does not describe the response or error behavior, but this is a fire-and-forget tracking event, so the provided context is largely sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds relationship semantics by stating “targetType + targetId 决定目标对象,type 是动作”, which clarifies how the parameters combine, and gives concrete type examples. This adds value beyond the individual schema descriptions, though metadata is not discussed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a concrete verb and resource: “上报一个追踪事件”, followed by specific event types (view/click_link/share/download/follow). The usage note “记一笔,让推荐算法更准” makes clear this is a telemetry/logging tool rather than the actual action tools like follow_creator or send_share_card, so it is well differentiated from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The【常见用法】section gives an explicit trigger: when the agent helps the user complete actions like sharing a product or opening a creator profile, record the event to improve recommendations. This is clear when-to-use guidance, but it does not state when not to use the tool or name alternative tools, 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.

unblock_user取消拉黑A
DestructiveIdempotent
Inspect

【需要登录】取消对某用户的拉黑。幂等:未拉黑时也返回 ok。

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes要取消拉黑的用户 id

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag destructive, idempotent, and non-read-only behavior. The description adds meaningful context beyond those flags: login is required, and the operation returns ok even if the user was not blocked. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no filler. The login requirement is front-loaded, and the idempotency behavior is stated efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with no output schema, the description covers auth requirements, the core action, idempotency, and the return value. It could be slightly more complete by explicitly naming block_user as the counterpart or addressing invalid-user behavior, but the low complexity makes this nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the schema already documents userId as '要取消拉黑的用户 id'. The description does not add anything new about the parameter beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('取消对某用户的拉黑' - unblock a user) with a clear target resource. This unambiguously distinguishes it from block_user and other user-related mutation tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage context is implied: use this tool to undo a block on a user, especially as the counterpart to block_user. However, the description does not explicitly name alternatives or state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unfollow_creator取关主理人A
DestructiveIdempotent
Inspect

【需要登录】取消关注某位主理人。幂等:未关注时也返回 ok。

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes目标用户 id(cuid)

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal destructive and idempotent behavior, and the description adds concrete value by specifying that the operation returns 'ok' even if the user was not following the creator. It also notes the login requirement, which is useful behavioral context 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence that communicates login requirements, the operation, and a key idempotence guarantee with no filler. Every part earns its place and the most important information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with one simple parameter, no output schema, and annotations covering destructive/idempotent behavior, the description is complete. It covers authentication, core action, and edge-case behavior, leaving no critical gap 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.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the sole parameter userId is already well-described in the schema as the target user's cuid. The description adds no additional parameter-level detail, so it meets the baseline but does not go beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('取消关注' / unfollow) and a specific resource ('主理人' / creator), making the tool's purpose immediately obvious. It also naturally distinguishes itself from sibling tools like follow_creator and unfollow_product without any ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly notes that login is required, which is a concrete usage precondition. It does not explicitly name alternatives or exclusions, but the intent to unfollow a creator is clear enough that an agent can determine when to invoke it versus follow_creator or block_user.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unfollow_product取关产品A
Idempotent
Inspect

【需要登录】【何时用】用户说「这个不用留着了」。

【组合链】get_my_card 看当前关注了哪些 → 本工具取关。

【口径/坑】幂等,本来就没关注也返回成功(不报错)。对方永远看不见你关注过或取关过。

ParametersJSON Schema
NameRequiredDescriptionDefault
productIdYes产品 id(cuid)

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations, the description adds valuable behavioral details: it requires login, is idempotent and returns success even if the product was not followed, and the privacy guarantee that the target user cannot see follow/unfollow actions. These are non-obvious and materially affect agent expectations. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, clearly sectioned, and front-loads the signal and trigger condition before the usage chain and caveats. Every sentence contributes distinct information with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter mutation tool with no output schema, the description covers the trigger, prerequisite data source, idempotency behavior, auth requirement, and privacy implications. Nothing needed for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully documents the single parameter productId with type and a brief description ('产品 id(cuid)'), so schema coverage is 100%. The description adds that productId can be obtained from get_my_card, which is mildly useful context but not essential, so a baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('本工具取关', unfollow) and the resource (product), aided by the title '取关产品'. It also grounds the use case with a concrete user utterance ('这个不用留着了'), which disambiguates it from sibling tools like unfollow_creator.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The '【何时用】' section explicitly states when to trigger the tool, and the '【组合链】' gives a practical workflow (get_my_card → unfollow_product). It does not explicitly name alternatives or exclusions, but the product-focused wording and sibling set make the target scenario clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unpublish_need下架我的需求A
Idempotent
Inspect

【需要登录】把自己的需求移出信息流(状态与接洽不变、不删除)。需求不会因被接洽或时间流逝自动下架,想暂时不展示就用它。之后可用 reopen_need 免费重新展示,两者成对可反复切。

【失败语义】非本人 403 not_your_need;已取消/完成 409 need_closed。

ParametersJSON Schema
NameRequiredDescriptionDefault
needIdYes需求 id

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations only provide readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description goes far beyond that by disclosing the login requirement, the exact side effects (removed from feed, status/contact unchanged, not deleted), the lack of auto-unpublishing, and explicit failure semantics (403 not_your_need, 409 need_closed). This is highly transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and well-structured with labeled sections 【需要登录】 and 【失败语义】. It front-loads the core purpose and effect, then provides the usage trigger and failure modes. Every sentence contributes operational value with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, state-changing tool with no output schema, the description covers prerequisites, side effects, lifecycle pairing with reopen_need, and failure cases. An agent has everything needed to decide when to call it and what to expect, with no significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% but the only parameter description is '需求 id'. The tool description adds useful semantics: the needId must belong to the caller (自己的需求; 非本人 403) and cannot reference a cancelled/completed need (409 need_closed), which goes beyond the bare schema description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: '把自己的需求移出信息流' — removes one's own need from the feed — and clarifies it does not delete or change status/contact. It explicitly distinguishes itself from delete_need and pairs with reopen_need, so an agent can easily tell it apart from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use guidance: '想暂时不展示就用它' (use when you want to temporarily stop showing it) and notes that needs do not auto-unpublish by contact or time, strengthening the case for using it. It names reopen_need as the alternative for re-display, but does not explicitly state 'do not use for permanent deletion' aside from the behavioral note '不删除'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_activity编辑我的活动A
Idempotent
Inspect

【需要登录】改我办的活动的本体信息(先过后审:立即生效;slug/type 不可改)。先用 list_my_activities 拿 activityId。

【分工——别调错】活动本体(标题/介绍/时间/地点/长图/封面)走这里;报名表单与报名方式走 update_organizer_signup_config。

【红线:截止时间只能往后不能往前】把 registrationDeadline 改早,会把正在填的人当场挡在门外,且已开始填的草稿全部作废。用户要「提前截止」时先跟他确认清楚这一点。

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNo城市,报名 feed 的筛选维度
endAtNoISO 8601
titleNo
meetUrlNo
startAtNoISO 8601
capacityNo
coverUrlNo
locationNo
productIdNo
activityIdYes活动 id
posterUrlsNo活动长图(竖图详情页),最多 9 张,按顺序展示。只收已有 URL——要传本地图先用 upload_image_from_url 镜像
descriptionNo
organizerNameNo主办方署名(报名页「主办方」那一行)。联合主办/承办单位写全;传 null 或空串 = 那一行不再显示
registrationDeadlineNoISO 8601。只能往后改,往前改等于提前封口

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this a mutating, open-world, idempotent write, so the description adds beyond them: login requirement, policy timing (先过后审:立即生效), immutability of slug/type, and the critical conditional side effect that moving registrationDeadline earlier blocks in-progress submitters and voids their drafts. Disclosing a destructive parameter-side-effect inside a tool annotated destructiveHint=false is exactly the kind of contextual value that earns credit, not a contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three labeled sections (需要登录 / 分工 / 红线) front-load prerequisites, position the sibling-routing warning immediately after the core function, and isolate the danger warning last. Every sentence carries operational weight and the bold markers make boundaries scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 14-parameter mutation with no output schema, the description covers the invocation essentials: auth, how to obtain activityId, what is and is not editable, which sibling owns the other field family, and the one parameter with harmful side effects. Minor gaps: return/error behavior is unstated, and the organizer-ownership precondition is implied by '我办的活动的' rather than stated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 50% schema coverage, the description partially compensates by mapping field families (标题/介绍/时间/地点/长图/封面) to the tool's 本体信息 scope — telling the agent which parameters belong here vs. the sibling — and by expanding registrationDeadline's meaning beyond the schema's one-liner with concrete consequences (blocks people, voids drafts). Gaps remain: meetUrl, capacity, and productId have no semantic explanation in either the schema or the description, and startAt/endAt only receive a '时间' family grouping.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence states a specific verb+resource: '改我办的活动的本体信息' (edit the core info of my organized activities), then enumerates the covered fields (标题/介绍/时间/地点/长图/封面) and the exclusions (slug/type 不可改). This sharply scopes the generic title and distinguishes the tool from the closest sibling without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when/when-not routing: '活动本体…走这里;报名表单与报名方式走 update_organizer_signup_config' names the alternative and the condition selecting it, under the header 【分工——别调错】. It also states the prerequisite workflow '先用 list_my_activities 拿 activityId'. Nothing is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_collaboration_goal更新独行录合作目标A
Destructive
Inspect

【需要登录】发起人更新目标标题、意图、截止或状态 ACTIVE/COMPLETED/ARCHIVED。归档后目标不再出现在默认待办。省略保留,intent/dueAt=null 清空。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 用 get_collaboration_goal 核对。

ParametersJSON Schema
NameRequiredDescriptionDefault
dueAtNo截止时刻 ISO 8601,须含时区;null 清空,省略保留现值
titleNo
goalIdYes
intentNo
statusNo

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the destructive and non-idempotent annotations, the description discloses omitted fields are retained while intent/dueAt=null clears them, and archiving removes the goal from the default todo. It also warns that there is no persistent request deduplication key, so retries must be preceded by a query. This is substantial operational context 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every clause adds value: auth requirement, target fields, status enum, retention/clearing semantics, archive side-effect, and retry guidance. It is front-loaded with the main action and places operational caveats at the end. No filler or redundant phrasing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, non-idempotent mutation with no output schema, the description covers who may call, what fields may change, side-effects of archiving, and how to handle ambiguous results by querying get_collaboration_goal. The only minor gap is the lack of an explicit success response shape, but the verification guidance mitigates this absence.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With schema description coverage at only 20%, the description compensates by enumerating updateable fields and clarifying the omitted-vs-null distinction for intent and dueAt. The status enum values are repeated, reinforcing allowed values. goalId's role as identifier is implicit from the schema's required field, so it does not need further explanation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action: the initiator updates the goal's title, intent, deadline, or status, and lists the exact statuses (ACTIVE/COMPLETED/ARCHIVED). It clearly differentiates from create_collaboration_goal (creation) and get_collaboration_goal (reading) among siblings. The editable fields and actor are explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: login is required, only the initiator may call it, and the post-update behavior (query current value, do not auto-resend, no dedup key) is specified. It does not explicitly compare this tool to update_collaboration_task or create_collaboration_goal, but it does name get_collaboration_goal for verification, providing partially explicit routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_collaboration_task更新合作任务内容或指派A
Destructive
Inspect

【需要登录】更新任务标题、描述、截止;换被指派人需要指派权限且可能通知新负责人。权限由服务校验,省略保留,detail/dueAt=null 清空。状态用 set_collaboration_task_status。结果不明或超时后先查询现值,不要自动重发;服务没有持久请求去重键。 用 get_collaboration_goal 核对任务。

ParametersJSON Schema
NameRequiredDescriptionDefault
dueAtNo截止时刻 ISO 8601,须含时区;null 清空,省略保留现值
titleNo
detailNo
taskIdYes
assigneeIdNo

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds substantial behavior beyond annotations: omitted fields are preserved, null clears detail/dueAt, assignee reassignment may notify the new assignee, permissions are service-validated, and there is no persistent dedupe key. This aligns with destructiveHint and idempotentHint and provides important operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact but dense, with each sentence delivering operational guidance. It front-loads the login requirement and scope, then covers parameter semantics, sibling routing, and failure handling without repetition or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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, the description covers prerequisites, permission nuances, field update semantics, alternative tool routing, timeout handling, and verification strategy. It is unusually complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With only 20% schema coverage, the description compensates strongly: it explains that omission preserves values, null clears detail/dueAt, and assigneeId changes require assignment permission and may trigger notification. This directly clarifies the most ambiguous parameter behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool updates task title, description, due date, and assignee, and it names set_collaboration_task_status as the sibling for status changes. This gives a specific verb+resource and clearly differentiates from related tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides explicit routing: status changes go to set_collaboration_task_status, and verification uses get_collaboration_goal. It also covers login requirements, permission checks, and post-timeout behavior with clear guidance not to auto-retry.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_my_company更新我的公司A
Idempotent
Inspect

【需要登录】更新当前用户名下的公司主页(按 ownerId upsert,所有字段可选但仍要满足 schema:传 slug/name 时格式校验)。先用 get_my_company 读现状。slug 被别人占用会报 slug_taken。

【发布】先过后审:立即生效,后台异步风控审计。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo公司 / 工作室名称
sizeNo团队规模,可选:SOLO(一人公司) | SIZE_2_5(2-5 人) | SIZE_6_10(6-10 人) | SIZE_11_50(11-50 人) | SIZE_50_PLUS(50 人以上)
slugNo公司主页 URL 标识,小写字母/数字/连字符,全局唯一
logoUrlNoLogo 图 URL,可选
taglineNo一句话定位,可选
locationNo所在地,可选
websiteUrlNo官网 URL,可选
descriptionNo详细介绍:在做什么、为谁做、进展,越详细内容质量越高
foundedYearNo成立年份,可选

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds substantial behavior beyond annotations: login requirement, ownerId-based upsert, schema validation on optional fields, slug conflict error, and especially the publish flow ('先过后审:立即生效,后台异步风控审计'). This gives the agent real operational expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly structured paragraphs with no filler. The most important facts—login, upsert, pre-read, validation, error, and moderation—are all included in a compact, scannable format.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description covers the critical operational context: who it affects, how upsert behaves, what to do first, a known error, and the post-moderation publishing model. This is complete enough for an agent to safely invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema description coverage, the schema already documents parameters. The description adds useful extra meaning: all fields are optional but validation still applies, and slug conflicts surface as slug_taken. This goes slightly beyond the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a specific action ('更新当前用户名下的公司主页') with clear resource and owner scoping ('当前用户名下', '按 ownerId upsert'). It distinguishes itself from generic company tools by clarifying upsert semantics rather than just 'update'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clearly instructs the agent to call get_my_company first to read current state, and documents the slug_taken error condition. It implies when-not-to-use by restricting to the current user's own company, but does not explicitly contrast with create_company as an alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_my_product更新我的产品A
Idempotent
Inspect

【需要登录】更新当前用户名下某个产品(仅本人可改)。先用 get_my_products 拿 productId。所有字段可选,只传想改的;links 传则整组替换。

【发布】先过后审:立即生效,后台异步做风控审计,不卡审核。注意:编辑会把已下架(ARCHIVED)产品重新发布上架——只想改内容不想上架的,改完再用 set_product_status 下架回去。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
slugNo
tagsNo
linksNo整组替换全部链接
galleryNo
logoUrlNo
taglineNo
categoryNo产品分类,取值:SAAS(SaaS / 微 SaaS) | APP(App) | MINI_PROGRAM(小程序) | AI_AGENT(AI 工具 / 智能体 / 数字人) | DEV_TOOL(开发者工具 / API / 开源 / 插件) | GAME(独立游戏) | CONTENT(自媒体 / 播客 / 视频 / Newsletter) | DESIGN(设计 / 插画 / 创意) | DIGITAL_GOODS(模板 / 素材 / 课程 / 数字下载) | SERVICE(服务 / 咨询) | PHYSICAL(实体 / 手作 / 主理人 / 硬件) | COMMUNITY(社群 / 会员) | OTHER(其他)
coverUrlNo
productIdYes产品 id(cuid),从 get_my_products 拿
descriptionNo

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the annotations by disclosing a major non-obvious side effect: editing an ARCHIVED product will re-publish it to live. It also explains the publishing model (immediate effect with async risk-control audit, no blocking review), which is essential behavioral context for an agent deciding whether to invoke 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact labeled sections with high information density. The critical warnings are bolded and front-loaded, and there is no filler or repetition of schema constraints beyond what is genuinely useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 11-parameter PATCH-style mutation with no output schema, the description covers auth, ownership, ID acquisition, partial-update semantics, links group replacement, the publishing side effect, and the remediation path via set_product_status. Nothing essential for safe invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 27%, so the description carries real weight. It adds the critical PATCH-like semantics ('只传想改的') and the replacement behavior for links. It does not detail every field, but most remaining fields are self-explanatory by name and constraints are visible in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: '更新当前用户名下某个产品(仅本人可改)', clearly identifying it as an update/change operation on the caller's own product. It also names get_my_products as the source of productId, further distinguishing the workflow from sibling tools like create_product or set_product_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when/how: requires login, only affects the current user's own products, use get_my_products first, all fields are optional, and links replaces the entire group. It also identifies set_product_status as the correct alternative for re-archiving after an edit, giving clear routeing to a sibling tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_my_profile更新我的资料A
Idempotent
Inspect

【需要登录】更新当前用户资料,立即生效(资料修改不走审核)。所有字段可选,只传想改的;links 传则整组替换(要增删单条用 add_profile_link / remove_profile_link 更方便)。建议先 get_my_profile 读现状再改。

【canOffer 是全站撮合的轴心】search_people 搜的就是它、需求信息流的 matchScore 按它算、get_need_recommendations 拿它给作者推人。留空 = 从撮合池里掉出去,谁也搜不到你。帮用户入驻/整理资料时一定要顺手把它写上,而且要写具体(「能给早期项目做 0→1 的小程序开发,两周内出可用版本」远胜「技术合作」)。

ParametersJSON Schema
NameRequiredDescriptionDefault
bioNo一句话简介
introNo完整介绍
linksNo整组替换全部链接
canOfferNo我能提供什么(供给侧)。全站撮合的轴心字段:search_people 搜它、需求流的匹配分算它。写具体的能力/资源/交付物,别写形容词
locationNo
nicknameNo
avatarUrlNo

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only carry generic hints (readOnlyHint=false, idempotentHint=true, destructiveHint=false), so the description carries the behavioral burden and delivers: requires login, takes effect immediately with no review process, links is a wholesale group replacement rather than a merge, and an empty canOffer removes the user from the matching pool. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two well-structured paragraphs: the first front-loads operational facts (login, immediate effect, partial update, links replacement, alternatives, read-first workflow); the second delivers the high-stakes canOffer policy with a vivid example that earns its length. Minor redundancy exists where the matching-axis explanation repeats the schema's canOffer description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Complete for an all-optional profile-update tool: prerequisites, effect timing, replacement semantics, sibling routing, and the one field whose emptiness has product-wide consequences are all covered. There is no output schema, but return-value shape is low-risk for a simple update operation and the operationally critical knowledge is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 57%; the description adds the crucial partial-update semantic ('所有字段可选,只传想改的') and the replacement semantics for links. It enriches canOffer with a concrete before/after example and the 'don't leave empty' warning, though some of the matching-axis phrasing duplicates the schema's canOffer text. The three undocumented params (location, nickname, avatarUrl) are self-evident from their names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('更新当前用户资料' — update the current user's profile) and adds the key scoping detail that it is the current user's own data, effective immediately. It names sibling tools handling adjacent operations (add_profile_link, remove_profile_link, get_my_profile), so an agent can separate it from the large sibling list without opening other schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-not/alternative guidance: for single-link add/remove, use add_profile_link or remove_profile_link instead of passing the whole links array. Recommends a concrete read-before-write workflow (get_my_profile first) and instructs agents to always populate canOffer when onboarding/curating a user's profile, with the consequence of leaving it empty.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_my_signup_profile更新我的报名资料(跨表单复用层)A
Idempotent
Inspect

【需要登录】【何时用】用户随口给了一条以后每场报名都要用的信息(「我微信是 xxx」「团队 3 个人」「所在城市杭州」),先落进跨表单复用的报名资料覆盖层,下次报任何一场都会自动带出来。

【组合链】get_signup_gaps 拿到 missingCombined(跨场去重后的待答清单)→ 问用户 → 本工具一次性写进覆盖层 → 之后每场 submit_signup 都不用再问。key 必须用 get_signup_activity / get_signup_gaps 返回的那个 key(跨活动稳定,别自造)。

【口径/坑】① 这里只写报名场景的覆盖层,绝不改主页/公司/产品本体——改那些走 update_my_profile。② 只收文本;文件类答案(BP 等)只能走 App 的上传通道,这里写进去会把已传文件的记录顶成一串文本。③ 敏感题(证件号)刻意不做跨表单记忆,别往这儿写。④ 写入的值不会回显在返回体里(只回 key),这是刻意的隐私收口。

ParametersJSON Schema
NameRequiredDescriptionDefault
valuesYes

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes well beyond the annotations by disclosing login requirements, the fact that only the signup overlay is written, that file-type answers must not be written here because doing so would overwrite uploaded file records with text, that sensitive fields are intentionally not memorized, and that written values are not echoed back for privacy. No contradiction with the annotations is present; these are valuable behavioral details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is densely structured with clear sections (何时用, 组合链, 口径/坑), front-loading the most important usage context and then covering edge cases. Every sentence earns its place; there is no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a write tool with no output schema, the description is complete: it tells the agent when to use it, how it fits into the signup flow, what limitations apply, what not to write, and what the response will not contain (values are not echoed). The agent has everything needed to select and invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds essential parameter guidance beyond the schema: the key must be the stable cross-activity key returned by get_signup_activity/get_signup_gaps and must not be self-invented. It also clarifies that only text values are accepted, which reinforces the value parameter's semantics and prevents misuse even though the nested schema already names key and value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's job: writing user-provided reusable signup information into a cross-form coverage layer so future signups auto-fill it. It uses a specific verb ('更新'/'写入') and resource ('报名资料覆盖层'), and explicitly differentiates itself from update_my_profile, which modifies the main profile rather than the signup overlay.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use guidance with realistic examples ('我微信是 xxx', '团队 3 个人', '所在城市杭州'), and says this tool is for casually given reusable info. It also gives a clear combination chain (get_signup_gaps → ask user → write here → submit_signup won't ask again) and an explicit exclusion: profile/company/product changes must go through update_my_profile.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_need编辑我的需求A
Idempotent
Inspect

【需要登录】编辑自己发布的需求(仅 OPEN 状态可改)。可改 类型 / 标题 / 详情 / 配图,只传想改的。先用 list_my_needs 拿 needId。

【失败语义】非本人 403 not_your_need;非 OPEN(已取消或历史遗留关单)409 need_closed。被接洽/被承接不改变需求状态,仍是 OPEN、仍可编辑。

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo需求类型:EXPERIENCE(寻找产品/作品) | QA(答疑求助) | RESOURCE(介绍资源) | COLLAB(寻求合作) | FINANCING(融资需求) | CHAT(找人聊聊找灵感) | GIG(兼职招募) | OTHER(其它)
titleNo
detailNo
imagesNo
needIdYes需求 id,从 list_my_needs 拿

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes well beyond the annotations by disclosing partial-update semantics ('只传想改的'), ownership and status restrictions, exact error codes (403 not_your_need, 409 need_closed), and the fact that being contacted/accepted does not change OPEN status and editability. No contradiction with the annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight, well-structured paragraphs with no filler. The first paragraph covers action, prerequisites, editable fields, and partial-update behavior; the second covers failure semantics. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

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, the description covers authentication, ownership, state gating, partial update behavior, parameter sourcing, and error handling. Field-level constraints are in the schema, so nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 40%, so the description compensates by identifying which fields are editable, emphasizing that only provided fields are changed, and clarifying that needId comes from list_my_needs. It does not repeat length/format constraints for title/detail/images, but those are already encoded in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a precise verb-resource pair, '编辑自己发布的需求', and immediately adds the key scope constraint '仅 OPEN 状态可改'. It lists the editable fields (type/title/detail/images) and even names the prerequisite helper list_my_needs, which makes it easy to distinguish from create_need, cancel_need, delete_need, and other need-related siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly states when to use: login required, own need, OPEN status only, and it tells the agent to first call list_my_needs to obtain needId. It also gives implicit when-not guidance through failure semantics (403 for non-own, 409 for non-OPEN), though it does not explicitly name alternative mutation tools like create_need or cancel_need.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_organizer_signup_config改这场的报名配置A
Idempotent
Inspect

【需要登录】【何时用】用户要改报名表的题目、换报名类目、贴外部表单地址、换答疑群二维码时调它。立即生效,不留灰度闸

【组合链】get_organizer_activity(slug) 读现值 → 本工具传要改的那几项(缺省即不动)→ 再读一次确认。改完可以把 signupPageUrl 发给用户去转发。

【口径/坑】① 本工具改不了报名截止时间——截止在活动本体上,改它走 update_activity。而且:「截止绝不能提前封口」是这个产品的红线,把截止改早会把此刻正在填表的人当场挡在外面,任何「提前收口」的请求都必须先跟用户确认清楚后果。② formSchema 是整表覆盖,不是打补丁:传了就以你这份为准,漏写的题会被删掉(而且进「不再学习」名单,客户端以后也不会把它学回来)。稳妥做法是先 get_organizer_activity 拿到现有 formSchema,改完整份传回来。③ hostedEnabled=true 而一道题都不给时,服务层会落基线四项(姓名/手机号/微信号/项目介绍),不会留一张空表。④ 投递通道(adapterKey/deliveryMode)是平台侧基建,主办方改不了,也不该改。⑤ 改 signupUrl 会让投递方式跟着重算(有外链→用户设备代填投递;纯托管→站内收)。

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNo报名类目。取值:HACKATHON(黑客松) | COMPETITION(创业赛事) | INCUBATOR(孵化营) | FUNDING(融资申请) | COMMUNITY(社区入驻) | EVENT(活动报名) | OTHER(其他)
signupUrlNo外部报名表单地址;传 null 清空(改回站内收报名)
formSchemaNo**整表覆盖**的题目表。不传=不动;传了就以这份为全集,漏写的题会被删掉。沿用现有题请把 get_organizer_activity 给你的那一项**原样带回来**(尤其 sensitive / sourceLabel 两个键,丢了会把加密题降级成明文、并让外部表单的自动填写失效)
activityRefYes活动 slug 或活动 id
articleUrlsNo活动图文/推文链接(整体覆盖)
contactNoteNo报名成功页的一句话说明;传 null 清空
contactQrUrlNo报名成功页的答疑/组队群二维码图 URL;传 null 清空
hostedEnabledNo站内是否直接收报名

TDQS

A4/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds genuinely rich behavioral context: immediate effect with no gray release, whole-table formSchema overwrite, omitted fields being deleted and entering a 'no longer learn' list, signupUrl triggering delivery-mode recalculation, and the deadline red line. However, it directly contradicts the destructiveHint=false annotation by documenting that omitted formSchema fields are deleted permanently. Per the rubric, this contradiction forces a score of 1.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but tightly organized into 'when to use', 'combination chain', and 'pitfalls/quirks'. Each bullet is actionable and earns its place; the length is justified by the high-risk overwrite semantics and an 8-parameter configuration surface.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

It covers auth requirement, when to use vs. alternatives, pre-read guidance, destructive overwrite risks, and platform-side constraints. The main gap is that with no output schema, it does not explicitly state what the tool returns; the 'read again to confirm' chain partially compensates by implying the return is not a full config snapshot.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds meaningful semantics beyond the schema: formSchema is whole-table overwrite with sensitive/sourceLabel preservation risks, signupUrl changes cause delivery-mode recomputation, hostedEnabled with zero questions falls back to four baseline fields, and deadline is explicitly out of scope. This is more than the schema alone provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a concrete list of user intents: changing signup form questions, signup category, external form URL, or FAQ group QR code. It clearly identifies the resource (signup config for an organizer activity) and distinguishes this tool from update_activity by explicitly saying deadline changes go there.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states when to use the tool ('何时用'), names update_activity as the alternative for deadline changes, and gives a recommended combination chain: read current config, pass only the changed fields, then re-read to confirm. This is excellent routing guidance with no ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

upload_image_from_url按 URL 上传图片AInspect

【需要登录】把一张公开可访问的图片 URL 镜像进独行录存储,返回稳定的图片地址。

【何时用】要给「我的头像 / 产品 logo / 产品封面 / 产品图集 / 活动封面」设图时:先用本工具把外部图片 URL 转成独行录地址,再把返回的 url 填进 update_my_profile(avatarUrl) / update_my_product(logoUrl·coverUrl·gallery) / create_product / create_organizer_activity(coverUrl·posterUrls)。

【限制】仅支持公网 http(s) 图片,带大小/类型/SSRF 校验。

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNo用途(决定存储分类),默认 avatar
sourceUrlYes图片的公开 http(s) URL

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate a non-readonly, non-idempotent, non-destructive write, and the description adds consistent context: login required, external URL is mirrored into storage, and size/type/SSRF validation applies. It doesn't cover rate limits or quota, but the key behavioral traits are disclosed without contradicting 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short labeled sections (auth+operation, when/how, limitations) carry no filler. The most critical information is front-loaded, and each sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter upload helper with no output schema, the description states the essential return value (stable image URL), the auth requirement, the validation limits, and the exact downstream tools that consume the result. Nothing needed to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: sourceUrl is documented as 公开 http(s) URL and kind as 用途(决定存储分类)with enum and default. The description mainly repeats the parameter constraints and adds downstream field mapping, but it does not materially extend the schema's parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses a specific verb and resource: 把公开图片 URL 镜像进独行录存储,返回稳定图片地址. It clearly distinguishes this upload helper from downstream update/create tools by framing it as the prerequisite step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 【何时用】 section gives an explicit trigger ('要给头像/logo/封面/图集/活动封面设图时') and a concrete sequence: upload first, then pass the returned url into update_my_profile/update_my_product/create_product/create_organizer_activity. The 【限制】 section also states valid inputs (public http(s) only), preventing misuse.

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. Dates show when Glama detected each change.

  1. 1 tool update
    • Changedlist_signup_submissions1 field changed
      • changedInput schema / properties / channel / enum
        Previous value: -[
        -  "ios",
        -  "android",
        -  "web",
        -  "wx",
        -  "agent"
        -]New value: +[
        +  "ios",
        +  "android",
        +  "harmonyos",
        +  "web",
        +  "wx",
        +  "agent"
        +]
  2. 137 tool updates
    • First observedaccept_dispatch_arrangement
    • First observedadd_profile_link
    • First observedblock_user
    • First observedbulk_review_signup_submissions
    • First observedcancel_activity
    • First observedcancel_need
    • First observedcheck_activity_eligibility
    • First observedclaim_creator_by_token
    • First observedclaim_product
    • First observedcomplete_need
    • First observedcomplete_onboarding
    • First observedcontact_need
    • First observedcreate_collaboration_goal
    • First observedcreate_collaboration_task
    • First observedcreate_company
    • First observedcreate_need
    • First observedcreate_organizer_activity
    • First observedcreate_product
    • First observeddecline_dispatch_arrangement
    • First observeddelete_my_rating
    • First observeddelete_need
    • First observedendorse_creator
    • First observedfollow_creator
    • First observedfollow_product
    • First observedget_activity
    • First observedget_chain_anchor
    • First observedget_collaboration_goal
    • First observedget_company
    • First observedget_contact_exchange_state
    • First observedget_conversation
    • First observedget_conversation_needs
    • First observedget_creator
    • First observedget_creator_endorsements
    • First observedget_my_brief
    • First observedget_my_card
    • First observedget_my_chat_opener
    • First observedget_my_company
    • First observedget_my_dispatch
    • First observedget_my_invite
    • First observedget_my_positioning
    • First observedget_my_preferences
    • First observedget_my_products
    • First observedget_my_profile
    • First observedget_my_work
    • First observedget_need
    • First observedget_need_recommendations
    • First observedget_notification_prefs
    • First observedget_onboarding_status
    • First observedget_organizer_activity
    • First observedget_park
    • First observedget_post
    • First observedget_product
    • First observedget_product_rating_summary
    • First observedget_product_ratings
    • First observedget_relationship
    • First observedget_share_card_manifest
    • First observedget_signup_activity
    • First observedget_signup_gaps
    • First observedget_signup_submission
    • First observedinvite_collaboration_member
    • First observedissue_signup_export_link
    • First observedlist_activities
    • First observedlist_chain_group_members
    • First observedlist_city_policies
    • First observedlist_collaboration_tasks
    • First observedlist_companies
    • First observedlist_creators
    • First observedlist_funding
    • First observedlist_my_activities
    • First observedlist_my_blocks
    • First observedlist_my_conversations
    • First observedlist_my_devices
    • First observedlist_my_needs
    • First observedlist_my_network
    • First observedlist_my_signups
    • First observedlist_needs_feed
    • First observedlist_park_city_stats
    • First observedlist_park_news
    • First observedlist_parks
    • First observedlist_posts
    • First observedlist_products
    • First observedlist_products_discover
    • First observedlist_recent_attention
    • First observedlist_service_products
    • First observedlist_signup_feed
    • First observedlist_signup_submissions
    • First observedlist_talent
    • First observedmark_conversation_read
    • First observedmark_positioning_task
    • First observedpersonalized_feed
    • First observedrandom_feed
    • First observedrate_product
    • First observedread_messages
    • First observedredeem_chat_quota
    • First observedremove_profile_link
    • First observedreopen_need
    • First observedreport_content
    • First observedreport_dispatch
    • First observedrequest_contact_exchange
    • First observedrespond_collaboration_invite
    • First observedrespond_contact_exchange
    • First observedrespond_dispatch_inbound
    • First observedreview_signup_submission
    • First observedrevoke_my_device
    • First observedsearch_needs
    • First observedsearch_people
    • First observedsearch_products
    • First observedsend_message
    • First observedsend_share_card
    • First observedset_collaboration_task_status
    • First observedset_dispatch_outcome
    • First observedset_link_visibility
    • First observedset_my_chain_position
    • First observedset_my_chat_opener
    • First observedset_my_preferences
    • First observedset_my_role_profile
    • First observedset_notification_prefs
    • First observedset_persona
    • First observedset_product_status
    • First observedskip_dispatch_step
    • First observedstart_conversation
    • First observedsubmit_signup
    • First observedtrack_event
    • First observedunblock_user
    • First observedunfollow_creator
    • First observedunfollow_product
    • First observedunpublish_need
    • First observedupdate_activity
    • First observedupdate_collaboration_goal
    • First observedupdate_collaboration_task
    • First observedupdate_my_company
    • First observedupdate_my_product
    • First observedupdate_my_profile
    • First observedupdate_my_signup_profile
    • First observedupdate_need
    • First observedupdate_organizer_signup_config
    • First observedupload_image_from_url

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP-native co-founder directory. Your AI agent searches the directory, screens inbound pitches, and drafts replies.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables private, AI-driven matching of needs and offers (e.g., cofounders, jobs, roommates) without public listings. Intents are matched by AI and revealed only to both sides when a real fit is found.
    3
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Your AI finds the right people for you. Agent-to-agent networking via MCP. Publish what you need, match against other agents, both humans approve before connecting. Ed25519 signed, hosted API.
    7
    114
    7
    Apache 2.0
  • F
    license
    A
    quality
    D
    maintenance
    Transforms founder profiles from social media into actionable strategic intelligence through automated scraping, LLM analysis, and personalized news tracking. It leverages vector search and caching to provide deep insights and relevant updates on specific founders.
    3
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation4/5

Each tool has a clearly documented purpose, often with explicit 'when to use' guidance and cross-references, making the vast majority easy to tell apart. A few clusters (get_my_brief, get_my_positioning, get_my_work, get_my_dispatch) and data-overlapping get_my_card vs get_my_profile require careful reading, but descriptions are detailed enough to prevent serious misselection.

Naming Consistency4/5

The overwhelming majority follow snake_case verb_noun conventions (create_product, update_need, list_my_signups). Minor deviations include noun-only feed names (personalized_feed, random_feed), inconsistency between 'prefs' and 'preferences' in notification tools, and a mix of update_* and set_* for mutations, but the pattern remains predictable overall.

Tool Count1/5

137 tools is an extreme mismatch for any MCP server, far exceeding the 50+ threshold for a score of 1. Even with a broad multi-domain platform, this volume makes tool selection and navigation impractical and heavily burdens the agent's context window.

Completeness5/5

The surface covers full lifecycles for needs, products, activities/signups, conversations, collaboration goals/tasks, dispatch, profile/onboarding, and supporting resources like companies, parks, policies, and ratings. Deliberate omissions (no user-post creation, no organizer profile editing via agent) are explicitly documented, so core workflows have no obvious dead ends.

Resources