Server definition
- Hash
- sha256:42929412df2e4a073f71a113b043187a783673f9766c718f2dbd2534c60176b4
- What it is
- What a remote MCP server returned when asked what it offers: 10 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Call this tool to draw many barcodes or QR codes at once from a list of rows, each with its own value and file name. Every row comes back as its own download link valid for one hour. Pro; the free tier does one code per call.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"format": {
"description": "svg (default, free) or png (Pro)",
"enum": [
"svg",
"png"
],
"type": "string"
},
"height": {
"description": "Bar height in the same units (default 80)",
"maximum": 1000,
"minimum": 10,
"type": "integer"
},
"items": {
"description": "The rows to draw",
"items": {
"additionalProperties": false,
"properties": {
"filename": {
"description": "File name without an extension. Defaults to the value, made safe",
"type": "string"
},
"symbology": {
"description": "Defaults to the call's symbology",
"enum": [
"code128",
"ean13",
"ean8",
"upca",
"qr"
],
"type": "string"
},
"value": {
"description": "The data to encode",
"type": "string"
}
},
"required": [
"value"
],
"type": "object"
},
"type": "array"
},
"module_width": {
"description": "Width of the narrowest bar, in pixels or SVG units (default 2)",
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"out_dir": {
"description": "Ignored on this hosted endpoint: there are no directories, and every row comes back as its own download link",
"type": "string"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-code. SVG is returned inline when this is left out; a PNG always comes back as a download link valid for one hour",
"type": "string"
},
"overwrite": {
"description": "Replace a file of the same name already produced in this request (default false)",
"type": "boolean"
},
"stop_on_error": {
"description": "Stop at the first bad row instead of drawing the rest and reporting it (default false)",
"type": "boolean"
},
"symbology": {
"description": "Default symbology for rows that do not name one (default code128)",
"enum": [
"code128",
"ean13",
"ean8",
"upca",
"qr"
],
"type": "string"
},
"text": {
"description": "Print the digits under the bars (default true)",
"type": "boolean"
}
},
"required": [
"items"
],
"type": "object"
},
"name": "barcode_batch",
"outputSchema": null
},
{
"description": "Call this tool to draw a linear barcode (code128, ean13, ean8, upca) as SVG, or PNG to out_path. A short EAN or UPC gets its check digit computed; a wrong one is refused, never redrawn. qr_create makes QR codes.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"format": {
"description": "svg (default, free) or png (Pro)",
"enum": [
"svg",
"png"
],
"type": "string"
},
"height": {
"description": "Bar height in the same units (default 80)",
"maximum": 1000,
"minimum": 10,
"type": "integer"
},
"module_width": {
"description": "Width of the narrowest bar, in pixels or SVG units (default 2)",
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-code. SVG is returned inline when this is left out; a PNG always comes back as a download link valid for one hour",
"type": "string"
},
"overwrite": {
"description": "Replace a file of the same name already produced in this request (default false)",
"type": "boolean"
},
"symbology": {
"description": "code128 for any printable ASCII, ean13 and ean8 for retail products, upca for North American retail",
"enum": [
"code128",
"ean13",
"ean8",
"upca"
],
"type": "string"
},
"text": {
"description": "Print the digits under the bars (default true)",
"type": "boolean"
},
"value": {
"description": "The data to encode. Digits only for EAN and UPC",
"type": "string"
}
},
"required": [
"symbology",
"value"
],
"type": "object"
},
"name": "barcode_create",
"outputSchema": null
},
{
"description": "List the codes this server generated, newest first, with what each carried and where it went, plus how much of the free 20 a month is used. Filter by kind. It reads the register, not the files.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"kind": {
"description": "Only rows of this kind: text, wifi, vcard, sepa, invoice, barcode or batch",
"type": "string"
},
"limit": {
"description": "How many rows to show, newest first (default 20)",
"maximum": 200,
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "code_list",
"outputSchema": null
},
{
"description": "Call this tool for a SEPA payment QR from just an amount and reference: IBAN and name are read from the shared business profile, never asked for; pass invoice_id instead to take the amount from an invoice.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"amount": {
"description": "Amount in EUR. Overrides the invoice total; required when there is no invoice to read",
"type": "number"
},
"error_correction": {
"description": "L 7%, M 15% (default), Q 25%, H 30% of the code recoverable when damaged",
"enum": [
"L",
"M",
"Q",
"H"
],
"type": "string"
},
"format": {
"description": "svg (default, free) or png (Pro)",
"enum": [
"svg",
"png"
],
"type": "string"
},
"iban": {
"description": "Override the IBAN in the shared business profile",
"type": "string"
},
"invoice_id": {
"description": "Invoice number, for example INV-2026-0007. Read from the invoice server's store if it is present",
"type": "string"
},
"margin": {
"description": "Quiet zone in modules, default 4, which is what the QR standard requires",
"maximum": 20,
"minimum": 0,
"type": "integer"
},
"name": {
"description": "Override the beneficiary name in the shared business profile",
"type": "string"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-code. SVG is returned inline when this is left out; a PNG always comes back as a download link valid for one hour",
"type": "string"
},
"overwrite": {
"description": "Replace a file of the same name already produced in this request (default false)",
"type": "boolean"
},
"reference": {
"description": "Payment text, up to 140 characters. Defaults to the invoice number",
"type": "string"
},
"size": {
"description": "PNG width in pixels, 32 to 4000 (default 300). SVG scales without it",
"type": "integer"
}
},
"type": "object"
},
"name": "invoice_payment_qr",
"outputSchema": null
},
{
"description": "Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"key": {
"description": "License key from checkout, MCPL1.<payload>.<signature>",
"type": "string"
}
},
"required": [
"key"
],
"type": "object"
},
"name": "license_activate",
"outputSchema": null
},
{
"description": "Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "license_status",
"outputSchema": null
},
{
"description": "Call this tool to turn text or a URL into a QR code: SVG inline, or a PNG at a pixel size to out_path (Pro). Returns version, module grid and payload size. Free: 20 codes a month on this server.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"error_correction": {
"description": "L 7%, M 15% (default), Q 25%, H 30% of the code recoverable when damaged",
"enum": [
"L",
"M",
"Q",
"H"
],
"type": "string"
},
"format": {
"description": "svg (default, free) or png (Pro)",
"enum": [
"svg",
"png"
],
"type": "string"
},
"margin": {
"description": "Quiet zone in modules, default 4, which is what the QR standard requires",
"maximum": 20,
"minimum": 0,
"type": "integer"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-code. SVG is returned inline when this is left out; a PNG always comes back as a download link valid for one hour",
"type": "string"
},
"overwrite": {
"description": "Replace a file of the same name already produced in this request (default false)",
"type": "boolean"
},
"size": {
"description": "PNG width in pixels, 32 to 4000 (default 300). SVG scales without it",
"type": "integer"
},
"text": {
"description": "The text or URL the code carries",
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"name": "qr_create",
"outputSchema": null
},
{
"description": "Call this tool for an EPC069-12 payment QR a euro banking app can scan. Amount and reference are enough: the beneficiary IBAN and name default to the shared business profile, never asked for.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"amount": {
"description": "Amount in EUR, 0.01 to 999999999.99. Leave out and the payer types it",
"type": "number"
},
"bic": {
"description": "Beneficiary BIC. Optional under EPC version 002",
"type": "string"
},
"currency": {
"description": "EUR only; any other value is refused, because EPC encodes a SEPA credit transfer",
"type": "string"
},
"error_correction": {
"description": "L 7%, M 15% (default), Q 25%, H 30% of the code recoverable when damaged",
"enum": [
"L",
"M",
"Q",
"H"
],
"type": "string"
},
"format": {
"description": "svg (default, free) or png (Pro)",
"enum": [
"svg",
"png"
],
"type": "string"
},
"iban": {
"description": "Beneficiary IBAN. Defaults to the iban in the shared business profile (set once with the invoice server's business_set). Checked with ISO 7064 mod 97 and refused if it does not validate",
"type": "string"
},
"margin": {
"description": "Quiet zone in modules, default 4, which is what the QR standard requires",
"maximum": 20,
"minimum": 0,
"type": "integer"
},
"name": {
"description": "Beneficiary name, up to 70 characters. Defaults to the name in the shared business profile",
"type": "string"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-code. SVG is returned inline when this is left out; a PNG always comes back as a download link valid for one hour",
"type": "string"
},
"overwrite": {
"description": "Replace a file of the same name already produced in this request (default false)",
"type": "boolean"
},
"purpose": {
"description": "Four-letter ISO 20022 purpose code, for example GDDS",
"type": "string"
},
"reference": {
"description": "Structured creditor reference (RF...), up to 35. Use this OR remittance, never both",
"type": "string"
},
"remittance": {
"description": "Free payment text, up to 140 characters, for example an invoice number",
"type": "string"
},
"size": {
"description": "PNG width in pixels, 32 to 4000 (default 300). SVG scales without it",
"type": "integer"
}
},
"type": "object"
},
"name": "qr_payment_sepa",
"outputSchema": null
},
{
"description": "Call this tool to make a QR code that adds a contact when scanned (vCard 3.0). For your own card pass nothing: name, phone, email and address default to the shared business profile, never asked for.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"address": {
"description": "Postal address, one line. Defaults to the shared business profile",
"type": "string"
},
"email": {
"description": "Email address. Defaults to the shared business profile",
"type": "string"
},
"error_correction": {
"description": "L 7%, M 15% (default), Q 25%, H 30% of the code recoverable when damaged",
"enum": [
"L",
"M",
"Q",
"H"
],
"type": "string"
},
"format": {
"description": "svg (default, free) or png (Pro)",
"enum": [
"svg",
"png"
],
"type": "string"
},
"margin": {
"description": "Quiet zone in modules, default 4, which is what the QR standard requires",
"maximum": 20,
"minimum": 0,
"type": "integer"
},
"name": {
"description": "Full name, for example Anna Kowalska. Defaults to the shared business profile's name; pass it only for someone else's card",
"type": "string"
},
"note": {
"description": "Free note stored on the contact",
"type": "string"
},
"org": {
"description": "Company or organisation",
"type": "string"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-code. SVG is returned inline when this is left out; a PNG always comes back as a download link valid for one hour",
"type": "string"
},
"overwrite": {
"description": "Replace a file of the same name already produced in this request (default false)",
"type": "boolean"
},
"phone": {
"description": "Phone number, in the form it should be dialled. Defaults to the shared business profile",
"type": "string"
},
"size": {
"description": "PNG width in pixels, 32 to 4000 (default 300). SVG scales without it",
"type": "integer"
},
"title": {
"description": "Job title",
"type": "string"
},
"url": {
"description": "Website",
"type": "string"
}
},
"type": "object"
},
"name": "qr_vcard",
"outputSchema": null
},
{
"description": "Call this tool to make a QR code that joins a WiFi network when scanned: ssid, password and auth type, written to out_path or returned as SVG. Free: 20 codes a month. qr_create takes plain text or a URL.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"auth": {
"description": "WPA (default when a password is given), WEP, or nopass for an open network",
"enum": [
"WPA",
"WEP",
"nopass"
],
"type": "string"
},
"error_correction": {
"description": "L 7%, M 15% (default), Q 25%, H 30% of the code recoverable when damaged",
"enum": [
"L",
"M",
"Q",
"H"
],
"type": "string"
},
"format": {
"description": "svg (default, free) or png (Pro)",
"enum": [
"svg",
"png"
],
"type": "string"
},
"hidden": {
"description": "True if the network does not broadcast its name",
"type": "boolean"
},
"margin": {
"description": "Quiet zone in modules, default 4, which is what the QR standard requires",
"maximum": 20,
"minimum": 0,
"type": "integer"
},
"out_path": {
"description": "Name for the downloaded file, e.g. acme-code. SVG is returned inline when this is left out; a PNG always comes back as a download link valid for one hour",
"type": "string"
},
"overwrite": {
"description": "Replace a file of the same name already produced in this request (default false)",
"type": "boolean"
},
"password": {
"description": "Passphrase. Leave out only for an open network",
"type": "string"
},
"size": {
"description": "PNG width in pixels, 32 to 4000 (default 300). SVG scales without it",
"type": "integer"
},
"ssid": {
"description": "Network name, exactly as it appears",
"type": "string"
}
},
"required": [
"ssid"
],
"type": "object"
},
"name": "qr_wifi",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:42929412df2e4a073f71a113b043187a783673f9766c718f2dbd2534c60176b4 | sha256sum