
pscat
io.github.PSCatLabs由 GitHub 账号 PSCatLabs 发布v0.6.3更新于 Oct 30, 2026
Render and debug PostScript to PNG, SVG or PDF, write handwritten notes, and make generative art
概览
一个通过 MCP 提供的 PostScript 解释器,让助手把 PostScript/EPS 渲染为 PNG、SVG 或 PDF,并绘制生成艺术与黑板公式。
- 可以做什么
- 把 PostScript 与 EPS 程序渲染为 PNG、SVG 或 PDF,包括多页文档与页面模板
- 依据带种子的程序绘制生成艺术、水彩油画、版画、手写与字体设计
- 用 chalkboard_math 工具把纯 LaTeX 公式画成黑板图
- 生成图表、曲线图与二维码,输出为精确的矢量几何
- 以本地 MCP 服务器形式提供十个工具,并附带供编码代理阅读的 Markdown 技能
- 适用场景
- 适合输出必须精确可核对的场景:文字拼写正确、二维码可扫描、图表与数据一致、可印刷的矢量 PDF 或 SVG。也适合让本身没有图像输出能力的模型绘制并查看图片。
- 运行要求
- 以 stdio 本地进程运行。可通过 cargo install pscat 安装(含 pscat 与 pscat-mcp),或下载 macOS、Linux、Windows 预编译二进制;仅从源码构建时需要稳定的 Rust 工具链。可选执行 pscat fonts install 安装完整字体包。未声明认证、环境变量或请求头。
安装
在 SourceWeft 中
- 打开 控制台中的 pscat,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
pscat
[The pscat logo: a cream sheet of paper with cat ears and a turned-down corner, with %! as its face, on a gold square]
PostScript for precision and imagination.
The logo is drawn by pscat from its PostScript source.
pscat is a modern PostScript interpreter written in Rust for reliable document rendering and creative graphics. It renders PostScript and EPS to PNG, SVG and PDF from the command line, as an embeddable Rust library, in the browser via WebAssembly, or through MCP for AI agents.
- Documents: letters, certificates, invitations and posters from page templates, charts and plots for papers, typewritten memos, and multi-page PDFs.
- Art: generative patterns, watercolor and oil paint, printmaking, handwriting, chalkboards and display type.
pscat aims to replace Ghostscript for most PostScript work, and uses Ghostscript as its correctness reference: test expectations are pinned against Ghostscript's output. It can also show a program drawing, stroke by stroke, in a live window or in a browser tab.
[A certificate of achievement for Ada Lovelace, typeset in serif type inside a double rule on cream paper, from the pagekit certificate template] [Evening Stream, an autumn evening with a glowing sky, a stream tumbling over a small fall between dark banks, autumn trees and a cabin with a lit window]
Both drawn by pscat: a certificate from the page templates, and Evening Stream, painted with the paint library.
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.
[Cathedral Rose, a lace-like rosette woven from straight red and gold chords inside a gold ring on a dark purple ground] [Ring of Type, a sentence repeated around eleven concentric rings that shrink toward a large ampersand at the centre] [Hortus Machinalis, a herbarium plate with three branching plants labelled in Latin-style captions on cream paper]
[Ripple Range, a three-dimensional surface drawn as stacked ridges that shade from orange at the back to blue at the front, with a pale dip where the ripples meet] [Nightfall, Three Cuts, a moonlit ridge over water in three print styles: engraved sky and water, woodcut mountains and linocut reeds] [Alpine Lake, snow-capped peaks reflected in a still lake under a criss-cross brushed sky, with evergreens in the foreground]
When to use pscat
Use an image model (FLUX, Nano Banana, gpt-image and the like) for photorealism and loose painterly mood, where nothing has to be exact. Use pscat when the output must be exact and checkable: text spelled right, a QR code that scans, a chart that matches the data, a layout that prints at size as vector PDF or SVG, from a seeded program you can diff, edit and re-render, locally and free per image. Its watercolor and oil are deterministic, editable source too, and share a page with exact type and QR codes. It also gives a model with no image output of its own (as of November 2026, Claude) a way to draw real pictures and look at them. When to use pscat has the honest comparison and a decision table.
Install
Or download a ready-built binary for macOS, Linux or Windows from the releases page (no Rust needed). Getting started has the details. Then:
Quick start from a checkout
You need a stable Rust toolchain.
A taste of the REPL:
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/.
LaTeX on a chalkboard
pscat chalk writes a formula on a chalkboard from plain LaTeX, with no
PostScript. The same LaTeX and seed give the same picture:
More boards, each with its command, are
on the site; the options and
the supported LaTeX are in the
dry-media guide.
MCP clients get the same board from the chalkboard_math tool.
Guides
Everything else is in docs/guides/:
- Getting started: build, install, command-line flags, output formats
- pscat in the browser and for AI agents
- Fonts and handwriting
- artkit: the generative-art toolkit, and style packs and page templates
- Painting and the landscape cookbook
- Printmaking and etching and dry media
- Lettering, headlines and apparel
- Charts and plots
- QR codes: encode a URL or other text as a QR symbol, drawn as vector geometry
- Functional PostScript: map, filter, fold and composed procedures for art built from lists of records
For AI agents
pscat works well from a coding agent. The skills in plugin/skills/ (pscat,
psart, psviz, functional-postscript) are plain Markdown any agent can read, and pscat-mcp is an
MCP server with ten 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, the URW Symbol and ZapfDingbats faces and the
Courier Prime-derived typewriter outlines, under the
SIL Open Font License 1.1, and the TeX Gyre faces, under the
GUST Font License (LPPL-1.3c). That's why Cargo.toml says
(MIT OR Apache-2.0) AND OFL-1.1 AND LPPL-1.3c. The font terms cover 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.
来源:README.md,提交 68ef3aa
工具
0版本历史
1- v0.6.3最新Oct 23, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分