mcpField
P

pensketch

本地服务

关于 pensketch

pensketch 的 MCP 服务:检查、渲染并栅格化手绘图表。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"alpha-nu-pensketch": {
"command": "npx",
"args": [
"-y",
"@pensketch/mcp"
]
}
}
}
启动命令npx -y @pensketch/mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@pensketch/mcp0.13.0

工具

4

收录的工具列表 · 更新于 2 周前

参数类型必填说明
depthnumber否对于没有自身 `depth` 的每个节点,绘制板块的深度(单位:px)。默认值为 12,以方框为基准;药丸形约需其高度的三分之一,菱形在测试的所有深度下看起来都像折起的角,因此建议保持平面。凡可能读取该值的情况,都必须是正的有限数值——包括启用 extrude 时,以及任何节点自行挤出时——否则渲染将被拒绝并指出该字段。若某个值不会被读取,则忽略它;但非有限值除外:无论之后是否会读取它,边界都会先拒绝该值。
anchorsboolean否将每条边解析后的端点追加到报告中,每行一条:绘制线条实际起始和结束的两个点——沿边行进的侧边分数位置、投影到轮廓上的挤出锚点、自转移中相隔 span 的两端——按绘图序列化时使用的精度四舍五入到两位小数。无需查看图片,即可通过算术验证几何形状。默认值为 false,因此默认报告保持精简。
diagramobject是图表:以纯数据表示的节点、边、括号和注释。每个字段的说明请查阅 pensketch://schema 资源,或调用内容相同的 get_schema 工具。绘制前会先根据该架构验证整个图表:任何深度的未知字段都会按名称拒绝,而不会忽略,`raw` 也不例外——它承载 JSON 无法包含的函数;所有缺陷会在一次拒绝中一并报告。最简图表示例:{"nodes":[{"id":"a","x":40,"y":40,"w":160,"h":50,"lines":["start"]},{"id":"b","x":300,"y":40,"w":160,"h":50,"lines":["done"]}],"edges":[{"from":["a","r"],"to":["b","l"]}]}——节点文本使用 `lines`,即字符串数组;边的端点为 ["nodeId", "side"],side 可取 "t"、"b"、"l"、"r";还可选填第三个 0 到 1 之间的数字,用于指定锚点沿该边的位置,其中 0 和 1 是两个角,默认中点为 0.5。因此,["a", "r", 0.25] 可在已有箭头使用的边上再分出第二个箭头。请紧凑地编写——不要缩进,也不要在字段之间换行——这样比同一图表的美化格式约省一半 token。这只是建议,不是规则:这里不会拒绝美化格式的 JSON,之后也无法判断你提交的是哪种格式。
diagram.edgesarray否
diagram.nodesarray否
diagram.notesarray否
diagram.bracesarray否
extrudeboolean否将每个节点绘制为板块:向右上方偏移后重绘轮廓,并与原轮廓连接。无论如何,节点自身的 `extrude` 设置优先,因此挤出图表可以将某个节点压平,平面图表也可以将某个节点凸起。组不会挤出。尺寸小到无法承载面的形状也会绘制为平面,不会抛出错误,其锚点保持原位。药丸形的较大尺寸至少需要 11.46 px;方框和菱形在任何非零尺寸下都可以承载面。默认值为 false。
viewBoxarray否[minX, minY, width, height],即 <svg> 携带的四个数值。未设置时,越界规则无法运行,也不会执行。

详细介绍

维护者还没有提供详细介绍,可以先查看代码仓库中的 README。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。