Notion Workflow MCP
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation4/5
Most tools have distinct purposes clearly separated between notes and tasks, with clear action boundaries (e.g., create_note vs. create_task, get_note vs. get_task). However, append_note and append_task are functionally similar (both append content to pages) and could potentially be confused if an agent doesn't carefully check the resource type, creating minor ambiguity.
Naming Consistency5/5Tool names follow a highly consistent verb_noun pattern throughout (e.g., create_note, get_task, update_subtasks, list_notes). All names use snake_case consistently, and verbs are appropriately chosen for the actions (create, get, list, update, append, complete, start, generate, search). There are no deviations in naming conventions.
Tool Count4/519 tools is slightly high but reasonable for a workflow management system covering notes, tasks, subtasks, and reporting. The count supports comprehensive operations without being overwhelming, though it borders on the upper limit of typical well-scoped servers (15-20 tools).
Completeness5/5The toolset provides complete CRUD/lifecycle coverage for both notes and tasks, including creation, retrieval, updating, listing, searching, and status transitions (e.g., start_task, complete_task). It also includes advanced features like subtask management, overview dashboards, and automated reporting (standup, weekly review), leaving no obvious gaps for the Notion workflow domain.
Average 3.5/5 across 19 of 19 tools scored. Lowest: 2.9/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions '全文搜索' (full-text search) which implies a search across note content, but doesn't disclose behavioral traits like pagination, sorting, case sensitivity, performance characteristics, or error conditions. This is inadequate for a search tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the core purpose in the first sentence. The Args and Returns sections are structured but could be integrated more seamlessly. No wasted sentences, though it's slightly terse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (search operation), no annotations, and an output schema present (which covers return values), the description is minimally complete. It explains the basic function and parameters but lacks details on search behavior, limitations, and comparison to siblings, leaving gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal semantics: it states 'query: 搜索关键词' (query: search keyword), which clarifies the parameter's purpose. However, with 0% schema description coverage and only one parameter, this is baseline adequate but doesn't provide details like query syntax, length limits, or special operators.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '在笔记库中全文搜索笔记' (full-text search notes in the note library). It specifies the verb (search) and resource (notes), but doesn't explicitly differentiate from sibling 'list_notes' or 'get_note', which is why it doesn't reach 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 Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'list_notes' or 'search_tasks'. It simply states what the tool does without context about use cases, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions '全文搜索' (full-text search) which implies search behavior, but doesn't describe what '匹配的任务列表' (matching task list) contains, whether results are paginated, sorted, or limited. For a search tool with zero annotation coverage, this is inadequate transparency about how the tool actually behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise with three sentences that each serve a purpose: stating the tool's function, documenting the parameter, and describing the return value. It's front-loaded with the core purpose. The Args/Returns structure is clear though somewhat redundant with schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (which handles return values), the description doesn't need to explain return format details. However, for a search tool with no annotations and 0% schema description coverage, the description should provide more context about search behavior, result characteristics, and usage scenarios. It's minimally complete but leaves important questions unanswered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does 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 minimal value: it documents the single parameter 'query' as '搜索关键词' (search keywords), which provides basic semantics. However, it doesn't explain query syntax, language support, or search scope. With 0% schema coverage and only 1 parameter, this meets the baseline but doesn't fully compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '在工作流库中全文搜索任务' (full-text search for tasks in the workflow library). It specifies the verb (search) and resource (tasks) with scope (workflow library). However, it doesn't explicitly differentiate from sibling tools like 'list_tasks' or 'search_notes', which would be needed for a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There are multiple sibling tools for task retrieval (list_tasks, get_task, get_today_tasks, search_notes) but no indication of when full-text search is preferred over listing or other search methods. The description only states what it does, not 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.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It mentions that completion time is recorded and summary is appended to page body, which are useful behavioral details. However, it doesn't disclose important traits: whether this is idempotent (can you complete an already-completed task?), what permissions are needed, whether it triggers notifications, or what happens to subtasks. For a mutation tool with zero annotation coverage, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured with a clear main sentence followed by parameter explanations. The Chinese text is direct and front-loaded with the core functionality. The Args/Returns sections are appropriately brief. One minor improvement could be integrating the parameter explanations more seamlessly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations, 0% schema description coverage, but WITH an output schema (which handles return values), the description is moderately complete. It covers what the tool does and parameter meanings, but lacks important behavioral context (idempotency, side effects, error conditions) that would be needed for safe agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does 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 provides clear meaning for both parameters: 'task_id' identifies which task to complete, and 'summary' is an optional completion note that gets appended to page body. This adds valuable semantic context beyond the bare schema types. However, it doesn't specify format constraints (e.g., task_id format, summary length limits).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('将任务标记为"完成"' - mark task as complete) and the resource ('任务' - task). It specifies that completion time is recorded and optional summary can be appended to page body. However, it doesn't explicitly differentiate from sibling tools like 'update_task' which might also modify task status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'update_task' (which might also handle status changes) or 'start_task'. The description implies this is for finalizing tasks, but doesn't specify prerequisites (e.g., task must exist, be in progress) or when not to use it (e.g., for reopening completed tasks).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates content and returns a StandupReport dictionary, but lacks details on how it operates: e.g., where it sources data from (tasks, notes?), whether it requires authentication, if it's read-only or modifies data, or any rate limits. The description is minimal and doesn't compensate for the absence of 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, with two sentences: the first states the purpose and output structure, the second specifies the return type. There's no fluff, and every sentence adds value. However, it could be slightly more structured (e.g., bullet points for the three sections), but it's efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (generative, no parameters) and the presence of an output schema (implied by 'Has output schema: true'), the description is minimally adequate. It explains what the tool does and the return format, but lacks context on data sources, behavioral traits, or usage guidelines. With no annotations and siblings present, it should do more to be fully complete, but the output schema reduces the need to detail return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%, so there's no need for parameter details in the description. The baseline for 0 parameters is 4, as the description appropriately doesn't waste space on non-existent parameters. It focuses on the tool's output instead, which is sufficient given the empty input schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '自动生成每日站会内容:昨日完成 / 今日计划 / 阻塞项' (Automatically generate daily standup content: yesterday's completed items / today's plan / blockers). It specifies the verb 'generate' and the resource 'daily standup content' with three distinct sections. However, it doesn't explicitly differentiate from sibling tools like 'generate_weekly_review', which serves a similar purpose but for a different timeframe.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing existing tasks or notes), context (e.g., time of day), or exclusions (e.g., when data is unavailable). With siblings like 'get_today_tasks' or 'generate_weekly_review', there's no indication of how this tool complements or differs from them in usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states what the tool returns but doesn't mention whether this is a read-only operation (implied but not stated), whether it requires authentication, rate limits, or any other behavioral characteristics. The description is minimal and doesn't provide sufficient behavioral context for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded. The first sentence clearly states the purpose, and the second sentence efficiently describes the return format. Every word serves a purpose with zero waste or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has zero parameters, has an output schema (implied by the return description), and performs a relatively simple read operation, the description is reasonably complete. It states what the tool does and what it returns. However, with no annotations and multiple sibling tools that retrieve task information, more context about when to use this specific tool would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters (schema description coverage is 100%), so the baseline for a parameterless tool is 4. The description appropriately doesn't discuss parameters since none exist, which is correct for this case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '获取工作流库的任务状态概览(各状态数量仪表板)' translates to 'Get workflow library task status overview (dashboard of counts per status)'. This specifies the verb ('get') and resource ('task status overview'), but doesn't explicitly differentiate it from sibling tools like 'list_tasks' or 'get_today_tasks' which might provide different types of task information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'list_tasks', 'get_today_tasks', and 'search_tasks' that also retrieve task information, there's no indication of when this aggregated dashboard view is preferable to those more detailed listing tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions parsing Markdown from a task page body, which implies read-only behavior, but doesn't state whether this requires specific permissions, what happens if the task ID is invalid, or if there are rate limits. For a tool with zero annotation coverage, this lacks critical 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded. The first sentence states the core purpose, followed by clear sections for 'Args' and 'Returns' that provide essential details without redundancy. Every sentence earns its place, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (parsing Markdown), no annotations, and an output schema (implied by the 'Returns' section detailing the list structure), the description is mostly complete. It covers the purpose, parameter semantics, and return values. However, it lacks behavioral details (e.g., error handling, permissions), which holds it back from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds significant meaning beyond the input schema. The schema has 0% description coverage (only a 'task_id' parameter with no details), but the description specifies that 'task_id' is a 'Notion 页面 ID' (Notion page ID), clarifying the expected format and source. This compensates well for the low schema coverage, though it doesn't cover all potential edge cases (e.g., ID format validation).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '获取任务的子目标列表(解析任务页面 body 中的子目标 Markdown)' which translates to 'Get the subtask list of a task (parse subtask Markdown in the task page body).' It specifies the verb ('get/parse'), resource ('subtasks'), and scope ('from a task page body'). However, it doesn't explicitly distinguish itself from sibling tools like 'get_task' or 'update_subtasks', which would require 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 Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a valid task ID), exclusions, or comparisons to siblings like 'get_task' (which might return task details without subtasks) or 'update_subtasks' (for modifying subtasks). Usage is implied but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions filtering by note_type and tag, and a limit with default/max values, but doesn't disclose other behavioral traits like pagination, sorting, authentication needs, rate limits, or what happens when no filters are applied. The description adds some operational context but leaves significant gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and appropriately sized. It starts with a clear purpose statement, followed by a bullet-point list of parameters with concise explanations, and ends with return format information. Every sentence earns its place with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 parameters, filtering functionality) and the presence of an output schema (implied by 'Returns' statement), the description is reasonably complete. It covers all parameters and mentions the return format (list of dictionaries without body content). However, it lacks behavioral context that would be important for a filtering/list tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must compensate, and it does so effectively. It explains all three parameters: note_type (with allowed values: 会议记录, 想法, 参考, 速记), tag (exact match single tag name), and limit (default 20, max 100). This adds clear meaning beyond the bare schema, though it doesn't cover parameter interactions or edge cases.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '列出笔记库中的笔记' (List notes in the note library). It specifies the resource (notes) and verb (list), though it doesn't explicitly differentiate from sibling tools like 'search_notes' or 'get_note'. The purpose is clear but lacks 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 Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'search_notes' (which might offer more flexible filtering) or 'get_note' (for retrieving a single note with full content). There's no context about prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states this is a creation operation ('创建'), implying it's a write/mutation tool, but doesn't mention permissions, rate limits, or what happens on failure. The description adds basic context about what gets created (a note with specified fields) but lacks deeper behavioral traits like idempotency or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, Args, Returns) and uses bullet-like formatting for parameters. It's appropriately sized with no redundant information. Every sentence earns its place, though the 'Returns' section is somewhat generic ('创建成功的笔记详情' - details of successfully created note).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (4 parameters, creation operation) and the presence of an output schema (which handles return values), the description is reasonably complete. It covers the core functionality and parameter meanings adequately. The main gap is lack of behavioral context (permissions, errors) which would be important for a creation tool, but the output schema reduces the need to describe return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, so the description must compensate. It provides meaningful semantics for all 4 parameters: 'title' as required note title, 'content' as required text/Markdown body, 'note_type' with enumerated options and default, and 'tags' as optional list. This adds substantial value beyond the bare schema, though it doesn't cover all possible edge cases (e.g., title length limits).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '在笔记库中创建一篇新笔记' (create a new note in the note library). It specifies the verb '创建' (create) and resource '笔记' (note), making the action explicit. However, it doesn't distinguish this from sibling tools like 'append_note' or 'update_task', which would require more specific differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'append_note' (for adding to existing notes) and 'create_task' (for creating tasks instead of notes), the description lacks explicit when-to-use or when-not-to-use instructions, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the default week behavior but doesn't describe what data sources it uses, whether it requires specific permissions, how it handles missing data, or any rate limits. The description is minimal and lacks important behavioral context for a generation 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise with three sentences that each serve a purpose: stating the tool's function, explaining the parameter, and describing the return value. It's well-structured and front-loaded with the main purpose. Minor deduction for slightly awkward formatting with the Args/Returns labels.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (Returns section describes WeeklyReview dictionary structure), the description doesn't need to fully explain return values. It covers the main purpose, parameter semantics, and return structure adequately for a generation tool. However, with no annotations and minimal behavioral context, it could be more complete about data sources and limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, so the description must compensate. It provides clear semantic explanation of the week_offset parameter with examples (0 = 本周, -1 = 上周, 以此类推), which adds meaningful context beyond the bare schema. However, it doesn't explain parameter constraints or validation rules.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '生成工作周报/复盘' (generate work weekly review/summary). It specifies the resource (weekly review) and verb (generate), but doesn't explicitly differentiate from sibling tools like 'generate_standup' or other reporting tools, which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implied usage guidance by mentioning default behavior (默认为本周, default is this week) and the week_offset parameter explanation. However, it doesn't explicitly state when to use this tool versus alternatives like 'generate_standup' or other reporting tools, nor does it mention prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions the tool returns task details in dictionary format, it doesn't describe whether this is a read-only operation, what permissions are required, whether it's idempotent, or any rate limits. For a data retrieval tool with zero annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise with three sentences that each serve a purpose: stating the tool's function, explaining the parameter, and describing the return format. It's well-structured with clear sections (Args, Returns). The only minor improvement would be integrating the parameter explanation more seamlessly rather than as a separate labeled section.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (single parameter, read operation), the presence of an output schema (which handles return value documentation), and the description's coverage of key aspects (purpose, parameter meaning, return format), this is reasonably complete. The main gap is the lack of behavioral context that annotations would normally provide, but the output schema reduces the need for extensive return value explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaningful semantic context for the single parameter: it specifies that task_id is a 'Notion 页面 ID' (Notion page ID) and mentions it can be obtained from list_tasks results. This provides practical guidance beyond the schema's basic string type, especially valuable given the 0% schema description coverage. However, it doesn't explain the ID format or validation rules.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '获取单个任务的完整详情' (get complete details of a single task). It specifies the verb (get) and resource (task details), distinguishing it from list_tasks (which lists multiple tasks) and get_subtasks (which focuses on subtasks). However, it doesn't explicitly differentiate from get_note or get_overview, which are different resource types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implied usage guidance by mentioning that task_id can be obtained from list_tasks results, suggesting this tool is used after listing tasks. However, it doesn't explicitly state when to use this tool versus alternatives like get_subtasks (for subtask details) or get_overview (for summary information), nor does it mention prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool returns a task list in dictionary format, which is helpful, but doesn't address important behavioral aspects like whether this is a read-only operation, what permissions are required, whether results are paginated, or how filtering logic works (AND/OR). For a list/filter tool with zero annotation coverage, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Args, Returns) and uses bullet-like formatting for parameters. Every sentence earns its place by providing essential information. It could be slightly more front-loaded by stating the filtering capabilities earlier, but overall it's efficient and organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (5 filtering parameters), no annotations, but with an output schema (implied by 'Returns'), the description is reasonably complete. It thoroughly documents all parameters and mentions the return format. The main gap is lack of behavioral context (permissions, pagination, filtering logic) which would be helpful despite the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description compensates excellently by providing clear semantic explanations for all 5 parameters. It specifies allowed values for 'status' and 'priority', explains that 'tag' and 'project' use exact matching, and provides default/maximum values for 'limit'. This adds substantial value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as '列出工作流库中的任务' (list tasks in the workflow library), which is a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'search_tasks' or 'get_today_tasks', which appear to have overlapping functionality. The purpose is clear but lacks 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 Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'search_tasks' or 'get_today_tasks'. It simply describes what the tool does without any context about appropriate use cases, prerequisites, or exclusions. This leaves the agent without direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions that the tool '在页面 body 中记录开始时间' (records start time in the page body), which adds useful context about side effects. However, it doesn't address important behavioral aspects like whether this requires specific permissions, whether the operation is idempotent, what happens if the task is already in progress, or error conditions. For a state-changing tool with zero annotation coverage, this represents significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured with the core functionality in the first sentence and parameter/return documentation in separate sections. The Chinese text is direct and avoids unnecessary elaboration. However, the separation of Args/Returns from the main description creates some fragmentation that slightly reduces readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there's an output schema (which handles return value documentation) and only one parameter, the description covers the essential purpose and state transition. However, for a mutation tool with no annotations, it should provide more behavioral context about permissions, idempotency, and error handling. The presence of an output schema reduces but doesn't eliminate the need for more complete operational guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage and only one parameter, the description provides the essential semantic meaning for 'task_id' ('要开始的任务ID' - the task ID to start). While it doesn't specify format constraints or validation rules, it clearly explains what the parameter represents. For a single-parameter tool, this is adequate though not comprehensive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('将任务从"待办"推进到"进行中"' - moves a task from 'todo' to 'in progress'), identifies the resource (task), and distinguishes it from siblings like 'complete_task' (which would move to a different state) and 'update_task' (which is more general). The verb+resource+state change combination is precise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning the starting state ('待办' - todo) and the target state ('进行中' - in progress), but doesn't explicitly state when to use this vs. alternatives like 'complete_task' or 'update_task'. It provides some guidance through the state transition description but lacks explicit comparison or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool retrieves details and can optionally include body content, which is useful behavioral context. However, it doesn't mention permissions, rate limits, error conditions, or whether it's a read-only operation (though 'get' implies read-only). The description adds some value but lacks comprehensive 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and concise. The first sentence states the purpose clearly, followed by organized sections for Args and Returns. Every sentence adds value: the purpose, parameter explanations, and return behavior. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (2 parameters, no nested objects) and the presence of an output schema (which handles return values), the description is reasonably complete. It covers purpose, parameters, and return conditions. However, for a tool with no annotations, it could benefit from more behavioral context like error handling or permissions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does 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 provides clear semantics for both parameters: note_id as a Notion page ID and include_content as a boolean controlling body content inclusion, with a default value. This adds meaningful context beyond the bare schema. However, it doesn't specify the format of note_id (e.g., UUID) or detail what 'body 内容' entails.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '获取单篇笔记的完整详情(含 body 内容)' (Get the complete details of a single note, including body content). It specifies the verb ('获取' - get) and resource ('笔记' - note), and distinguishes it from sibling tools like list_notes or search_notes by focusing on a single note. However, it doesn't explicitly differentiate from get_task or other get_* tools beyond the resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying it's for retrieving a single note's details, suggesting it should be used when you have a specific note_id. However, it lacks explicit guidance on when to use this versus alternatives like list_notes (for multiple notes) or search_notes (for filtered searches). No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses the append behavior (adds to end, doesn't replace) and mentions the return format ('更新后的任务元信息(不含完整 body)' - updated task metadata without full body). However, it doesn't cover permissions needed, error conditions, or whether the operation is idempotent/reversible, leaving gaps for a mutation 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured: first sentence states purpose and behavior, followed by clear Arg/Returns sections. Every sentence adds value—no fluff. It's front-loaded with the core action and uses bullet-like formatting for parameters and returns, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter mutation tool with no annotations but an output schema (which handles return values), the description is reasonably complete. It covers purpose, parameters, and return scope, though could improve by mentioning auth needs or error cases. The output schema existence reduces the burden, but some behavioral context (e.g., idempotency) is still missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does 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 clearly explains both parameters: task_id ('任务的 Notion 页面 ID' - Notion page ID of the task) and content ('要追加的文本内容' - text content to append). This adds essential meaning beyond the bare schema types (string, string), though it doesn't specify format constraints (e.g., ID structure, content length).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('向已有任务追加内容' - append content to existing task) and resource ('任务' - task), distinguishing it from siblings like create_task (creates new) or update_task (general update). It specifies the exact location ('追加到页面 body 末尾' - append to end of page body), making the 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 Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for appending to existing tasks, but doesn't explicitly state when to use this vs alternatives like update_task (which might replace content) or create_task (for new tasks). It mentions the task must already exist ('已有任务'), providing some context, but lacks explicit guidance on prerequisites or comparison with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses that this is a mutation operation ('更新' meaning 'update') and that it performs a rewrite/replacement of the subtask block. However, it doesn't mention permission requirements, whether changes are reversible, rate limits, or error conditions. The description adds some behavioral context but leaves significant gaps for a mutation 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, Args, Returns) and uses bullet points effectively. Every sentence earns its place by providing essential information. It could be slightly more concise by combining some lines, but overall it's efficient and front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations but with an output schema (implied by the Returns section), the description provides good coverage. It explains the purpose, parameters thoroughly, and return value. The main gap is lack of behavioral warnings or prerequisites that would be important for a write operation, but the parameter documentation is excellent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by providing complete parameter documentation. It clearly explains both parameters: 'task_id' as the Notion page ID, and 'subtasks' as a complete list with detailed structure including field names, types, and enum values for status and priority. This adds substantial meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('更新' meaning 'update'), the resource ('任务的子目标列表' meaning 'task subtask list'), and the mechanism ('重写页面 body 中的子目标区块' meaning 'rewrite the subtask block in the page body'). It distinguishes from sibling tools like 'append_task' or 'update_task' by focusing specifically on subtasks rather than tasks themselves.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to replace the entire subtask list, but doesn't explicitly state when to use this vs alternatives like 'append_task' or 'update_task' (which might handle subtasks differently). It provides some context about '重写' (rewrite) suggesting complete replacement, but lacks explicit guidance on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that tags and note fields will completely replace existing values ('会完整替换原有标签', '会替换原有备注'), which is important behavioral context. However, it doesn't mention permission requirements, error conditions, or whether updates are idempotent/reversible. The description doesn't contradict any annotations (since none exist).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a clear purpose statement followed by an Args section with bullet-point parameter explanations and a Returns section. Every sentence earns its place by providing essential information. It could be slightly more concise by integrating the purpose statement with the parameter section more tightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters with 0% schema coverage and no annotations, the description does an excellent job explaining parameter semantics and partial update behavior. The presence of an output schema means the description doesn't need to detail return values. However, it could better address mutation-specific concerns like error handling or idempotency given it's an update tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate fully. It provides excellent parameter semantics: it explains each parameter's purpose, format constraints (e.g., '格式 YYYY-MM-DD' for due_date), optional values with enumerations (status and priority options), and behavioral implications (tags and note replace existing values). This adds significant value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '更新一个已有任务的属性' (update properties of an existing task). It specifies the verb (update), resource (task), and scope (only pass fields that need modification). This distinguishes it from sibling tools like create_task, append_task, and complete_task by focusing on partial updates of existing tasks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through '只传需要修改的字段' (only pass fields that need modification), suggesting partial updates. However, it doesn't explicitly state when to use this tool versus alternatives like complete_task (which might handle status changes specifically) or update_subtasks. No explicit exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly describes the mutation behavior (appending content) and specifies the location of the append (end of page body). However, it doesn't mention important behavioral aspects like whether this requires specific permissions, if there are size limits on content, or how conflicts are handled if multiple users append simultaneously.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly structured and concise. The first sentence clearly states the purpose, followed by well-organized sections for Args and Returns. Every sentence earns its place, with no redundant information. The information is front-loaded with the core functionality stated immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations but with an output schema (implied by 'Has output schema: true'), the description does a good job. It explains the core functionality, documents parameters, and specifies the return value ('更新后的笔记元信息(不含完整 body)' - updated note metadata without full body). However, for a mutation tool with zero annotation coverage, it could benefit from more behavioral context about side effects or constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explicitly documents both parameters (note_id and content) with clear Chinese explanations, despite 0% schema description coverage. It provides essential semantic information: note_id identifies the target note, and content is the text to append. This fully compensates for the lack of schema descriptions, though it doesn't provide format details like note_id structure or content encoding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('向已有笔记追加内容' - append content to existing note), the target resource ('笔记' - note), and the precise location ('追加到页面 body 末尾' - append to end of page body). It effectively distinguishes this from sibling tools like create_note (which creates new notes) and get_note (which retrieves notes).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by specifying this is for '已有笔记' (existing notes), implying it should not be used for creating new notes. However, it doesn't explicitly state when NOT to use this tool or name specific alternatives for different scenarios (e.g., when to use update_task vs append_note for task-related content).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses that the tool creates new tasks with default status, which implies mutation/write behavior. However, it doesn't mention authentication requirements, rate limits, error conditions, or what happens on conflicts. The description adds basic behavioral context but misses important operational details for a creation 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with purpose statement followed by organized parameter documentation and return information. The description is appropriately sized for a 6-parameter creation tool, though the parameter documentation section is somewhat verbose. Every sentence serves a clear purpose with no wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with no annotations but with output schema present, the description provides good coverage: clear purpose, detailed parameter semantics, and mentions return value ('创建成功的任务详情' - details of successfully created task). The output schema existence means the description doesn't need to explain return structure, making this reasonably complete for the context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by providing detailed semantic information for all 6 parameters: clarifies which are required ('name' is required), explains optional parameters, provides format specifications ('YYYY-MM-DD' for due_date), enumerates priority options with emoji mappings, and gives examples for tags. This adds substantial value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('创建一个新任务' - create a new task) and resource ('在工作流库中' - in the workflow library), distinguishing it from sibling tools like 'append_task' or 'update_task' which modify existing tasks. It also specifies the default status ('状态默认为"待办"' - status defaults to 'pending'), providing precise scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying it's for creating new tasks in the workflow library, but doesn't explicitly state when to use this vs. alternatives like 'append_task' (which might add to existing tasks) or 'create_note' (for different resource types). It provides clear prerequisites (required 'name' parameter) but lacks explicit exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the return format ('任务列表,按优先级排序' - task list sorted by priority) which is valuable behavioral information. However, it doesn't mention pagination, error conditions, authentication needs, or rate limits that would be helpful for a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences that each earn their place: the first defines scope and purpose, the second specifies return format and sorting. No wasted words, perfectly front-loaded with the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (which handles return value documentation) and no parameters, the description provides adequate context about what the tool retrieves and how it's sorted. For a simple read-only tool with output schema, this is reasonably complete, though it could benefit from more behavioral transparency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0 parameters and 100% schema description coverage, the baseline would be 4. The description doesn't need to explain parameters since there are none, and it appropriately focuses on what the tool does rather than parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs and resources: '获取今日相关任务' (get today-related tasks) and defines scope as '今天到期的任务 + 所有进行中的任务' (tasks due today + all ongoing tasks). It distinguishes from siblings like list_tasks or get_task by focusing specifically on today's context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about when to use this tool (for tasks due today or ongoing), but doesn't explicitly mention when NOT to use it or name alternatives. It implies usage for today-focused task retrieval versus general listing tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/wauwaya/notion-workflow-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server