
Servidor MCP de Kamy
Qué servidores MCP son de Kamy, del registro oficial y encontrados preguntando a su propio dominio, si responden y qué ofrecen. Un programa comprobó cada dato; nada está copiado de la página del producto.
leído el 2026-10-26
- Nombre en el registrodev.kamy/kamyverificado en el registro MCP
El nombre en el registro está bajo kamy.dev. El registro solo permite usar ese espacio de nombres a quien demuestra control del dominio por DNS o HTTP.
- Estadorespondecomprobado el 2026-10-26
- Herramientas59
- El servidor se llamakamy
- Versión del servidor1.5.0
- Versión del protocolo2025-06-18
El 2026-10-26 el servidor respondió a initialize y tools/list sin iniciar sesión. Primera respuesta en 408 ms.
- Sus herramientas hacen todos los casos de uso comprobados: render and seal invoices with a public verify url; extract structured JSON from vendor PDFs; send contracts for e-signature with an audit trail.
Una vez conectado
- Para "extract structured JSON from vendor PDFs", la primera llamada probable es extract_document.
- create_template, update_template, publish_template, edit_pdf, upload_file cambian datos sin iniciar sesión: cualquiera con la dirección puede llamarlas.
- Sus definiciones ocupan unos 24888 tokens de contexto: activa solo las herramientas que necesita la tarea.
Lo dicen reglas a partir de las mediciones de arriba. La primera llamada probable la elige un modelo de la lista de herramientas; lee su descripción antes de fiarte.
- Nota INITE MCP67 de 100responde 100 · hace el trabajo 100 · definiciones 98 · contexto 43 · uso 0 · conexión 100 · rebajada por las señales de aviso de abajo
- Qué puede hacer un agente con él3 de 3 casos de uso
- Respondióel 100% de los días7 de 7 comprobaciones diarias
- Mediana de la primera respuesta241 ms
- Espacio en el contexto del agente≈ 24.888 tokenslas definiciones de todas sus herramientas (59), que el agente lleva en cada turno
- Definiciones de herramientasA · 98 de 100
- Resultados tipados0 de 59 herramientasdeclaran outputSchema: el resultado llega tipado y se lee de una vez
- Parámetros sin tipo: en 3 de 59
- Parámetros sin descripción: en 3 de 59
Qué puede hacer un agente con él
- puede · render and seal invoices with a public verify url
- puede · extract structured JSON from vendor PDFs
- puede · send contracts for e-signature with an audit trail
Cada caso de uso del producto se le preguntó a Jev junto con la lista de herramientas de este servidor: ¿puede un agente hacerlo con estas herramientas?
Conviene revisar
- Herramientas que cambian datos, en un servidor que responde sin iniciar sesión: create_template, update_template, publish_template, edit_pdf, upload_file
Un programa comprueba el servidor una vez al día: initialize y tools/list, sin modelo. Los tokens son la longitud de las definiciones, a unos cuatro caracteres por token. La nota promedia seis comprobaciones del nombre, la descripción, el esquema y las anotaciones de cada herramienta; dice lo bien descritas que están, no si funcionan. La nota pondera solo lo medido: si responde (25%), si hace el trabajo del producto (25%), definiciones (20%), contexto (10%), uso (10%) y lo fácil que es conectarse (10%). Lo que no se midió queda fuera, y una instrucción oculta limita la nota a 40. El estado de los servidores MCP de los proveedores: método y números →
list_templatesList Kamy's public system PDF templates. No authentication required.
get_template_schemaFetch the JSON Schema (exact data shape) and a copy-pasteable sample payload for a Kamy system template by slug. Call this before render_pdf so you fill the right fields with the right types instead of guessing. No authentication required.
create_templateCreate a new custom PDF template owned by this account: a name, a unique slug, a Handlebars/HTML body, and optional CSS and JSON Schema. The slug is what render_pdf then takes as `template`. Custom templates are a paid feature — on the…
update_templateEdit an existing custom template's DRAFT — name, html, css, schema, tags, visibility — addressed by UUID or slug. Only the fields you pass are changed. Crucially, this does not change what renders once the template has been published even…
publish_templateMake a template version live for rendering. Called with no `version`, it snapshots the current draft into a new version and points published_version at it — this is how you ship an edit made with update_template. Called with an existing…
rollback_templateRevert a template after a bad release: repoints published_version at the version you name, so every subsequent render immediately serves that snapshot again. Prefer this over publish_template's `version` argument whenever you are…
list_template_versionsList a template's immutable version snapshots, newest first, as { id, version, createdAt }. This is where the version number that publish_template and rollback_template take comes from. Bodies are deliberately not included — call…
get_template_versionFetch one template version snapshot in full — html, css, schema, createdBy, createdAt — exactly as it was frozen when that version was cut. Use list_template_versions first to find the number. Use this to inspect what a released version…
render_pdfRender a PDF from a Kamy template and data, and wait for it. This is the default document tool: it blocks until the file exists and hands back { id, url, bytes, durationMs, templateId, createdAt } in one call, where url is a signed…
render_docxRender an editable Word (.docx) document from a Kamy template and data. Takes the same { template, data } payload as render_pdf but produces a different container — reach for it when the recipient has to EDIT the document (legal redlines…
render_pptxBuild a PowerPoint (.pptx) deck from a slide spec: an ordered array of slides, each tagged with one of five fixed layouts (title, bullets, two-column, table, quote). This is NOT a template renderer like render_pdf / render_docx — there is…
render_xlsxBuild an Excel (.xlsx) workbook from a sheet spec: columns with keys, row objects keyed to those columns, optional Excel number formats and a formula-aware total row (bare 'SUM' / 'AVG' / 'COUNT' / 'MIN' / 'MAX' expands into a real…
render_htmlCompile a Kamy template — or raw Handlebars source you pass inline — against a data payload and get the rendered HTML string back. No browser runs, no PDF is produced and no file is stored, so this is the tool for piping a template into a…
convert_documentConvert a file you already hold — .docx, .xlsx or .csv — into a PDF, preserving its existing content. Pass the bytes base64-encoded together with the original filename, which is what the API uses to detect the input type. This is the…
merge_pdfsConcatenate 2–20 existing renders into a single new PDF, in exactly the order the ids are given. Both the inputs and the output are Kamy render ids, so this is the composition step after several render_pdf / convert_document / edit_pdf…
split_pdfExtract page ranges from one existing render into separate new PDFs — the inverse of merge_pdfs. Each range you pass produces its own render, returned in the same order, so one call can both halve a contract and peel off single pages…
edit_pdfModify an existing PDF: fill AcroForm fields by name, stamp text at absolute coordinates, or paint opaque boxes over regions. Operations apply in the order given, to either a render you own (renderId) or a PDF Kamy downloads from a public…
upload_fileStore an image, font or PDF in the account's asset bucket and get back a `kamy://asset/<id>` reference you can drop anywhere inside a render_pdf / render_html data payload — Kamy swaps it for a fresh signed URL at render time. That…
get_uploadLook up a stored asset by its upload id: filename, contentType, sizeBytes, status, its `kamy://asset/<id>` reference, and a freshly signed downloadUrl valid for one hour once the bytes exist. Its main use is confirming an out-of-band…
validate_payloadDry-run a render payload against a template's schema WITHOUT producing a PDF or using quota. Returns per-field self-healing errors (expected type, value received, allowed values, an example) so you can fix the data before render_pdf…
extract_documentExtract structured data from a PDF (invoice, receipt, contract, ID document, or any form). Returns the parsed JSON plus a public verify URL that proves the extraction matches the source. Use this when an agent needs to read an inbound…
ask_kamyAsk Kamy Brain a question about Kamy usage, templates, plans, or errors. Sends the question to Kamy's public assistant endpoint and returns a paragraph answer.
create_signature_requestSend a previously rendered PDF to a signer for e-signature when a Kamy API key is configured. Without a key, returns dashboard setup instructions.
create_envelopeSend a single PDF to 2–10 signers as one envelope. This is the multi-signer counterpart to create_signature_request, which handles exactly one signer — the API rejects an envelope with fewer than two recipients, so pick the tool by signer…
list_signature_requestsList signature requests created by the configured Kamy account, newest first. Without a key, returns dashboard setup instructions.
get_signature_certificateReturns the authenticated download URL for a signature request's Certificate of Completion PDF — the process audit trail (invite → opened → consent → signed, with IP / user-agent) that legal teams expect. Only available after the request…
get_signature_requestFetch one signature request by id, with the detail list_signature_requests leaves out: the placed_fields layout, signed_at plus signed_ip and signed_user_agent, last_reminded_at, cc_emails, and envelope_id + recipient_order when it is…
get_envelopeFetch one multi-signer envelope with every recipient in signing order — each with a live sign_url, status, recipient_order, expires_at and last_reminded_at — plus the envelope's own status and routing. This is the tool for 'who still has…
remind_signatureResend the signature invitation email. Pass signatureRequestId to nudge one signer, or envelopeId to nudge every currently-pending recipient of an envelope — supply exactly one; there is no separate envelope-reminder tool. This sends real…
bulk_signature_requestsFan one already-rendered PDF out to up to 100 independent signers in a single call — the 'send this NDA to everyone on the list' path. Each signer gets their own request, their own sign link and their own invitation email, but they all…
preview_field_placementCheck a placedFields layout against a real render's page geometry before anything is sent: no signature request is created, no email goes out, and no signature quota is spent. It accepts exactly what create_signature_request accepts — all…
list_signature_templatesList this account's reusable e-signature presets — saved field placements, default invite message, default link lifetime and CC list — newest first. These are signing presets, NOT the document catalog: list_templates is what render_pdf…
get_signature_templateFetch one e-signature preset in full, including the placed_fields array and position that list_signature_templates omits. Use it to inspect or copy an existing field layout before applying it through create_signature_request's…
pki_sign_pdfCryptographically sign an existing render with PAdES when a Kamy API key is configured. Without a key, returns dashboard setup instructions.
verify_pdf_signatureTurn PDF bytes you are holding into their SHA-256 digest and the matching kamy.dev/verify/{sha256} page URL. Purely local: the MCP Worker hashes the base64 in memory, makes no Kamy API call, stores nothing and forwards nothing, so it…
attest_artifactCryptographically sign an output your agent produced — a PDF, report, code patch, dataset, email — so a third party can later confirm those exact bytes are the ones that were recorded, unmodified. Pass content_text or content_base64 and…
verify_attestationAsk Kamy whether a SHA-256 digest has an attestation on record — the tool that actually returns a verdict. Takes a digest, not a file: if what you hold is a PDF, run verify_pdf_signature over the bytes first and pass the sha256 it gives…
record_agent_actionAppend one signed tool_call -> tool_result pair to a tamper-evident ledger. Call it after any consequential tool invocation — a payment, an outbound email, a write into a customer system — so there is a hash-chained record of what the…
get_provenance_chainReplay everything recorded under one run_id — artifacts from attest_artifact and calls from record_agent_action — in order, with each record's link to its parent hash. Use it to answer 'what did this agent actually do, and in what…
trace_recordRecord one LLM call — prompt, output, provider, model, tokens, latency — into Kamy Trace, a signed retention ledger. Each record is hashed and signed at write time, so it can be produced later without the 'you could have edited this'…
trace_record_batchWrite up to 100 Kamy Trace records in one call. Reach for this over trace_record whenever you have more than a couple of buffered LLM calls to persist — it is one auth, one quota check and one round trip instead of N. Each element takes…
trace_searchQuery this account's Kamy Trace records, newest first, filtered by feature, status, provider, tag, or time window. Returns record metadata — model, tokens, latency, status, content hash, recorded_at — plus next_cursor for paging; it does…
verify_mcp_serverDetect when an MCP server changes its tool manifest after you adopted it — the 'rug pull' case, where a server you already trusted silently rewrites a tool's description or input schema. Pass server_url and Kamy fetches that third-party…
scan_tool_descriptionHeuristic pattern scan of MCP tool description text for prompt-injection tells — instructions addressed at the reading model, data-exfiltration hints, attempts to override your system prompt or hide content. Run it on descriptions from…
get_startedEverything needed to go from nothing to a rendered document in one call: the steps to create an API key in the dashboard, and — when you name a `framework` — the install command for the Kamy SDK, the environment variable it reads, and the…
get_accountRead everything about the authenticated Kamy account in one call: profile, plan and plan status, the plan's limits (renders per month, API keys, seats, custom templates, overage pricing, priority queue), month-to-date render usage, and…
list_rendersList the documents this account has already produced, newest first. This is how you find a PDF made earlier — in a previous turn, by a schedule, or by another process — when you no longer hold its URL. Download URLs returned by the render…
get_renderFetch one previously produced document by its render id, with a freshly signed download URL valid for the next hour. This is the recovery path for an expired link: the URL is minted at read time, so calling this again on an old render…
get_render_pagesRasterise every page of an existing render to a PNG image and return one signed 1-hour URL per page, with pixel width and height. Use this when a page has to be looked at rather than read — thumbnails, previews, visual QA of a layout, or…
extract_from_renderRead the text or the form fields back out of a document this account already rendered, without uploading anything. Pass type='text' (the default) for per-page text plus a joined fullText string, or type='fields' for the PDF's AcroForm…
render_asyncQueue one PDF render and return immediately with { jobId, status: 'queued' } instead of waiting for the document. Choose this over render_pdf when blocking is not acceptable — a heavy template, a large data set, or a turn where you have…
get_jobPoll an asynchronous render job started by render_async. Returns { jobId, status } where status is 'queued', 'processing', 'completed' or 'failed'; on 'completed' the response also carries `render` with the finished document's id, signed…
render_batchRender up to 100 documents in a single blocking call, each from its own template, HTML or URL, and get every result back in one response. Choose this over calling render_pdf in a loop whenever you have more than a couple of documents — it…
create_scheduleSet up a recurring render: a cron expression, a template, and where each document goes. Use this instead of render_pdf when the user wants a document produced repeatedly on a calendar — a weekly report, a monthly invoice run — so nothing…
list_schedulesList this account's recurring render schedules, newest first, with the id needed to delete one. Use it to answer what is already automated before creating a duplicate, and to diagnose a schedule that is not producing documents: each row…
delete_schedulePermanently delete a recurring schedule so it stops firing. There is no undo and no trash — recreate it with create_schedule if it is deleted by mistake, so confirm with the user before calling this on a schedule you did not just create…
create_webhookRegister an HTTPS endpoint that Kamy POSTs to when work finishes, so a long render or an e-signature does not have to be polled. Use this when the caller owns a server that can receive callbacks; use get_job or list_renders when it…
list_webhooksList the webhook endpoints registered on this account, with the id needed to test one. Each row carries url, events, enabled, and lastDeliveryAt / lastStatus from the most recent delivery — lastStatus is the HTTP code the caller's own…
test_webhookSend a real test.ping event to a registered webhook endpoint — an actual outbound HTTP POST to whatever URL the user configured, signed like a genuine delivery. Use it to prove an endpoint is reachable and that signature verification…
Cómo conectar
Añade el servidor a la configuración de tu cliente MCP. Claude Desktop, Cursor y la mayoría de los demás clientes leen este formato:
{
"mcpServers": {
"kamy": {
"type": "http",
"url": "https://mcp.kamy.dev/mcp"
}
}
}Añadirlo
Claude Code, en una terminal
claude mcp add --transport http kamy https://mcp.kamy.dev/mcpAñadir a CursorAñadir a VS Code
claude.ai, ChatGPT y otros clientes: añade https://mcp.kamy.dev/mcp como conector personalizado en los ajustes.
Especificación OpenAPI
37 rutas, leído el 2026-10-26. Abrir la especificación ↗
Cada línea es algo que un programa encontró al buscar: la entrada del registro, la respuesta del propio servidor, una especificación que se puede leer. Si falta una línea, es que no la encontramos, no que no exista.
Cookies
Antes de contar esta visita
La analítica y la medición de anuncios nos dicen qué páginas y cuáles de nuestros anuncios cumplen su función: Google Analytics y Google Ads, el píxel de Meta, Yandex Metrica y un identificador propio. No se guarda nada hasta que respondas, y rechazar no cambia nada del sitio.