The Docsautomator MCP connector routes your AI agent's tool calls to Docsautomator's own MCP server through Scalekit. Each user signs in to Docsautomator once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 33 tools.
- Tools
- 33
- What they doRead · write · destructive
- 3 · 30 · 03 read30 write0 destructive
- Users sign in with
- OAuth
- OAuth app
- Scalekit's or your own
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Docsautomator MCP connection
In AgentKit > Connections, create a Docsautomator MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for Docsautomator MCP server, so you don't need to register an OAuth app.
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'docsautomatormcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Docsautomator MCP:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'docsautomatormcp_get_recent_runs',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "docsautomatormcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Docsautomator MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="docsautomatormcp_get_recent_runs",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_tooldocsautomatormcp_get_data_sourceBrowse a connected record source's tables and fields, for set_data_source.Read-onlyGet Data Source
Browse a connected record source's tables and fields, for set_data_source. The main path needs no data source: you send the values to create_document. airtable: no ids lists bases; baseId lists tables with fields (on a large base, add tableId). notion: no ids lists databases; dataSourceId lists properties (use dataSources[].id, not the database id). google_sheets needs spreadsheetId (ask for the URL). google_forms needs formId (the form file id). smartsuite (workspace slug first) and clickup step down by id; never invent one. An account that is not connected answers with the link to connect it in the app.
Inputs
sourcestringrequired- No description.one of
airtablenotiongoogle_sheetsgoogle_formssmartsuiteclickupapi baseIdstring- No description.
dataSourceIdstring- Notion data source id
formIdstring- Google Form FILE id (from the form's file id from the user) — lists its questions
listIdstring- ClickUp list id
smartSuiteWorkspaceIdstring- No description.
solutionIdstring- No description.
spaceIdstring- ClickUp space id
spreadsheetIdstring- Google spreadsheet id (from its URL)
tableIdstring- No description.
docsautomatormcp_get_recent_runsRead recent document runs, including failures with their real error messages: the first call for 'generation failed' questions.Read-onlyGet Recent Runs
Read recent document runs, including failures with their real error messages: the first call for 'generation failed' questions. successfulRequests lists runs that worked (testMode true is a watermarked test run); read it before you call a setup broken. failedRequests names the failing record. jobId follows one queued document instead; waitSeconds (max 120) waits for it to finish.
Inputs
automationIdstring- Limit to one automation
jobIdstring- The job ID returned from async document creation
limitnumber- No description.
onlyFailedboolean- Only runs containing failures
waitSecondsnumber- Wait up to this many seconds (max 120) for the job to finish before answering
docsautomatormcp_searchSearch DocsAutomator's help docs (in 'docs', the default) or its template gallery of about 125 designs (in 'templates').Read-onlySearch
Search DocsAutomator's help docs (in 'docs', the default) or its template gallery of about 125 designs (in 'templates'). Search the docs for any how-to, feature, integration, syntax, troubleshooting or pricing question and answer only with what the page says, in its order and with its names; if it has no answer, say so. A gallery result with hasWordVersion can be applied with set_template's galleryTemplateId.
Inputs
querystringrequired- Search terms, e.g. "nested line items" or "invoice"
instring- Default: docsone of
docstemplates
docsautomatormcp_cancel_esign_sessionCancel an in-progress signing session.WriteCancel Esign Session
Cancel an in-progress signing session. Cannot cancel already completed sessions. Optionally provide a cancellation reason.
Inputs
sessionIdstringrequired- The unique ID of the signing session to act on.
reasonstring- Optional reason for cancelling the signing session.
docsautomatormcp_configure_automationChange an automation's settings.WriteConfigure Automation
Change an automation's settings. Ask the user first. Test before live; going live is the last step. status: 'test' makes free watermarked documents; 'live' makes real ones that count against the quota; 'inactive' pauses triggers; 'trash' stops it at once (restorable from the app's Trash). locale sets how values print (de-DE prints 1.234,56 € and 01.10.2026); it is a setting, never a limit. title renames it; description tells AI clients what it is for. documentNameField is the source field that names each file. Record sources only: airtableTrigger or notionTrigger fire on a field value; sheetsAutoPolling polls Google Sheets every ~5 minutes.
Inputs
automationIdstringrequired- No description.
airtableTriggerobject- No description.
dateFormatobject- No description.
descriptionstring- No description.
documentNameFieldstring- No description.
formatNumbersWithLocaleboolean- No description.
localestring- No description.
notionTriggerobject- No description.
sheetsAutoPollingobject- No description.
statusstring- No description.one of
livetestinactivetrash timeZonestring- No description.
titlestring- No description.
docsautomatormcp_configure_esignatureSet up signing or acceptance.WriteConfigure Esignature
Set up signing or acceptance. Ask the user first and show the signers. closeType 'acceptance': the recipient opens a link and taps Accept, no {{esign.*}} tags needed (quotes, offers). 'signature': a drawn signature at {{esign.signature_N}} tags, one signer per index. On API, MCP and no-source automations set every signer to emailSource 'request' and name the person per send in create_document recipients. Record sources (Airtable, Notion, Sheets, SmartSuite, ClickUp, Forms) and Zapier, Make, n8n, Glide and Noloco cannot use 'request': use the record's email field, or a placeholder, which must be a placeholder that exists in the template. emailTemplates changes the copy for EVERY future request; say so. signedPdfField writes the signed PDF back to the record. For the price, use search.
Inputs
automationIdstringrequired- No description.
acceptanceRequireNameboolean- Acceptance only: the recipient types their name before accepting.
brandingLogoUrlstring- Logo shown on the signing page: a public https image URL. Pass null to remove it and show the default.
closeTypestring- 'signature' (default): a drawn signature at {{esign.*}} tags. 'acceptance': the recipient reviews and taps Accept, no tags. Signers are kept when switching.one of
signatureacceptance completionEmailobject- No description.
deliveryMethodstring- 'email': DocsAutomator emails each signer. 'manual': no email; you hand out the links.one of
emailmanual driveFolderstring- After signing: the Drive folder id or URL that receives the signed PDF. '' clears it.
dropboxAccountEmailstring- Needed only with several Dropbox accounts.
dropboxFolderPathstring- e.g. '/Contracts/Signed'; '' = root.
emailDateFormatstring- Date format used in signing emails, e.g. 'MM/DD/YYYY' or 'DD.MM.YYYY'
emailTemplatesobject- Email copy for EVERY future request. Variables: {{documentName}}, {{signerName}}, {{signerEmail}}, {{expirationDate}} and data placeholders. Invitation and reminder bodies MUST contain {{signButton:Sign your document}} or {{signLink:click here}}; the completion email can use {{downloadButton:text}}.
enabledboolean- Switch signing on or off; a stored setting. false keeps the signers and tags.
expirationDaysnumber- Days a signing request stays valid before it expires.
fieldConfigsobject- Per e-sign tag, as get_automation lists it without 'esign.': displayName, helpText, required (default true). Merges per tag; null removes a tag's settings. Every tag must exist in the template.
fieldValueMappingsobject- After signing: e-sign tag (without 'esign.') -> the data-source field (name or id) that receives what the signer typed or ticked. '' removes one. Never signature images.
remindersobject- No description.
saveSignedPdfToDriveboolean- AFTER SIGNING: also save the signed pdf to Google Drive. Needs driveFolder as well — the toggle on its own saves nothing.
saveSignedPdfToDropboxboolean- AFTER SIGNING: also save the signed pdf to Dropbox.
senderobject- Who the signing emails come FROM (the Signing & Acceptance panel, Settings tab).
signedPdfFieldstring- After signing: the record field that receives the signed PDF (name or id): Airtable attachment, Notion Files, SmartSuite file, a Sheets column (a link), ClickUp 'enabled'. '' switches it off. Not for API, Zapier, Glide or Noloco. Not configure_output writeBackPdfField, which takes the unsigned PDF.
signersarray- No description.
signingLanguagestring- Language of the signing page and its emails.one of
endeesfifrpthenlit signingOrderstring- parallel = everyone at once; sequential = one after anotherone of
parallelsequential
docsautomatormcp_configure_line_itemsSet how one line-item group (the N in {{line_items_N}}) is presented: grouping under header rows, sorting by up to three columns, an auto-number column, page breaks or keep-together for repeating sections, and skipRecords rules that leave records out.WriteConfigure Line Items
Set how one line-item group (the N in {{line_items_N}}) is presented: grouping under header rows, sorting by up to three columns, an auto-number column, page breaks or keep-together for repeating sections, and skipRecords rules that leave records out. Pass only the blocks you change. Which linked table feeds the rows is set_data_source's lineItems, not this.
Inputs
automationIdstringrequired- No description.
lineItemstringrequired- line-item index as a string, e.g. "1" for {{line_items_1}}
autoNumberobject- No description.
groupingobject- No description.
keepSectionOnOnePageboolean- Repeating sections only: true keeps each section on one page when it fits; false removes it.
pageBreakBetweenSectionsboolean- Repeating sections only: true starts each record on a new page; false removes it.
skipRecordsobject- No description.
sortingobject- No description.
docsautomatormcp_configure_outputSet what happens with each generated document.WriteConfigure Output
Set what happens with each generated document. Test before live; going live is the last step. Pass only the blocks you change. email: recipients (addresses or {{placeholders}}), sender 'gmail' or 'outlook' from a connected account (Business plan and up), and conditions. pdf: link expiry and a Drive folder. onedrive, googleDoc and word (word.save returns wordFileUrl from create_document). merge, webhook, documentsFolder. writeBackPdfField uploads the generated, UNSIGNED PDF to a record field; the signed PDF is configure_esignature's signedPdfField. Folders: an id or a Drive URL.
Inputs
automationIdstringrequired- No description.
documentsFolderstring- Documents-page folder to file new documents into (created if it doesn't exist); pass '' to stop filing
dropboxobject- No description.
emailobject- No description.
googleDocobject- No description.
mergePdfsobject- No description.
oneDriveobject- No description.
overwritePdfAttachmentboolean- true replaces the PDF on the record each run; false (default) adds a file. Ask first: replacing discards earlier documents.
overwriteWordAttachmentboolean- Same replace-vs-append choice for the Word (.docx) attachment.
pdfobject- No description.
webhookobject- No description.
wordobject- No description.
writeBackDrivePdfUrlFieldstring- Text or URL field that receives the link of the PDF saved in Google Drive (needs pdf.saveToDrive).
writeBackGoogleDocUrlFieldstring- text/URL field to write the generated GOOGLE DOC's link into. Only fires when the Google Doc copy is kept (googleDoc.save), so set both.
writeBackPdfFieldstring- attachment field/column to save the generated PDF into
writeBackPdfUrlFieldstring- text/URL field on the record to write the generated PDF URL into (Airtable/Notion)
writeBackWordFieldstring- Attachment field that receives the generated Word file.
docsautomatormcp_configure_placeholdersStore what each placeholder means and how it prints, right after a template exists and before the first document.WriteConfigure Placeholders
Store what each placeholder means and how it prints, right after a template exists and before the first document. descriptions: meaning plus print format, e.g. "Subtotal before tax, net, in EUR; prints as 1.234,56 €"; examples always use 1234.56 and 2026-12-31, never a value from this request. formats: one entry per amount, number or date (currency with its ISO code; percent multiplies by 100). Pair them with the locale (configure_automation). options: deleteWhenEmpty removes an empty placeholder's paragraph or row; ["*"] means all. conditions: show or hide {{section_NAME}} blocks and placeholders by raw values, hide values, render Markdown. Never regenerate a template to change these.
Inputs
automationIdstringrequired- No description.
conditionsobject- No description.
descriptionsobject- placeholder name -> description ("" or null removes it)
formatsarray- No description.
optionsobject- No description.
docsautomatormcp_create_automationCreate a new automation with the specified data source.WriteCreate Automation
Create a new automation with the specified data source. Returns the new automation ID and configuration.
Inputs
dataSourceNamestringrequired- The data source typeone of
AirtableGlideAPIZapierNolocoClickUpSmartSuiteGoogle Sheetsn8nMake titlestringrequired- Name for the automation
copySettingsboolean- With fromAutomationId: copy every setting, not only the template
docTemplateLinkstring- URL of a Google Doc template the user already has. Leave it out when they have none.
fromAutomationIdstring- Start from a copy of this automation's template. dataSourceName is then not needed.
docsautomatormcp_create_documentGenerate a document from a DocsAutomator automation.WriteCreate Document
Generate a document from a DocsAutomator automation. Supports various data sources including Airtable, Google Sheets, SmartSuite, ClickUp, and direct API data. Returns PDF URL and optionally Google Doc URL. **E-SIGNATURES**: If the automation has e-signing enabled in its output settings, creating a document will AUTOMATICALLY start the signing workflow. The response will include: - signingSessionId: The e-sign session ID - signingLinks: Array of signing URLs for each signer (if delivery method is "link") - signingStatus: "created" or "queued" You do NOT need to create e-sign sessions separately - they are triggered automatically when generating documents from automations configured with e-signing. To check if an automation has e-signing enabled, use get_automation first. For nested line items (up to 2 levels), use the "children" key to nest items: { "line_items_1": [ { "product": "Service A", "price": "$100", "children": [ { "task": "Task 1", "children": [ {"detail": "Detail 1"} ] } ] } ] }
Inputs
automationIdstringrequired- The automation/document ID to use
modestringrequired- Always pass it. 'preview': a watermarked PDF, nothing sent or counted. 'test': outputs run and emails reach the real recipient; watermarked, not counted; use it for a new setup's first send. 'live': real and counted; refused while the automation is in test mode.one of
previewtestlive asyncboolean- If true, returns immediately with jobId for pollingdefault
false dataobject- Placeholder values for API data sources. For line items, use arrays. For nested line items (up to 2 levels), use "children" key within each item to define child items.
documentNamestring- Custom name for the generated document
isPreviewboolean- Old flag for test mode; pass mode instead.
recIdstring- Record ID for Airtable data source
recipientsarray- Who signs or accepts this document: [{ signer, email, name }]. signer is the number get_automation lists under esignature.signers; leave it out only with exactly one signer. Replaces the saved email and name for this document only and never adds a signer. Pass it on every call that starts signing or acceptance, also with recId. Required for signers on emailSource 'request'.
rowNumbernumber- Row number for Google Sheets data source
skipEsignboolean- If true, skip the e-sign flow even when the automation has e-signing enabled — generates the document only (e.g. a draft for review). Re-run without this flag to send for signing.
docsautomatormcp_delete_automationPermanently delete an automation.WriteDelete Automation
Permanently delete an automation. This action cannot be undone.
Inputs
automationIdstringrequired- The unique ID of the automation to use.
docsautomatormcp_duplicate_automationCreate a copy of an existing automation with ' COPY' appended to the title.WriteDuplicate Automation
Create a copy of an existing automation with ' COPY' appended to the title. Returns the new automation ID.
Inputs
automationIdstringrequired- The unique ID of the automation to use.
docsautomatormcp_duplicate_templateCreate a copy of the Google Doc template associated with an automation.WriteDuplicate Template
Create a copy of the Google Doc template associated with an automation. Returns the new template ID and URL.
Inputs
automationIdstringrequired- The unique ID of the automation to use.
newTemplateNamestring- Optional name for the new template copy. Defaults to the original name with ' COPY' appended.
docsautomatormcp_edit_word_templateChange an automation's existing Word template with one natural-language instruction: styling, layout, text, adding, renaming or hard-coding placeholders.WriteEdit Word Template
Change an automation's existing Word template with one natural-language instruction: styling, layout, text, adding, renaming or hard-coding placeholders. Ask the user first. One section or one concern per call, under 2,000 characters; split bigger changes into several calls. Afterwards check the returned placeholders: if the tag you changed is still there, the edit did not work, so say so. embedImageUrl bakes an image (such as a logo URL) into the template. undo true reverts your last AI change (up to 5 steps back); offer it after an edit the user does not like.
Inputs
automationIdstringrequired- No description.
embedAttachedImageboolean- Embed the image the user attached in this message into the template
embedImageUrlstring- Public PNG, JPG, GIF or SVG image URL to embed (e.g. the logoUrl from generate_word_template (brandWebsite)); an SVG is converted to PNG - alternative to embedAttachedImage
imageLabelstring- Short label for the attached image; reference the same label in the instruction
instructionstring- The edit instruction in natural language. Max 2,000 characters (about 300 words): one section or one concern per call.
tintColorstring- Optional 6-digit hex colour (e.g. "#b7410e"): duotone-tints the embedded image before embedding (grayscale mapped onto the colour, transparency kept) - use for brand-tinted or silhouette-style imagery. Works with embedAttachedImage or embedImageUrl. This is the ONLY image effect available: no crop, no filters, and no generated artwork.
undoboolean- Revert the last AI change instead of editing
docsautomatormcp_generate_word_templateDesign a new Word (.docx) template for an automation with the AI designer; takes about a minute.WriteGenerate Word Template
Design a new Word (.docx) template for an automation with the AI designer; takes about a minute. Last resort: only when they have no own template and no gallery template fits, or they ask for AI. Tell them the plan in one line: document type, sections, fields. The prompt describes STRUCTURE (sections, {{placeholder}} names, line-item tables, tone) and stays under 5,000 characters; put long user-supplied content in edit_word_template passes, never drop it, and never ask it to invent bulk content. brandWebsite (a URL the user gave) reads their colours and logo; customColors and logoUrl override it. Set signingMode when the document has signature fields. Not for the user's own Word file: change that with edit_word_template. If it times out, do not retry the same prompt.
Inputs
automationIdstringrequired- The automation id (24-char hex)
promptstringrequired- Detailed description of the document to design, incl. desired {{placeholders}} (max 5000 chars; longer content goes in a second pass via edit_word_template, never dropped silently)
titlestringrequired- Template title, e.g. "Customer Invoice"
brandWebsitestring- The user's website: its brand colours and logo are used
customColorsobject- Brand colors (hex)
logoUrlstring- Public PNG, JPG, GIF or SVG logo URL to embed (from generate_word_template (brandWebsite)); an SVG is converted to PNG
lookstring- restrained = the document style's own accent; branded = the brand colour as the accent (needs customColors). Omit to infer from customColors.one of
restrainedbranded placeholderDescriptionsobject- Placeholder name (no braces) -> what it is and how it prints, e.g. "Subtotal before tax, net, in EUR; prints as 1.234,56 €". Examples use 1234.56 and 2026-12-31, never a value from this request. Change them later with configure_placeholders.
replaceUserFileboolean- true only when the user explicitly asked to throw away their own uploaded Word file and design a new one. Otherwise change their file with edit_word_template.
signingModestring- Required when the document has signature, initial, date or checkbox fields. 'docsautomator': signed through DocsAutomator ({{esign.*}} tags). 'external': the user's own tool signs; no {{esign.*}} tags, use ☐ and blank lines. 'none': nothing to sign. Pass the user's answer; never guess.one of
docsautomatorexternalnone stylePresetstring- Only when the user asks for a different look: ledger, counsel, studio, letter or certificate. Omit and the designer picks.
useAttachedLogoboolean- true when the user attached their logo image in this chat: it is embedded in this first version (instead of logoUrl). Never generate without it and add the attached logo in a later edit.
useAttachedReferenceboolean- true when the user attached an existing document (a PDF, or images of its pages) to recreate as a template: the designer sees the pages and copies their layout and look. Still list the fields as {{placeholders}} in the prompt. Do not pass stylePreset or look with it.
docsautomatormcp_get_automationGet detailed information about a specific automation including data source config, output settings, field mappings, and e-signature configuration.WriteGet Automation
Get detailed information about a specific automation including data source config, output settings, field mappings, and e-signature configuration. Check the 'esignature' field to see if e-signing is enabled - if so, creating a document will automatically start a signing workflow.
Inputs
automationIdstringrequired- The automation id
includearray- Extra parts to return
docsautomatormcp_get_esign_auditGet the complete audit trail for a signing session including all events like invites, views, signatures, and completions.WriteGet Esign Audit
Get the complete audit trail for a signing session including all events like invites, views, signatures, and completions.
Inputs
sessionIdstringrequired- The unique ID of the signing session to act on.
docsautomatormcp_get_esign_sessionGet detailed information about a signing session including signers, fields, document URLs, and current status.WriteGet Esign Session
Get detailed information about a signing session including signers, fields, document URLs, and current status.
Inputs
sessionIdstringrequired- The unique ID of the signing session to act on.
docsautomatormcp_get_job_statusGet the current status of a queued document generation job.WriteGet Job Status
Get the current status of a queued document generation job. Returns status (waiting, active, completed, failed), progress percentage, and result when complete.
Inputs
jobIdstringrequired- The job ID returned from async document creation.
docsautomatormcp_get_queue_statsGet statistics about the document generation queue including counts of waiting, active, completed, failed, and delayed jobs.WriteGet Queue Stats
Get statistics about the document generation queue including counts of waiting, active, completed, failed, and delayed jobs.
Inputs
This tool takes no inputs.
docsautomatormcp_get_signing_linksGet signing links for all signers in a session.WriteGet Signing Links
Get signing links for all signers in a session. Useful for manual delivery mode or resending links.
Inputs
sessionIdstringrequired- The unique ID of the signing session to act on.
docsautomatormcp_list_automationsList all automations in the workspace with their basic configuration including title, data source, and active status.WriteList Automations
List all automations in the workspace with their basic configuration including title, data source, and active status.
Inputs
limitnumber- Automations per page, 1 to 100 (default 25)
offsetnumber- How many matching automations to skip (default 0)
searchstring- Only automations whose title contains this text (case-insensitive)
docsautomatormcp_list_esign_sessionsList e-signature sessions with optional filtering by status or signer email.WriteList Esign Sessions
List e-signature sessions with optional filtering by status or signer email. Returns paginated results with session summaries.
Inputs
automationIdstring- Only sessions of this automation
emailstring- Filter by signer email (partial match)
includearray- No description.
limitinteger- Results per page (max 100)default
20 pageinteger- Page number for paginationdefault
1 sessionIdstring- One session in full
statusstring- Filter by session statusone of
openpendingin_progresscompleteddeclinedexpiredcancelled
docsautomatormcp_list_placeholdersExtract all placeholders from a Google Doc template.WriteList Placeholders
Extract all placeholders from a Google Doc template. Returns main placeholders and line item placeholders separately. Useful for understanding what data fields are available.
Inputs
automationIdstringrequired- The unique ID of the automation to use.
docsautomatormcp_manage_esign_sessionAct on one signing or acceptance session; each action emails a real person or ends the request, so confirm the recipient and the action with the user before you act.WriteManage Esign Session
Act on one signing or acceptance session; each action emails a real person or ends the request, so confirm the recipient and the action with the user before you act. action 'remind' sends a reminder to one pending signer (signerIndex from list_esign_sessions waitingOn; the session's reminder limit applies). 'resend' sends the invitation again to one signer. 'cancel' ends an open session (not a completed one); reason is optional.
Inputs
actionstringrequired- No description.one of
remindresendcancel sessionIdstringrequired- No description.
reasonstring- For cancel
signerIndexnumber- For remind and resend (1-based)
docsautomatormcp_poll_job_until_completePoll a job until it completes or times out.WritePoll Job Until Complete
Poll a job until it completes or times out. Uses exponential backoff for efficient polling. Returns the final result including PDF URL when successful.
Inputs
jobIdstringrequired- The job ID returned from async document creation.
pollIntervalMsnumber- Initial interval between polling requests in milliseconds. The tool uses exponential backoff.default
2000 timeoutMsnumber- Maximum time to wait in milliseconds before giving up.default
300000
docsautomatormcp_resend_esign_inviteResend the signing invitation email to a specific signer.WriteResend Esign Invite
Resend the signing invitation email to a specific signer. Useful when original email was missed or expired.
Inputs
sessionIdstringrequired- The unique ID of the signing session to act on.
signerIndexnumberrequired- 1-based index identifying which signer to resend the invitation to.
docsautomatormcp_send_test_emailSend a test email with a sample PDF to verify email configuration.WriteSend Test Email
Send a test email with a sample PDF to verify email configuration. Rate limited to 5 emails per hour per workspace.
Inputs
automationIdstringrequired- The unique ID of the automation to use.
recipientstringrequired- Email address to receive the test email.
docsautomatormcp_set_data_sourceConnect a record source to an automation and map its placeholders to fields, in one call.WriteSet Data Source
Connect a record source to an automation and map its placeholders to fields, in one call. Ask the user first and show the mapping. Pass source with its block (ids from get_data_source); source 'api' switches to data given with each request and clears record mappings. Line items come from a linked table or sheet: pass the block's lineItems, one entry per {{line_items_N}} with order N. mappings: placeholder name (no braces) → Airtable field id, Notion property id, Sheets column header, SmartSuite slug, ClickUp field id or Forms questionId (names also resolve); 'Link.Field' drills through Airtable links and Notion relations. Mappings merge unless replace is true. Only switch an automation the user wants changed.
- Idempotent
Inputs
automationIdstringrequired- No description.
airtableobject- No description.
allowDuplicateFieldsboolean- Only after a duplicate-target rejection: confirms that pointing several placeholders at one field is what the user actually wants
clickupobject- No description.
googleFormsobject- No description.
googleSheetsobject- No description.
mappingsobject- No description.
notionobject- No description.
replaceboolean- true = replace all existing mappings
smartsuiteobject- No description.
sourcestring- No description.one of
airtablenotiongoogle_sheetsgoogle_formssmartsuiteclickupapi
docsautomatormcp_set_templateReplace an automation's template.WriteSet Template
Replace an automation's template. Pass one: googleDocUrl (never create or edit Google Docs), galleryTemplateId (from search in 'templates'), or fileBase64 (.docx or PDF, max 25 MB; PDF overlays survive re-upload). fileBase64 needs exact bytes from a tool, such as code reading the attachment; never re-type a file, it arrives damaged. Else send the user to app.docsautomator.co/automations/<automationId> to upload. Ask first. New design: generate_word_template. Returns the placeholders.
- Idempotent
Inputs
automationIdstringrequired- The automation id
fileBase64string- A .docx or .pdf file, base64-encoded (data: URL prefix allowed)
fileNamestring- File name, e.g. contract.docx
galleryTemplateIdstring- Gallery template id
googleDocUrlstring- Google Doc URL or id
officeFilestring- The user's choice after an OFFICE_FILE resultone of
convertword
docsautomatormcp_update_automationUpdate an existing automation's basic settings (title, template link, active flag, locale, save destination, document-name field).WriteUpdate Automation
Update an existing automation's basic settings (title, template link, active flag, locale, save destination, document-name field). For e-signature configuration, use update_automation_esignature instead.
Inputs
automationIdstringrequired- The unique ID of the automation to use.
updatesobjectrequired- Fields to update on the automation. Only the fields you include are changed.
docsautomatormcp_update_automation_esignatureUpdate the e-signature configuration of an automation: enable/disable signing, set signers, customize email templates and language, configure save-to-Drive.WriteUpdate Automation Esignature
Update the e-signature configuration of an automation: enable/disable signing, set signers, customize email templates and language, configure save-to-Drive. Call get_automation first to see the current esignature state before editing. Arrays (signers, notificationRecipients) and Maps (fieldConfigs, esignFieldMappings) are FULL REPLACE — send the complete value, not a diff. In-flight signing sessions snapshot their email config at creation time, so editing the automation does NOT retroactively change sessions already sent out.
Inputs
automationIdstringrequired- The unique ID of the automation to use.
esignatureobjectrequired- Partial e-signature configuration to apply. Only included fields are written; omitted fields stay unchanged.
No tools match.