关于 pscat
pscat 是用 Rust 编写的 PostScript 解释器,可供创作者和开发者实时查看绘图过程或导出图像。它还提供生成艺术、绘画、字体和图表等 PostScript 库,并包含面向 Agent 的 MCP 服务。
主要功能
- 01实时查看 PostScript 绘制过程
- 02导出 PNG、SVG 和 PDF
- 03浏览器中运行解释器
- 04提供生成艺术与绘图库
- 05支持 REPL 交互
适用场景
- 01调试 PostScript 绘图程序
- 02将 PostScript 页面渲染为图像或文档
- 03使用库创作生成艺术和图表
MCP 相关
pscat-mcp 提供四种工具,供 MCP 客户端调用。可通过 `pscat mcp` 启动同一 MCP 服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
pscat
pscat 是一个用 Rust 编写的 PostScript 解释器。PostScript 是一种用于绘制页面的编程语言;pscat 可以运行你的程序,并在绘制过程中于实时窗口中显示画面,也可以将其渲染为 PNG、SVG 或 PDF。它还可以在浏览器标签页中运行,并附带用于创作艺术作品的 PostScript 库,涵盖生成图案、绘画和水彩、版画、字体设计、图表等。它的开发初衷是好玩,并非要取代 Ghostscript,不过它会逐步扩大对 PostScript 的支持范围。
pscatlabs.github.io/pscat 提供文档、完整作品集、每种字体的样张,以及一个可在浏览器中运行解释器的在线 playground,无需安装。
安装
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
或者从发布页面下载适用于 macOS、Linux 或 Windows 的预编译二进制文件(无需 Rust)。详情请参阅入门指南。然后:
pscat --png out.png some_file.ps
从代码库快速开始
你需要安装稳定版 Rust 工具链。
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
先来体验一下 REPL:
PS> 40 2 add =
42
PS> mark 1 2 3
PS<4> pstack
3
2
1
-mark-
如果不想安装任何东西,可以打开 playground 试用。刚接触 PostScript?请从学习 PostScript开始。更多示例程序位于 examples/,完成的作品则位于gallery/。
指南
其他内容都在 docs/guides/ 中:
- 入门指南:构建、安装、命令行标志和输出格式
- 在浏览器中使用 pscat以及供 AI Agent 使用
- 字体和手写字
- artkit:生成艺术工具包,以及风格包和页面模板
- 绘画和风景创作手册
- 版画与蚀刻和干性媒材
- 字体设计、标题与服饰
- 图表与绘图
面向 AI Agent
pscat 很适合通过编码 Agent 使用。plugin/skills/ 中的技能(pscat、
psart、psviz)都是任何 Agent 都能阅读的纯 Markdown,而 pscat-mcp 是
一个包含四个工具的 MCP 服务。在 Claude Code 中,两者作为一个插件提供:
/plugin install pscat --marketplace PSCatLabs/pscat
(请先安装 pscat;参见 plugin/README.md)。在 Codex 中:
codex plugin marketplace add PSCatLabs/pscat,然后运行
codex plugin add pscat@pscat。请参阅
Agent 指南。任何其他 MCP 客户端都可以运行
pscat mcp(与 pscat-mcp 是同一个服务),pscat 自 0.6.3 版起也已列入
MCP Registry:
- MCP Registry 名称:
mcp-name: io.github.PSCatLabs/pscat
参与贡献
请先阅读 CONTRIBUTING.md(其中包括贡献内容的许可方式),
再阅读 AGENTS.md 了解约定,并阅读 SDLC.md
了解更改如何合入。请按照 SECURITY.md 中的说明报告安全问题,
并参阅 docs/STABILITY.md 了解各版本之间保持稳定的内容。
docs/dev/HANDOFF.md 帮你熟悉代码,
docs/dev/ARCHITECTURE.md 介绍设计,
而 docs/dev/ 包含贡献者须知,例如如何预览网站。
docs/archive/ 保存了项目历史,包括原始的分阶段
状态日志。
初衷
我曾在大学里手写原始 PostScript,并直接发送到 LaserWriter。这是一个从零开始编写的 Rust 解释器,旨在重温那段经历——实时观看手写的递归 PostScript 程序自行绘制,而不依赖已有数十年的 C 代码库。
许可证
pscat 的代码采用双重许可,可由你选择使用 MIT 或
Apache-2.0 许可证。该软件包还包含字体数据:Liberation 字体系列和
源自 Courier Prime 的打字机字形轮廓,二者均采用
SIL Open Font License 1.1 许可证。这就是
Cargo.toml 中写明 (MIT OR Apache-2.0) AND OFL-1.1 的原因。OFL 条款仅适用于
嵌入的字体数据,不适用于 pscat 的代码。
fonts/catalog/ 中的字体沿用各自上游的许可证。原始画廊、示例和 T 恤图案采用
CC0-1.0 贡献至公有领域,但有少数例外。CC0 不授予任何人使用
pscat 名称或徽标的权利。THIRD_PARTY_NOTICES.md 列出了
各项内容所遵循的条款。
SDLC
请参阅 SDLC.md,了解此代码库的开发生命周期
(问题 → 分支 → PR → 审查 → 合并 → 清理)以及目前在 GitHub 上执行的
分支保护和合并政策——这些内容由 sdlcify 技能生成并保持同步。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。





