GetSign MCP
Server Details
GetSign is an MCP server for documents on monday.com. Claude, Cursor, or ChatGPT prepares a contract from the board, waits for you to approve the send, then tracks and files the signed copy.
One instruction. Done. Built for the agent. Not bolted on.
58 tools. Hosted at mcp.getsign.io.
- Status
- Healthy
- Uptime
- 22.0% over 22 days
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 27 tools
Most tools are clearly separated by resource and action, such as workflow creation, template upload, document listing, and signature status. A few action-overloaded tools (getsign_account, getsign_status, getsign_connect, getsign_save_document_configuration) bundle multiple behaviors, and some create/generate names still require reading descriptions to distinguish.
All tools share the getsign_ snake_case prefix and mostly follow a verb_noun pattern like list_workflows_for_board or update_workflow_settings. Minor deviations such as getsign_monday_item, getsign_help, and getsign_account break the pattern slightly, but the overall convention is predictable.
27 tools exceeds the 25+ threshold for an over-heavy set, and the surface is large for model context. The manage_tools mechanism helps, but as listed the server still presents a substantial tool count.
The core signing lifecycle is well covered: create workflows and templates, attach documents, map placeholders, send requests, track status, and download signed files. Notable gaps include no direct tool to add signers and some referenced helper tools not visible in the current set, but most workflows can be completed without dead ends.
Available Tools
27 toolsgetsign_accountARead-onlyIdempotentInspect
Check GetSign auth and Monday-app install state.
action=preflight (default): token configured + GET /account if connected.
action=status: whether a session token is configured (does not probe /account).
action=install_state: whether the Monday app is installed (tri-state). Pass
account_id for an account that has never connected — defaults to this session.
installed is true, false, or null (not known). Never report null as installed.
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | preflight | |
| account_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
This goes well beyond the annotations by disclosing exactly what each action does and does not probe, e.g., 'status ... does not probe /account.' It also explains the tri-state semantics of `installed` and warns not to report null as installed, giving the agent nuanced behavioral knowledge the annotations cannot convey.
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 summary line is front-loaded, followed by a compact indented breakdown of each action. Every sentence contributes either a parameter explanation, a behavioral nuance, or a safety caveat. There is no filler or repetition.
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 two-parameter read-only diagnostic tool with an output schema, the description covers the tool's purpose, all actions, both parameters, default behavior, and special null semantics. An agent has everything it needs to select the correct action and pass the right arguments.
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 both parameters, and it succeeds. It defines the three `action` values and their defaults, and explains why `account_id` matters and when to pass it. This fully compensates for the schema's lack of enumerated or described values.
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 precise statement: 'Check GetSign auth and Monday-app install state.' It then enumerates the three action modes with distinct meanings, making the tool's purpose and scope unambiguous. The title reinforces the same message without tautology.
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 states which action to use for what situation: preflight probes /account when connected, status only checks the token, and install_state requires account_id for never-connected accounts. It does not explicitly contrast with a sibling like getsign_status, so a full 5 for exclusions/alternatives is not warranted, but the operational guidance is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_cancel_signature_requestCDestructiveInspect
Cancel an active Getsign signature request.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | ||
| envelope_id | Yes | ||
| confirm_token | No | Retry token from a prior CONFIRMATION_REQUIRED response. Do not invent one. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate destructiveHint=true and idempotentHint=false, so the description is not contradicting them. It adds only the 'active' precondition and does not disclose consequences such as irreversibility, signer notifications, or confirmation requirements.
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, focused sentence with no filler or redundancy. It states the action and target immediately, making it easy to parse.
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 destructive operation with two required parameters and no output schema, the description is too sparse. It does not explain what an envelope_id or item_id refers to, what happens after cancellation, or how this relates to other Getsign workflow tools.
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 33% because confirm_token has a description, while the required envelope_id and item_id are bare property names. The description offers no explanation of these required parameters, so an agent gets no additional semantic help.
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 'Cancel' with a clear resource 'active Getsign signature request', making the core action unambiguous. However, it does not explicitly differentiate itself from related siblings like getsign_send_signature_request or getsign_reset_signing_process.
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 no guidance on when to use this tool versus alternatives, and it does not mention any preconditions or scenarios where cancellation applies. The only usage signal is the word 'active', which is implied rather than explained.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_connectAInspect
Open a secure GetSign login, or install the Monday app then log in.
action=oauth (default): Monday OAuth URL. Returns already_connected with no
URL when this session already works. Pass force=True to re-auth.
action=install: one-click install+consent URL (force_install_if_needed) plus
optional Monday install_app mutation guidance. Use when the app is not
installed. Installing does not authorize GetSign — OAuth still completes
on that same URL.
permitted_workspaces applies only to action=install (Monday workspace ids).
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | mcp | |
| force | No | ||
| action | No | oauth | |
| account_id | No | ||
| return_url | No | ||
| force_install | No | ||
| permitted_workspaces | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false, so the description is not the only source of behavioral info. The description adds specifics: it can install an app, return already_connected when the session works, and force re-auth. It also clarifies that installation does not authorize GetSign. This goes beyond the annotations, providing context about side effects and return behavior. It does not cover all possible behaviors, but it is reasonably 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 moderately concise, using a brief opening line and then bullet-like indentation for the two actions. It is front-loaded with the main purpose. Some redundancy exists (e.g., 'Open a secure GetSign login' and then 'action=oauth: Monday OAuth URL'), but overall it is structured and readable. It could be tightened by removing unnecessary words.
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 7 parameters and 0% schema coverage, the description is incomplete. It covers only 3 of the parameters and does not describe the output schema or return values beyond a brief mention of 'already_connected'. The tool has multiple modes and side effects (app installation), so an agent needs more detail on parameters like account_id, return_url, and force_install to use it correctly. The description leaves significant gaps.
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 7 parameters with 0% description coverage, so the description must compensate. It explains action (with default and two values), force (for re-auth), and permitted_workspaces (only for install). However, it does not mention mode, account_id, return_url, or force_install. These parameters remain undocumented in both schema and description, leaving an agent without guidance on their meaning or usage. This is a significant gap.
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's purpose: to open a secure GetSign login or install the Monday app and log in. It distinguishes two modes (oauth and install) and provides the default behavior. This differentiates it from sibling tools like getsign_account or getsign_manage_tools, which handle other aspects of account management.
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 conditions for each action: action=oauth is default and returns already_connected when the session already works, with force=True to re-auth; action=install is for when the app is not installed. It also clarifies that installing does not authorize GetSign, so OAuth still needs to complete. However, it does not reference alternative tools or exclusions beyond the two actions, so it is not fully explicit about when to use this tool versus others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_create_templateAInspect
Create a Getsign template via a two-phase presigned upload — call this tool TWICE.
Call 1 (omit storage_key): pass file_name + content_type (required here).
Returns data.url (presigned PUT) and data.storage_key. PUT the raw file
bytes straight from disk to data.url with a shell command — curl -X PUT
--data-binary @path -H "Content-Type: <type>" (or curl -T path) — never by
reading the file into chat/base64 first, since that defeats the point of
this flow for anything but tiny files.
It must be a PUT and must send Content-Type as its only header. Dropping
-X PUT makes curl send a POST and S3 answers 403 SignatureDoesNotMatch.
Adding any x-amz-* header, including a correctly computed
x-amz-checksum-crc32, answers 403 AccessDenied. The x-amz-checksum-crc32
already in data.url is an empty-body checksum and needs no action. Keep the
error body on failure — a 403 from S3 means the request was malformed, not
that storage is unreachable.
Call 2 (same file_name/content_type/board_id/envelope_id/item_id, plus
storage_key=data.storage_key from call 1): registers the uploaded file as
a template.
Auto-attaches to a workflow item only if BOTH envelope_id and item_id are
passed together on call 2 — the file then shows up in
getsign_list_envelope_documents with envelopeId/boardId/itemId already
set, no separate select-template call needed. Passing only board_id (or
envelope_id alone, without item_id) registers the file as a standalone
template unattached to any workflow — follow up with
getsign_select_template_for_workflow before editor/send tools will see it.
Only pass item_id when you mean a specific Monday item (>0). A falsy
item_id is omitted from the payload.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | No | ||
| board_id | No | ||
| file_name | Yes | ||
| envelope_id | No | ||
| storage_key | No | ||
| content_type | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only say readOnlyHint=false, idempotentHint=false, destructiveHint=false, so the description carries the full burden. It discloses critical behavioral traits: the tool must be called twice, the first call returns a presigned URL and storage key, the second registers the file, and the upload must be a raw PUT with only Content-Type header. It even warns about specific 403 errors and the x-amz-checksum-crc32 trap. This is rich, actionable behavioral transparency.
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 long but every sentence earns its place: it covers the two-phase flow, curl command, header constraints, error interpretation, attachment logic, and parameter semantics. It is front-loaded with the most important instruction ('call this tool TWICE') and structured with clear call 1/call 2 sections. Slightly verbose in the curl details, but those details prevent real failures, so the length is justified.
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 complexity (two-phase upload, presigned URL, S3 constraints, attachment logic) and the absence of an output schema, the description is remarkably complete. It explains what the first call returns (data.url and data.storage_key), how to perform the upload, what errors mean, and how the second call completes registration. An agent has everything needed to invoke the tool correctly without guessing.
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, and it does. It explains the role of each parameter across the two calls: file_name and content_type are required for call 1, storage_key comes from call 1's response for call 2, and board_id/envelope_id/item_id control attachment behavior. It also clarifies that a falsy item_id is omitted from the payload. This adds meaning far 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 the tool's purpose: creating a Getsign template via a two-phase presigned upload. It specifies the exact verb ('Create'), the resource ('Getsign template'), and the mechanism ('two-phase presigned upload'), and it distinguishes the two calls needed. This is far more specific than a generic 'create template' and helps an agent understand the tool's unique role among 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 provides explicit when-to-use guidance: it explains the two-call sequence, when to omit storage_key (call 1) and when to include it (call 2), and when to pass envelope_id/item_id together for auto-attachment versus standalone registration. It also names the follow-up tool (getsign_select_template_for_workflow) for the unattached case, giving clear alternatives and conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_create_workflowAInspect
Create a Getsign workflow for a Monday board, optionally from templates.
THIS IS THE DEFAULT WAY TO CREATE A WORKFLOW. A workflow (envelope) is
board-scoped, so creating one needs only board_id and workflow_name — no
item.
workflow_name is REQUIRED — ask the user what to call the workflow before
calling this, and do not invent a name on their behalf. The backend has no
name fallback: creating without one produces an envelope literally named
"undefined (Copy)" on the board. The name is user-visible on the monday
board, so prompt for something recognizable — usually the source document
or the kind of agreement (e.g. "NDA - Acme Corp"). Calling with a blank or
whitespace-only name returns MISSING_WORKFLOW_NAME instead of creating
anything.
A new workflow inherits the account's email configuration (sender
identity, message, reminders, logo, OTP) and security settings by
default. Ask the user whether to inherit those from the account or
override them with workflow-specific ones, and pass the answers as
inherit_account_email_configuration / inherit_account_security_settings
(True = inherit, False = override with this workflow's own values). Leave
them unset to keep the account-inheriting default. Overriding email
config is what lets a workflow have its own logo/sender that don't track
later account changes.
The response carries a display_summary (the same curated four-section
view as getsign_get_workflow). Present that summary — section titles +
descriptions + current values — rather than the raw settings blob, and
only expand a section's details when the user asks about it.
The response also carries post_create_questions — ALWAYS ask both of
its questions right after creation, before attaching a document or
mapping fields: (1) template workflow vs. Use stored document for
where the signing document comes from, and (2) whether to enable any
of the optional features (Generate document, Signature collection,
Share and track). Explain each option using the given descriptions.
Asking is mandatory — enabling or choosing anything is not. A "decide
later" answer is fine, don't block on it, and never flip a toggle on
without an explicit yes.
| Name | Required | Description | Default |
|---|---|---|---|
| board_id | Yes | ||
| workflow_name | Yes | ||
| template_gallery_ids | No | ||
| inherit_account_security_settings | No | ||
| inherit_account_email_configuration | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations are minimal, but the description exposes important behaviors: blank names produce MISSING_WORKFLOW_NAME or an envelope literally named 'undefined (Copy)', new workflows inherit account email/security config by default, and responses include display_summary and mandatory post_create_questions. This is exactly the kind of side-effect and user-visible consequence information agents need.
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 long, but every paragraph carries actionable content: required user prompts, failure modes, defaults, response presentation, and mandatory follow-up questions. It is front-loaded with the core purpose and uses emphasis well, though it could be tightened with bullets or shorter paragraphs.
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?
Even with no output schema, the description tells the agent what to do before calling, what to ask during creation, what the response will contain, how to present it, and what follow-up is mandatory. It also covers error cases and inheritance defaults, making the complete create-workflow flow actionable.
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 compensates well: workflow_name's required nature, no fallback, and blank-name error are explained; board_id's role is clarified; both inherit_* booleans are fully specified with True/False meaning and defaults. The only gap is template_gallery_ids, which is only implied by 'optionally from templates' rather than explicitly documented.
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?
Starts with a specific verb and resource: 'Create a Getsign workflow for a Monday board, optionally from templates.' It immediately clarifies board scoping, notes that only board_id and workflow_name are needed, and distinguishes itself with 'THIS IS THE DEFAULT WAY TO CREATE A WORKFLOW.' This is far beyond the name/title and prevents confusion with other workflow or template 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?
Gives clear pre-call guidance: ask the user for a workflow_name, do not invent one, ask about inheritance settings, and ALWAYS ask post-create questions. It also explains sequencing relative to attaching documents or mapping fields. It does not explicitly name sibling alternatives, but the 'default way to create a workflow' plus the board-scoped context makes the main use case unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_delete_envelope_documentADestructiveInspect
Remove a document from a workflow/envelope.
Soft-deletes the file via DELETE /api/v3/files/:fileId, resets related
signing history, and optionally removes the Monday file-column asset
when asset_id is provided. Confirm with the user before calling — this
mutates the envelope. Use getsign_list_envelope_documents first to
discover file_id / asset_id.
| Name | Required | Description | Default |
|---|---|---|---|
| file_id | Yes | ||
| item_id | Yes | ||
| asset_id | No | ||
| envelope_id | Yes | ||
| confirm_token | No | Retry token from a prior CONFIRMATION_REQUIRED response. Do not invent one. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false, so the mutation is known. The description adds valuable context: soft-delete behavior, reset of signing history, optional Monday asset removal, and the confirm_token retry mechanism. It doesn't fully explain consequences of resetting signing history, but it covers the key behavioral traits.
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 action, then the mechanism, then the prerequisite. Every sentence earns its place with no fluff.
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 destructive mutation with no output schema, the description covers the critical context: what happens, what to do before calling, and the confirmation requirement. It could mention the CONFIRMATION_REQUIRED response flow more explicitly, but the confirm_token schema description covers that.
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 compensate. It explains file_id and asset_id semantics (file to delete, optional Monday asset), and mentions confirm_token's purpose indirectly via the confirmation warning. However, envelope_id and item_id are not explained in the description, leaving some gap.
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 ('Remove'), a resource ('document from a workflow/envelope'), and the underlying API call (DELETE /api/v3/files/:fileId). It also distinguishes itself from siblings by mentioning the optional Monday asset removal and the prerequisite list tool.
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 instructs to confirm with the user before calling, warns that it mutates the envelope, and directs the agent to use getsign_list_envelope_documents first to discover file_id/asset_id. This is clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_detect_placeholders_aiAInspect
Run AI placeholder detection on a PDF document.
Detects signer-fillable pads (signature, initials, sign dates, text boxes,
checkboxes) and Monday board fields (email, phone, numbers, location,
text, date, item-name) in one run. Board fields pull values from the
item's Monday columns. itemId is the column id, title is the column name.
Always pass board_id so columns reach the detector. item_id is not
enough. If omitted, the tool resolves board_id from envelope_id or
template_id. Printed {{Column Title}} / {columnId} tags are not
rewritten into board overlays.
By default waits for the async job to finish and returns detected
placeholders. Set wait=false to only start the job and get a jobId.
Present these choices to the user. Do not pick silently.
First detect — ask which fields to detect:
- Board fields (filled from Monday columns)
- Signer-fillable placeholders (the signer writes them)
- Both
Pass their choice as intent, e.g. intent="board fields only",
intent="signer-fillable only", or intent="both". They can add document
type on the same string. Do not invent a choice they did not give.
If the result is wrong they can:
- Edit with text: re-call with refine=true and intent set to what they
said is wrong (e.g. intent="you missed the signature on page 2").
- Start from scratch: re-call with force=true. That mints new field ids,
so save afterwards with merge=false or fields will duplicate.
If AI detection was already completed / fields are already mapped on this
file, returns AI_DETECTION_ALREADY_DONE instead of redetecting. Pass
envelope_id+item_id or template_id so that check can read file state. That
response includes previous_run and user_options — tell the user those
options (refine with text vs start over vs review in the editor).
Prefer this when the user asks to auto-detect signature pads, form
fields, or Monday board fields on a PDF. After completion, save via
getsign_save_document_configuration action=placeholders, then open
getsign_get_document_url(action="edit") so the user can review.
For item / useFileColumn documents, always pass envelope_id (workflow id) +
item_id. The tool calls POST /files/find-or-create/with-rendered-string first
(same as opening the PDF editor) so detect has an S3 key. Without envelope_id
the ingest step is skipped and Monday-only file ids can fail with
"File not found or has no storage key".
This is the required first step for placing signer-fillable or
board-bound fields via the API. Always call this before
getsign_save_document_configuration (action=placeholders), and pass
its data.placeholders through unmodified, including board field types.
The only field-placement path that skips this tool is the manual PDF
editor (getsign_get_document_url with action="edit"), where the user
places fields by hand.
Never construct a placeholders array yourself from guessed coordinates —
the save route accepts it without error but it can fail to render or
resolve a signer, with no indication anything is wrong.
| Name | Required | Description | Default |
|---|---|---|---|
| wait | No | ||
| force | No | ||
| intent | No | ||
| job_id | No | ||
| refine | No | ||
| file_id | Yes | ||
| item_id | No | ||
| board_id | No | ||
| envelope_id | No | ||
| template_id | No | ||
| confirm_token | No | Retry token from a prior CONFIRMATION_REQUIRED response. Do not invent one. | |
| timeout_seconds | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are minimal (readOnlyHint=false, destructiveHint=false). The description carries the full burden and does it well: it discloses async behavior (waits by default, returns jobId if wait=false), the AI_DETECTION_ALREADY_DONE response and its contents, the need for confirm_token on CONFIRMATION_REQUIRED, and the side effect of force=true (minting new field IDs). It also explains the internal POST /files/find-or-create call and the consequence of omitting envelope_id. This goes far beyond the annotations and is not contradicted by 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?
The description is long (roughly 300 words) but every paragraph earns its place. It is front-loaded with the core purpose and then layers in usage, prerequisites, error handling, and workflow. It is structured with clear paragraphs and lists, making it scannable. While a more compact version could exist, the density of critical information justifies the length. It is not merely verbose; it is comprehensive and organized.
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 12 parameters, no output schema, and a complex async workflow, the description covers a remarkable amount: detection types, intent handling, refine/force flows, AI_DETECTION_ALREADY_DONE handling, file storage prerequisites, and the recommended follow-up steps. It lacks an explicit description of the success response payload structure (e.g., exact shape of data.placeholders), but it does mention that the output includes placeholders and that AI_DETECTION_ALREADY_DONE includes previous_run and user_options. This is a minor gap given the complexity; an explicit response schema would make it complete, but the description is strong enough for an agent to proceed.
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 8% (only confirm_token has a schema description). The description compensates extensively: it explains intent values ('board fields only', 'signer-fillable only', 'both'), the role of board_id ('Always pass board_id so columns reach the detector'), the envelope_id+item_id pairing requirement, the meaning of wait, refine, force, and job_id (via wait=false). It also clarifies confirm_token's origin. This is a textbook case of the description adding meaning where the schema is silent.
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 clear, specific statement: 'Run AI placeholder detection on a PDF document.' It immediately details what it detects (signer-fillable pads and Monday board fields), and differentiates itself from siblings by stating it is the required first step before getsign_save_document_configuration, and that the manual editor path skips it. This distinguishes it from the 26 sibling tools without 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?
Explicit when-to-use guidance: 'Prefer this when the user asks to auto-detect...' and when-not-to-use (manual editor path). It names the alternative tool (getsign_save_document_configuration, getsign_get_document_url) and the conditions for using them. It also provides critical prerequisites (e.g., 'For item / useFileColumn documents, always pass envelope_id + item_id') and a clear warning against constructing placeholders manually. This is exemplary usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_download_signed_documentsAInspect
Return short-lived browser download URLs for signed PDFs.
Use after getsign_status action=history reports workflow_completed, or when
the user asks to download signed documents. Returns one presigned HTTPS
link per PDF. Share the links — do not save files on the MCP host.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | ||
| envelope_id | Yes | ||
| confirm_token | No | Retry token from a prior CONFIRMATION_REQUIRED response. Do not invent one. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description reveals that URLs are short-lived and instructs the agent to share links rather than save files on the MCP host. It does not contradict the annotations, though it omits the CONFIRMATION_REQUIRED/confirm_token flow.
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 four short, purposeful sentences with the main behavior front-loaded. No filler or redundant restatement of the 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?
With no output schema and low parameter schema coverage, the description needs to carry more weight. It does not explain what envelope_id/item_id refer to, how confirm_token should be obtained beyond the schema, or how long the links remain valid.
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 33% and the description does not explain the required envelope_id or item_id parameters. The brief 'one presigned HTTPS link per PDF' hints at item granularity but does not compensate for the missing parameter definitions.
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 action and resource: 'Return short-lived browser download URLs for signed PDFs.' It clearly identifies the tool's output, though it does not explicitly distinguish it from sibling tools like getsign_get_document_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?
It explicitly states when to invoke: after 'getsign_status action=history reports workflow_completed' or when the user asks to download signed documents. It does not spell out when-not-to-use or name alternative tools, 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.
getsign_ensure_board_viewAInspect
Ensure a GetSign board view tab exists on a Monday board and return its link.
Idempotent: if the board already has a GetSign APP board view, reuse it.
Otherwise create one named "GetSign". Returns data.link (monday deep link)
and data.created (true when newly created). Needs only board_id — no
workflow has to exist yet. Priority trigger: call this as soon as a board
is picked/given for signing (e.g. right after listing workflows for a
board, or as soon as the user names a board), before or independent of
creating a workflow — don't wait for workflow creation's next_tool hint,
that's only a fallback for when this wasn't already called. Also call it
whenever the user asks for the GetSign board view. Gate on signing intent:
don't stamp a tab onto a board the user is only browsing.
| Name | Required | Description | Default |
|---|---|---|---|
| board_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description contains a direct conflict with the annotations: it explicitly states 'Idempotent: if the board already has a GetSign APP board view, reuse it' while annotations declare idempotentHint=false. An agent relying on the annotation would wrongly assume repeated calls create duplicates, or an agent relying on the description would contradict the structured metadata. Per the rubric, a description that contradicts annotations scores 1.
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 core purpose and idempotency behavior are well front-loaded, but the trigger guidance is notably wordy and restates the same idea in multiple phrasings ('call this as soon as a board is picked... right after listing workflows... before or independent of creating a workflow — don't wait for workflow creation's next_tool hint'). Around half the description could be tightened without losing 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 1-parameter tool with no output schema, the description is thorough: it covers idempotency behavior, return fields (data.link, data.created), preconditions (no workflow required), and the negative case (don't stamp on browsing boards). It is near-complete; only the idempotency contradiction with the annotations undermines an otherwise fully specified picture.
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 for board_id. It adds that only board_id is needed ('Needs only board_id — no workflow has to exist yet') and the repeated references to 'Monday board' make the parameter's meaning inferable. However, it never explicitly defines board_id as the Monday board identifier or its format, so compensation is partial rather than complete.
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 first sentence states a specific verb-resource pair ('ensure a GetSign board view tab exists on a Monday board') and the outcome ('return its link'). It clearly distinguishes itself from siblings like getsign_create_workflow or getsign_list_workflows_for_board, since it is about the board view tab itself rather than workflow creation or listing.
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 triggering conditions: call as soon as a board is picked for signing, before or independent of workflow creation, and whenever the user asks for the board view. It also provides an explicit exclusion — don't call on boards the user is only browsing — which is strong when-not-to-use guidance. No alternatives need naming because the trigger conditions themselves route the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_generate_documentsAInspect
Generate documents for a Getsign workflow and Monday item.
Generates a document from the workflow's template and attaches it to
the configured File column. First verifies the workflow's
generateDocument config is complete (enabled +
statusColumnId, statusColumnLabel, outputColumnId, outputFileType). If
not, returns error_type=GENERATE_DOCUMENT_NOT_CONFIGURED with the missing
fields, the board's status_columns / file_columns, and
next_tool=getsign_update_workflow_settings instead of firing. Present
those columns and ask the user which to use — do not auto-pick.
Starts POST /generate-flow/generate-documents and by default waits on the
SSE progress stream until completed/failed. Set wait=false to only enqueue
and get a jobId. Pass skip_preflight=true only when config was just validated.
| Name | Required | Description | Default |
|---|---|---|---|
| wait | No | ||
| item_id | Yes | ||
| item_name | Yes | ||
| envelope_id | Yes | ||
| confirm_token | No | Retry token from a prior CONFIRMATION_REQUIRED response. Do not invent one. | |
| skip_preflight | No | ||
| timeout_seconds | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the preflight verification, the exact error_type returned on failure, the SSE progress-wait behavior by default, and the wait=false escape hatch. These are meaningful behavioral traits that go far beyond the annotations, which only indicate readOnly=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 moderately long but every sentence earns its place: purpose, preflight behavior, failure routing, user-instruction, and the wait/skip flags. It is front-loaded with the core function before diving into edge cases.
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 and minimal annotations, the description covers the essential call path, failure mode, retry/enqueue behavior, and when to bypass safeguards. An agent has enough context to invoke it correctly and handle the main branching scenarios.
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 14%, so the description carries much of the burden. It adds real semantics for wait (enqueue-only vs waiting on SSE) and skip_preflight (only after config validation). The main parameters envelope_id, item_id, and item_name are not individually explained, but their role is largely inferable from the opening sentence about workflows and Monday items.
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: 'Generate documents for a Getsign workflow and Monday item', and immediately clarifies the concrete effect: generating from a workflow template and attaching to the configured File column. This clearly distinguishes it from siblings like getsign_generate_signing_link or getsign_send_signature_request.
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 operational guidance: when config is incomplete, route to getsign_update_workflow_settings instead of firing; set wait=false to only enqueue; pass skip_preflight=true only when config was just validated; and present column options to the user rather than auto-picking. This is unusually direct and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_generate_signing_linkAInspect
Generate a shareable signing link for a workflow item.
Preflights the workflow's shareAndTrack config and hard-blocks with
error_type=SHARE_AND_TRACK_NOT_CONFIGURED (listing the missing fields +
next_tool=getsign_update_workflow_settings) when the feature is disabled
or any of statusColumnId/statusColumnLabel/outputColumnId is unset. The
error includes status_columns / file_columns from the item's board —
present those and ask the user which to use, then
getsign_update_workflow_settings. Pass skip_preflight=true only when the
config was just validated.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | ||
| envelope_id | Yes | ||
| confirm_token | No | Retry token from a prior CONFIRMATION_REQUIRED response. Do not invent one. | |
| skip_preflight | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only indicate non-read-only, non-idempotent, and non-destructive behavior. The description goes much further by disclosing the preflight check, the hard-block error type, the exact missing-field triggers, and the required follow-up flow with the user.
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 first sentence is a crisp, front-loaded action statement, and the following paragraph is dense but purposeful. Minor repetition exists around next_tool/getsign_update_workflow_settings, but 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?
The description covers the main failure mode, the required follow-up action, and the constrained use of skip_preflight, giving an agent enough to invoke the tool safely. It does not describe the success return payload, but the tool name makes the primary result inferable, and the missing sibling contrast 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 only 25% (confirm_token only). The description adds useful semantics for skip_preflight, but item_id and envelope_id are left to inference, and confirm_token gains nothing beyond its schema description. It partially compensates for the low coverage but not fully.
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: generate a shareable signing link for a workflow item. The added preflight/error details make it clearly distinguishable from siblings like getsign_send_signature_request and getsign_get_document_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 gives explicit guidance on when to pass skip_preflight=true and what to do when the shareAndTrack config is missing, including the next tool to call. It does not explicitly contrast against sibling tools, but the invocation conditions are unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_get_document_urlAInspect
Return a GetSign edit or preview URL for an item document or gallery template.
action=edit opens field mapping. action=preview opens read-only review.
Pass envelope_id + item_id for an item (file_id optional), or template_id +
file_id for a gallery template, never both shapes. When the workflow has
useFileColumn enabled, the document is item-level: pass envelope_id + item_id
with edit_template=False, matching the scope of the save, and tell the user the
editor is open on this item's document rather than a shared template.
edit_template applies only
to action=edit: omitted means shared-template editing. Pass false for this item
only. Preview rejects edit_template and redirects completed items to download.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | ||
| file_id | No | ||
| item_id | No | ||
| envelope_id | No | ||
| template_id | No | ||
| confirm_token | No | Retry token from a prior CONFIRMATION_REQUIRED response. Do not invent one. | |
| edit_template | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral detail beyond annotations: action=edit opens field mapping, preview opens read-only review, preview rejects edit_template, and completed items redirect to download. It does not contradict the annotation flags, though it omits details like side effects or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose is front-loaded, and line breaks separate action semantics, parameter shapes, and special-case guidance. It is somewhat long but each sentence adds relevant information, and the item-level workflow case is explained efficiently.
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 7-parameter tool with no output schema, it covers action semantics, parameter shapes, and edge behavior well. It does not describe the return format in detail or the CONFIRMATION_REQUIRED retry flow beyond the schema's confirm_token note, leaving a small completeness 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?
With only 14% schema coverage, the description compensates well by explaining action values and valid parameter combinations, including the optional file_id and edit_template semantics. confirm_token is left to the schema, which already documents it, so the main gap is that not every parameter is explicitly re-explained.
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 begins with 'Return a GetSign edit or preview URL for an item document or gallery template,' which names a specific resource and operation. It clearly distinguishes the edit and preview modes, but does not explicitly compare against sibling tools like generate_signing_link.
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 provides explicit conditions: pass envelope_id + item_id for an item, template_id + file_id for gallery templates, never both shapes, and use edit_template=False for item-level workflows. It stops short of naming alternatives or exclusionary cases vs other tools, but the within-tool guidance is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_get_signer_dataARead-onlyIdempotentInspect
Signers who must sign, plus copy-only recipients, as two labeled lists.
- signers: people whose signature is required (emails, roles, isCompleted).
- copy_recipients: people who only receive a copy after everyone finishes —
they do not sign. The emails arg on getsign_send_signature_request is
copy-only, never a signer.
- isSigningOrderRequired / signing_order: whether later signers wait until
the previous person signs. Read-only here. Set it with
getsign_save_document_configuration action=signing_order (do not open
the PDF editor just for order).
Pass envelope_id + item_id for both lists. Pass envelope_id alone for
copy recipients only.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | No | ||
| envelope_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context: the emails arg on getsign_send_signature_request is copy-only and never a signer, and signing order is read-only here. This clarifies data semantics 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?
The description is well-structured with bullet points and front-loads the core purpose. Each sentence earns its place, though the signing-order note is slightly tangential to the tool's primary function. Still, it's compact and scannable.
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 tool with no output schema, the description covers the key inputs, the two output categories, and the relationship to sibling tools. It doesn't describe the exact return format, but the labeled lists are named and explained. The main gap is not specifying what happens if both parameters are omitted, but the usage guidance is otherwise 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 full burden. It explains that envelope_id and item_id are both needed for signers, but envelope_id alone suffices for copy recipients. This adds real meaning beyond the bare schema, though it doesn't describe the exact format of the IDs or the return structure.
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 signers and copy-only recipients as two labeled lists, with explicit definitions of each. It distinguishes itself from related tools by naming getsign_send_signature_request and getsign_save_document_configuration, making its purpose 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 provides explicit usage guidance: pass envelope_id + item_id for both lists, or envelope_id alone for copy recipients only. It also tells the agent when NOT to use this tool (do not open the PDF editor for signing order) and directs to getsign_save_document_configuration instead, which is strong alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_get_workflowARead-onlyIdempotentInspect
Fetch Getsign workflow details by id — user-friendly alias for envelope.
The response carries the full settings blob plus a display_summary: a
curated, four-section view (Sender / Email settings, Generate document,
Signature collection, Share and track), each with a title, a plain-language
description of what it does, and the current value/on-off. Present that
summary to the user — the section titles + descriptions + current values —
do NOT dump the raw settings blob and don't silently proceed on defaults
the user never saw. Only expand a section's details (its configuration
requirements) when the user asks about that specific section (e.g. "what
do we need to configure generate document"). Change settings via
getsign_update_workflow_settings.
When the workflow has an email logo, the response also includes logo_key
and a short-lived logo_preview_url. Preview lives here. There is no
getsign_get_workflow_logo_url. Uploading a new logo is
getsign_set_workflow_email_logo (starts disabled: enable it with
getsign_manage_tools first), then attach data.key via
getsign_update_workflow_settings(logo_key=...).
| Name | Required | Description | Default |
|---|---|---|---|
| workflow_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, the description reveals the response shape: full settings blob plus a four-section display_summary with titles, descriptions, and current values. It also discloses the short-lived logo_preview_url and explicitly states 'There is no getsign_get_workflow_logo_url.'
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 longer than strictly necessary and contains some asides, but it is organized into clear functional paragraphs: purpose, summary-display behavior, settings pointer, and logo handling. Each section carries actionable information, so no part is 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?
With no output schema, the description fully covers the return values: the settings blob, display_summary structure, logo_key, and logo_preview_url. It also explains how to proceed with the result and which sibling tools to use for follow-up actions.
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 one parameter, workflow_id, with no description (0% coverage). The description only says 'by id,' which adds little beyond the self-explanatory parameter name; it does not explain where the id comes from, its format, or validation requirements.
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 action and resource: 'Fetch Getsign workflow details by id' and clarifies it is a 'user-friendly alias for envelope.' This clearly distinguishes it from nearby tools like getsign_update_workflow_settings and getsign_get_document_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?
It explicitly instructs to present the display_summary rather than the raw blob and to only expand section details when the user asks. It also routes related actions to named alternatives: 'Change settings via getsign_update_workflow_settings' and logo upload via getsign_set_workflow_email_logo.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_helpARead-onlyIdempotentInspect
Read GetSign agent docs or named flow recipes. Do not use this to list tools.
tools/list already has every tool name and description. This tool is for
on-demand guides — remote MCP clients do not get local CLAUDE.md.
No args: short index of doc paths and flow names.
path: markdown for that guide (gotchas, placeholders-and-signers,
flows/send_new_document, or a getsign://docs/... URI).
flow: same as path=flows/{name} (e.g. send_new_document).
query: matching docs, flows, and related tool names — not the full catalog.
| Name | Required | Description | Default |
|---|---|---|---|
| flow | No | ||
| path | No | ||
| query | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, and the description is consistent. It adds valuable behavioral context beyond annotations: no args returns a 'short index', path returns markdown, flow is an alias, and query returns 'matching docs, flows, and related tool names — not the full catalog.' This discloses output scope and limitations clearly.
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 efficiently structured: a one-line purpose, an exclusion warning, then a concise bullet-like breakdown of modes. Every sentence earns its place, and the most important context (what the tool does and does not do) 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 help tool with three optional parameters, the description is complete: purpose, when-not-to-use, alternative tool, parameter behavior, examples, and return behavior for no args. The output schema exists, so detailed return format is not needed in the description. An agent has everything necessary to select and call this 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 description coverage is 0%, so the description must fully compensate, and it does. Each parameter (path, flow, query) is explained with concrete examples, including valid path forms like 'flows/send_new_document' and 'getsign://docs/...'. This makes the parameters actionable without 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 opens with a specific verb and resource: 'Read GetSign agent docs or named flow recipes.' It immediately differentiates from listing tools by saying 'Do not use this to list tools' and clarifies that tools/list covers tool names and descriptions. This makes the tool's role unmistakable among the many getsign_* 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?
Provides explicit exclusion guidance: 'Do not use this to list tools. tools/list already has every tool name and description.' It also explains when this tool is appropriate ('on-demand guides') and why it exists ('remote MCP clients do not get local CLAUDE.md'). Each parameter mode is described, leaving no ambiguity about how to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_list_envelope_documentsBRead-onlyIdempotentInspect
List workflow-level templates or item-level documents for an envelope.
| Name | Required | Description | Default |
|---|---|---|---|
| scope | No | item | |
| item_id | No | ||
| envelope_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds context about the two modes of operation (workflow vs item), which is useful behavioral information beyond annotations, but it does not discuss potential side effects, permissions, or response structure.
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, efficient sentence that front-loads the core action and scope. Every word earns its place; there is no fluff 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?
With 3 parameters, no output schema, and no additional context, the description is incomplete. It does not explain return values, what constitutes a 'template' vs 'document', or how item_id relates to the scope. An agent might struggle to determine correct parameter combinations without further information.
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 explaining parameters. While it implicitly hints at the 'scope' parameter through 'workflow-level' vs 'item-level', it does not explicitly describe envelope_id, item_id, or the interplay between scope and item_id. The description adds minimal value over the raw schema, leaving parameter semantics vague.
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 names the resource ('envelope') with a clear scope distinction ('workflow-level templates' vs 'item-level documents'). This differentiates it from sibling tools like getsign_create_template or getsign_get_workflow, making the tool's purpose immediately understandable.
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 does not provide guidance on when to use this tool versus alternatives, nor does it mention any exclusions or conditions. There is no explicit context about the scope parameter or when to choose workflow-level vs item-level, leaving the agent to infer usage from the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_list_template_galleryARead-onlyIdempotentInspect
Search Getsign template gallery entries.
Defaults to the current board's templates — pass board_id for the board
you're working with. Account-wide search across all boards is also
available: omit board_id, or ask explicitly, to search the whole account.
Combine with q (text search), template_type, and is_premade as needed.
Use cursor/limit to page through results (see hasMore/nextQuery in the
response).
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| limit | No | ||
| cursor | No | ||
| board_id | No | ||
| is_premade | No | ||
| template_type | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds useful context beyond that: default board behavior, account-wide fallback, and pagination signals (hasMore/nextQuery). It does not disclose rate limits or full response contents, but the safety profile is already declared.
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 main purpose is front-loaded in the first sentence, and the remaining sentences each add scoping, filtering, or pagination guidance without repetition. Minor formatting whitespace and the slightly roundabout account-wide sentence keep it from a perfect score.
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 provides a helpful pointer to hasMore/nextQuery in the response and covers all major call modes. It could be more complete by describing the shape of returned template entries or the default page size, but the essential invocation context is 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 0%, so the description carries the burden of explaining parameters. It successfully maps all six parameters: q as text search, board_id as board scoping, template_type and is_premade as filters, and cursor/limit as pagination controls. It stops short of enumerating allowed template_type values, but it covers the core semantics.
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: 'Search Getsign template gallery entries.' It goes on to clarify the default board scope and account-wide scope, which helps distinguish it from sister tools like getsign_list_workflows_for_board and getsign_select_template_for_workflow.
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 explains when to pass board_id (current board) versus omit it (account-wide search), and instructs combining q, template_type, and is_premade as needed. It does not explicitly name alternative tools or exclusion conditions, but the scope guidance is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_list_workflows_for_boardARead-onlyIdempotentInspect
List Getsign workflows configured on a Monday board.
| Name | Required | Description | Default |
|---|---|---|---|
| board_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which covers the safety profile. The description aligns with these (listing is read-only) and adds a scope constraint ('on a Monday board'), which is useful context. However, it does not add any behavioral details beyond 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?
The description is a single, clear sentence with no wasted words. It front-loads the core action and scope, 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?
For a simple read-only list tool with one parameter and no output schema, the description covers the essential purpose. However, it does not mention what the returned list contains (e.g., workflow names, metadata) or any prerequisites beyond the board ID. While the annotations handle safety, the description leaves the exact output format undefined, which could cause an agent to infer incorrectly.
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 description coverage at 0% and only one parameter (board_id), the description hints that the parameter is a Monday board identifier, but does not explain its format, semantics, or how to obtain it. This adds some value over the bare schema but stops short of fully compensating 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 clearly states the verb 'List' and the resource 'Getsign workflows' scoped to a 'Monday board'. This is specific enough to distinguish from siblings like getsign_list_envelope_documents or getsign_get_workflow (singular), without needing to inspect the 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?
The description provides context (boards) but no explicit guidance on when to use this tool over alternatives (e.g., getsign_get_workflow for a single workflow, or getsign_list_envelope_documents for documents). There is no mention of exclusions or specific conditions that would select this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_manage_toolsARead-onlyIdempotentInspect
Turn rarely-used GetSign tools on or off for this server.
tools/list only includes currently enabled tools so unused schemas stay
out of model context. Call this when you need a tool that is not in the
current list (email logo upload) or to hide one you
are done with.
action=list: enabled names plus hidden tools (name, short description,
input_schema). action=enable / disable: pass tools=["getsign_..."].
action=reset: restore the default on/off set.
Enable returns input_schema for each newly enabled tool — use that if
the client has not refreshed tools/list yet. Reconnect if you still
cannot invoke the tool by name.
| Name | Required | Description | Default |
|---|---|---|---|
| tools | No | ||
| action | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context: enable returns input_schema for newly enabled tools, and reconnect is suggested if invocation still fails. It also explains that tools/list only shows enabled tools, which is a behavioral trait not in the annotations. Minor gap: it doesn't explicitly state that disable/reset may affect other users or sessions, but the annotations cover the safety profile.
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 compact and front-loaded with the core purpose, then gives action-specific details. Every sentence earns its place, though the final sentence about reconnecting is slightly tangential. It is well-structured with clear action breakdowns.
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 complexity (4 actions, 2 params, output schema present), the description covers the key behaviors: what list returns, what enable/disable require, what reset does, and how to handle the returned schema. The output schema exists, so return values need not be fully described. Minor gap: it doesn't mention whether disable affects currently-running workflows, but this is not critical for 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 0%, so the description must compensate. It does: it explains the action enum values (list/enable/disable/reset) and the tools parameter format (pass tools=['getsign_...']). It also clarifies that tools is optional for list/reset and required for enable/disable. This adds meaning beyond the raw schema, though it could be slightly more explicit about the null default.
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 ('Turn ... on or off') and resource ('rarely-used GetSign tools for this server'), and distinguishes itself from siblings by explaining that tools/list only includes enabled tools. It also names a concrete use case (email logo upload) and the action variants, so an agent can tell it apart from other GetSign tools without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says when to call it: when you need a tool not in the current list, or to hide one you are done with. It also explains the action-specific behavior (list/enable/disable/reset) and gives a concrete example of what to pass for enable/disable. This is clear guidance with no ambiguity about alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_monday_itemARead-onlyIdempotentInspect
Fetch a Monday item (or the first item on a board) for GetSign setup.
Pass item_id, or board_id to inspect the first item on that board.
include=[] (default): item + board columns.
include=["subitems"]: item and its subitems.
include=["display_values"]: hydrated human-readable subitem values.
Both includes can be combined. batch_number / batch_size apply only to
display_values.
Always includes filtered lists — present every option, never auto-pick:
signer_columns / emailColumn (email, people, mirror-email — for
apply field_assignments and Sign anywhere emailColumn).
status_columns (with trigger labels) and file_columns (for
generateDocument, signature collection, and useFileColumn).
content_columns (text/date/numbers/phone/dropdown/link/mirror/email/name).
| Name | Required | Description | Default |
|---|---|---|---|
| include | No | ||
| item_id | No | ||
| board_id | No | ||
| batch_size | No | ||
| batch_number | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description correctly does not repeat those. It adds substantial behavioral context beyond annotations: it always includes filtered lists and 'present every option, never auto-pick,' explains that batch parameters apply only to display_values, and details the exact column types surfaced. This goes well beyond the structured metadata.
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 longer than a simple sentence but every section earns its place. It is front-loaded with the core purpose, then uses bullet-like lists to explain include options and the always-present filtered lists. The structure is clear and scannable, though a few phrases like 'Always includes filtered lists' could be tightened without losing value.
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 has no output schema and 0% schema parameter descriptions, the description carries a heavy burden. It covers the main usage (item_id vs board_id), include combinations, batching behavior, and the filtered lists that always appear. It does not address error conditions or exact response formatting, but for a read-only fetch tool with strong annotations, the provided details are sufficient for an agent to call 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 0% (no parameter descriptions in the schema), so the description must compensate, and it does. It explains item_id and board_id ('Pass item_id, or board_id to inspect the first item on that board'), details the include array options and their combinations, and clarifies that batch_number/batch_size apply only to display_values. All five parameters receive meaningful semantics, filling the schema gap entirely.
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: 'Fetch a Monday item (or the first item on a board) for GetSign setup.' This clearly states what the tool does and distinguishes it from sibling tools that handle other GetSign operations (e.g., sending requests, generating documents). It also enumerates the exact return content (item, board columns, subitems, display values, filtered lists), leaving no ambiguity about purpose.
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 on when to pass item_id vs board_id and explains the include options and their combinations. It also specifies that batch_number/batch_size only apply to display_values. However, it does not explicitly contrast this tool with alternative siblings or state when NOT to use it, so it stops short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_report_issueARead-onlyIdempotentInspect
Report a GetSign problem so the team can debug it. Never sends document content.
Call this when a GetSign tool failed or did the wrong thing and the user
wants it looked at. GetSign's server sees only tool calls, never the
chat, so this is the only way what the user was trying to do reaches us.
description: what the user wanted and what actually happened, in your
own words. Do not paste document text, signer emails, or tokens.
tool: the GetSign tool that misbehaved, if one did.
reference: the reference / support_id from the failing tool result,
if present — it links this report to the exact server-side request.
| Name | Required | Description | Default |
|---|---|---|---|
| tool | No | ||
| reference | No | ||
| description | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Alongside the read-only, idempotent, and non-destructive annotations, the description discloses non-obvious behaviors: the tool never sends document content, and the server receives only tool calls, not chat. It also instructs agents to avoid pasting document text, signer emails, or tokens, and explains that the reference maps to the exact server-side request. These are meaningful privacy and traceability facts not present in 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?
The description is appropriately sized for a diagnostic tool, and each sentence earns its place: purpose, when to use, server visibility, and one line per parameter. The most important safety fact, 'Never sends document content', is front-loaded, and the parameter guidance is laid out in a scannable list.
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?
This is a simple three-parameter diagnostic report with an output schema, so the description does not need to document return values. It covers the failure condition, what must not be included, the optional tool/reference fields, and why this path is necessary. An agent has everything needed 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 description coverage is 0%, so the description carries the full semantic burden for all three parameters. It defines description as 'what the user wanted and what actually happened' with explicit exclusions, tool as the misbehaving GetSign tool, and reference as the support_id from the failing result. This is exactly the meaning an agent needs beyond bare names and types.
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 object: 'Report a GetSign problem so the team can debug it.' It clearly identifies the tool as the debugging/reporting path, and the condition 'when a GetSign tool failed or did the wrong thing' separates it from the functional sibling tools. The 'Never sends document content' clause adds an essential qualifier.
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 states the trigger: 'Call this when a GetSign tool failed or did the wrong thing and the user wants it looked at.' It also preempts the main alternative channel by explaining that GetSign's server sees only tool calls, never the chat, making this the only way to route context to the team. No sibling offers the same reporting role, so further exclusions are unnecessary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_save_document_configurationAInspect
Save document fields or sequential signing order.
action=placeholders (default): persist AI-detected fields. placeholders MUST be
the exact objects from getsign_detect_placeholders_ai (data.placeholders) —
always call that tool first and pass its output through unmodified except for
field_assignments. Do NOT hand-author placeholder coordinates yourself
(e.g. guessing x/y/width/height from where you drew boxes on a generated
PDF). The wire shape has two separate coordinate fields —
formField.coordinates (bottom-up, native PDF points) and placeholder (the same
point converted top-down) — and this route does not validate that they agree.
A hand-typed placeholder that gets the two conventions wrong is accepted and
stored (no error), but silently fails to render in the PDF editor and fails to
resolve any signer in getsign_get_signer_data. If there is no PDF to detect
against yet, or the user wants manual control, use getsign_get_document_url(action="edit")
instead of inventing coordinates.
Route from the ID pair (not from the word "template"):
- envelope_id + item_id + file_id → POST /files/map-placeholders (item
document). Default is_template_update=true saves to the shared template
and every item using it. Pass is_template_update=false when the
user says this one item, and ALWAYS when the workflow has useFileColumn
enabled — a document sourced from a monday File column is that item's own
file with no shared template behind it. A template-scoped save there is not
rejected: the file is not pinned to a template, so the backend updates only
that file, takes the template signing-order branch, and still answers
"Template updated successfully", so reporting that result verbatim tells the
user about a template-wide change that never happened.
- template_id (no item) → POST /template-gallery/map-template-placeholder/:id
(gallery). file_id is optional, and existing_fields is an optional override.
is_template_update is ignored.
Pass one shape, not both. merge=true (default) keeps existing fields.
After a force detect the save replaces instead (merge=false) so new
field ids do not stack on the previous run.
Signer assignment (email / people / mirror-email-column only — use
getsign_monday_item's signer_columns / emailColumn — raw emails are
not allowed). If you save without an assignee on an item, this tool
returns those lists so you can follow up:
- Prefer field_assignments: [{placeholder_id, assignee_column_id,
assignee_column_type, optional assignee_column_title}] so each
signature or standard field can get its own column in one save.
- Or pass a single assignee_column_id(+type) as a default for every
field that has no per-field assignment.
Leave both unset to save fields without signers, then map later in
getsign_get_document_url(action="edit"). Match is_template_update with edit_template
when opening the editor to review.
action=signing_order: set who signs first, second, and so on, without
opening the PDF editor. Needs envelope_id + item_id. Each ordered_signers
entry must already be a mapped signer (a board column stamped onto a
signature field). Identify them with email_column_id, label, or email from
getsign_get_signer_data, in the sequence they should sign. Example: Priya
(CISO) first, then the CFO. The second person is emailed only after the
first signs. required=true (default) turns sequential signing on.
required=false with an empty ordered_signers list turns it off so everyone
is notified at once. List every mapped signer when turning it on. This
writes the same signerOrderSettings the editor Save button writes, so
existing customers who set order in the editor are not broken. Default is
item-level (is_template_update=false). Pass true only when the user wants
the order on the shared template. Call getsign_get_signer_data first. Do
not bounce the user into the editor just to configure order.
| Name | Required | Description | Default |
|---|---|---|---|
| merge | No | ||
| action | No | placeholders | |
| file_id | No | ||
| item_id | No | ||
| required | No | ||
| envelope_id | No | ||
| template_id | No | ||
| placeholders | No | ||
| assignee_color | No | ||
| existing_fields | No | ||
| ordered_signers | No | ||
| field_assignments | No | ||
| assignee_column_id | No | ||
| is_template_update | No | ||
| assignee_column_type | No | ||
| assignee_column_title | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations providing no safety hints, the description carries the full behavioral burden and exceeds it. It discloses the coordinate-system mismatch and its silent failure mode, the template-scoped save on a File column that falsely reports 'Template updated successfully', the merge=true/replace-on-force-detect behavior, and the signerOrderSettings equivalence with the editor's Save button. These are exactly the side effects an agent needs to know.
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 long, but the length is justified by the tool's complexity: two actions, two routes, multiple defaults, and several dangerous edge cases. It is front-loaded with the core purpose and uses clear action blocks and bullets. However, some paragraphs are dense enough that an agent might need multiple passes to extract the key routing rules, so it is not maximally concise.
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 16-parameter tool with no output schema, the description is impressively complete: it covers routing, defaults, alternatives, and failure modes. The main gap is that it never describes the success/error return envelope or the shape of the lists returned when saving without an assignee, which matters more because no output schema is available to fill that void.
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, and it covers nearly all of them: action, placeholders, is_template_update, merge, file_id, existing_fields, ordered_signers, required, field_assignments, assignee_column_id, assignee_column_type, and assignee_column_title. It does not mention assignee_color at all, and the nested object shapes for field_assignments and ordered_signers are described only at a high level, so a perfect 5 is not warranted.
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 line 'Save document fields or sequential signing order' names a specific action and resource, and the two action modes are clearly separated. The description also differentiates this tool from related siblings such as getsign_detect_placeholders_ai and getsign_get_document_url, so an agent can identify what this tool uniquely does.
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 routing guidance: 'always call that tool first and pass its output through unmodified', 'If there is no PDF to detect against yet, or the user wants manual control, use getsign_get_document_url(action="edit")', and 'Do not bounce the user into the editor just to configure order.' It also states when is_template_update should be false and when to prefer field_assignments over a single assignee_column_id, which is strong when-to-use detail.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_select_template_for_workflowAInspect
Attach an existing template gallery template to a workflow.
Defaults to workflow (envelope) level — omit item_id (or pass 0) so the
template applies across the whole workflow rather than a single item.
Only pass a real Monday item_id when the user has explicitly named a
specific item to attach to.
Cross-board guard: if the template's origin board differs from the board
this workflow lives on, the attach is BLOCKED (returns
error_type=CROSS_BOARD_TEMPLATE) and recommends
getsign_duplicate_template_for_workflow instead — duplicating makes a
board-local copy so later template-level edits don't propagate back to the
other board's shared template. Board resolution is best-effort — if either
board can't be determined the attach proceeds. To attach a cross-board
template deliberately, pass allow_cross_board=True.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | No | ||
| envelope_id | Yes | ||
| template_id | Yes | ||
| allow_cross_board | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only say readOnlyHint=false, destructiveHint=false, idempotentHint=false, which tell the agent little. The description carries the burden and does it well: it discloses the cross-board guard, the exact error_type returned (CROSS_BOARD_TEMPLATE), the recommended fallback, the best-effort board resolution behavior, and the allow_cross_board escape hatch. This is rich behavioral context beyond 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?
The description is front-loaded with the core action and default behavior, then layers the cross-board guard and fallback. It is somewhat long but every sentence earns its place: the cross-board behavior is essential for correct invocation and cannot be inferred from the schema. The structure (default → exception → override) is logical.
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 4-parameter tool with no output schema, the description covers the key decision points: scope selection, cross-board blocking, fallback routing, and override flag. It doesn't describe the success return value or what happens on a successful attach, but the absence of an output schema and the strong behavioral coverage make this a minor gap rather than a critical one.
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 explains item_id semantics (0/omitted = workflow-level, real item_id = specific item), allow_cross_board semantics (deliberate override), and the meaning of template_id/envelope_id implicitly through the workflow context. It doesn't spell out envelope_id's format, but the required-parameter names are self-explanatory and the behavioral context is strong.
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+resource: 'Attach an existing template gallery template to a workflow.' It then clarifies the default scope (workflow/envelope level) and distinguishes the item-level case. This clearly differentiates it from siblings like getsign_duplicate_template_for_workflow and getsign_list_template_gallery.
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: omit item_id (or pass 0) for workflow-level, only pass a real item_id when the user explicitly names a specific item. It also names the alternative tool (getsign_duplicate_template_for_workflow) and the exact condition (cross-board block) that should route to it, plus the deliberate override (allow_cross_board=True).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_send_signature_requestAInspect
Send a signature request for a Getsign envelope and Monday item.
Before calling this, check getsign_get_signer_data (signers who must
actually sign, plus copy_recipients who only get a copy).
Offer getsign_get_document_url(action="preview") so they can preview the final document
first. Do not rely on free-form chat as the send gate — this tool enforces a
structured confirmation (MCP elicitation card when the host supports it, or a
confirmation_token fallback otherwise).
IMPORTANT: the emails param does NOT add or configure signers — it only
targets manual (copy-only) recipients. Passing an email here will never make
that person a signer, even if getsign_get_signer_data shows no signers
configured. Actual signers are configured upstream of this tool, by adding
an email-type Monday column and attaching/mapping it onto the document as a
signer field — there is no MCP tool call that adds a signer directly. If
getsign_get_signer_data returns no signers, or this tool fails with
MISSING_SIGNATURE_FIELDS, call getsign_get_document_url(action="edit") and share the
editor URL so the user can map signature fields. Do not try to fix that by
passing an email into emails.
Confirmation flow:
1) Call once without confirm/confirmation_token. The tool returns either an
elicitation card or CONFIRMATION_REQUIRED with summary + confirmation_token.
2) Show the structured summary to the user (Sender / Doc / Signers / Copy only / Board).
3) On Confirm, call again with confirm=true and the same confirmation_token
(and the same envelope_id/item_id/emails/email_content/account_id).
4) On Edit/Cancel, do not send.
Silent host auto-decline of elicitation never finalizes the decision, and a
host that advertises elicitation but never answers the card is timed out — in
both cases the token fallback is used instead, so this tool always returns a
real confirmation path rather than hanging.
Once sent, the response includes an audit_trail_offer hint — ask the user if
they want to track the audit trail as signers complete it (getsign_status
action=history for per-signer events, action=activity for broader envelope activity).
| Name | Required | Description | Default |
|---|---|---|---|
| emails | No | ||
| confirm | No | ||
| item_id | Yes | ||
| account_id | No | ||
| envelope_id | Yes | ||
| confirm_token | No | Retry token from a prior CONFIRMATION_REQUIRED response. Do not invent one. | |
| email_content | No | ||
| confirmation_token | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only indicate the tool is not read-only, not idempotent, and not open-world, but the description goes far beyond that. It discloses the full confirmation protocol, including the elicitation card / CONFIRMATION_REQUIRED return path, the confirmation_token fallback, timeout behavior, and the audit_trail_offer hint. It also explains the MISSING_SIGNATURE_FIELDS failure mode and the inability to add signers through this call. No contradiction with the annotations exists.
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 long but tightly organized and every sentence earns its place. It uses an IMPORTANT callout, a numbered confirmation flow, and a post-send audit trail tip. The length is justified because it covers several failure modes and edge cases that an agent would otherwise encounter.
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 and eight parameters, the description provides a complete decision procedure: preconditions, confirmation flow, token fallback, error handling, and response hints. It explains what the agent should do on each possible return path instead of leaving the tool to fail ambiguously. The only minor gap is full schemas for account_id and email_content, but their role is inferable from 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 only 13%, and the description compensates heavily for the most confusing parameter: emails 'does NOT add or configure signers — it only targets manual (copy-only) recipients.' It also precisely defines the confirm/confirmation_token contract, including reusing the same envelope_id/item_id/emails/email_content/account_id on the confirmed call. It does not add much detail about account_id or email_content, but the critical semantic traps are documented.
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 precise operation: 'Send a signature request for a Getsign envelope and Monday item.' It names the concrete resource pair and immediately clarifies what the tool does. It also distinguishes itself from siblings by explaining what it does not do, such as configuring signers, which is handled upstream.
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 preconditions: check getsign_get_signer_data first, offer getsign_get_document_url(action='preview'), and never gate sending through free-form chat. It also specifies the fallback path when no signers exist or MISSING_SIGNATURE_FIELDS occurs: call getsign_get_document_url(action='edit') and share the editor URL. Clear exclusion rules are provided, such as not passing emails as a workaround for missing signers.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_statusARead-onlyIdempotentInspect
Check signing progress for an item or a Monday board.
action=history (default): item-level send/view/sign history. Needs
envelope_id + item_id. When complete, next_tool is getsign_download_signed_documents.
action=sessions: signing sessions for a board (needs board_id).
action=activity: sent/viewed/signed event feed for a board.
action=pending: who still needs to sign across a board (status=
pending|completed|all). include_signer_identity hydrates emails.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| limit | No | ||
| action | No | history | |
| status | No | pending | |
| item_id | No | ||
| board_id | No | ||
| envelope_id | No | ||
| include_signer_identity | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, non-destructive behavior. The description adds operational context beyond those annotations: the default action, the distinct behavior of each action mode, required parameters per mode, and the next tool to call when history is complete. Pagination and error behavior are not disclosed, but the side-effect 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?
The description is front-loaded with a clear one-line summary followed by compact action bullets. Every line adds distinct information about a mode or parameter, and there is no filler or repetition.
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 gives enough to select an action and know which IDs to pass, and the next_tool hint supports workflow continuity. However, with no output schema and eight parameters, it omits return-shape and pagination details, and it does not explicitly state that activity requires board_id. These are material gaps for a multi-mode status 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 0%, so the description must compensate. It meaningfully explains action, envelope_id, item_id, board_id, status, and include_signer_identity. However, page and limit are never described, and status values are only enumerated under the pending action, so parameter coverage is partial rather than complete.
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 line states a specific verb and resource: 'Check signing progress for an item or a Monday board.' The four action bullets then define concrete sub-resources and modes, and the description explicitly names getsign_download_signed_documents as the follow-up tool, helping distinguish this status-checking tool 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?
Each action mode is tied to its required inputs, e.g. 'Needs envelope_id + item_id' for history and 'needs board_id' for sessions. The default action is explicitly marked, giving clear context for choosing among modes, though it does not contrast this tool with alternative sibling status tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_update_workflow_settingsAInspect
Update workflow settings such as generation, signing, email, and tracking.
Signature collection (signatureCollection.isEnabled=true with fileColumnId,
the signed docs File column, and statusColumnId, the workflow status/track
column) is what makes the backend save the signed PDF into that File column
on signing completion.
Sign anywhere is a sub-option of it — sending for signature without predefined
signature pads — and does not control that file write. To enable it, call this
tool with signatureCollection.isEnabled=true,
enableSignAnywhere=true, fileColumnId (signed docs File column),
statusColumnId (workflow status/track column), and emailColumn (one or more
{id, type, title} from getsign_monday_item's emailColumn — id is emailColumnId).
Present every listed email column and let the user pick a single column or
multiple. Discover file/status columns from getsign_monday_item's
status_columns / file_columns.
Do not send enableSignAnywhere alone and do not auto-pick columns.
To enable Use stored document, set useFileColumn=true and presignedFileColumnId
to a board File column (from getsign_monday_item's file_columns)
holding a pre-made document per item — the signing document then comes from that
column instead of a template. Do not send useFileColumn=true without
presignedFileColumnId.
Email logo: after getsign_set_workflow_email_logo returns a storage key, pass
logo_key to attach it. Pass remove_email_logo=true to clear the current logo
and delete its storage object. Do not send logo_key and remove_email_logo
together. settings may be omitted when only attaching or removing a logo.
| Name | Required | Description | Default |
|---|---|---|---|
| logo_key | No | ||
| settings | No | ||
| workflow_id | Yes | ||
| force_update | No | ||
| remove_email_logo | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotation Contradiction: the annotations declare destructiveHint=false, but the description states that remove_email_logo=true will 'delete its storage object.' Since the description explicitly describes a destructive side effect that the annotation claims does not exist, the description contradicts the annotations. Per rubric, this must score 1 regardless of the detail otherwise provided.
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 long but well-organized into thematic paragraphs (signature collection, stored documents, email logo). The core purpose is front-loaded, and each section adds necessary operational detail. It could be trimmed, but the structure helps an agent parse the dense 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 complex, multi-feature tool with no output schema and uninformative annotations, the description covers the critical non-obvious workflows and pitfalls. It does not detail every nested setting (e.g., generateDocument, shareAndTrack), but the schema supplies those field names. The description is sufficient for the high-risk paths.
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 does for the most important parameters: signatureCollection.isEnabled, fileColumnId, statusColumnId, emailColumn, enableSignAnywhere, useFileColumn, presignedFileColumnId, logo_key, and remove_email_logo. However, workflow_id and force_update are not explained, leaving a small gap for a required parameter.
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, 'Update workflow settings such as generation, signing, email, and tracking,' clearly identifies the verb and resource with a specific scope. It does not explicitly differentiate from sibling tools, but the 'update' action is distinct from 'create,' 'get,' and 'select' 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 provides explicit scenario-based guidance: when to enable signature collection, sign anywhere, use stored documents, and attach/remove logos. It includes clear exclusions and prohibitions: 'Do not send enableSignAnywhere alone,' 'Do not send useFileColumn=true without presignedFileColumnId,' and 'Do not send logo_key and remove_email_logo together.' This leaves no ambiguity about how to invoke the tool correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getsign_validate_document_placeholdersAInspect
Validate DOCX or PDF curly-brace placeholders against Monday board columns.
Call as soon as a template is on the workflow, not at send. Accepts PDF
and DOCX. First call (no mappings, no confirm) only reports: matched
column ids, title-only matches that need confirmation, and unmatched
names. Preferred token is {columnId}. Title-only tokens such as
{Legal Email} do not fill until confirmed.
If the file is a PDF and it contains {columnId} merge tokens, do not
apply mappings. Offer a DOCX. If they choose DOCX, remove the PDF
first with getsign_delete_envelope_document, then
getsign_create_template with the DOCX and validate again.
If they keep the PDF, warn that those placeholders may not be
reflected as needed, then continue.
Confirmation / apply (same tool, no second tool, DOCX only):
1) Title matches with one candidate: confirm to rewrite {Legal Email}
to {email_mm65p7yd} in the stored DOCX, then this call re-validates.
2) Ambiguous titles: ask the user which column, then call again with
mappings=[{token, columnId}].
3) Unmatched only: ask proceed anyway or edit
(getsign_get_document_url action=edit). Does not rewrite.
4) All id-matched, or no placeholders: continue. Do not pass mappings
or confirm - apply is never called when there is nothing to rewrite.
Passing mappings skips elicitation and applies only pairs that are still
title-match or unmatched. Already-correct {columnId} tokens are ignored.
Never replaces a column id with a title or a Monday cell value.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | ||
| file_id | No | ||
| item_id | No | ||
| board_id | No | ||
| mappings | No | ||
| envelope_id | No | ||
| template_id | No | ||
| confirmation_token | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses detailed behavioral characteristics: the first call only reports, confirmation rewrites tokens, passing mappings skips elicitation and applies only specific pairs, already-correct {columnId} tokens are ignored, and it never replaces a column id with a title or cell value. It also clarifies that PDFs with {columnId} tokens do not get mappings applied. Since annotations are minimal (readOnlyHint=false, etc.), the description fully carries the burden of behavioral disclosure, and it does so thoroughly without contradicting 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 long but well-structured, with a clear opening, numbered steps, and paragraphs for distinct scenarios. It front-loads the core purpose and then provides necessary conditional details. While it is verbose, the complexity of the tool justifies the length. A slightly tighter edit could reduce redundancy (e.g., the PDF warning repeated), but overall it is structured effectively and 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 complex tool with no output schema, the description is remarkably complete. It covers the purpose, initial call behavior, confirmation/apply flow, edge cases (PDF, ambiguous titles, unmatched names), and references to follow-up tools. It also implies the return information (matched ids, title-only matches, unmatched names) without needing an output schema. An agent would have sufficient context to invoke the tool correctly in all described scenarios.
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 input schema has 8 parameters with 0% description coverage, so the description must compensate. It explicitly explains confirm (boolean for confirmation step) and mappings (array of {token, columnId}), and briefly mentions the 'file' concept, but does not systematically explain file_id, item_id, board_id, envelope_id, template_id, or confirmation_token. These are referenced indirectly (e.g., 'the stored DOCX') but not given clear semantics. The description partially compensates for the schema's lack of descriptions but leaves several parameters under-explained.
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 clear, specific statement: 'Validate DOCX or PDF curly-brace placeholders against Monday board columns.' This names the verb (validate), the resource (placeholders), and the context (Monday board columns). It distinguishes from sibling tools like getsign_detect_placeholders_ai, which likely only detects placeholders without validating against columns. The purpose is unambiguous and immediately actionable.
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 explicit usage guidance throughout: call timing ('Call as soon as a template is on the workflow, not at send'), conditional handling (PDF vs DOCX, first call vs confirmation), and explicit references to alternative tools (getsign_delete_envelope_document, getsign_get_document_url). It also explains when NOT to apply mappings and when to use confirm vs mappings. This is comprehensive and leaves no ambiguity about when to use this tool versus others.
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.
3 tool updates
- Changed
getsign_detect_placeholders_ai2 fields changed- added
Input schema / properties / intentAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +} - added
Input schema / properties / refineAdded value: +{ + "default": false, + "type": "boolean" +}
- Removed
getsign_reset_signing_process - Removed
getsign_start_sign_by_me
29 tool updates
- First observed
getsign_account - First observed
getsign_cancel_signature_request - First observed
getsign_connect - First observed
getsign_create_template - First observed
getsign_create_workflow - First observed
getsign_delete_envelope_document - First observed
getsign_detect_placeholders_ai - First observed
getsign_download_signed_documents - First observed
getsign_ensure_board_view - First observed
getsign_generate_documents - First observed
getsign_generate_signing_link - First observed
getsign_get_document_url - First observed
getsign_get_signer_data - First observed
getsign_get_workflow - First observed
getsign_help - First observed
getsign_list_envelope_documents - First observed
getsign_list_template_gallery - First observed
getsign_list_workflows_for_board - First observed
getsign_manage_tools - First observed
getsign_monday_item - First observed
getsign_report_issue - First observed
getsign_reset_signing_process - First observed
getsign_save_document_configuration - First observed
getsign_select_template_for_workflow - First observed
getsign_send_signature_request - First observed
getsign_start_sign_by_me - First observed
getsign_status - First observed
getsign_update_workflow_settings - First observed
getsign_validate_document_placeholders
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.167 npm1MIT
- AlicenseCqualityAmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs119 npm49 PyPIMIT
- AlicenseNot gradedqualityBmaintenanceEnables tracking competitor websites, changelogs, blog feeds, and pricing pages with meaningful diffs, classification, and Markdown digests via MCP tools for listing, adding, removing competitors, running checks, and retrieving digests or changes.MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.