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

TableJSON 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?

Annotations already declare write (readOnlyHint=false), idempotent, non-destructive and open-world, but the description adds materially more: login requirement, last-entry-wins for duplicate keys, done=false unchecks while preserving history, serial partial-success behavior with retry-only-unwritten guidance, and receipt semantics (stageGoals is current item; historical scores/nextUp are not completion facts). This is rich context beyond the structured fields.

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

Conciseness4/5

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

Front-loaded with the login requirement and the core no-guessing rule, then uses bracket markers for the combination chain. Dense but nearly every clause carries operational information; the closing combination-chain sentence lightly overlaps the earlier alternative-tool guidance, which is the only real 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?

No output schema exists, and the description compensates by explaining the receipt fields (stageGoals vs. historical scores/nextUp) and warning against repeated reads. Combined with login, partial-success, and retry guidance, an agent has everything needed to invoke this batch mutation safely.

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 by specifying that taskKey must come from get_my_positioning and includes custom.* items, and by stating the array-level rule that the last entry for the same key wins — behavior the schema does not express. It does not add much on note/done beyond the schema, keeping it at 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?

States a specific verb+resource ('勾manual事项' / mark positioning tasks) with scope (batch, manual items, offline self-report). It clearly separates itself from the sibling report_positioning_task_outcome, which is named as the tool for a different purpose. An agent can identify this tool's job 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?

Explicit when-to-use: only after the user confirms real completion, never guess on their behalf. Explicit alternative: use report_positioning_task_outcome for started/blocked/paused progress, plus a stated combination chain (positioning item → confirm → mark). When, when-not, and alternatives are all present.

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