Skip to main content
Glama

POST /api/pdf/signing

api_post_pdf_signing
Destructive

List or create PDF signature requests. POST requires Idempotency-Key header, recipients and a PDF upload or generated file_id. Uses existing per-recipient credits and lifecycle rules. Uses the OneSimpleAPI API (https://onesimpleapi.com/docs), with the same permissions, credits and storage. Supply API parameters in query or body. method defaults to POST. Outputs preserve HTTP status, headers and JSON/text/base64 body; redirects are returned without following them.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "api_post_pdf_signing"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyNoAPI request body. Nested objects, arrays, HTML, base64 data and all API options retain their original meaning.
pathNo
filesNoMultipart uploads keyed by API field name (for example pdf). Supply file_name, base64 bytes and optional mime_type. Uploads use the existing API file validators.
queryNoURL query parameters. Sensitive API options must be in body as documented by the API.
methodNo
headersNoAPI request headers such as Idempotency-Key, Range and If-None-Match. Authentication and transport headers are managed by the connection.
content_typeNoDefaults to application/json, or multipart/form-data when files are supplied.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3/5.0
Behavior4/5

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

Beyond the annotations it discloses several non-obvious traits: per-recipient credits are consumed, lifecycle rules apply, redirects are returned unfollowed, and responses preserve HTTP status/headers/JSON-text-base64 body. That is real behavioral context for a destructive, open-world, non-idempotent mutation. It stops short of saying what a successful create actually produces (request object? outbound emails to recipients?) or whether it can be undone.

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

Conciseness3/5

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

The action and its prerequisites are front-loaded, which is good. But the middle clause about the OneSimpleAPI docs link, shared permissions, credits and storage is meta-boilerplate, and the leading 'List or create' framing wastes the most valuable position in the text on an operation this endpoint cannot perform.

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

Completeness3/5

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

For a destructive, credit-consuming, open-world mutation with no output schema, the description covers credits, idempotency, redirect handling, and response envelope reasonably well. It leaves out the success outcome, whether recipients are emailed immediately, and error/credit-exhaustion behavior, which matter for a signature-request tool.

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

Parameters3/5

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

Schema coverage is 71%, but most of those descriptions are boilerplate ("Existing API option; validated by the shared API implementation"), so the description does add real meaning: the Idempotency-Key header, the body-vs-query split, and the PDF-upload-or-file_id choice. However, it explains none of the individual option fields (recipients shape, webhook_url, append_signing_record, typed/action) beyond restating them. Baseline 3 is appropriate.

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

Purpose3/5

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

The description opens with "List or create PDF signature requests," which names a resource but conflates two operations. The tool is POST-only (method enum is ["POST"]) and a GET sibling (api_get_pdf_signing) exists for listing, so the 'List' half points at the wrong tool. The rest of the sentence does pin down the create path (recipients, PDF upload or file_id), so the purpose is recoverable but muddied.

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

Usage Guidelines2/5

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

It states POST prerequisites (Idempotency-Key header, recipients, PDF or file_id), which is useful preconditioning, but never says when to choose this over api_get_pdf_signing, api_post_pdf_signing_id_send, or _finalize. No exclusions or alternative routing is given, so the agent must infer the create-vs-list distinction from the tool name alone.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources