SignRequest MCP by usefulapi

Read documents, signature requests and templates; send, cancel and resend requests in SignRequest.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
99%
Integridad del esquema
95%
Calidad de los nombres
79%
Riesgo de envenenamiento
80%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (4)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'signrequest_get_template' description contains placeholder texten signrequest_get_template
  • LOWTool 'signrequest_resend_signrequest_email' name length outside 3-30 rangeen signrequest_resend_signrequest_email
  • INFOTool description contains placeholder or incomplete texten signrequest_get_template

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,764Tokens (definiciones de herramientas)
~1.6 KBTamaño de respuesta típico
Impacto significativo en la atención (2.16% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "signrequest": {
      "url": "https://signrequest.usefulapi.io/mcp"
    }
  }
}

Puntos de conexión remotos

https://signrequest.usefulapi.io/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (14)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢signrequest_list_documents(status, external_id, signrequest__who, signrequest__from_email, user__email, ...)

List documents of the team with status, signers state and signing log links. API: GET /documents/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Document status code: co converting, ne new, se sent, vi viewed, si signed, do downloaded, sd signed and downloaded, ca cancelled, de declined, ec error converting, es error sending, xp expired.",
      "type": "string",
      "enum": [
        "co",
        "ne",
        "se",
        "vi",
        "si",
        "do",
        "sd",
        "ca",
        "de",
        "ec",
        "es",
        "xp"
      ]
    },
    "external_id": {
      "description": "Filter by your own external id.",
      "type": "string"
    },
    "signrequest__who": {
      "description": "Filter by sender: m = me, mo = me and others, o = others.",
      "type": "string",
      "enum": [
        "m",
        "mo",
        "o"
      ]
    },
    "signrequest__from_email": {
      "description": "Filter by the sender email.",
      "type": "string"
    },
    "user__email": {
      "description": "Filter by the document owner email.",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_get_document(document_uuid)

Get one document by uuid: status, signrequest with all signers, signing log, attachments, and temporary download links (pdf). API: GET /documents/{uuid}/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "document_uuid": {
      "type": "string",
      "minLength": 1,
      "description": "The document uuid."
    }
  },
  "required": [
    "document_uuid"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_search_documents(q, name, signer_emails, status, who, ...)

Search documents by free text, name, signer email or status. API: GET /documents-search/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "description": "Free-text query.",
      "type": "string"
    },
    "name": {
      "description": "Filter by document name.",
      "type": "string"
    },
    "signer_emails": {
      "description": "Filter by signer email.",
      "type": "string"
    },
    "status": {
      "description": "Document status code: co converting, ne new, se sent, vi viewed, si signed, do downloaded, sd signed and downloaded, ca cancelled, de declined, ec error converting, es error sending, xp expired.",
      "type": "string",
      "enum": [
        "co",
        "ne",
        "se",
        "vi",
        "si",
        "do",
        "sd",
        "ca",
        "de",
        "ec",
        "es",
        "xp"
      ]
    },
    "who": {
      "description": "Filter by sender: m = me, mo = me and others, o = others.",
      "type": "string",
      "enum": [
        "m",
        "mo",
        "o"
      ]
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_list_signrequests(who, from_email, page, limit)

List signature requests (the sent requests with their signers). API: GET /signrequests/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "who": {
      "description": "Filter by sender: m = me, mo = me and others, o = others.",
      "type": "string",
      "enum": [
        "m",
        "mo",
        "o"
      ]
    },
    "from_email": {
      "description": "Filter by the sender email.",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_get_signrequest(signrequest_uuid)

Get one signature request by uuid, with each signer's viewed, signed, declined and forwarded state. API: GET /signrequests/{uuid}/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "signrequest_uuid": {
      "type": "string",
      "minLength": 1,
      "description": "The signature request uuid."
    }
  },
  "required": [
    "signrequest_uuid"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_list_templates(page, limit)

List document templates (use a template uuid with signrequest_send_document). API: GET /templates/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_get_template(template_uuid)

Get one template by uuid, with its signer placeholders. API: GET /templates/{uuid}/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "template_uuid": {
      "type": "string",
      "minLength": 1,
      "description": "The template uuid."
    }
  },
  "required": [
    "template_uuid"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_list_teams(page, limit)

List the teams the token can see (name, subdomain, sandbox flag). API: GET /teams/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_get_team(subdomain)

Get one team by subdomain. API: GET /teams/{subdomain}/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "subdomain": {
      "type": "string",
      "minLength": 1,
      "description": "The team subdomain (from signrequest_list_teams)."
    }
  },
  "required": [
    "subdomain"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_list_team_members(is_active, is_admin, user__email, page, limit)

List team members with admin, owner and active flags. API: GET /team-members/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "is_active": {
      "description": "Only active (true) or inactive (false) members.",
      "type": "boolean"
    },
    "is_admin": {
      "description": "Only admins (true) or non-admins (false).",
      "type": "boolean"
    },
    "user__email": {
      "description": "Filter by member email.",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢signrequest_list_events(document__uuid, document__external_id, event_type, page, limit)

List document events (sent, viewed, signed, declined, cancelled, bounced) and their callback delivery state. API: GET /events/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "document__uuid": {
      "description": "Only events of this document uuid.",
      "type": "string"
    },
    "document__external_id": {
      "description": "Only events of the document with this external id.",
      "type": "string"
    },
    "event_type": {
      "description": "Event type, for example signed, declined, sent, signer_signed, signer_email_bounced.",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Results per page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴signrequest_send_document(signers, from_email, from_email_name, subject, message, ...)

WRITE: creates a document and e-mails a signature request to the signers right away (not undoable except with signrequest_cancel_signrequest). Give exactly one source: a template uuid, a public file_from_url, or base64 file_from_content with file_from_content_name. API: POST /signrequest-quick-create/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "signers": {
      "minItems": 1,
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "format": "email",
            "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
            "description": "Signer email."
          },
          "first_name": {
            "type": "string"
          },
          "last_name": {
            "type": "string"
          },
          "needs_to_sign": {
            "description": "false = the person only receives a copy (default true).",
            "type": "boolean"
          },
          "approve_only": {
            "description": "true = the person approves instead of signing.",
            "type": "boolean"
          },
          "order": {
            "description": "Signing order (0 first).",
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "language": {
            "description": "Signer language code, for example en, nl, de, fr.",
            "type": "string"
          }
        },
        "required": [
          "email"
        ]
      },
      "description": "Who must sign."
    },
    "from_email": {
      "description": "Sender email (a verified team member address).",
      "type": "string",
      "format": "email",
      "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
    },
    "from_email_name": {
      "description": "Sender name shown in the e-mail.",
      "type": "string"
    },
    "subject": {
      "description": "E-mail subject.",
      "type": "string"
    },
    "message": {
      "description": "E-mail message.",
      "type": "string"
    },
    "name": {
      "description": "Document name.",
      "type": "string"
    },
    "template": {
      "description": "Template API url or uuid-based url from signrequest_list_templates (the url field).",
      "type": "string"
    },
    "file_from_url": {
      "description": "Public https URL of the file to sign.",
      "type": "string",
      "format": "uri"
    },
    "file_from_content": {
      "description": "Base64 file content.",
      "type": "string"
    },
    "file_from_content_name": {
      "description": "File name with extension for file_from_content.",
      "type": "string"
    },
    "external_id": {
      "description": "Your own reference id.",
      "type": "string"
    },
    "send_reminders": {
      "description": "Send automatic reminders.",
      "type": "boolean"
    },
    "auto_expire_days": {
      "description": "Days until the request expires.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "who": {
      "description": "Who signs: m = me, mo = me and others, o = others.",
      "type": "string",
      "enum": [
        "m",
        "mo",
        "o"
      ]
    }
  },
  "required": [
    "signers"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴signrequest_cancel_signrequest(signrequest_uuid)

WRITE: cancels a signature request that is not fully signed or declined. Signers who have not signed can no longer open the document. Not undoable. API: POST /signrequests/{uuid}/cancel_signrequest/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "signrequest_uuid": {
      "type": "string",
      "minLength": 1,
      "description": "The signature request uuid."
    }
  },
  "required": [
    "signrequest_uuid"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴signrequest_resend_signrequest_email(signrequest_uuid)

WRITE: sends the signature request e-mail again as a reminder to every signer who did not sign yet but already got the e-mail. API: POST /signrequests/{uuid}/resend_signrequest_email/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "signrequest_uuid": {
      "type": "string",
      "minLength": 1,
      "description": "The signature request uuid."
    }
  },
  "required": [
    "signrequest_uuid"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada14 herramientas