{"id":565957,"recorded_at":"2026-10-27T21:58:24.723882Z","observed_at":"2026-10-27T21:58:24.723816Z","subject_kind":"endpoint","subject":"a86f2535-d559-4ec5-aa20-7c68c3a1a2f4","kind":"mcp.tools","method":"probe.mcp/1","body":{"count":5,"tools":[{"description":"Fill AcroForm form fields in a PDF and return the result. Field names must exist in the PDF (use pdf_inspect first). All values are strings; checkboxes take \"true\"/\"false\"; dropdown/radio/optionlist values must be one of the field's options; text values must respect the field's maxLength from pdf_inspect. The source PDF is never modified. Returns the filled PDF inline as an application/pdf resource. Encrypted PDFs are rejected with decrypt advice (common for government blanks with an empty user password).","inputSchema":{"additionalProperties":false,"properties":{"fields":{"additionalProperties":{"type":"string"},"description":"Field name → string value (from pdf_inspect's fillTemplate)","type":"object"},"flatten":{"description":"Bake values into page content and drop the AcroForm so fields are no longer editable","type":"boolean"},"pdf_path":{"description":"Template PDF source: an https:// URL or a data:application/pdf;base64,… URI (this hosted server cannot read local file paths).","type":"string"}},"required":["pdf_path","fields"],"type":"object"},"name":"pdf_fill"},{"description":"List a PDF's AcroForm form fields — names, types, options, current values, per-field maxLength where declared — plus a paste-ready fillTemplate object for pdf_fill and a hasXFA flag (hybrid AcroForm/XFA inputs lose their XFA layer when filled). A PDF with no fillable form returns count 0. Read-only: the PDF is fetched but never modified. Call this FIRST when filling an unfamiliar PDF, since pdf_fill rejects unknown field names and over-length values.","inputSchema":{"additionalProperties":false,"properties":{"pdf_path":{"description":"PDF source: an https:// URL or a data:application/pdf;base64,… URI (this hosted server cannot read local file paths).","type":"string"}},"required":["pdf_path"],"type":"object"},"name":"pdf_inspect"},{"description":"Generate a complete, professionally laid-out invoice PDF from structured data — no template needed. Deterministic: the same input produces byte-identical output (safe to re-run). Note: without a paid PDFops key the output carries a small \"Generated with pdfops.dev\" footer line. Returns the invoice inline as an application/pdf resource. Use this when you have invoice DATA and no document; if you already have an invoice PDF or a fillable template to populate, use pdf_fill instead.","inputSchema":{"additionalProperties":false,"properties":{"invoice":{"additionalProperties":false,"description":"Invoice data","properties":{"currency":{"pattern":"^[A-Z]{3}$","type":"string"},"date":{"description":"Calendar date in YYYY-MM-DD form (other formats are rejected with invalid_date). Shown on the invoice; also pins metadata for determinism","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"due":{"type":"string"},"from":{"anyOf":[{"type":"string"},{"additionalProperties":false,"properties":{"lines":{"items":{"type":"string"},"type":"array"},"name":{"type":"string"}},"required":["name"],"type":"object"}]},"invoice_number":{"type":"string"},"items":{"items":{"additionalProperties":false,"properties":{"description":{"type":"string"},"quantity":{"exclusiveMinimum":0,"type":"number"},"unit_price":{"minimum":0,"type":"number"}},"required":["description","unit_price"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"},"notes":{"maxLength":1000,"type":"string"},"tax_rate":{"maximum":100,"minimum":0,"type":"number"},"to":{"anyOf":[{"type":"string"},{"additionalProperties":false,"properties":{"lines":{"items":{"type":"string"},"type":"array"},"name":{"type":"string"}},"required":["name"],"type":"object"}]}},"required":["from","to","items"],"type":"object"}},"required":["invoice"],"type":"object"},"name":"pdf_invoice"},{"description":"Merge two or more PDFs into one, in the order given, and return the result. Sources are read only and never modified. Returns the merged PDF inline as an application/pdf resource. This tool only concatenates whole documents: it does not reorder, rotate or delete pages within them, and it does not fill forms — use pdf_fill for a fillable form and pdf_invoice to build a document from data. An unreadable or rejected input fails with an error, so a partial merge is never returned.","inputSchema":{"additionalProperties":false,"properties":{"pdf_paths":{"description":"In order, each a PDF source: an https:// URL or a data:application/pdf;base64,… URI (this hosted server cannot read local file paths).","items":{"type":"string"},"minItems":2,"type":"array"}},"required":["pdf_paths"],"type":"object"},"name":"pdf_merge"},{"description":"Check the current PDFops API quota for the configured key: tier, limit, used, remaining, the billing period, and the reset timestamp. Read-only and safe to call before a batch to confirm there is headroom. Uses the API key this connection authenticated with.","inputSchema":{"properties":{},"type":"object"},"name":"pdfops_usage"}]},"body_sha256":"541ab60621676e4868ac35dc9c75959f2e054461dedee25104773674dd4b4ae8","prev_id":null,"leaf":"0xff5dc704ef773c9e4588b328be5a68488c5bb5d790532df89c1fd3f0b911823c","leaf_text":"{\"body\":\"541ab60621676e4868ac35dc9c75959f2e054461dedee25104773674dd4b4ae8\",\"id\":565957,\"kind\":\"mcp.tools\",\"method\":\"probe.mcp/1\",\"observed_us\":1793138304723816,\"prev\":null,\"subject\":\"a86f2535-d559-4ec5-aa20-7c68c3a1a2f4\",\"subject_kind\":\"endpoint\"}","day":{"day":"2026-10-27","leaves":273461,"root":"0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795","chained":"0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4","anchor_chain":"eip155:5042002","anchor_tx":"0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4","anchor_block":69414147},"proof":["0xff5da6edaa6ad900a62db7cd4d8a8a12488e96e8c1b9cd6dcabf82b777d7b196","0xe1ad096f7404903444d635eff5e8f0176c43b9c923360bb0a142859fa775e7b8","0x195f0a7a20cb7f6d7d635325290b1b3ba7a0005d3cfe07cd5925fa1ef09ece88","0x423e617bbf66f645596c23d7a68138dffc35f53045b7cacc18d85279a36d9184","0x379462de1f1d8daebf7b9d2423486bd41d4f1c5a8f55855d5aabf0a8d3cfbf26","0xbf332a95fa93eba7552c4f845077589f888d36f018af54b9b00724b260120316","0x74ddc21cd4311cd236bf071e01f8ea334e96646e8f9025dd458b89ebf6d8e548","0x0f99348cbbd6da7dd89aac52886f8c68cfc14503db8e484d48486f562c2b2475","0xf62b942d75d2fef9638deb45b2bc9738e92362eb6458f703c0c4298272c7a830","0xcf98af8333f7fd6bdbc1b992cf9bc07f24c23f9e4453268c27504de07f222988","0x7e9df831f5c1b2f5e3d3d5c1837e1410fcc354cd33e5999cecca1fd2ece2db37","0x5fc89955112581b3fcfa3f9a81d69af0e71784d0baa72f00dbfc2abc2e383e84","0x56e872147e60f01cdcee33340b018a7ad7be91ec5b5daef0d2c629c3ca13cbd8","0xb5b652bba4a5afca56c21031d89b1c06361563aaf54ccc8541c296ceeb2b66fa"]}