pscat

Official registry Developer tools

Render and debug PostScript to PNG, SVG or PDF, write handwritten notes, and make generative art

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

CARGO package pscat

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. pscat
  2. Install
  3. Quick start from a checkout
  4. Guides
  5. For AI agents
  6. Contributing
  7. Why
  8. Licence
  9. SDLC

pscat

pscat is a PostScript interpreter written in Rust. PostScript is a programming language for drawing pages; pscat runs your program and shows the picture as it is drawn, in a live window, or renders it to PNG, SVG or PDF. It also runs in a browser tab, and it ships with PostScript libraries for making art: generative patterns, paint and watercolor, printmaking, lettering, charts and more. It was built for fun, not as a Ghostscript replacement, though it aims for broad PostScript coverage over time.

pscatlabs.github.io/pscat has the docs, the full gallery, a specimen of every font, and a live playground that runs the interpreter in your browser, no install.

Install

cargo install pscat          # pscat and pscat-mcp, from crates.io
pscat fonts install          # optional: the full font catalog, as font packs
npm install pscat            # from 0.6.2: the wasm renderer for browsers and Node

Or download a ready-built binary for macOS, Linux or Windows from the releases page (no Rust needed). Getting started has the details. Then:

pscat --png out.png some_file.ps

Quick start from a checkout

You need a stable Rust toolchain.

cargo run -- --page 500x500 examples/sierpinski.ps   # watch it draw, live
cargo run -- --png out.png examples/sierpinski.ps    # render to a PNG instead
cargo run -- -i                                      # REPL + window: type PostScript, watch it draw

A taste of the REPL:

PS> 40 2 add =
42
PS> mark 1 2 3
PS<4> pstack
3
2
1
-mark-

To try it with nothing installed, open the playground. New to PostScript? Start with Learn PostScript. More sample programs live in examples/, and finished pieces in gallery/.

Guides

Everything else is in docs/guides/:

For AI agents

pscat works well from a coding agent. The skills in plugin/skills/ (pscat, psart, psviz) are plain Markdown any agent can read, and pscat-mcp is an MCP server with six tools. In Claude Code, both come as one plugin: /plugin install pscat --marketplace PSCatLabs/pscat (after installing pscat; see plugin/README.md). In Codex: codex plugin marketplace add PSCatLabs/pscat, then codex plugin add pscat@pscat. See the agents guide. Any other MCP client can run pscat mcp (the same server as pscat-mcp), and pscat is listed in the MCP Registry from 0.6.3:

  • MCP Registry name: mcp-name: io.github.PSCatLabs/pscat

Contributing

Start with CONTRIBUTING.md (including how contributions are licensed), then AGENTS.md for conventions and SDLC.md for how changes land. Report security problems as SECURITY.md describes, and see docs/STABILITY.md for what stays stable between releases. docs/dev/HANDOFF.md orients you in the code, docs/dev/ARCHITECTURE.md explains the design, and docs/dev/ has the contributor notes, such as how to preview the website. docs/archive/ holds the project's history, including the original stage-by-stage status log.

Why

I used to write raw PostScript by hand in college and send it straight to a LaserWriter. This is a from-scratch Rust interpreter built to relive that — watching a hand-written recursive PostScript program draw itself, live, without depending on a decades-old C codebase to do it.

Licence

pscat's code is dual-licensed under MIT or Apache-2.0, at your option. The package also embeds font data: the Liberation faces and the Courier Prime-derived typewriter outlines, both under the SIL Open Font License 1.1. That's why Cargo.toml says (MIT OR Apache-2.0) AND OFL-1.1. The OFL term covers only the embedded font data, not pscat's code.

The fonts in fonts/catalog/ keep their own upstream licences. The original gallery, example and shirt art is dedicated to the public domain under CC0-1.0, with a few exceptions. CC0 grants no rights in the pscat name or logo. THIRD_PARTY_NOTICES.md lists what is under which terms.

SDLC

See SDLC.md for how this repo's development lifecycle works (issue → branch → PR → review → merge → cleanup) and the branch-protection/merge policy currently enforced on GitHub — generated and kept in sync by the sdlcify skill.

Frequently asked questions

What is pscat?

Render and debug PostScript to PNG, SVG or PDF, write handwritten notes, and make generative art

How do I install pscat?

Follow the installation steps in its documentation, shown on this page and in its repository.

Does pscat need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is pscat open source?

Yes. Its code is on GitHub under the Apache-2.0 license.

Who maintains pscat?

It is published by PSCatLabs. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.