Skip to main content
Glama

独行录 / opcmenu

提交报名

submit_signup
Idempotent

【需登录·本人明确要求】先get_signup_activity补missingRequired,提交后list_my_signups查状态;截止按exits替代。仅传新/改答案,自动合并上版/复用层/主页推导;省略不清空,重提覆盖。用户明示删除才clearKeys(清复用层但留文件)。file题省略保已有附件,普通附件先prepare_signup_file_upload传真实字节,勿用名/链接冒充。缺必填不提交;敏感上版省略会拒丢值,须重答或明确clearKeys。channel=agent对主办方可见。delivery.kind=webview仅站内留档,还需本人按delivery.url交外部表单,勿称报名成功。协议须get_activity_agreement完整展示、本人同意后带versionId/accept,会留签署及审计。requiresAppActivation返回仅预留位、非提交;本人用报名手机号登录App自动确认。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugYes活动 slug
answersNo这次要新填/要改的答案。没传的题**不会被清空**(自动沿用现值)
agreementNo报名协议确认,可选。versionId 取自 get_activity_agreement;**只有把协议全文念给用户、他明确说同意之后才许带**(这是会留签署记录与审计日志的法律行为)
clearKeysNo要显式清空的题目 key(用户明说「把微信号删掉」才用;不传就一个都不清)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / agreement
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "报名协议确认,可选。versionId 取自 get_activity_agreement;**只有把协议全文念给用户、他明确说同意之后才许带**(这是会留签署记录与审计日志的法律行为)",
      +  "properties": {
      +    "accept": {
      +      "const": true,
      +      "type": "boolean"
      +    },
      +    "versionId": {
      +      "maxLength": 100,
      +      "minLength": 1,
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "versionId",
      +    "accept"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Goes well beyond the annotations: submits merge with the prior version/reuse layer/homepage inference, omission preserves values while re-submission overwrites, file answers preserve existing attachments, and clearKeys clears the reuse layer but keeps files. It also discloses organizer visibility for channel=agent, the webview delivery limitation, and the audit consequences of agreement acceptance.

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

Conciseness3/5

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

Every clause carries operational information, but the description is one dense, semicolon-chained block in Chinese with no hierarchy. It opens with prerequisites rather than the core action, making it hard for an agent to scan and prioritize.

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 complex write tool with nested params and no output schema, the description covers prerequisites, submission behavior, file handling, agreement/audit, and app-activation cases thoroughly. It only partially explains return values (requiresAppActivation, delivery.kind), which matters more given 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 100%, so the baseline is 3, but the description adds genuine semantics: clearKeys only when the user explicitly requests deletion, answers auto-merge and sensitive omitted values are rejected rather than silently dropped, and agreement requires a fully displayed agreement plus explicit consent carrying versionId/accept. Some of this (omission does not clear) duplicates the schema, keeping it from a 5.

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 name submit_signup and title 提交报名 state the action, and phrases like '提交后' and '缺必填不提交' confirm this is a signup submission. However, the description opens with prerequisites rather than a defining verb+resource sentence, so it relies on the name/title to disambiguate from siblings like get_signup_submission or cancel_my_activity_signup.

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 routes the agent: call get_signup_activity first to fill missingRequired, then list_my_signups to check status, and handle deadline via exits. It names when to use clearKeys (user explicitly says delete) and when not to (omission never clears), and specifies the agreement flow via get_activity_agreement before submitting.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources