Pressmark
Vector PDF document engine for invoices, estimates, receipts, contracts & real estate agreements.
我该使用它吗
质量与安全性
发现(2)
- HIGH
- MEDIUM在 generate_document 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"pressmark": {
"url": "https://www.pressmark.dev/mcp"
}
}
}远程端点
https://www.pressmark.dev/mcpstreamable-http它能做什么
工具清单
工具(6)
🔴generate_document(compliance_mode, county, currency, currency_placement, currency_separators, ...)
Creates a PDF from the supplied document details. When customer sync is enabled, it also updates Pressmark's customer records with contact details and a document summary, and may start automated follow-up. It uses the signed-in email when available, otherwise the sender email, then the recipient email. See https://pressmark.dev/privacy for the fields shared.
输入模式
{
"type": "object",
"properties": {
"compliance_mode": {
"description": "Compliance banner (none, eu_vat, peppol_bis, hipaa_baa).",
"type": "string"
},
"county": {
"description": "County name for jurats and headers.",
"type": "string"
},
"currency": {
"default": "USD",
"description": "ISO 4217 currency code.",
"type": "string"
},
"currency_placement": {
"description": "Currency prefix or suffix placement.",
"type": "string"
},
"currency_separators": {
"description": "Number separators (comma_dot, dot_comma).",
"type": "string"
},
"currency_symbol_mode": {
"description": "Display currency symbol or ISO code.",
"type": "string"
},
"custom_fields": {
"description": "Custom key-value metadata fields.",
"type": "array"
},
"date_format": {
"description": "Date format (iso, us_slash, euro, formal_prose).",
"type": "string"
},
"doc_type": {
"description": "Archetype slug (invoice, receipt, residential_lease, nda, etc.).",
"type": "string"
},
"execution_mode": {
"description": "Signature mode (esign, wet_ink, notarized_wet, ron).",
"type": "string"
},
"from": {
"description": "Issuer or landlord details.",
"properties": {
"address": {
"description": "Issuer address.",
"type": "string"
},
"email": {
"description": "Issuer email.",
"type": "string"
},
"name": {
"description": "Issuer name.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"items": {
"description": "Line items or rent schedule.",
"items": {
"properties": {
"description": {
"description": "Item description.",
"type": "string"
},
"quantity": {
"description": "Item quantity.",
"type": "number"
},
"unit_price": {
"description": "Unit price.",
"type": "number"
}
},
"required": [
"description",
"quantity",
"unit_price"
],
"type": "object"
},
"type": "array"
},
"municipality": {
"description": "Municipal profile (Chicago, Cook County, NYC, SF, Seattle, Portland).",
"type": "string"
},
"notary_required": {
"description": "Render state notarial jurat block.",
"type": "boolean"
},
"number_decimals": {
"description": "Decimal places for amounts (default 2).",
"type": "integer"
},
"payment_link": {
"description": "HTTPS checkout URL for QR code.",
"type": "string"
},
"payment_qr_code": {
"description": "Embed vector SVG QR code.",
"type": "boolean"
},
"recordable": {
"description": "Enable County Recorder 3-inch top margin.",
"type": "boolean"
},
"sections": {
"description": "Structured legal clause sections.",
"type": "array"
},
"signatures": {
"description": "Multi-party signature blocks.",
"type": "array"
},
"state_code": {
"description": "2-letter US state or DC code.",
"type": "string"
},
"tax_rate": {
"description": "Percentage tax rate.",
"type": "number"
},
"to": {
"description": "Recipient or tenant details.",
"properties": {
"address": {
"description": "Recipient address.",
"type": "string"
},
"email": {
"description": "Recipient email.",
"type": "string"
},
"name": {
"description": "Recipient name.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
}
},
"required": [
"doc_type",
"from",
"to"
],
"examples": [
{
"doc_type": "invoice",
"from": {
"name": "Acme Corp"
},
"items": [
{
"description": "Design retainer",
"quantity": 1,
"unit_price": 1500
}
],
"to": {
"name": "Client LLC"
}
}
]
}输出模式
{
"type": "object",
"properties": {
"compile_time_ms": {
"description": "Compile time in ms.",
"type": "integer"
},
"doc_number": {
"description": "Document number.",
"type": "string"
},
"grand_total": {
"description": "Computed grand total.",
"type": "number"
},
"pdf_base64": {
"description": "Base64 vector PDF.",
"type": "string"
}
},
"required": [
"pdf_base64",
"doc_number",
"grand_total",
"compile_time_ms"
]
}🟢preview_document(currency, doc_type, from, items, payment_link, ...)
Statelessly render a 144-PPI PNG preview of a document as a Base64 data URI without mutating server records. Example: doc_type='invoice' or preview_document({"doc_type":"invoice","from":{"name":"Acme"},"to":{"name":"Client"}})
输入模式
{
"type": "object",
"properties": {
"currency": {
"default": "USD",
"description": "ISO 4217 currency code.",
"type": "string"
},
"doc_type": {
"description": "Archetype slug (invoice, receipt, residential_lease, nda).",
"type": "string"
},
"from": {
"description": "Issuer or landlord details.",
"properties": {
"name": {
"description": "Issuer name.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"items": {
"description": "Line items array ({description, quantity, unit_price}).",
"type": "array"
},
"payment_link": {
"description": "HTTPS checkout URL for QR code.",
"type": "string"
},
"state_code": {
"description": "2-letter US state or DC code.",
"type": "string"
},
"to": {
"description": "Recipient or tenant details.",
"properties": {
"name": {
"description": "Recipient name.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
}
},
"required": [
"doc_type",
"from",
"to"
],
"examples": [
{
"doc_type": "invoice",
"from": {
"name": "Acme Corp"
},
"to": {
"name": "Client LLC"
}
}
]
}输出模式
{
"type": "object",
"properties": {
"compile_time_ms": {
"description": "Compile time in ms.",
"type": "integer"
},
"image_data_uri": {
"description": "Base64 PNG data URI.",
"type": "string"
}
},
"required": [
"image_data_uri",
"compile_time_ms"
]
}🟢calculate_totals(document)
Statelessly compute subtotal, tax, discount, grand total, and balance due for a document payload without mutating server records. Example: tax_rate=8.25 or calculate_totals({"document":{"items":[{"quantity":2,"unit_price":50}]}})
输入模式
{
"type": "object",
"properties": {
"document": {
"description": "Document JSON with items, tax_rate, discount_amount, and optional amount_paid.",
"type": "object"
}
},
"required": [
"document"
],
"examples": [
{
"document": {
"items": [
{
"description": "Service",
"quantity": 2,
"unit_price": 50
}
]
}
}
]
}输出模式
{
"type": "object",
"properties": {
"amount_paid": {
"description": "Amount paid.",
"type": "number"
},
"balance_due": {
"description": "Remaining balance due.",
"type": "number"
},
"discount_amount": {
"description": "Discount applied.",
"type": "number"
},
"grand_total": {
"description": "Payable grand total.",
"type": "number"
},
"is_paid": {
"description": "True when paid in full.",
"type": "boolean"
},
"subtotal": {
"description": "Subtotal before tax/discount.",
"type": "number"
},
"tax_total": {
"description": "Tax amount.",
"type": "number"
}
},
"required": [
"subtotal",
"tax_total",
"discount_amount",
"grand_total",
"amount_paid",
"balance_due",
"is_paid"
]
}🟢get_pricing
Read static subscription tiers, single-pass unlocks, and checkout links without mutating server records. Example: currency='USD' or get_pricing({})
输入模式
{
"type": "object",
"properties": {},
"examples": [
{}
]
}输出模式
{
"type": "object",
"properties": {
"currency": {
"description": "Catalog currency (USD).",
"type": "string"
},
"microtransactions": {
"description": "Single-pass unlocks.",
"type": "array"
},
"plans": {
"description": "Subscription tiers.",
"type": "array"
}
},
"required": [
"currency",
"plans",
"microtransactions"
]
}🟢convert_document(credit_reason, document, due_days, payment_link, payment_qr_code, ...)
Stateless in-memory conversion and PDF synthesis from Estimate/Quote JSON to Invoice, Receipt, or Credit Note without mutating server records. Example: target_type='invoice', convert_document({"document":{},"target_type":"invoice"})
输入模式
{
"type": "object",
"properties": {
"credit_reason": {
"description": "Credit note or refund reason.",
"type": "string"
},
"document": {
"description": "Stateless input document JSON payload to transform.",
"type": "object"
},
"due_days": {
"description": "Days until payment due.",
"type": "integer"
},
"payment_link": {
"description": "HTTPS checkout URL for QR code.",
"type": "string"
},
"payment_qr_code": {
"description": "Embed SVG vector QR code.",
"type": "boolean"
},
"target_type": {
"description": "Target type (invoice, receipt, estimate, credit_note, refund).",
"enum": [
"invoice",
"receipt",
"estimate",
"credit_note",
"refund"
],
"type": "string"
}
},
"required": [
"document",
"target_type"
],
"examples": [
{
"document": {
"doc_type": "estimate",
"from": {
"name": "Acme"
},
"to": {
"name": "Client"
}
},
"target_type": "invoice"
}
]
}输出模式
{
"type": "object",
"properties": {
"compile_time_ms": {
"description": "Compile time in ms.",
"type": "integer"
},
"document": {
"description": "Converted document JSON.",
"type": "object"
},
"pdf_base64": {
"description": "Base64 vector PDF.",
"type": "string"
}
},
"required": [
"document",
"pdf_base64",
"compile_time_ms"
]
}🟢record_payment(amount_paid, document, paid_date, payment_method, transaction_reference)
Stateless in-memory payment calculation and PDF synthesis returning a Receipt or partial-payment Invoice without mutating server records. Example: amount_paid=100, record_payment({"document":{},"amount_paid":100})
输入模式
{
"type": "object",
"properties": {
"amount_paid": {
"description": "Amount paid toward balance.",
"type": "number"
},
"document": {
"description": "Stateless input invoice JSON payload.",
"type": "object"
},
"paid_date": {
"description": "Payment date (YYYY-MM-DD).",
"type": "string"
},
"payment_method": {
"description": "Payment method (Stripe, Apple Pay, Wire).",
"type": "string"
},
"transaction_reference": {
"description": "Transaction reference ID.",
"type": "string"
}
},
"required": [
"document"
],
"examples": [
{
"amount_paid": 100,
"document": {
"doc_type": "invoice",
"from": {
"name": "Acme"
},
"to": {
"name": "Client"
}
}
}
]
}输出模式
{
"type": "object",
"properties": {
"compile_time_ms": {
"description": "Compile time in ms.",
"type": "integer"
},
"document": {
"description": "Receipt or updated invoice JSON.",
"type": "object"
},
"pdf_base64": {
"description": "Base64 vector PDF.",
"type": "string"
}
},
"required": [
"document",
"pdf_base64",
"compile_time_ms"
]
}社区
证据