Skip to main content
Glama

独行录 / opcmenu

给定位任务打勾(线下动作自报,可一次一批)

mark_positioning_task
Idempotent

登录;用户确认真实已完成后勾manual事项,勿代猜;taskKey取get_my_positioning含自定义。同key末项生效;done=false取消勾选但历史保留。串行可部分成功,只重试未写项;回执stageGoals是当前事项,历史分数/nextUp不作为完成事实,勿重复读取。定位事项→确认完成→mark_positioning_task;开始/受阻/暂停等进展用report_positioning_task_outcome。

Input Schema

NameRequiredDescriptionDefault
tasksYes要打勾/取消的任务,一次最多 141 条(= manual 任务总数)。只报了一件就传一条

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / tasks / description
      Previous value: -"要打勾/取消的任务,一次最多 106 条(= manual 任务总数)。只报了一件就传一条"New value: +"要打勾/取消的任务,一次最多 141 条(= manual 任务总数)。只报了一件就传一条"
    • changedInput schema / properties / tasks / maxItems
      Previous value: -106New value: +141
  2. Changed3 schema fields changed
    • changedInput schema / properties / tasks / description
      Previous value: -"要打勾/取消的任务,一次最多 27 条(= manual 任务总数)。只报了一件就传一条"New value: +"要打勾/取消的任务,一次最多 106 条(= manual 任务总数)。只报了一件就传一条"
    • changedInput schema / properties / tasks / items / properties / taskKey / description
      Previous value: -"要打勾的任务 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(收入覆盖成本) | seed.cap_table(理清股权结构,留好期权池) | seed.one_bet(定下种子钱要验证的那一件事) | angel.investor_update(每月给投资人发一封进展简报) | angel.next_round_bp(按下一轮的标准重写 BP) | series_a.finance(财务规范化:月度报表 + 年度审计) | series_a.playbook(把获客打法写成可复制的手册) | series_b.second_engine(打开第二个市场或第二条产品线) | series_b.board(建立董事会和季度汇报机制) | series_c.strategic_deal(谈成一笔战略合作或并购) | series_c.data_compliance(做一次数据安全与合规体检) | series_d_plus.listing_team(选定上市地,组建中介团队) | series_d_plus.pay_forward(投一个早期项目,或带一位新 OPC) | growth.ad_basics(学会:一条广告只干一件事)"New value: +"get_my_positioning 返回的 manual 任务 key,包含已配置的 custom.* 项;服务端核验是否存在"
    • changedInput schema / properties / tasks / maxItems
      Previous value: -27New value: +106
  3. Changed3 schema fields changed
    • changedInput schema / properties / tasks / description
      Previous value: -"要打勾/取消的任务,一次最多 15 条(= manual 任务总数)。只报了一件就传一条"New value: +"要打勾/取消的任务,一次最多 27 条(= manual 任务总数)。只报了一件就传一条"
    • changedInput schema / properties / tasks / items / properties / taskKey / description
      Previous value: -"要打勾的任务 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(学会:一条广告只干一件事)"New value: +"要打勾的任务 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(收入覆盖成本) | seed.cap_table(理清股权结构,留好期权池) | seed.one_bet(定下种子钱要验证的那一件事) | angel.investor_update(每月给投资人发一封进展简报) | angel.next_round_bp(按下一轮的标准重写 BP) | series_a.finance(财务规范化:月度报表 + 年度审计) | series_a.playbook(把获客打法写成可复制的手册) | series_b.second_engine(打开第二个市场或第二条产品线) | series_b.board(建立董事会和季度汇报机制) | series_c.strategic_deal(谈成一笔战略合作或并购) | series_c.data_compliance(做一次数据安全与合规体检) | series_d_plus.listing_team(选定上市地,组建中介团队) | series_d_plus.pay_forward(投一个早期项目,或带一位新 OPC) | growth.ad_basics(学会:一条广告只干一件事)"
    • changedInput schema / properties / tasks / maxItems
      Previous value: -15New value: +27
  4. Changed5 schema fields changed
    • removedInput schema / properties / done
      Removed value: -{
      -  "description": "true=打勾(默认),false=取消打勾",
      -  "type": "boolean"
      -}
    • removedInput schema / properties / note
      Removed value: -{
      -  "description": "备忘,比如备案号 / 注册号,可选",
      -  "maxLength": 200,
      -  "type": "string"
      -}
    • removedInput schema / properties / taskKey
      Removed value: -{
      -  "description": "要打勾的任务 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(学会:一条广告只干一件事)",
      -  "type": "string"
      -}
    • addedInput schema / properties / tasks
      Added value: +{
      +  "description": "要打勾/取消的任务,一次最多 15 条(= manual 任务总数)。只报了一件就传一条",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "done": {
      +        "description": "true=打勾(默认),false=取消打勾",
      +        "type": "boolean"
      +      },
      +      "note": {
      +        "description": "备忘,比如备案号 / 注册号,可选",
      +        "maxLength": 200,
      +        "type": "string"
      +      },
      +      "taskKey": {
      +        "description": "要打勾的任务 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(学会:一条广告只干一件事)",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "taskKey"
      +    ],
      +    "type": "object"
      +  },
      +  "maxItems": 15,
      +  "minItems": 1,
      +  "type": "array"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "taskKey"
      -]New value: +[
      +  "tasks"
      +]
  5. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Beyond idempotentHint and destructiveHint, it discloses non-obvious behavior: last item wins for the same taskKey, done=false unchecks while retaining history, serial execution can partially succeed, and only unwritten items should be retried. It also clarifies that stageGoals represents current items and historical scores/nextUp are not completion facts.

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 dense single paragraph front-loads the core rule: user must confirm real completion before marking. Every clause appears purposeful, though the leading '登录;' and some phrasing are terse and could be structured with clearer separation for readability.

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 annotations and no output schema, the description covers auth context, precondition of user confirmation, duplicate-key behavior, partial success, retry guidance, and how to interpret the receipt. 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 taskKey/done/note are already documented. The description still adds useful semantics beyond the schema: taskKey must come from get_my_positioning including custom.* items, and duplicate taskKeys resolve as last-item-wins, with actual completion requiring user confirmation.

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: check off manual positioning items after the user confirms real completion. It distinguishes itself from the sibling report_positioning_task_outcome by assigning that tool to start/blocked/pause progress, so an agent can route correctly 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?

It explicitly says when to use this tool: user-confirmed actual completion of manual items, with '勿代猜' (do not guess on their behalf). It names the alternative for other progress types clearly: start/blocked/pause go to report_positioning_task_outcome.

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