TaskLite MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@TaskLite MCPCreate a backend for a CRM app with a deals board, columns, and a REST endpoint."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@tasklite/mcp
Documentation: https://tasklite.net/docs
TaskLite MCP server. Build a full backend from Claude Code (projects, boards, typed columns, data, REST endpoints with API keys), deploy a frontend onto it, and hand your client a ready-made admin.
Setup
Install the package (and Claude Code if you don't have it), then add the server
by its binary. That avoids a known Windows issue where claude mcp add
mis-parses npx -y.
npm install -g @anthropic-ai/claude-code @tasklite/mcp
claude mcp add tasklite -- tasklite-mcpAdd -s user to claude mcp add to make it available in every project
(claude mcp add -s user tasklite -- tasklite-mcp); the default scope is the
current project only.
Then tell Claude what you want to build. The sign_up tool creates your account, organization, and connection from the conversation (a strong random password is generated locally and never shown; use "forgot password" with your email for web access).
Already have an account? Create a key at TaskLite → Integrations → "Connect Claude Code" and use:
claude mcp add tasklite -e TASKLITE_API_KEY=tl_xxx -- tasklite-mcpHosted (no install)
Point any MCP client at the hosted server; there is nothing to install locally:
claude mcp add --transport http tasklite https://mcp.tasklite.net/mcp \
--header "Authorization: Bearer tl_xxx"The hosted server is stateless: every request carries its own credential, so one endpoint serves every account safely.
Simplest of all: the connector. In Claude (claude.ai or the desktop app), Settings → Connectors → add TaskLite, or add it by address using the URL above. You sign in once over OAuth; there is no key to create or store. Note that the tools appear in a new chat, not in the conversation you were already in.
Optional env: TASKLITE_API_URL (default https://api.tasklite.net), TASKLITE_APP_URL (default https://app.tasklite.net).
Related MCP server: MCP-Maker
Other clients
One hosted server, every MCP client. Full setup notes: https://tasklite.net/docs/guides/connector-from-cursor-codex-desktop
Cursor — Add to Cursor or put
{"mcpServers":{"tasklite":{"url":"https://mcp.tasklite.net/mcp"}}}in.cursor/mcp.json.VS Code — Install in VS Code or
.vscode/mcp.jsonwith{"servers":{"tasklite":{"type":"http","url":"https://mcp.tasklite.net/mcp"}}}.ChatGPT — Settings → Connectors (developer mode) → add
https://mcp.tasklite.net/mcp. The server implementssearchandfetch.Gemini CLI —
gemini extensions install https://github.com/shimon-ks/tasklite-mcp(this repo shipsgemini-extension.json), or addhttpUrl+oauthto~/.gemini/settings.json.OpenAI Responses API / Agents SDK, Gemini API — pass the hosted URL with
Authorization: Bearer tl_….
Typical flow (what Claude Code does)
create_project→create_board→create_column× N builds the schema.create_item/query_itemsseed and inspect data.create_app→create_app_endpoint(with exposedColumns + RLS) →create_app_api_keyexpose the REST surface for your frontend.get_app_spec/get_frontend_promptgenerate the frontend against it.Every tool returns an
adminUrl, the ready-made admin for the end client.
Hosting your frontend
Once the frontend is built, deploy_frontend uploads the build output and
returns a live URL at https://{slug}.tasklite.dev. No server, no hosting
account, no CI to configure:
deploy_frontend(appId: "app-xxxxxx", dir: "./dist")Hosted pages call the app API through the relative path /api/{endpoint}. The
hosting proxy attaches the app identity server-side, so the browser never
carries an API key. list_deployments shows the versions and
rollback_deployment points the live URL back at an earlier one.
Security model
The
tl_key is exchanged for a short-lived JWT (POST /public/v1/auth/session); all calls run with the key owner's own permissions, never super-admin.App API keys belong in server-side env vars (Next.js API routes), never in browser code. Frontends hosted on
tasklite.devneed no key at all.
Development
npm install
npm run build
TASKLITE_API_KEY=tl_xxx TASKLITE_API_URL=http://localhost:3333 node dist/index.jsLicense
MIT
Available Tools
44 toolsadd_commentA
Post a comment on an item's thread. To notify people, pass their user ids in mentionedUserIds (each also appears as an @mention). attachmentIds references already-uploaded files. Needs projectId and itemId.
| Name | Required | Description | Default |
|---|---|---|---|
| itemId | Yes | ||
| content | Yes | The comment text | |
| projectId | Yes | ||
| attachmentIds | No | Ids of already-uploaded attachments to link | |
| mentionedUserIds | No | User ids to @mention and notify |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal non-read-only and non-destructive behavior. The description adds valuable behavioral details: mentionedUserIds both notifies users and creates an @mention, attachmentIds reference already-uploaded files (not new uploads), and projectId/itemId are mandatory to scope the comment. These specifics go beyond the annotations and help the agent predict side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely terse: four short sentences, each delivering distinct information. The core purpose is front-loaded, and there is no redundant phrasing or filler. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple create tool with 5 parameters, 3 required, and no output schema, the description covers the essential aspects: the action, notification behavior, attachment handling, and required IDs. It does not describe return values, but the absence of an output schema lowers that burden. Minor gaps like explicitly defining itemId as the target item are adequately covered by the phrase 'an item's thread.'
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 60%, leaving projectId and itemId undocumented. The description compensates by stating these are required, and also clarifies the semantics of mentionedUserIds (notify + @mention) and attachmentIds (already-uploaded files). This adds meaning beyond the raw schema, though projectId's exact role is still only implied by context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Post a comment on an item's thread,' which is a specific verb (post) and resource (comment on an item's thread). This clearly distinguishes it from sibling tools like update_comment, list_comments, and delete_comment, leaving no ambiguity about its create semantics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives useful context for using the tool: how to notify people via mentionedUserIds, how to link attachments via attachmentIds, and which IDs are required. However, it does not explicitly state when to prefer this tool over alternatives like update_comment or delete_comment, nor does it mention any exclusions. The usage guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
configure_external_accessAIdempotent
Read or change how EXTERNAL users (people who sign up to your app through TaskLite auth: POST /auth/register-external with this organizationId, then POST /auth/login) get into an organization. registrationPolicy: "open" — in at once; "approval" — an organization admin approves each signup (TaskLite mails the admins on every signup, and the person once approved; unapproved users are never billed); "closed" — invite only, self-signup refused. appLoginUrl: the page of YOUR app where these users log in — it becomes the "Log in" button in the approval email, so set it whenever you deploy an app that uses this flow; pass "" to clear. Call with no changes to just read the current settings. Requires organization admin.
| Name | Required | Description | Default |
|---|---|---|---|
| appLoginUrl | No | https URL of your app's login page for external users; "" clears it | |
| organizationId | No | Defaults to the credential organization | |
| registrationPolicy | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare the tool is not read-only and is idempotent. The description adds meaningful behavioral detail: it explains the side effects of each registrationPolicy value, including approval emails and billing behavior, and explains what appLoginUrl controls. It also explicitly says calling with no changes reads current settings, so the dual read/write behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is detailed and a bit dense, but it front-loads the core purpose and each subsequent sentence adds operational value: policy meanings, email behavior, URL semantics, read mode, and admin requirement. It could be slightly more structured, but nothing feels like filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers permissions, the read/write modes, parameter semantics, and side effects. There is no output schema, and the description does not explicitly state what the response contains when reading settings or after a change. That is a small gap, but the rest of the operational context is strong enough that an agent can call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67%, and the description materially enriches the underspecified parameters. It explains the full semantics of each registrationPolicy enum value ('open', 'approval', 'closed') and the real-world effect of appLoginUrl, including that passing '' clears it. The organizationId parameter is already documented in the schema with a sensible default. This goes well beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Read or change') and a precise resource ('how EXTERNAL users ... get into an organization'). It clearly distinguishes this from sibling auth tools like sign_up, login, and connect by framing it as the organization-level access configuration. The title and name are not merely restated; the description explains the actual function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: it is for configuring external-user access, requires an organization admin, and can be used to read settings when called with no changes. It does not explicitly name sibling alternatives or say 'use X instead', but it clarifies the auth flow context well enough that an agent can infer when this tool applies versus sign_up or login.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
connectA
Connect this machine to an existing TaskLite account, or switch to a different one. Takes a personal API key (tl_...) created at TaskLite → Integrations → "Connect Claude Code". Replaces the current connection if there is one — use this to switch user or organization. The switch takes effect immediately; no restart.
| Name | Required | Description | Default |
|---|---|---|---|
| apiKey | Yes | Personal TaskLite API key, starts with tl_ |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses that the tool replaces the current connection and that the switch takes effect immediately with no restart. This is useful behavioral context. The annotations already establish readOnlyHint=false and openWorldHint=true, so the description adds meaningful side-effect information without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the tool's core purpose, followed by key details on the API key, replacement behavior, and immediacy. Every sentence earns its place and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter connection tool with no output schema, the description covers the purpose, the input needed, the side effect of replacing an existing connection, and the timing of the switch. An agent has enough information to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents the apiKey parameter, including the tl_ prefix. The description adds where the key is created (TaskLite → Integrations → 'Connect Claude Code'), which is helpful, but it does not substantially change parameter semantics beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: connecting this machine to an existing TaskLite account, and additionally switching accounts. It clearly distinguishes itself from siblings like sign_up or disconnect by specifying 'existing account' and 'switch to a different one.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool: connect to an existing account or switch user/organization. It explicitly says 'use this to switch user or organization,' but it does not explicitly name alternatives such as sign_up or login or say when not to use those.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
connection_statusARead-only
Check whether this machine is connected to a TaskLite account. Call this first if any tool fails with an auth error.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description aligns with that by framing the operation as a status check. It adds useful behavioral context by connecting the tool to auth-error recovery.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler. The core purpose is front-loaded and the usage trigger is stated directly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only diagnostic tool, the description fully explains what it checks and when to invoke it. Even without an output schema, an agent can call it correctly and interpret the result directionally.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters and schema coverage is 100%, so the schema fully accounts for the input surface. The baseline of 4 applies; no additional parameter explanation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Check whether') and resource ('this machine is connected to a TaskLite account'), making the diagnostic nature unambiguous. It clearly distinguishes from action-oriented siblings like connect, login, and disconnect.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit trigger condition: 'Call this first if any tool fails with an auth error.' It provides clear when-to-use guidance, though it does not mention alternatives or explicitly discuss 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.
create_appA
Create an app — a named API surface over the boards of a project, for an external frontend. Then add endpoints and an API key.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| projectId | Yes | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a mutating, non-destructive operation, so the description does not need to restate those facts. It adds useful behavioral scope by clarifying that the app is only the named surface and that endpoints and API keys are added afterward. However, it does not disclose permissions, side effects, or return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences that define the resource, state its purpose, and outline the next workflow step. There is no redundant phrasing, and the key operation is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, schema-free create operation, the description covers what an app is, why it is created, and the natural next steps. The sibling list supplies the follow-up tools, so an agent can navigate the workflow. It does not mention what the tool returns or how organizationId affects the request, but the core invocation path is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description carries the burden of explaining parameters. It adds meaning by noting the app is 'named' and that it is 'over the boards of a project,' which loosely maps to name and projectId. However, organizationId is not addressed at all, and the mapping to specific schema properties remains implicit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the specific operation 'Create an app' and precisely defines the resource as 'a named API surface over the boards of a project, for an external frontend.' This clearly separates it from sibling tools like create_app_endpoint and create_app_api_key, because the scope is the app itself, not the subsequent endpoint or key creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly establishes when to use this tool: when an external frontend needs a named API surface over a project's boards. It also implies the correct sequence by saying 'Then add endpoints and an API key,' steering the agent toward the follow-up tools. It does not explicitly name exclusions or alternative conditions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_app_api_keyA
Create an API key for an app. SECURITY: the key must live server-side only (env var, Next.js API routes) — never in browser code. If the app has its own users, the server also sends X-App-User: <user id> with the key so per-user endpoints know who is acting.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| appId | Yes | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral context beyond the annotations: the key must be server-side only, and per-user requests must include X-App-User. This is meaningful security-sensitive guidance that an agent needs. The description aligns with readOnlyHint=false, and no contradiction exists, though it does not describe the return value or key lifecycle.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The main purpose is front-loaded, followed by a focused, high-value security note. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an operation that creates a sensitive credential, the description omits critical context: what the response contains, whether the key is shown only once, how organizationId factors in, and what name means. There is no output schema, and parameter semantics are entirely absent, so the description is not complete enough for an agent to invoke it with confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the three parameters: name, appId, or organizationId. It only refers to 'app' generically and mentions the X-App-User header, which is not a parameter. With zero schema coverage, the description should compensate, but it does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create an API key for an app.' This clearly distinguishes it from siblings like create_app, create_app_endpoint, and login. The resource being created is unambiguous and the title annotation reinforces it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides important usage guidance about storing the key server-side and sending X-App-User, but it does not explicitly say when to use this tool versus alternatives or when not to use it. The context implies it is for creating API keys for apps, but no exclusions or alternative routing are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_app_endpointA
Expose a board as a REST endpoint of an app: /apps/{appSlug}/api/{slug}. exposedColumns limits which columns are readable/writable. rowLevelSecurity.enabled makes the endpoint per-user: the developer's server sends X-App-User: <their user id> next to the API key, and the endpoint returns, updates and deletes ONLY that user's rows (401 without the header). Use it whenever the app has its own users.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| slug | Yes | ||
| appId | Yes | ||
| boardId | Yes | ||
| allowedMethods | No | ||
| exposedColumns | No | ||
| organizationId | No | ||
| rowLevelSecurity | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes far beyond the annotations by explaining per-user row-level security, the X-App-User header, the 401 behavior, and that only the user's rows are returned/updated/deleted. It also clarifies that exposedColumns limits readable/writable columns, which is meaningful behavioral detail beyond readOnlyHint=false.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and well-structured: core action with URL pattern first, then row-level security behavior, then a crisp usage signal. Every sentence adds value and there is no repetition of schema fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema, the description covers the most important behavioral and configuration concepts needed to invoke it correctly. It could be more complete by explaining remaining optional fields and return behavior, but the key security model and endpoint shape are clearly conveyed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description bears responsibility for explaining parameters. It explains slug, exposedColumns, and rowLevelSecurity.enabled, but leaves appId, boardId, name, allowedMethods, organizationId, and filterByUserId to be inferred from schema property names. This partially compensates but not fully for the 8-parameter surface.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Expose a board as a REST endpoint of an app' with a concrete URL pattern. It clearly differentiates this from siblings like create_app or create_app_api_key by focusing on creating an endpoint for an existing app/board.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear when-to-use signal: 'Use it whenever the app has its own users.' It does not explicitly name sibling alternatives or state when not to use it, but the context is strong enough for an agent to route correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_automationA
Create an automation on a board: when something happens, do something. The most useful action here is http_request, which calls an external API and writes the answer back into columns — pair it with the "scheduled" trigger and the board keeps itself up to date (prices, exchange rates, shipment status, weather). Triggers: item_created, status_changed, column_value_changed, date_approaching, scheduled. Actions: http_request, send_notification, send_email, change_status, set_column_value, create_cross_board_item, send_webhook. Two more things every action list can use: a { type: "delay", config: { minutes | hours | days } } action pauses the run and resumes the actions after it later (reminders, follow-ups); and any network action (http_request, send_webhook, send_email, send_whatsapp) may carry config.retry: { attempts (1-5), delaySeconds (1-60) }. send_webhook accepts config.secret for an HMAC signature.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| actions | Yes | e.g. [{ type: "http_request", config: { url: "https://api.frankfurter.app/latest?from=USD&to=ILS", method: "GET", responseMapping: [{ path: "rates.ILS", columnId: "<column id from get_board_schema>" }] } }] | |
| boardId | Yes | ||
| trigger | Yes | ||
| isActive | No | ||
| projectId | Yes | ||
| triggerConfig | No | e.g. { cron: "0 8 * * *" } for scheduled, { columnName } for column_value_changed |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial behavior beyond the annotations (readOnlyHint=false, destructiveHint=false): http_request writes results back into columns, delay pauses and later resumes the action chain, network actions support retry with bounded attempts/delaySeconds, and send_webhook supports HMAC signing via config.secret. No contradiction with the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well front-loaded: purpose and the most valuable usage pattern first, then triggers, actions, and finally exceptional behaviors. It is long, but nearly every sentence carries information absent from the schema; only the trigger enumeration mildly duplicates what the schema's enum already provides.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool (7 params, 5 required, nested objects, no output schema, 29% schema coverage), it covers a great deal: trigger and action vocabularies, retry and delay semantics, and HMAC signing. Gaps remain: triggerConfig needs for date_approaching and status_changed, the isActive parameter is never mentioned, and validation/error behavior is not addressed. Strong but not exhaustive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 29%, yet the description compensates strongly: it enumerates action types, documents the http_request config shape (url, method, responseMapping), delay config, retry bounds, and secret. Remaining ambiguities include the delay config notation ({ minutes | hours | days }) not stating the value shape, send_whatsapp appearing outside the main action list, and triggerConfig requirements for date_approaching/status_changed being undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence states a specific verb+resource: 'Create an automation on a board', backed by a plain-language definition ('when something happens, do something'). It is clearly distinguishable from siblings like list_automations, and the enumeration of triggers and actions makes the scope concrete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides concrete usage context: pairing http_request with the scheduled trigger to keep boards self-updating (prices, exchange rates, shipment status, weather), and using the delay action for reminders and follow-ups. It stops short of an explicit when-not-to-use or named alternative tools, but the guidance is specific enough for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_boardA
Create a board (a data table) inside a project. Add typed columns with create_column afterwards.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| projectId | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=false and destructiveHint=false, so the mutation aspect is covered. The description adds useful context about board placement and the follow-up step of adding typed columns, but does not disclose more behavioral traits such as side effects, permissions, or whether the board is initially empty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, each earning their place: the first defines the action and scope, the second gives the next logical step. No wasted words and the core purpose is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the basics: what, where, and the next step. However, with no output schema and 0% parameter coverage, it leaves gaps about what the returned board object looks like and what happens if the board is used without columns. Annotations cover safety hints, but the description could provide more operational detail for a creating action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does 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 indicates 'inside a project' maps to projectId, and 'Create a board' implies name, but it does not explain the description parameter or any format/constraints. The description adds minimal meaning beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Create'), a resource ('a board'), and a clarifying definition ('a data table'). It also locates the action within a project and distinguishes it from create_column and create_project by explicitly mentioning 'Add typed columns with create_column afterwards.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context: boards are created inside projects and should be followed by creating columns with create_column. However, it does not explicitly state when to use this tool versus alternatives, nor does it mention exclusions or conditions that would select a sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_columnA
Add a typed column to a board. Valid types: text, rich_text, number, status, date, datetime, duration, people, checkbox, dropdown, label, priority, link, email, phone, relation, lookup, rollup, formula, rating, currency, file. Choose by meaning — date for dates, phone for phones, number/currency for amounts, dropdown/status (with settings.options as an array of labels) for closed choices; text is for free text only. An obvious name/type mismatch is rejected with the suggested type; pass force:true to override. Rules go in settings.validation: { unique, min, max, minLength, maxLength, pattern, patternMessage } — enforced on every write (UI, MCP, App API). Closed choices (dropdown/status) reject values outside settings.options unless settings.allowCustom is true.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| type | Yes | ||
| force | No | Create the column even when the name suggests a different type | |
| boardId | Yes | ||
| settings | No | Type-specific settings. For dropdown/status/priority: options, either as labels ["A","B"] or as full objects [{value,label,color}] — labels are expanded server-side, and colors are assigned if you do not supply them. | |
| projectId | Yes | ||
| isRequired | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses important behaviors: name/type mismatch rejection with a suggested type, force:true override, validation enforcement on every write across UI/MCP/App API, and closed-choice restrictions on dropdown/status values. This gives the agent a precise model of side effects and edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well-structured, with the core purpose first and then progressively more specific behavioral details. It is longer than typical, but the complexity of type selection and settings justifies the length; most sentences carry unique information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with seven parameters, nested settings, and no output schema, the description covers the essential invocation context: valid types, settings structure, validation behavior, and custom-option handling. It does not describe success return values or relationships between complex types, but the tool can be invoked correctly with the information provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 29%, but the description compensates by explaining the type parameter at length, detailing settings.options, settings.validation, force, and allowCustom. projectId, boardId, name, and isRequired remain implicit, but their meanings are reasonably inferable from names and the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Add a typed column to a board.' This clearly separates the tool from sibling operations like update_column, delete_column, and reorder_columns, so an agent can identify the correct tool without confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives strong guidance on how to choose column types and when to use force, but it does not explicitly state when to use create_column versus update_column/delete_column. The creation intent is clear, yet the contrast with alternatives is left implicit rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_itemA
Create an item (row) with all of its data in one call. cells maps columnId -> value (use get_board_schema for column ids); every cell is saved with the row. Use set_cell only for later edits.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| cells | No | ||
| title | Yes | ||
| status | No | ||
| boardId | Yes | ||
| dueDate | No | ISO date | |
| priority | No | ||
| projectId | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate the tool is not read-only and not destructive. The description adds that all cells are saved with the row, which is useful behavioral context, but it does not discuss other side effects, permissions, or failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the core purpose, then provide critical mapping and routing guidance. There is no redundant or filler wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 9-parameter creation tool with no output schema and low schema coverage, the description covers the most complex part (`cells` mapping) and the required context via schema plus the tool name. It could mention what the created item response looks like, but the description is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 11%, so the description must compensate. It does explain the non-obvious `cells` parameter as a mapping from columnId to value and directs the agent to `get_board_schema` for IDs. Other parameters rely mostly on self-explanatory names like `title`, `status`, `priority`, and `dueDate`.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create an item (row) with all of its data in one call', identifying the specific action and resource. It also distinguishes the tool from the sibling `set_cell` by noting that set_cell is only for later edits.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly tells the agent to use `get_board_schema` to obtain column IDs and to use `set_cell` only for later edits. This gives clear when-to-use guidance and points to relevant alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_projectA
Create a project (a business process container). Boards with data live inside projects.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| description | No | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is a non-read-only, non-destructive operation, so the description does not need to repeat that. It adds the useful structural context that projects contain boards. However, it does not disclose whether organizationId is required, what happens if omitted, or any side effects or permission requirements, leaving some 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is just two short sentences with no filler. The core action is front-loaded, and the parenthetical definition adds meaningful context without unnecessary verbosity. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple creation tool with no output schema, the description gives a clear conceptual model but omits parameter semantics and explicit usage guidance. It is minimally adequate but leaves an agent to infer prerequisites like organization association or whether additional parent resources are needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no explanation of the 'name', 'description', or 'organizationId' parameters. While the parameter names are intuitive, the description does nothing to clarify their semantics or relationships (e.g., whether organizationId is needed or how name uniqueness works), so it fails to compensate for the schema's lack of documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and resource ('project'), and defines what a project is in domain terms ('business process container'). The clarifying clause 'Boards with data live inside projects' clearly differentiates this from sibling tools like create_board, so an agent can understand its role at a glance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that projects are a prerequisite for boards, so an agent can infer when to use this tool, but it does not explicitly state when to choose it over alternatives or mention any preconditions such as requiring an organization. There is no explicit when/when-not guidance beyond the container relationship.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_boardADestructive
Delete a board with every item on it. Destructive and not undoable — confirm with the user first, and prefer delete_column when only part of the model is wrong.
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, and the description adds crucial behavioral details beyond that: 'not undoable', 'every item on it', and the instruction to confirm with the user first. This meaningfully exceeds what structured annotations communicate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the most critical safety information, and zero filler. The sentence about delete_column adds routing value without bloating the text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter destructive tool, the description covers the operation scope, destructive consequences, confirmation requirement, and the main alternative. It doesn't explain return values or parameter details, but those are minor given the simplicity and the self-evident parameter names.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the full burden for parameter semantics. However, it offers no explanation of projectId or boardId — it only implies boardId via the noun 'board'. While the names are self-explanatory, the description does not add meaning beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Delete') and resource ('a board with every item on it'), and explicitly contrasts itself with delete_column by clarifying when each is appropriate. This distinguishes it clearly from sibling tools with no ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says to prefer delete_column when only part of the model is wrong, and instructs to confirm with the user first. This gives an agent both when-to-use and when-not-to-use guidance, plus a safe interaction protocol.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_columnADestructive
Delete a column and every value stored in it. Destructive — confirm with the user first. Use update_column when the column is right but its name, type or options are wrong.
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | Yes | ||
| columnId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint=true and readOnlyHint=false, but the description adds specific behavioral context: all stored values are deleted, and user confirmation is required. This exceeds what annotations provide and does not contradict them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero filler: the action and consequence are front-loaded, and the alternative is stated compactly. Every word contributes to the tool's correct selection and safe use.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is sufficient for a simple destructive delete operation, covering purpose, usage, and safety. The only shortfall is the lack of explicit parameter mapping, which is mitigated by self-descriptive IDs but still leaves an inference step.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate by explaining the parameters. It does not mention projectId, boardId, columnId, or how they scope the deletion. The parameter names are self-explanatory, but the description adds no additional semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the verb 'Delete' with a specific resource and consequence: 'a column and every value stored in it.' It clearly distinguishes the action from update_column, making the purpose unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly names the alternative: 'Use update_column when the column is right but its name, type or options are wrong.' It also gives operational guidance to 'confirm with the user first,' covering both when to use and when to avoid.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_commentADestructive
Delete a comment from an item thread. Destructive — confirm with the user before calling. Needs projectId, itemId and the commentId.
| Name | Required | Description | Default |
|---|---|---|---|
| itemId | Yes | ||
| commentId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given that annotations already mark the tool as destructive and not read-only, the description still adds value by requiring user confirmation before calling. This goes beyond the annotation hints and helps the agent handle the operation safely.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences deliver the core action, the destructive warning, and the required parameters with no fluff. The most important information is front-loaded and every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with three self-explanatory string parameters, no output schema, and annotations already covering read-only/destructive hints, the description provides everything an agent needs to invoke the tool correctly. The confirmation instruction is a valuable addition.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description explicitly names all three required parameters (projectId, itemId, commentId), which is helpful. However, it adds little semantic detail beyond what the parameter names and required array already imply, so it only partially compensates for the missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Delete a comment') and a clear resource ('an item thread'), making the tool's purpose immediately obvious. It also distinguishes it from siblings like update_comment or add_comment by focusing on deletion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly signals that the tool is destructive and instructs the agent to confirm with the user before calling, which is strong usage context. It does not explicitly name alternatives or exclusions, but the destructive warning provides enough guidance for appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_itemBDestructive
Delete an item. Destructive — confirm with the user before calling.
| Name | Required | Description | Default |
|---|---|---|---|
| itemId | Yes | ||
| boardId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation already declares destructiveHint=true and readOnlyHint=false, and the description reinforces this by calling the action destructive and instructing confirmation. It adds a user-confirmation requirement, but does not disclose additional behavior such as whether deletion is permanent, cascades to related data, or requires special permissions. With annotations covering the core safety profile, this is an adequate but not rich disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: a single clear action statement followed by the critical safety warning. Every word earns its place, and the destructive warning is front-loaded, making it hard to miss.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter delete operation, the safety guidance is present and the action is clear. However, the complete absence of parameter semantics and lack of any output/return information leaves meaningful gaps. The description is minimally viable but not thorough for an agent invoking it without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain itemId, boardId, or projectId or how they relate to the item being deleted. The agent receives no help understanding what values to supply or why all three IDs are required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Delete') and the resource ('an item'), which distinguishes it from sibling tools like delete_board, delete_column, and delete_comment. There is no ambiguity about what operation this tool performs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an important usage constraint: it is destructive and requires user confirmation. However, it does not explain when to prefer this tool over alternatives like update_item or delete_comment, nor does it describe preconditions such as whether the item must exist or be in a certain state.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deploy_frontendA
Deploy a built static frontend to TaskLite hosting: zips the build output directory (dist/, build/, out/ — the folder that contains index.html), uploads it, and returns the live URL https://{slug}.tasklite.dev. The app is auto-published on first deploy. Runs only where the files are (local/stdio mode). In the frontend, call the app API via relative /api/{endpoint} — the hosting proxy injects the app identity.
| Name | Required | Description | Default |
|---|---|---|---|
| dir | Yes | Path to the BUILD OUTPUT directory (the one containing index.html), not the project root | |
| appId | Yes | App UUID or slug (app-xxxxxx) — see list_apps | |
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations by disclosing that it zips the build output, uploads it, auto-publishes on first deploy, returns the live URL, and explains the /api proxy behavior. This gives the agent a full picture of side effects and hosting behavior without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four dense sentences, each earning its place: what it does, how it does it, what it returns, local-mode restriction, and API proxy note. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the key behaviors an agent needs: return URL, auto-publish on first deploy, local filesystem requirement, and proxy-based API calls. The phrase 'auto-published on first deploy' leaves some ambiguity about later deploys, and there is no output schema, but overall the tool is well-specified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema coverage at 67%, the description adds meaningful value for the most important parameter, dir, by defining it as the folder containing index.html and listing typical names (dist/, build/, out/). It does not add much for appId or organizationId, but the schema already covers the first and the second is optional.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description opens with a specific verb and resource: 'Deploy a built static frontend to TaskLite hosting'. It then details the mechanism (zip, upload, return live URL), making the tool's purpose unmistakable and clearly distinct from siblings like publish_app or rollback_deployment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: the tool expects a built static frontend, targets TaskLite hosting, and explicitly warns it 'Runs only where the files are (local/stdio mode)'. It does not explicitly contrast with publish_app or other alternatives, but the guidance is strong enough for typical selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
disconnectADestructive
Disconnect this machine from TaskLite by forgetting the stored credential. Use before connecting a different account, or to revoke local access. Does not delete anything in TaskLite itself and does not revoke the key server-side.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the destructiveHint annotation by clarifying that this only forgets a local stored credential, does not delete data in TaskLite, and does not revoke the key server-side. This is exactly the nuance an agent needs to avoid overestimating the tool's blast radius.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences carry the main action, the use cases, and the critical non-effects without wasted words. The most important scoping statement comes first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless local credential-disconnect tool, the description is complete. It communicates what happens locally, what does not happen remotely, and when the agent should invoke it, leaving no meaningful gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is little to document. The description adds no parameter details, but none are needed; the baseline for an empty schema is appropriately high.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific action—disconnecting this machine from TaskLite by forgetting the stored credential—so an agent clearly knows what operation it performs. It also distinguishes this local disconnect from other account-management tools like connect or login.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use guidance: before connecting a different account or to revoke local access. It does not explicitly name alternative tools to use instead, but the context makes the intended situation clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_projectARead-only
The whole project as JSON — boards, columns with settings, items with their cells keyed by column id. For migrations, backups and reading a system back. Items are capped per board for the model's sake; the REST endpoint GET /organizations/{orgId}/projects/{projectId}/export.json returns everything.
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | ||
| organizationId | No | Defaults to the credential organization | |
| maxItemsPerBoard | No | Default 200 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds useful behavioral details beyond that: items are capped per board for the model's sake while the underlying REST endpoint returns everything. This discloses a meaningful limitation and an important distinction from the direct API, which is valuable for an agent deciding how to invoke the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences front-load the core purpose, then add use cases and a key limitation. Every clause earns its place, and the structure makes the tool's scope immediately legible without redundantly restating the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity, no output schema, and read-only annotation already covering safety, the description is complete enough: it explains what is returned, why to use it, and the item cap behavior. An agent can confidently select and invoke this tool without missing essential context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% with projectId undocumented, but the description adds practical meaning by explaining the per-board cap and that the REST endpoint returns everything. This directly informs how an agent should interpret maxItemsPerBoard and the tool's output richness, going beyond the schema's default/maximum metadata.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: exports the whole project as JSON, enumerating boards, columns, and items with cells keyed by column id. This clearly distinguishes it from sibling list/query tools by emphasizing full-project export. The use cases for migrations, backups, and system reconstruction reinforce the intended scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly names when to use it: migrations, backups, and reading a system back. It does not enumerate when-not-to-use conditions or alternatives, but the 'whole project' framing plus the REST endpoint hint give clear context that narrower tools like list_boards or query_items are for partial reads.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetchARead-only
One project, board or item in full, by the id search returned (project:, board::, item:::) or by an app URL path. Returns { id, title, text, url, metadata } — the ChatGPT fetch contract; text is the record as JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | An id from search, or an app URL path such as /projects/…/boards/…/items/… | |
| organizationId | No | Only needed for project ids when the credential has no default organization; otherwise resolved automatically |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint=true, and the description adds the exact return shape { id, title, text, url, metadata } and explains that text contains the record as JSON. It does not cover error behavior for invalid ids, but the read-only nature and output contract are well disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences carry all essential information: what is fetched, how ids are formed, and what is returned. There is no filler or repetition of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-record fetch tool with readOnlyHint and a self-described output contract, the description is complete. It specifies valid id sources, the optional organizationId caveat is handled in the schema, and the response shape is explicitly given despite there being no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters. The description adds meaningful value by explaining the composite id formats and app URL path alternatives, going beyond the schema's brief parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific verb and resource: fetch one full project, board, or item. It also gives concrete id formats and distinguishes it from search by requiring an id returned by search or an app URL path.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly implies the workflow: use search first, then fetch by the returned id. It also explains that an app URL path can be used instead. It does not explicitly list when not to use this tool versus alternatives, but the guidance is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_app_specARead-only
Get the machine-readable spec of an app (base URL, endpoints, methods, fields) — use it to generate frontend API calls. appId accepts either the app UUID or its slug (app-xxxxxx); list_apps shows both. The returned baseUrl is absolute — use it verbatim, do not rebuild it from the admin URL.
| Name | Required | Description | Default |
|---|---|---|---|
| appId | Yes | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds meaningful non-obvious behavior: the returned baseUrl is absolute and must be used verbatim, not rebuilt from the admin URL. This is a useful contract detail beyond the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three focused sentences, no filler. The main purpose is front-loaded, then the parameter guidance, then the baseUrl caveat. Every sentence adds useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only retrieval tool with no output schema, the description does a good job: it names the return contents, explains the ID formats, and provides a usage warning. The only notable gap is the unexplained organizationId parameter, which keeps it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description gives valuable semantics for appId: it accepts either the UUID or slug and references list_apps. However, organizationId is left completely unexplained even though the schema has 0% description coverage. Since one of the two parameters is undocumented, the description only partially compensates for the low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Get the machine-readable spec of an app', and lists exactly what the spec contains (base URL, endpoints, methods, fields). It also names its purpose ('generate frontend API calls'), which distinguishes it from sibling tools like list_apps and get_board_schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use the tool: to generate frontend API calls. It also tells the agent how to obtain a valid appId via list_apps when only the slug or UUID is known. It does not explicitly mention when not to use alternatives like get_board_schema, but 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.
get_board_schemaARead-only
Get a board with its full column schema (ids, names, types, settings). Call this before creating items with cells.
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, and the description adds behavioral context by specifying what the response contains: full column schema with ids, names, types, and settings. It also signals a safe read operation suitable as a prerequisite. It does not discuss errors or permissions, but for a read-only getter this is adequately transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no filler. It front-loads the core behavior and then adds a concise workflow directive. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with two parameters and no output schema, the description covers the return content and the surrounding workflow intent. The main gap is parameter sourcing guidance, but the tool is simple enough that the description remains largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for parameter meaning, but it never explains projectId or boardId, where to find them, or how they relate to sibling tools like list_projects and list_boards. The parameter names are somewhat self-explanatory, but the description adds no meaning beyond the schema's raw property names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Get a board with its full column schema (ids, names, types, settings).' This distinguishes it from sibling tools like list_boards by emphasizing the column-schema detail rather than mere board listing. The purpose is immediately clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit usage trigger: 'Call this before creating items with cells.' This tells the agent when this tool fits in a workflow. It does not mention alternatives or when not to use it, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_frontend_promptARead-only
Get a ready-made prompt describing the app backend, for pasting into a frontend generator (v0/bolt/lovable/cursor). appId accepts the app UUID or its slug (app-xxxxxx) — use list_apps to find it.
| Name | Required | Description | Default |
|---|---|---|---|
| tool | Yes | ||
| appId | Yes | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already marks this as a safe read operation, and the description is consistent with that. It adds little beyond the annotation, but it does clarify that the output is a prompt rather than a deployment or a spec dump, which is useful context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler, and the most important information is frontloaded. Every clause adds value, either clarifying what the tool returns or how to construct the required parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with no output schema, the description is almost sufficient: it explains the output purpose, the required tool parameter, and how to resolve appId. The only gap is the undocumented optional organizationId and the missing claude-code enum value in the prose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates well for appId by explaining it accepts a UUID or slug and directing the user to list_apps. However, it only mentions four of the five tool enum values, omitting claude-code, and gives no explanation for organizationId.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a ready-made prompt describing the app backend for use in frontend generators. It uses a specific verb and resource, and its purpose is distinguishable from siblings like get_app_spec or deploy_frontend, though it does not explicitly contrast itself with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage context: use it when you need a prompt to paste into a frontend generator, and it tells the agent how to find the app ID via list_apps. It does not enumerate when not to use it or compare with alternatives, but the intended scenario is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_app_endpointsARead-only
List an app's REST endpoints — slug, board, allowed methods, and how many columns each exposes. An endpoint exposing 0 columns is broken: it returns only item metadata and silently discards writes.
| Name | Required | Description | Default |
|---|---|---|---|
| appId | Yes | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already marks this as a safe read operation, and the description adds meaningful behavioral context: endpoints exposing 0 columns are broken, return only item metadata, and silently discard writes. This is valuable diagnostic information beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The core listing behavior is front-loaded in the first sentence, and the important edge-case warning follows naturally in the second. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description helpfully names the returned fields, but it doesn't fully compensate for the absence of parameter documentation, especially the optional organizationId. The behavioral warning is useful, but the tool definition remains slightly incomplete for confident invocation in all contexts.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to compensate by explaining appId and organizationId. It only implies appId through the phrase 'an app', and organizationId is never mentioned at all. The agent must rely on the raw schema for parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: it 'List[s] an app's REST endpoints'. It also enumerates exactly what information is returned (slug, board, allowed methods, column counts), which distinguishes it from sibling tools like list_apps or get_app_spec.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for inspecting the endpoint configuration of a single app, but it gives no explicit when-to-use guidance or alternatives. It doesn't say when to prefer get_app_spec or list_apps, so sibling selection is partly left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_appsARead-only
List the apps in the organization — id, slug, status. Call this first when you need an app id: the slug (app-xxxxxx) is what shows up in URLs and in generated code, and this is how you map it back to the app.
| Name | Required | Description | Default |
|---|---|---|---|
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds useful behavioral context by specifying the output fields and explaining the app-slug mapping, which helps the agent interpret results even without an output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences, front-loaded with the core action and returned fields, followed by practical usage guidance. Every sentence earns its place and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool, the description covers the core purpose, output fields, and common usage. It could be slightly more complete by noting whether organizationId is optional or how the organization context is resolved, but the overall context is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain the organizationId parameter, its optionality, or its default behavior. The phrase 'in the organization' hints at the parameter's purpose, but the description does not sufficiently compensate for the lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource, 'List the apps in the organization,' and enumerates the returned fields (id, slug, status). This clearly distinguishes list_apps from sibling tools like list_organizations, list_projects, and list_app_endpoints.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives concrete usage guidance: 'Call this first when you need an app id' and explains how the slug maps to apps in URLs and generated code. It does not explicitly name alternatives to avoid, but the context is clear enough for correct tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_automationsARead-only
List the automations on a board, so you can see what already runs before adding another.
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already covers the safety profile, so the bar is lower. The description adds that the tool reveals 'what already runs,' which conveys it returns existing automations for review. However, it doesn't disclose whether results include disabled automations, pagination behavior, or detail level — minor gaps for a simple list operation but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero filler. The verb is front-loaded, the resource is clear, and the trailing purpose clause earns its place by adding workflow context. Nothing is redundant with the annotations or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with a safety annotation and only two parameters, the description is nearly sufficient. The main gap is that parameter semantics are entirely unaddressed (0% schema coverage), and there is no mention of what fields the returned automations contain. Still, an agent can call this tool correctly with the given information plus reasonable inference from parameter names.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for two required parameters, and the description does not explain boardId or projectId or how they relate. The parameter names are self-explanatory, but the rule requires the description to compensate for low schema coverage, and it offers no parameter-level guidance whatsoever.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), a resource ('automations on a board'), and adds purposeful context ('so you can see what already runs before adding another'). It clearly distinguishes itself from sibling create_automation while matching the read-only intent of list_organizations/list_boards/list_projects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'before adding another' gives a clear usage context: call this as a pre-flight check prior to create_automation. It doesn't explicitly name alternatives or exclusions, but the intended workflow is evident enough for an agent to decide when to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_boardsARead-only
List the boards inside a project — id, name, description. Every other board tool needs a boardId, and this is the only way to discover one without being handed a URL.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based; defaults to 1 | |
| limit | No | Defaults to 50 | |
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this is a read-only operation, and the description adds useful behavioral context: it returns id/name/description, is scoped to a project, and serves as the boardId discovery path. It does not contradict the annotations, though it does not mention pagination behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two efficient sentences with no filler. The core action and output fields are front-loaded, and the second sentence earns its place by explaining the tool's unique discovery role among sibling tools.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list endpoint with one required parameter, the description covers the output fields, project scoping, and the main reason to call it. It does not explicitly describe pagination or how to get a projectId, but the schema documents page/limit defaults and the tool's role is clear. A small gap remains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents page and limit with default values, covering 67% of parameters. The description reinforces that projectId refers to the containing project but does not add significant parameter-level meaning beyond the schema for that required parameter or the pagination fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 'boards inside a project', and the returned fields 'id, name, description'. It also differentiates this tool from other board tools by explaining that it is the way to discover a boardId without a URL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly frames the tool as the discovery mechanism for boardId and notes that every other board tool requires it, which tells an agent when to use this tool. It does not name a specific sibling alternative or explain how to obtain the required projectId first, but the core usage context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_commentsARead-only
List the comments (the correspondence thread) on an item, oldest first. Each comment includes its author and any @mentions. Needs projectId and itemId (get itemId from query_items).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based page, default 1 | |
| limit | No | Page size, default 20 | |
| itemId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool readOnlyHint=true, and the description adds useful behavior beyond that: results are ordered oldest first and each comment includes author and @mentions. It does not cover pagination or rate limits, but the read-only safety profile is already covered by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler: the action/resource, ordering, returned content, and required parameters are all front-loaded. Every phrase contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with a readOnly annotation and schema-defined pagination defaults, the description is largely complete: it gives prerequisites and outlines return content. An output schema is absent, so a fuller field list (e.g., comment id or timestamp) would make it fully self-sufficient, but it is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema documents page and limit, while the description clarifies the otherwise undocumented required parameters by naming projectId and itemId and pointing to query_items for obtaining itemId. This adds source semantics for the key required parameter beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource ('List the comments ... on an item'), specifies ordering ('oldest first'), and notes returned content (author, @mentions). This clearly distinguishes it from sibling comment tools like add_comment, update_comment, and delete_comment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear usage context: the tool needs projectId and itemId, and itemId should be obtained from query_items. It lacks an explicit when-not-to-use or direct comparison with comment-writing siblings, but the read/list framing makes the intended use obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_deploymentsARead-only
List the hosted-frontend deployments of an app — versions, which one is live, and the public URL.
| Name | Required | Description | Default |
|---|---|---|---|
| appId | Yes | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description is consistent with that. The description adds behavioral context by revealing what the list contains (versions, live status, public URL), but it does not mention pagination, scope constraints, or how organizationId affects results. That is acceptable but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that communicates the resource and the valuable return information with no filler. Every phrase earns its place, and the key action word 'List' appears first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main return values, which is important because there is no output schema. However, with no parameter descriptions and no mention of organizationId's role, the definition leaves notable gaps for correct invocation in multi-organization contexts. It is minimally viable but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the burden of explaining parameters, but it does not define appId or organizationId beyond what the bare property names imply. The phrase 'of an app' loosely maps to appId, but organizationId is entirely unaddressed. This is a significant gap for a tool with two parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), a clear resource ('hosted-frontend deployments of an app'), and the key output dimensions ('versions, which one is live, and the public URL'). This makes the tool's purpose immediately recognizable and distinct from sibling tools like deploy_frontend or rollback_deployment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the use case: when you need to inspect an app's frontend deployments, identify the live version, or get its public URL. It provides clear context with no exclusions, though it does not explicitly name alternatives or 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.
list_organizationsARead-only
List the organizations the authenticated user belongs to. Use the returned id as organizationId in other tools.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description adds useful scoping ('authenticated user belongs to') plus guidance on the returned id. However, it does not disclose details like pagination, ordering, or filtering, though these are less critical for a simple list call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short, purposeful sentences with no filler. The core action and scope come first, and the downstream usage of the result is stated immediately after.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with readOnlyHint annotation and no output schema, the description is fully sufficient: it states what is listed, for whom, and how to use the result. Nothing necessary for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema carries no parameter documentation burden. The description still adds semantic value by stating that each returned organization includes an id to be used as organizationId elsewhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('organizations'), and clarifies the scope as those the authenticated user belongs to. This clearly distinguishes it from sibling list tools like list_projects and list_boards.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool—when an agent needs the organizations available to the current user—and explains the practical downstream use by noting the returned id feeds other tools as organizationId. It does not explicitly name alternatives or exclusions, but the scope is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_projectsARead-only
List projects in an organization. The API returns 50 per page — an organization with more than that needs page 2 and beyond, so check the returned total before assuming a project does not exist.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based; defaults to 1 | |
| limit | No | Defaults to 50 | |
| organizationId | No | Defaults to the credential organization |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint true, the safety profile is already provided. The description adds valuable behavioral detail: the 50-items-per-page limit and the instruction to check the returned total before concluding a project does not exist. This goes beyond the annotations in a meaningful way.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. The primary purpose is front-loaded, and the critical pagination caveat follows immediately. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with three optional, well-described parameters, the description covers the main pitfall (assuming empty results mean absence). It stops short of detailing the exact response shape, but the total is referenced and no output schema is required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 enriches parameter understanding by explaining the practical effect of page and limit: organizations with more than 50 projects require page 2+, tying the parameters to the pagination behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List projects in an organization' with a specific verb and resource. It is unambiguous among siblings like list_organizations and list_boards, though it does not explicitly name an alternative or contrast itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives the context for using the tool (listing projects) and includes a practical caution about pagination, but it does not state when not to use it or point to alternatives. The pagination note is more about result handling than tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
loginA
Connect this machine to an existing TaskLite account with email + password, or switch to a different account. Creates a personal API key named "claude-code" on that account and stores it, so the password is used once and never saved. Replaces the current connection if there is one. Prefer connect when the user already has a tl_ key.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | |||
| password | Yes | Used once to mint an API key; never stored |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses important behaviors beyond the annotations: it creates a personal API key named 'claude-code', stores it, uses the password only once, and replaces any current connection. Since annotations only provide basic flags, the description fully carries the behavioral transparency burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise, information-dense sentences with no filler. The purpose is front-loaded, followed by side effects and alternative routing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers the auth flow, key creation, password handling, and connection replacement, which is sufficient for a two-parameter tool. It does not describe output or error behavior, but no output schema exists and that is a minor gap rather than a blocking omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents password as used once and never stored; the description mostly restates email and password without adding deeper semantics for the email parameter. With 50% schema coverage, the description provides only modest additional value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action: connecting the machine to an existing TaskLite account using email/password, and switching accounts. It also differentiates itself from the sibling 'connect' by noting the alternative applies when the user already has a tl_ key.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly says to prefer 'connect' when the user already has a tl_ key, which is explicit routing to an alternative. It also implies login is for existing accounts rather than sign-up, but it does not explicitly mention sign_up or disconnect exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
publish_appA
Publish an app — required before its API endpoints accept external calls.
| Name | Required | Description | Default |
|---|---|---|---|
| appId | Yes | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only indicate the operation is not read-only and not destructive; the description adds that it changes endpoint accessibility, making the app externally reachable. It does not discuss rollback or permission requirements, but with annotations present the added context is meaningful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is one efficient sentence with the main verb front-loaded and the key prerequisite/effect stated without wasted words. It earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter action, the description conveys purpose, timing, and effect, making it minimally viable. It falls short of fully complete because it does not explain the optional organizationId or the behavior on already-published apps, and there is no output schema to clarify return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the parameters, but it mentions none. 'appId' can be inferred from 'an app,' but 'organizationId' is left entirely unexplained, and the schema provides no descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Publish') and resource ('app') and states the operational consequence ('required before its API endpoints accept external calls'). This clearly distinguishes it from sibling tools like deploy_frontend and create_app_endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly identifies the precondition: publishing must happen before API endpoints can accept external calls, so an agent knows when in the lifecycle to invoke it. It does not name alternatives or exclusion cases, hence not a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_itemsARead-only
List items (rows) of a board, including their cell values. Returns all items unless limit/page are given (the API defaults to 50 per page when unpaged, so the tool pages through and concatenates).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-based page, only with limit | |
| limit | No | Page size; omit to fetch all items | |
| boardId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, and the description adds valuable hidden behavior: the API defaults to 50 items per page, and the tool pages through and concatenates results unless limit/page are given. This is a meaningful behavioral disclosure beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, with the purpose front-loaded and the pagination caveat expressed compactly. Every sentence adds value and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool, the description covers the main behavior, default output size, and pagination behavior. It lacks an explicit return shape and explicit sibling routing, but the readOnlyHint and simple list semantics make it fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds semantic context for limit/page by explaining the default page size and concatenation behavior. However, it does not explain projectId or boardId, and schema coverage is only 50%, so the required parameters are only partially compensated for.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('List') on a specific resource ('items (rows) of a board') and clarifies the return content ('including their cell values'). This clearly distinguishes it from sibling tools like list_boards or list_comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for retrieving board items and explains pagination behavior, but it does not explicitly mention alternatives or say when not to use this tool. Among many list/query siblings, the agent is left to infer selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reorder_columnsAIdempotent
Set the display order of a board's columns. Pass every column id in the wanted order (get_board_schema lists them).
| Name | Required | Description | Default |
|---|---|---|---|
| boardId | Yes | ||
| columnIds | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (readOnly=false, idempotent=true, destructive=false). The description adds the key behavioral trait beyond annotations: this is a full-set overwrite operation — every column id must be supplied — which an agent could not infer from the schema or annotations alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence of roughly twenty words, action front-loaded, with zero redundancy. The behavioral requirement ('Pass every column id in the wanted order') earns its place alongside the cross-reference to get_board_schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-scalar-param tool with no output schema and no nested objects, the description covers the action, the full-set invocation requirement, and where to obtain valid column IDs. Annotations carry the safety profile. Minor gaps such as error behavior for invalid or omitted column IDs are acceptable at this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does 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 for the critical parameter: columnIds is disclosed as an ordered, complete list of column IDs, with get_board_schema named as the valid-value source. The bare schema only says 'array of strings, minItems 1,' missing that order matters. projectId and boardId are self-evident from their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Set the display order of a board's columns.' This clearly differentiates the tool from siblings like update_column (which edits column properties), create_column, and delete_column, so an agent can tell them apart immediately.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by requiring the full set of column IDs and cross-referencing get_board_schema as the source, but it never explicitly states when to use this tool versus alternatives such as update_column. The workflow is implied rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rollback_deploymentA
Point the live URL back at a previous deployment version (see list_deployments for available versions).
| Name | Required | Description | Default |
|---|---|---|---|
| appId | Yes | ||
| version | Yes | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is not read-only and is not flagged as destructive. The description adds the key fact that the operation affects the live URL, which is useful production context, but it does not discuss side effects, permissions, or what happens to the currently active deployment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence: the action comes first and the cross-reference to list_deployments is kept in parentheses. Every word earns its place, and there is no filler or repeated schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter tool, the description covers the outcome and how to obtain a valid version value, and the annotations cover the basic safety profile. However, the required appId is left undocumented and the description does not state anything about the response or immediate post-rollback behavior, so it is not fully self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description needed to compensate. It does clarify that `version` refers to a previous deployment version and can be found via list_deployments, but it says nothing about the required `appId` parameter or the optional `organizationId`, leaving a significant gap for an agent constructing the call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the exact action ('point the live URL back') and target ('a previous deployment version'), clearly distinguishing this rollback tool from siblings like deploy_frontend and list_deployments. The behavior is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes clear that this tool is for reverting to an existing deployment version and explicitly points to list_deployments as the source for valid versions. It does not list formal exclusions, but the rollback-vs-new-deploy distinction is strongly implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchARead-only
Full-text search across the projects, boards and items of the organization. Returns { results: [{ id, title, url }] } — the shape ChatGPT connectors and deep research expect; pass a result id to fetch for the full record. When you already know the board, query_items is cheaper and complete.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results, default 20 | |
| query | Yes | Search text | |
| projectId | No | Limit the search to one project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds valuable behavioral context beyond that: it returns lightweight id/title/url results, not full records, and requires a follow-up fetch for complete data. It also reveals that search is scoped across projects, boards, and items rather than a single board.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no wasted words. The first sentence states what the tool does and its scope; the second explains the return shape and next step; the third gives a direct comparison to a sibling tool. Every sentence earns its place and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only search tool with a small, well-documented schema, the description covers everything needed: scope, output shape, follow-up action, and the alternative tool to use when appropriate. Since it includes the return shape and routing guidance, the lack of an output schema is not a gap. The tool is fully callable from the information provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters: query text, max limit/default, and optional projectId filter. The description adds no new parameter-level detail beyond the overall full-text search scope. This matches the baseline of 3 where the schema carries the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Full-text search across the projects, boards and items of the organization.' It also clearly distinguishes itself from query_items by noting when that sibling is more appropriate. The return shape is stated explicitly, removing ambiguity about what the tool produces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the agent when to prefer query_items instead: 'When you already know the board, query_items is cheaper and complete.' It also instructs the agent to 'pass a result id to fetch for the full record,' routing to the fetch tool appropriately. This gives clear decision criteria rather than leaving usage to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_cellA
Set a single cell value on an item by columnId.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | The new cell value; shape depends on the column type | |
| itemId | Yes | ||
| boardId | Yes | ||
| columnId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and destructiveHint=false, so the write behavior is expected. The description adds that this operation sets a single cell, which clarifies the scope of mutation, but it does not disclose what happens to prior values, formatting requirements, or whether the operation is reversible. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one tight, front-loaded sentence with no filler. The word 'single' is meaningful because it scopes the operation precisely, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple setter, the description covers the core intent and required IDs, but it omits important guidance on how to format values for different column types and what the response looks like. Given the sibling tool get_board_schema exists, the description could usefully point to it for column-specific value formats, but it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 20%, so the description must carry extra weight. It explains the core roles of itemId and columnId (operating on an item, by column), and 'value' is partially described in the schema. However, projectId and boardId are not individually clarified, and no concrete value-shape examples are provided beyond the generic warning that the shape depends on column type.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Set'), a precise resource ('single cell value on an item'), and a clear locator ('by columnId'). This distinguishes it from broader sibling tools like update_item, since it targets one cell rather than an entire item.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'single cell value' implies this is for cell-level updates as opposed to broader item updates, but the description never explicitly states when to use this tool versus alternatives like update_item. There is no exclusion guidance or mention of prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sign_upA
Create a brand-new TaskLite account + organization and connect this machine — no website visit needed. A strong random password is generated locally and never shown or stored; for web access the user later uses "forgot password" with this email. Ask the user for email, their name, and a business name before calling.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The user's full name | |
| Yes | |||
| organizationName | Yes | Business/organization name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses meaningful behavioral details beyond the annotations: a strong random password is generated locally, never shown or stored, and the user must later use 'forgot password' for web access. This is valuable context for an agent and user. The description is consistent with annotations, which already mark this as a write operation (readOnlyHint=false).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, all substantive: purpose, security/behavioral caveat, and required user input. The description is front-loaded with the core action and avoids filler or repetition of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter account creation tool, the description covers the essential context: what is created, that no website visit is required, the local password behavior, and what information to collect first. There is no output schema, but the description sufficiently addresses the main side effects and next steps. It could be more explicit about what the caller should expect after completion, but this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67%, leaving the email parameter without a textual description. The tool description reinforces the three parameters ('email, their name, and a business name') and maps them to user inputs, but it does not add much semantic detail beyond what the schema already provides. The main added value is the instruction to gather these from the user before calling.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific verb ('create') and resource ('brand-new TaskLite account + organization') and adds the distinctive action of connecting this machine, which differentiates it from sibling tools like login and connect. It leaves no ambiguity about what the tool accomplishes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear practical guidance by instructing the agent to ask the user for email, name, and business name before calling. It also sets expectations by noting no website visit is needed and explaining how web access will work later. It does not explicitly contrast with login/connect, but the 'brand-new' framing makes the intended scenario reasonably clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_app_endpointA
Change an existing endpoint — most often to set exposedColumns on one that was created without them. Get the endpoint id from list_app_endpoints and the column ids from get_board_schema.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| slug | No | ||
| appId | Yes | ||
| isActive | No | ||
| endpointId | Yes | ||
| allowedMethods | No | ||
| exposedColumns | No | ||
| organizationId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and destructiveHint=false, so the mutation but non-destructive nature is known. The description adds the common use-case context but does not disclose further behavioral details such as whether updates are partial/full replacements or what effects changes have on existing endpoints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The main action is front-loaded, and each sentence contributes useful operational information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description handles the common exposedColumns scenario well, but with eight parameters, zero parameter descriptions, and no output schema, it is incomplete for general endpoint updates. It lacks guidance on fields like name, slug, allowedMethods, isActive, or organizationId.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does 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 meaning for endpointId and exposedColumns by naming their source tools, but the remaining six parameters receive no semantic guidance beyond their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Change an existing endpoint'. It also highlights the most common purpose, setting exposedColumns, which distinguishes this from create_app_endpoint and other update tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives concrete usage guidance by explaining the most common scenario and explicitly instructing where to obtain endpointId and columnIds. It does not explicitly say when not to use it or name alternatives, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_boardAIdempotent
Rename a board or change its description. Structure (columns) is changed with update_column / delete_column / reorder_columns.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| boardId | Yes | ||
| projectId | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, covering the mutation and safety profile. The description adds useful behavioral context beyond annotations by clarifying that structure is not modified by this tool, which prevents misuse. It does not go into side effects or return behavior, but for a simple board metadata update this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The primary function is stated first, and the sibling-tool routing follows immediately. Every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple metadata update tool, the description plus annotations are mostly sufficient. However, the required ID parameters are not explained and the wording 'Rename a board or change its description' introduces slight ambiguity about whether both fields can be updated in a single call. Given no output schema and no parameter guidance, a mid-range score is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the lack of parameter documentation. It explains the purpose of 'name' and 'description' implicitly, but it does not clarify that projectId and boardId are required identifiers used to locate the target board. This leaves two of four parameters, including both required ones, essentially undocumented in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs 'Rename' and 'change its description' to define exactly what the tool does to the board resource. It also explicitly distinguishes structure-related changes (columns) as the domain of update_column / delete_column / reorder_columns, making it easy to tell apart from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states that column structure is changed with other named tools, which gives clear when-not-to-use guidance. This effectively routes an agent to the correct sibling tool when the user intent is about columns rather than board name or description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_columnAIdempotent
Change a column after the fact: rename it, change its type (e.g. number -> currency), replace settings (dropdown options), or set isRequired / isHidden. A type change converts existing values (number↔currency, text→number/date/checkbox, anything→text) and clears the ones that cannot convert; the response carries conversion: { converted, cleared }. settings.validation rules apply here too.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| type | No | New column type (same list as create_column) | |
| force | No | Skip the name/type sanity check | |
| boardId | Yes | ||
| columnId | Yes | ||
| isHidden | No | ||
| settings | No | Replaces the column settings, e.g. { options: [...] } for dropdown/status | |
| projectId | Yes | ||
| isRequired | No | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is highly transparent about conversion behavior: it converts existing values, clears unconvertible ones, and reports conversion counts in the response. However, annotations declare destructiveHint=false while 'clears the ones that cannot convert' describes a data-destroying side effect. This is a direct annotation contradiction, so the score is 1 per rubric.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense, purposeful sentences with no filler. The first sentence front-loads the main operations, the second explains the critical conversion side effect, and the third adds validation context. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 covers the main invocation surface, dangerous side effects, and response clues. It does not describe the full success response format or clarify when force should be used, but those are minor gaps given the richness already present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 30%, but the description adds real parameter meaning: rename maps to name, type change maps to type, settings replacement maps to settings, and isRequired/isHidden are explicitly called out. It also adds conversion semantics and validation behavior. Identifier parameters are self-explanatory, and force already has a schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Change') and resource ('a column'), then names the exact operations: rename, change type, replace settings, set isRequired/isHidden. This clearly distinguishes it from sibling tools like create_column, delete_column, and reorder_columns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Change a column after the fact' gives clear context that this tool targets existing columns rather than creation-time configuration. It does not explicitly name create_column as the alternative or list when-not conditions, but the contextual signal is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_commentA
Edit the text of an existing comment. Only the author can edit their comment. Needs projectId, itemId and the commentId.
| Name | Required | Description | Default |
|---|---|---|---|
| itemId | Yes | ||
| content | Yes | The new comment text | |
| commentId | Yes | ||
| projectId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only indicate readOnlyHint=false and destructiveHint=false, so the description carries additional weight. It usefully discloses the author-only permission constraint and that an existing comment's text is edited. However, it does not explain overwrite behavior, failure conditions, or whether the operation can be undone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no filler. The core action is front-loaded, and the permission constraint is placed in the second sentence where it is easy to absorb.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update operation, the description covers the basic action, a key precondition, and the required identifiers. Still, parameter roles are not fully explained and there is no mention of return value or error behavior, leaving some gaps for an agent invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25%, so the description should compensate by explaining the parameters. It merely lists 'projectId, itemId and the commentId' without saying what each refers to or how they identify the target comment. Only 'content' is described, and that appears in the schema rather than the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Edit the text of an existing comment.' This clearly distinguishes the tool from sibling operations like add_comment, delete_comment, and list_comments. It also adds a meaningful scope condition: only the author can edit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: the tool is for editing an existing comment, and it explicitly states the precondition that only the author can edit. It does not explicitly name alternatives or exclusions, but the operation is unambiguous given the sibling CRUD tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_itemB
Update item fields (title, description, status, priority, dueDate, tags).
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| title | No | ||
| itemId | Yes | ||
| status | No | ||
| boardId | Yes | ||
| dueDate | No | ||
| priority | No | ||
| projectId | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are uninformative (readOnlyHint=false, destructiveHint=false) and the description adds no behavioral context beyond the action itself. It does not disclose whether updates are partial or full, whether fields are overwritten, authentication requirements, side effects, or response behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler. The action and updateable fields are front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters, no output schema, and minimal annotations, this description is not complete enough for an agent to reliably invoke the tool. It omits partial-update semantics, return values, and any context about the item model, leaving critical decisions to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does 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 lists six updateable parameter names (title, description, status, priority, dueDate, tags) but adds no meaning to the required IDs (projectId, boardId, itemId) and does not explain value formats or allowed values for dueDate, status, or priority.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Update') and resource ('item'), and lists the exact fields affected: title, description, status, priority, dueDate, tags. This distinguishes it from sibling tools like update_comment and update_board without needing to open schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as set_cell, create_item, or update_comment. No prerequisites, context, or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
44 tool updates
v0.7.0- First observed
add_comment - First observed
configure_external_access - First observed
connect - First observed
connection_status - First observed
create_app - First observed
create_app_api_key - First observed
create_app_endpoint - First observed
create_automation - First observed
create_board - First observed
create_column - First observed
create_item - First observed
create_project - First observed
delete_board - First observed
delete_column - First observed
delete_comment - First observed
delete_item - First observed
deploy_frontend - First observed
disconnect - First observed
export_project - First observed
fetch - First observed
get_app_spec - First observed
get_board_schema - First observed
get_frontend_prompt - First observed
list_app_endpoints - First observed
list_apps - First observed
list_automations - First observed
list_boards - First observed
list_comments - First observed
list_deployments - First observed
list_organizations - First observed
list_projects - First observed
login - First observed
publish_app - First observed
query_items - First observed
reorder_columns - First observed
rollback_deployment - First observed
search - First observed
set_cell - First observed
sign_up - First observed
update_app_endpoint - First observed
update_board - First observed
update_column - First observed
update_comment - First observed
update_item
TDQS
Most tools follow a clear resource+action pattern, so list_projects, list_boards, create_column, etc. are easy to tell apart. The only real close calls are connect vs. login (same connection action, different auth method) and update_item vs. set_cell (item metadata vs. arbitrary column values), though the descriptions do resolve them.
Snake_case with verb_noun dominates: list_*, create_*, update_*, delete_*, get_* are used predictably across projects, boards, columns, items, comments, apps, and automations. A few outliers like connection_status, sign_up, search, and fetch break the pattern slightly, but they are still readable and not chaotic.
44 tools is well above the 25+ threshold and makes the surface feel heavy even though the domain is broad. Account/auth, board schema, item CRUD, comments, apps, endpoints, automations, search, and deployment are all crammed into one namespace, which will make tool selection harder for an agent.
Core workflows are covered — boards, columns, items, comments, app endpoints, and deployments all have usable create/read/update paths. However, there are clear lifecycle gaps: projects cannot be updated or deleted, apps cannot be deleted, automations cannot be updated or deleted, and app API keys cannot be listed or revoked, leaving several dead ends.
Maintenance
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
Build, deploy, and host full-stack web apps from any MCP client. DB, auth, storage, cron included.
Build multi-tenant apps over MCP. Schemas, CRUD, deploys — access control enforced server-side.
1Hosted MCP server for AI-driven data ops. Create apps, manage schemas, and CRUD structured data.
Build, validate, deploy — HTTP APIs, cron jobs, webhooks and MCP tools — from your AI client.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceGenerates production-ready MCP servers from natural language, OpenAPI specs, database schemas, GraphQL schemas, or ontologies.861MIT
- AlicenseNot gradedqualityBmaintenanceAuto-generates MCP servers from any data source, enabling AI clients to query databases, spreadsheets, and APIs with zero code.5MIT
- FlicenseNot gradedqualityBmaintenanceAutomatically generates, validates, and deploys remote MCP servers from natural language descriptions, with a web dashboard for management.-
- AlicenseNot gradedqualityBmaintenanceEnables creating and using REST APIs from natural language descriptions, with MCP tools to generate, manage, and interact with deployed API wrappers.MIT
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/shimon-ks/tasklite-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server