Skip to main content
Glama

独行录 / opcmenu

看一场报名详情(含我的报名状态)

get_signup_activity
Read-onlyIdempotent

【何时用】用户对某一场感兴趣、或准备报名之前调它。一次调用给全上下文:公开详情(简介/时间/地点/名额/题目表/答疑群)+(登录时)我的报名状态、每题的现值、还缺哪几个必填项——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),别硬报。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugYes活动 slug(取自 list_signup_feed 的 items[].slug)

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

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.

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