Skip to main content
Glama

Plaky MCP Server

A Model Context Protocol server that exposes the Plaky project-management REST API to MCP-compatible AI clients (Claude Desktop, Claude Code, Cursor, etc.).

It wraps the full Plaky public API surface — spaces, boards, items/subitems, fields, comments, reactions, files, users and teams — as 26 well-described tools.

Features

  • Workspace — current user, list/get users (filter by email/status/type), list/get teams

  • Spaces & boards — list/get spaces, list boards, get board structure (groups, fields, allowed values)

  • Items — list (with view/parent/expand filters + pagination), get, create item or subitem, delete

  • Fields — update one field or many at once, by field key or title, with per-type value formats

  • Comments — list, create (incl. replies), update, delete, and set emoji reactions

  • Files — list, get, upload (from a local path), rename/describe, delete, download

  • Clean error reporting (status + API error body), 429 rate-limit awareness, 1-indexed pagination with hasMore.

Related MCP server: Clickup Universal MCP Server

Install

npm install plaky-mcp

Or run without installing globally:

npx plaky-mcp

You need a Plaky API key (Plaky → Profile settings → API). It is sent as the X-API-Key header on every request.

Client configuration

Claude Desktop / Claude Code (claude_desktop_config.json or .mcp.json)

{
  "mcpServers": {
    "plaky": {
      "command": "npx",
      "args": ["-y", "plaky-mcp"],
      "env": {
        "PLAKY_API_KEY": "your-api-key"
      }
    }
  }
}

For Claude Code you can also run:

claude mcp add plaky --env PLAKY_API_KEY=your-api-key -- npx -y plaky-mcp

Cursor

Add to your MCP settings (.cursor/mcp.json or Cursor Settings → MCP):

{
  "mcpServers": {
    "plaky": {
      "command": "npx",
      "args": ["-y", "plaky-mcp"],
      "env": {
        "PLAKY_API_KEY": "your-api-key"
      }
    }
  }
}

Development

git clone https://github.com/pavlealeksic/plaky-mcp.git
cd plaky-mcp
npm install
npm run build
export PLAKY_API_KEY="your-api-key"
npm start

Environment variables

Variable

Required

Description

PLAKY_API_KEY

yes

Plaky API key, sent as X-API-Key.

PLAKY_BASE_URL

no

Override the API base URL (default https://api.plaky.com).

Tool reference

All tools are prefixed plaky_. IDs are integers. Typical flow: plaky_list_spacesplaky_list_boardsplaky_get_board (to learn field keys and allowed values) → plaky_list_items / plaky_create_item / plaky_update_item_fields.

Tool

Description

plaky_get_current_user

The API key's owner (verify auth).

plaky_list_users / plaky_list_teams / plaky_get_team

Workspace members and teams.

plaky_list_spaces / plaky_get_space

Spaces (optionally expand boards).

plaky_list_boards / plaky_get_board

Boards and board structure.

plaky_list_items / plaky_get_item / plaky_list_subitems

Read items.

plaky_create_item / plaky_delete_item

Create item/subitem; delete item.

plaky_update_item_field / plaky_update_item_fields

Change one / many field values.

plaky_list_item_comments / plaky_create_item_comment / plaky_update_item_comment / plaky_delete_item_comment

Comments.

plaky_set_comment_reactions

Set the caller's emoji reactions on a comment.

plaky_list_item_files / plaky_get_item_file / plaky_upload_item_file / plaky_update_item_file / plaky_delete_item_file / plaky_download_item_file

File attachments.

Field value formats

When setting fields (on create/update), keys are field keys ("status-1") or titles ("Status"). Values by type:

Type

Example

String / Rich text

"some text"

Number

13.4

Date

"2026-01-02T18:10:15.254Z"

Timeline

{ "start": "...", "end": "..." }

Status

"To do" or label id "1"

Tag

["Product", "HR"] (titles or ids)

Link

"https://..." or { "url": "...", "displayText": "..." }

Person

{ "users": [{ "id": "1" }, { "email": "x@y.com" }], "teams": [{ "id": 1 }] }

npm run dev    # tsx watch on src/index.ts
npm run build  # tsc -> dist/

Notes

  • Rate limit: 200 requests / user / minute; exceeding it returns HTTP 429.

License

MIT

Available Tools

26 tools
plaky_create_itemCreate an item or subitemA

Create a new item (row) on a board, or a subitem when parentId is set. Place it in a group via groupId or groupTitle (defaults to the first group). Set initial field values via fields: an object keyed by field key (e.g. "status-1") or field title (e.g. "Status"). Value formats by field type — String/RichText: "text"; Number: 13.4; Date: "2026-01-02T18:10:15.254Z"; Timeline: {start, end}; Status: "To do" or label id "1"; Tag: ["Product","HR"] or ids; Link: "https://..." or {url, displayText}; Person: {users:[{id}|{email}], teams:[{id}|{title}]}. Call plaky_get_board first to discover available fields and allowed values.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoItem title. Defaults to "New Item" / "New Subitem".
fieldsNoInitial field values keyed by field key or title. See tool description for value formats.
boardIdYesUnique board identifier.
groupIdNoId of the group to create the item in.
spaceIdYesUnique space identifier.
parentIdNoIf set, creates a subitem under this parent item id instead of a top-level item.
groupTitleNoTitle of the group to create the item in (used if groupId is omitted).

TDQS

A4/5.0
Behavior3/5

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

No annotations, so description carries the burden. It indicates a write operation (create) but lacks details on failure modes, rate limits, or authentication needs. However, it does not contradict any unstated 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/5

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

The description is informative and well-structured, starting with the core purpose. It is not excessively long, though some redundancy exists (e.g., explaining parentId in both description and schema).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, so the description should explain return values, but it does not mention what is returned (e.g., created item ID). The guidance on plaky_get_board is helpful, but the gap in output info detracts from completeness.

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%, baseline 3. The description adds significant value by detailing value formats for fields and default behavior, exceeding the schema's minimal descriptions.

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 clearly states the tool creates a new item or subitem, specifying the verb (create), resource (item/subitem), and condition (parentId). It distinguishes from sibling tools like update tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description advises calling plaky_get_board first to discover fields and values, setting a clear prerequisite. It implies alternatives (update tools) but does not explicitly state when not to use this tool.

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

plaky_create_item_commentCreate item commentB

Add a comment to an item. Set repliesToId to post the comment as a reply to an existing comment.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesComment text.
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
repliesToIdNoId of the comment this is a reply to.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations exist, so the description must cover behavioral traits. It only states the action without disclosing side effects (e.g., write access required, rate limits) or return behavior. This is insufficient 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/5

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

The description is extremely concise—one sentence that front-loads the primary action and adds a critical detail about replies. Every word is useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (5 params, no output schema), the description is adequate but minimal. It lacks information on response behavior, error handling, or constraints beyond the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All parameters are described in the schema (100% coverage). The description adds value by clarifying that 'repliesToId' is used to post as a reply, which the schema also conveys. No additional semantics for required params.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Add a comment to an item,' which matches the tool's name and title. It is specific enough to distinguish from sibling tools like update or delete, though it does not explicitly name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like plaky_update_item_comment or plaky_delete_item_comment. There is no mention of prerequisites or context.

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

plaky_delete_itemDelete an itemA

Permanently delete an item (and its subitems) by id. This cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.

TDQS

A3.5/5.0
Behavior3/5

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

The description explicitly states the deletion is permanent and irreversible, but does not disclose what happens to related data (e.g., comments, files) or any authorization requirements.

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

Conciseness5/5

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

The description is two short sentences that front-load the action with no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is adequate for a simple deletion tool but lacks details on return values, error handling, and relationship to sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds no additional meaning to the parameters beyond what is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it permanently deletes an item and its subitems by ID, distinguishing it from sibling tools that delete comments or files.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like plaky_create_item or plaky_delete_item_comment.

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

plaky_delete_item_commentDelete item commentC

Permanently delete a comment by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
itemCommentIdYesUnique comment identifier.

TDQS

C2.9/5.0
Behavior2/5

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

The description mentions 'permanently delete', which implies irreversibility, but with no annotations, it lacks disclosure of required permissions, side effects, or return behavior. This is minimal 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/5

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

A single sentence that is direct and front-loads the essential action. It is concise without being under-specified, though it could add more context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple delete operation with four required IDs, the description provides the core purpose but omits behavioral context (e.g., permissions, response format) that would benefit an agent, especially given the absence of any annotations or output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema covers 100% of parameters with descriptions. The description adds no further meaning beyond 'by id', so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('delete') and the resource ('comment'), and specifies identification by ID. It is specific enough to distinguish from sibling tools like plaky_delete_item, but it does not explicitly differentiate itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as updating or fetching comments. There is no mention of prerequisites or conditions.

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

plaky_delete_item_fileDelete item fileB

Permanently delete a file attached to an item.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
itemFileIdYesUnique item file identifier.

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations, the description carries full burden. It mentions 'permanently delete' but lacks details on permissions needed, side effects, irreversibility consequences, or error handling—important for a destructive 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/5

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

Single, front-loaded sentence of 6 words with no redundancy, achieving maximal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite simplicity, the description omits success/error return behaviors and fails to explain what happens after deletion, leaving gaps for a mutation tool with no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema covers all 4 parameters with brief descriptions; the tool description adds no extra parameter meaning, meeting the baseline for high coverage.

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 clearly states a specific action (permanently delete) and resource (file attached to an item), distinguishing it from sibling tools like update, download, upload, get, list, and delete_item.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide explicit guidance on when to use this tool versus alternatives or any prerequisites, though the action is straightforward and sibling tool names self-explanatory.

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

plaky_download_item_fileDownload item fileA

Download a file attached to an item. If the API returns JSON (e.g. a presigned download URL) that is returned directly. If it returns binary content, provide savePath to write it to disk; the tool then returns the saved path and size. Binary content is never streamed into the conversation.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
savePathNoAbsolute path to write the downloaded bytes to (required if the API returns raw file content).
itemFileIdYesUnique item file identifier.

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, description fully carries burden. Discloses that JSON responses are returned directly, binary requires savePath, and binary contents are never streamed into conversation. Adds critical behavioral context beyond basic purpose.

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

Conciseness5/5

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

Three tightly written sentences: first states purpose, next two detail behavior. Front-loaded, no irrelevant details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a download tool with 5 parameters and no output schema, description explains when parameters are needed and what outputs to expect. Lacks mention of error conditions (e.g., invalid IDs), but covers core usage.

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 already covers 100% of parameters with descriptions. Description adds value by clarifying that savePath is required for binary responses and explaining the output handling for both cases.

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?

Clearly states 'Download a file attached to an item' and distinguishes behavior between JSON and binary responses. Specifically distinguishes from sibling tools like get_item_file and upload_item_file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Describes when to use (to download file) and provides context on JSON vs binary responses. Does not explicitly mention when not to use, but implied by sibling set.

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

plaky_get_boardGet board by idA

Get a single board by id, including its structure: groups, field/column definitions and their configurations (status labels, tag labels, etc.). Read this before creating or updating items so you know the available field keys/titles and allowed values.

ParametersJSON Schema
NameRequiredDescriptionDefault
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.

TDQS

A4.3/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. It explains the return content in detail (groups, field definitions, labels), which adds value beyond the input schema. Although it doesn't explicitly state read-only nature, it's inferred from 'Get'.

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

Conciseness5/5

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

Two sentences, no wasted words. First sentence states primary function and output, second provides usage guidance. Well-structured and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, description sufficiently explains what the response contains (groups, field definitions, labels). It also gives critical usage context for creation/update workflows, making it fully helpful for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for both parameters. Description adds no parameter-specific detail but uses 'by id' to reinforce the boardId parameter. Baseline 3 is appropriate.

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?

Description clearly states 'Get a single board by id' and specifies what is included (structure, groups, field/column definitions, configurations). It distinguishes from sibling tools like plaky_list_boards by indicating the depth of information returned.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description explicitly recommends reading this before creating or updating items to know available field keys and allowed values. While it doesn't name alternative tools, the context implies when to use this versus list boards.

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

plaky_get_current_userGet current userA

Get the user that owns the API key making the request. Useful for verifying authentication and discovering the caller's user id.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

Although no annotations are provided, the description accurately represents the tool's behavior as a read-only, safe operation with no side effects. It adds value by clarifying the purpose beyond the schema.

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

Conciseness5/5

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

The description is extremely concise, consisting of two sentences that pack all necessary information without any wasted words.

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?

The description fully explains the tool's purpose and use case. Despite lacking an output schema, it provides sufficient context about the return value (the current user).

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?

With zero parameters and 100% schema coverage, the description does not need to add parameter details. The baseline for no parameters is 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?

The description clearly states the verb 'Get', the resource 'current user', and its purpose for authentication verification. It distinguishes itself from siblings as no other tool retrieves the current user.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly mentions use cases ('verifying authentication', 'discovering caller's user id'), providing clear context for when to use. However, it lacks explicit guidance on when not to use or alternatives.

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

plaky_get_itemGet item by idB

Get a single item by id, including its field values.

ParametersJSON Schema
NameRequiredDescriptionDefault
expandNoRelationships to expand into full objects instead of bare IDs, e.g. ["fields","group"].
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are present, so the description carries the full burden. It only says 'including its field values' but fails to disclose that it is a read-only operation, potential error conditions (e.g., item not found), or any authorization requirements. The agent has no insight into side effects or safety.

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

Conciseness5/5

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

The description is a single, concise sentence that efficiently conveys the core purpose. Every word is necessary, and there is no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description should explain the return value structure. It mentions 'including its field values' but does not describe what other fields are returned, the format of the response, or how the expand parameter alters the output. This leaves the agent without enough context to handle the response correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All parameters are already well-described in the input schema with 100% coverage. The description adds no additional meaning beyond the schema, such as clarifying the expand parameter's effect or parameter relationships. Baseline score of 3 is appropriate.

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 clearly states the action ('Get'), the resource ('a single item by id'), and includes that field values are returned. This distinguishes it from sibling tools like plaky_list_items, which retrieves multiple items, and plaky_get_item_file, which retrieves a file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidance is provided. The description does not indicate when to use this tool over alternatives (e.g., plaky_list_items for multiple items), nor does it mention prerequisites or context like needing itemId, boardId, and spaceId to be known.

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

plaky_get_item_fileGet item file detailsA

Get metadata for a single file attached to an item.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
itemFileIdYesUnique item file identifier.

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations, the description states it retrieves metadata, implying a read-only operation with no side effects. This is sufficient for a simple retrieval 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/5

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

Single sentence, no wasted words, clearly conveys the tool's purpose. Front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema is provided, and the description does not explain what metadata is returned (e.g., file name, size, type). While adequate for a simple retrieval, it could be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers all four parameters with descriptions (100% coverage), so the description adds no additional meaning beyond what the schema already provides. Baseline score of 3 is appropriate.

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?

Description 'Get metadata for a single file attached to an item' uses a specific verb ('Get') and resource ('metadata for a single file'), clearly distinguishing it from sibling tools like download, delete, or upload.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives (e.g., plaky_download_item_file for actual file content). The usage context is implied but not stated.

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

plaky_get_spaceGet space by idB

Get a single space by its id.

ParametersJSON Schema
NameRequiredDescriptionDefault
expandNoSet to ["board"] to include full board objects instead of IDs.
spaceIdYesUnique space identifier.

TDQS

B3.3/5.0
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 only states the basic action, omitting details about read-only nature, error handling, or authorization requirements.

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

Conciseness5/5

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

The description is a single concise sentence with no unnecessary words, 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.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (2 parameters, no output schema), the description is somewhat minimal. It does not hint at the return structure or potential use cases, but it is adequate for a basic get-by-id operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides descriptions for both parameters (spaceId and expand), achieving 100% coverage. The description adds no additional meaning beyond what the schema provides, so baseline 3 is appropriate.

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 'Get a single space by its id.' uses a specific verb and resource, clearly stating the tool's purpose. It distinguishes itself from sibling tools like plaky_list_spaces (for listing) and plaky_get_board (for boards).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., plaky_list_spaces). There is no mention of prerequisites, context, or when not to use it.

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

plaky_get_teamGet team by idB

Get a single team by its id.

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesUnique team identifier.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided. Description is minimal and does not disclose any behavioral traits such as idempotency, authentication needs, or response format.

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

Conciseness5/5

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

Extremely concise and front-loaded with the essential action. Single sentence with no extraneous words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple get tool with one parameter and no output schema, the description is minimally adequate but could mention that it returns the team object for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a clear parameter description ('Unique team identifier'). Description adds no extra meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Get a single team by its id' with a specific verb and resource. It distinguishes from sibling plaky_list_teams which retrieves all teams.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does 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 plaky_list_teams for multiple teams. Lacks when-not or exclusion criteria.

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

plaky_list_boardsList boards in a spaceA

List the boards contained in a given space. Supports pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-indexed). Omit for the first page.
spaceIdYesUnique space identifier.
pageSizeNoNumber of results per page. Omit for the API default.

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided. Description only states listing and pagination, not whether it's read-only or has other behavioral traits. Adequate for a simple list 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/5

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

Extremely concise: two short sentences with no unnecessary information. Well-front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but the tool is simple. Could mention return format, but not essential given the straightforward operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents parameters well. Description only adds that it supports pagination, not adding new meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states verb 'List', resource 'boards', and scope 'in a given space'. Distinguishes it from sibling tools like 'plaky_list_spaces' and 'plaky_list_items'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Mentions pagination support but provides no guidance on when to use this tool versus alternatives or when not to use it.

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

plaky_list_item_commentsList item commentsB

List all comments on an item, including replies and reaction details.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description must cover behavioral traits. It only states what the tool returns (comments with replies and reactions) but does not disclose read-only behavior, rate limits, or any side effects. For a list tool, 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.

Conciseness5/5

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

The description is a single, focused sentence with no unnecessary words. It efficiently conveys the tool's function and scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list operation with no output schema, the description adequately covers the return content (comments, replies, reactions). It could be improved by mentioning the structure or pagination, but given the low complexity, it is nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters (spaceId, boardId, itemId) are described in the schema with clear identifiers. The description does not add additional meaning beyond what the schema provides, so a baseline score of 3 is appropriate.

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 clearly states the verb 'List', the resource 'comments on an item', and specifies that replies and reaction details are included. This distinguishes it from sibling tools like creating or deleting comments.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like plaky_set_comment_reactions or plaky_update_item_comment. The description lacks context for appropriate usage scenarios.

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

plaky_list_item_filesList item filesB

List the files attached to an item.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are present, so the description carries full burden. It only states the action without disclosing whether the operation is read-only, what permissions are needed, or any side effects. The description does not add behavioral context beyond the basic action.

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

Conciseness5/5

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

The description is a single sentence that efficiently conveys the core action. It is front-loaded with the verb and resource, containing no superfluous words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the tool is simple with 3 required parameters and no output schema, the description does not mention what the list returns (e.g., file IDs, names, metadata). A more complete description would clarify the output format, but the tool is still usable with minimal context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with each parameter described (itemId, boardId, spaceId as unique identifiers). The description adds no additional meaning beyond the schema, meeting the baseline for high coverage.

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 'List the files attached to an item.' uses a specific verb ('List') and resource ('files attached to an item'), clearly distinguishing it from sibling tools like 'plaky_get_item_file' (single file) and 'plaky_upload_item_file' (create).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'plaky_get_item_file' for a specific file. No exclusions or context are given, leaving the agent without decision support.

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

plaky_list_itemsList board itemsA

List items (rows) on a board, with optional filtering. Supports pagination; the response includes a hasMore flag indicating whether more pages exist.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-indexed). Omit for the first page.
expandNoRelationships to expand into full objects instead of bare IDs, e.g. ["fields","group"].
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
pageSizeNoNumber of results per page. Omit for the API default.
parentIdNoReturn subitems of this parent item id instead of top-level items.
boardViewIdNoRestrict to a specific board view's filtering/sorting.
subitemsBehaviourNoHow subitems are treated: INCLUDE (default), EXCLUDE, or EMBED nested under their parent.

TDQS

A3.5/5.0
Behavior3/5

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

Description mentions pagination with a `hasMore` flag but does not disclose side effects, permissions, or error behavior. With no annotations, the description carries the burden but provides only partial transparency.

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

Conciseness5/5

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

Two sentences, front-loaded with purpose, no redundancy. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks details on response format (beyond hasMore), how filtering works, or interpretation of results for 8 parameters. Adequate but not fully complete for a list tool with many options.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% parameter coverage with descriptions, so the description adds minimal new meaning beyond summarizing 'optional filtering' and 'pagination'. Baseline 3 is appropriate.

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 clearly states it lists items on a board with optional filtering and pagination. It distinguishes itself from sibling tools like plaky_create_item, plaky_get_item, etc. by focusing on listing all items.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this versus alternatives (e.g., plaky_get_item for a single item, plaky_list_subitems for subitems). The description implies usage for listing but lacks when-not-to or context for other tools.

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

plaky_list_spacesList spacesB

List spaces in the workspace. Spaces are top-level containers that hold boards. Use expand=["board"] to include full board objects.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-indexed). Omit for the first page.
expandNoSet to ["board"] to include full board objects instead of IDs.
pageSizeNoNumber of results per page. Omit for the API default.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided, so description must cover behavior. It mentions expand parameter but does not disclose pagination behavior, read-only nature, authentication requirements, or rate limits.

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

Conciseness5/5

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

Two sentences, front-loaded with purpose and parameter hint. No redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple tool with no output schema – description covers purpose and key parameter. Lacks usage guidelines and behavioral details, but is adequate for a straightforward listing operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, giving baseline 3. Description adds value by explaining the expand parameter's effect, but adds nothing for page or pageSize beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool lists spaces, which are top-level containers. It distinguishes from sibling tools like plaky_list_boards by describing the hierarchy, but does not explicitly differentiate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does 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 such as plaky_get_space or plaky_list_boards. No exclusions or context provided.

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

plaky_list_subitemsList subitems of an itemB

List the subitems nested under a given item. Supports pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-indexed). Omit for the first page.
expandNoRelationships to expand into full objects instead of bare IDs, e.g. ["fields","group"].
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
pageSizeNoNumber of results per page. Omit for the API default.

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description bears the full burden. It only mentions pagination support but fails to disclose expected behavior such as response format, error handling, authorization requirements, or whether subitems are returned flat or hierarchically.

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

Conciseness3/5

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

The description is very short (one sentence plus phrase), which is concise but too brief – it omits important details about behavior and usage, so it does not fully 'earn its place'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 6 parameters and no output schema, the description is minimal. It does not cover return format, pagination defaults, or what constitutes a subitem, leaving gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no parameter-specific meaning beyond what the schema already provides (e.g., pagination context is already in parameters).

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 clearly states the verb 'list' and the resource 'subitems nested under a given item', which distinguishes it from sibling tools like plaky_list_items (lists top-level items) and plaky_get_item (single item). 'Supports pagination' adds scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when subitems of an item are needed, but it does not explicitly state when to use this tool vs alternatives (e.g., plaky_list_items for top-level items) or provide exclusions or prerequisites.

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

plaky_list_teamsList workspace teamsB

List all teams in the workspace. Supports pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-indexed). Omit for the first page.
pageSizeNoNumber of results per page. Omit for the API default.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided, and description only mentions pagination. Does not disclose read-only nature, authentication requirements, rate limits, or response behavior beyond pagination.

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

Conciseness5/5

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

Two sentences, no wasted words. Front-loaded with verb and resource. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list with pagination, description is adequate but lacks details like default page size, how to iterate for all teams, and response format. No output schema, so slight gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so schema already describes both parameters. Description adds 'Supports pagination' but does not add new meaning beyond what schema provides. Baseline 3 applies.

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?

Clearly states the verb 'list', the resource 'teams', and scope 'workspace'. Distinguishes from sibling 'plaky_get_team' by indicating it returns all teams.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like 'plaky_get_team'. Lacks any when-to-use or when-not-to-use context.

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

plaky_list_usersList workspace usersA

List users in the workspace. Optionally filter by emails, status, or membership type. Supports pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-indexed). Omit for the first page.
typeNoFilter by workspace membership type.
emailsNoFilter to users with these email addresses.
statusNoFilter by account status.
pageSizeNoNumber of results per page. Omit for the API default.

TDQS

A4/5.0
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 states the tool lists users and supports filters/pagination, which implies a read-only operation. However, it does not disclose any side effects, required permissions, or rate limits. For a simple list tool, this is adequate but not comprehensive.

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

Conciseness5/5

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

Two sentences, front-loaded with the main action, no unnecessary words. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with 5 optional parameters and no output schema, the description covers the core purpose and filtering options. It mentions pagination but does not detail the return structure, which is acceptable given the lack of output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description summarizes the parameters (emails, status, membership type, pagination) but does not add meaning beyond what the schema already provides.

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 clearly states the verb 'List', the resource 'users in the workspace', and mentions filtering and pagination. It distinguishes itself from sibling tools which list other entities (boards, items, spaces, etc.).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for listing workspace users with optional filters, but does not explicitly state when to use or when not to use alternatives. Since no sibling tool lists users, the context is clear enough.

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

plaky_set_comment_reactionsSet comment reactionsA

Set the authenticated user's reactions on a comment. This OVERRIDES any existing reactions by the caller; pass an empty array to remove all of them. Each reaction is an emoji's unicode codepoint without the "U+" prefix (case-insensitive) — e.g. "1f44d" (thumbs up), "2705" (check mark), "2764" (heart).

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
reactionsYesEmoji unicode codepoints (no "U+" prefix), e.g. ["1f44d"]. Empty array removes all.
itemCommentIdYesUnique comment identifier.

TDQS

A4.2/5.0
Behavior3/5

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

Without annotations, the description carries the full burden. It discloses the overriding behavior and emoji codepoint format, but does not mention error handling, idempotency, or potential side effects. Adequate but not comprehensive.

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

Conciseness5/5

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

Two sentences, each conveying essential information without fluff. The purpose is front-loaded, and the behavior is explained directly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no output schema, the description sufficiently explains the action, parameter format, and override behavior. Minor gap: no mention of return value or confirmation, but not critical.

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%, but the description adds value by explaining case-insensitivity and the no 'U+' prefix rule for emoji codepoints, which is not evident from the schema alone.

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 clearly states the tool sets the authenticated user's reactions on a comment, explicitly noting it overrides existing reactions. The verb 'Set' and resource 'reactions on a comment' are specific and distinct from sibling tools like plaky_update_item_comment.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear guidance on when to use the tool: to set reactions, with explicit notes on overriding and how to remove all reactions via empty array. It does not explicitly exclude use cases but the context is sufficient.

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

plaky_update_item_commentUpdate item commentB

Edit the text of an existing comment.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesNew comment text.
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
repliesToIdNoId of the comment this is a reply to.
itemCommentIdYesUnique comment identifier.

TDQS

B3.3/5.0
Behavior2/5

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

No annotations provided; description only states the basic action without disclosing side effects, permissions, or failure modes. For a mutation tool, 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.

Conciseness5/5

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

Single sentence front-loaded with verb and resource, no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple tool with no output schema; missing context on parameter relationships (e.g., hierarchical identifiers) and optional 'repliesToId' behavior, but still functional.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema's property descriptions.

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 'Edit the text of an existing comment' uses a specific verb and resource, clearly distinguishing from sibling tools like create or delete comment.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does 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 (e.g., create instead of edit). No when-not-to or prerequisites mentioned.

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

plaky_update_item_fieldUpdate a single item field valueA

Change the value of one field on an item, identified by the field key or title (itemFieldKey). The value format depends on the field type — String/RichText: "text"; Number: 13.4; Date: "2026-01-02T18:10:15.254Z"; Timeline: {start, end}; Status: "To do" or "1"; Tag: ["Product","HR"]; Link: "https://..." or {url, displayText}; Person: {users:[{id}|{email}], teams:[{id}|{title}]}.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueNoNew field value. Format depends on the field type (see description).
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
itemFieldKeyYesField key (e.g. "status-1") or field title (e.g. "Status").

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the burden. It details the value format for various field types, which is crucial behavioral info. However, it omits side effects, permissions, or response format.

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 description is a single sentence that includes a long list of examples, making it dense but not verbose. It could be structured more clearly, but it contains essential info without fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description covers the input well but does not mention what the tool returns. Given the parameter count and schema coverage, it is fairly complete, but missing response details.

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 schema already defines parameters. The description adds significant value by explaining the value parameter format per field type, which the schema only hints at. Other parameters are not further elaborated.

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 clearly states the verb 'Change the value of one field on an item' and identifies the resource (field value) and key parameter (itemFieldKey). It distinguishes from siblings like plaky_update_item_fields (multiple fields) and plaky_create_item (create items).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs. alternatives. While the description implies it's for updating a single field, it lacks explicit when-not-to-use or alternative scenarios.

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

plaky_update_item_fieldsUpdate multiple item field valuesA

Change several field values on an item in one request. fields is an object keyed by field key or title, with values following the same per-type formats as plaky_create_item (e.g. {"Status":"Done", "number-1":42}).

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsYesObject mapping field key/title to new value. See plaky_create_item for value formats.
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.

TDQS

A4.2/5.0
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 changes field values (a mutation) and references value formats from plaky_create_item, which is helpful. However, it does not mention side effects, permissions, or what happens to unspecified fields. This is a moderate level of transparency.

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

Conciseness5/5

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

The description is extremely concise: two sentences that cover purpose and key parameter detail. No unnecessary words; every sentence adds value. It is front-loaded with the main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters, one nested object, and no output schema, the description is sufficiently complete for correct invocation. It explains the critical 'fields' parameter well. However, it could optionally mention return values or error handling, but this is not a significant gap.

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 baseline is 3. The description adds meaning beyond the schema by explaining that 'fields' is an object keyed by field key or title with per-type formats (e.g., examples). This clarifies the parameter usage beyond the schema's description.

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 clearly states the tool's purpose: 'Change several field values on an item in one request.' The verb 'change' and resource 'field values' are specific. The mention of 'several' and 'one request' distinguishes it from the sibling tool 'plaky_update_item_field' (singular).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies that this tool should be used when multiple fields need updating in one request, which is efficient. While it doesn't explicitly state when not to use or alternatives, the contrast with the singular sibling tool is clear. The guidance is adequate but could be more explicit.

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

plaky_update_item_fileUpdate item file metadataA

Rename a file or change its description. The original file extension/type is preserved regardless of the name given.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesNew file name.
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
itemFileIdYesUnique item file identifier.
descriptionNoNew file description.

TDQS

A4.2/5.0
Behavior3/5

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

No annotations provided, so description carries burden. It discloses that file extension is preserved, but lacks details on permissions, idempotence, 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.

Conciseness5/5

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

Two sentences, zero waste. Front-loaded with purpose and key behavioral trait.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Core operation is well covered. Lacks output schema and error details, but given schema completeness and no output schema requirement, it is adequate.

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 has 100% coverage for parameter descriptions. The description adds meaningful nuance about the name parameter (preserving extension), which goes beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool renames a file or changes its description, with a notable behavioral detail about preserving file extension. This clearly distinguishes it from siblings like delete, download, upload.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies when to use (rename or change description) but does not explicitly contrast with alternatives like plaky_update_item_field or plaky_upload_item_file.

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

plaky_upload_item_fileUpload a file to an itemA

Upload a local file and attach it to an item. Provide the absolute path to a file on the machine running this MCP server.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesUnique item identifier.
boardIdYesUnique board identifier.
spaceIdYesUnique space identifier.
fileNameNoOptional name to store the file as (defaults to the local file name).
filePathYesAbsolute path to the local file to upload.

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations provided, the description bears full responsibility for behavioral disclosure. It only mentions the absolute path requirement and fails to specify important traits like file size limits, overwrite behavior, authentication needs, or error handling for missing files.

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

Conciseness5/5

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

The description is two concise sentences with no wasted words. It begins with the action and immediately provides critical context (absolute path).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description is adequate for a simple upload but lacks key context such as file size limits, whether the file is stored permanently, or how to verify success. Some gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents all parameters. The description adds minimal extra meaning beyond emphasizing the absolute path requirement, which the schema already states. Baseline of 3 is appropriate.

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 clearly states the tool uploads a local file and attaches it to an item, using specific verbs ('upload', 'attach') and resource ('file', 'item'). It distinguishes itself from sibling tools like plaky_download_item_file and plaky_delete_item_file by specifying 'local file'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by instructing to provide an absolute path, but does not explicitly state when to use this tool compared to alternatives like plaky_update_item_file or plaky_delete_item_file. No when/when-not guidance is provided.

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

TDQS

A3.7/5.0
Disambiguation5/5

Each tool targets a distinct resource-action combination (e.g., create_item vs. create_item_comment, update_item_field vs. update_item_fields). There is no ambiguity between tools; even similar ones like list_items and list_subitems are clearly differentiated by resource.

Naming Consistency5/5

All tools follow the pattern 'plaky_<verb>_<noun>' in snake_case. Verbs are consistent (create, delete, get, list, update, etc.) and nouns correspond to the resource. No mixing of conventions.

Tool Count4/5

26 tools is on the higher side but still appropriate for a comprehensive project management MCP server covering items, comments, files, boards, spaces, users, and teams. Each tool serves a distinct purpose; the count is justified by the domain's breadth.

Completeness4/5

The tool surface covers core CRUD operations for items, comments, and files, plus listing for boards, spaces, users, teams, and subitems. Missing operations like creating/updating boards or spaces are minor gaps for a tool focused on item-level management.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/pavlealeksic/plaky-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server