InkRelay MCP server
io.github.GauravBR/inkrelay·v0.1.1Print PDFs, ZPL labels and ESC/POS receipts on your printers and follow print jobs via InkRelay
0 stars48 downloads/wk
Reviews
Write oneNobody has reviewed InkRelay yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
InkRelay tools (17, 4 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
cancel_print_jobwrite actionCancels a job that is still queued or sent. Once the agent has received it, the API answers 409 not_cancellable.
create_webhookwrite actionCreates an endpoint that receives signed events (Standard Webhooks HMAC). Returns the whsec_ signing secret once: tell the user to store it as INKRELAY_WEBHOOK_SECRET. Live endpoints need https. Needs the admin scope.
get_print_jobReturns a print job with its state, stateMessage and the time of each state change, plus its full event history.
get_printerReturns one printer with its capabilities (papers in tenths of a millimetre, bins, dpis, duplex, color, nup), default options and custom paper sizes.
get_usageReturns the plan, the live prints used and included this billing period, and earlier periods.
list_computersLists the computers running the InkRelay agent, with their state (online, offline, disabled), OS and agent version.
list_eventsReads the event feed (the same events webhooks deliver). For new events use dir asc with after set to the last nextCursor.
list_print_jobsLists recent print jobs, newest first, optionally filtered by printer, computer or state.
list_printersLists printers with id, name, computer, online state, whether they are live (accept jobs) and their default options. Use get_printer for paper sizes, trays and other capabilities.
list_webhooksLists the webhook endpoints of this key's mode.
ping_webhookQueues a signed test delivery with type ping to an endpoint. Needs the admin scope.
print_pdfPrints a PDF on a printer. Pass exactly one of url (public or signed http(s) URL, fetched once), base64, or filePath (a local file, read by this server). Up to 25 MB. With an ir_live_ key this prints on paper and counts toward the plan; with ir_test_ it runs on a virtual printer.
print_rawwrite actionSends printer language bytes unchanged to a label or receipt printer, e.g. ZPL (^XA...^XZ) or ESC/POS. Pass exactly one of text (each character U+0000 to U+00FF becomes one byte, so \u001b is ESC), base64, url or filePath. Options do not apply. The OS queue must accept raw data (CUPS raw queue, or the printer's own or Generic / Text Only driver on Windows).
reprint_print_jobPrints the stored file of an earlier job again (files are kept 7 days), on the same printer or another one of the same mode.
update_printerwrite actionSets a printer's display name, live switch (enabled), default options, custom paper sizes (tenths of a millimetre; replaces the whole list) or remarks. Needs a key with the admin scope.
wait_for_print_jobPolls a print job until it is done, error, cancelled or expired (or the timeout passes) and returns it.
whoamiReturns the organization, plan, mode (test or live) and current usage behind INKRELAY_API_KEY. Call it first.
Public scan report
scanner v0.1.10 · 2026-10-28 · same rubric, same numbers if you re-run it
- Code scan3 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 10 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How InkRelay compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 83/100
- higher than 65% of 48,255 servers
- Tools
- 17
- the typical server has 7
- Tools that change things
- 24%
- typical: 0%. Fewer write tools means less an agent can break
- Downloads a week
- 48
- more than 40% of 12,191 servers with a package
What its tools let an agent do: 13 read · 1 create · 2 change · 1 delete
Install InkRelay in Claude Code, Cursor or VS Code
Runs npx -y @inkrelay/mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add inkrelay -- npx -y @inkrelay/mcp
What the publisher says
From the InkRelay repository's README, as published. We do not edit it. Read it on GitHub
InkRelay AI kit
MCP server, Agent Skill and Claude Code plugin for InkRelay, a cloud printing API. Use them to let an AI assistant print on your printers, or to have a coding agent add printing to your app.
Quick start
- Sign in at app.inkrelay.app and create a key under API keys. A test key (irtest...) prints only to four virtual printers (A4 laser, Letter color, 80 mm receipt, 4x6 label) and costs nothing.
- Add the MCP server to Claude Code (other clients are in mcp/README.md):
claude mcp add-json inkrelay '{"command":"npx","args":["-y","@inkrelay/mcp"],"env":{"INKRELAY_API_KEY":"ir_test_your_key"}}'- Ask: "Print https://inkrelay.app/sample.pdf on Test A4 Laser and tell me when it is done."
Claude Code plugin
Installs the MCP server, the docs MCP server, the skill and the agent together. Set INKRELAYAPIKEY in your shell, start Claude Code and run:
/plugin marketplace add GauravBR/inkrelay-ai
/plugin install inkrelay@inkrelayThen ask, for example: "Add label printing to this app with InkRelay."
Skill only
Copy plugins/inkrelay/skills/inkrelay-printing into your agent's skills folder (for Claude Code, .claude/skills/ in the project or ~/.claude/skills/). It uses the Agent Skills format (SKILL.md with name and description), so other agents that read that format can load it too.
What InkRelay does
- An agent runs as a system service on Windows, macOS or Linux (including Raspberry Pi) next to the printers. It connects out on port 443 and keeps a WebSocket to api.inkrelay.app, so nothing needs to be opened on the network.
- Your code sends POST /v1/printjobs with a printer id and a PDF (URL or base64) or raw bytes (ZPL, ESC/POS). The job is sent to the agent as soon as it is stored. Test jobs reach done in about 3 seconds.
- Each job reports queued, sent, received, printing, then done or error with the operating system's message, and keeps its event history.
- Webhooks are signed in the Standard Webhooks format (HMAC), cover 15 event types, retry for about 27 hours and can be replayed.
- Idempotency-Key on job creation makes retries safe. The limit is 20 requests per second per key.
- SDKs: @inkrelay/sdk (npm) and inkrelay (PyPI). OpenAPI 3.1 spec and a Postman collection.
- Request fields match PrintNode's, so PrintNode integrations move with a base URL and id change (migration guide).
- Test mode is free. The Lite plan includes 50 live prints a month on one computer (pricing).
Links
- Website: https://inkrelay.app
- Docs: https://docs.inkrelay.app (single file for agents: https://docs.inkrelay.app/llms-full.txt)
- API: https://api.inkrelay.app, OpenAPI at https://docs.inkrelay.app/openapi/openapi.json
- SDKs: @inkrelay/sdk, inkrelay
License
MIT
Nothing above is checked by us. What we check is on the safety report.
InkRelay: common questions
- Is InkRelay MCP server safe?
- Mostly: it is graded B (83/100). Read the InkRelay safety report
- How do I install InkRelay?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does InkRelay need an API key?
- Yes. The registry entry asks for
INKRELAY_API_KEY. - Is InkRelay maintained?
- The last commit was 17 days ago (2026-10-18). The latest release is v0.1.1.
- How does InkRelay compare with other MCP servers?
- safety score 83/100 (higher than 65% of 48,255 servers); tools 17 (the typical server has 7); tools that change things 24% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.