mcpField
L
lousa

lousa

本地服务
github.com/henriquepe媒体与设计013 周前更新

关于 lousa

lousa 是供 AI Agent 将说明转为手绘动画图表的 MCP 服务和网页查看器。Agent 可创建并修改结构化场景,用户也能选中图表元素以便定向调整。

主要功能

  1. 01根据结构化场景创建白板
  2. 02为场景增量更新添加动画
  3. 03选中元素以定向修改
  4. 04读取、列出和删除白板
  5. 05白板默认设有过期时间

适用场景

  1. 01可视化呈现身份验证流程
  2. 02用图表解释概念
  3. 03调整选中的图表元素

MCP 相关

MCP 服务提供创建、更新、读取、列出和删除白板的工具,也可获取查看器中的选中内容。它支持本地运行,也可连接配置的远程服务。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"henriquepe-lousa": {
"command": "npx",
"args": [
"-y",
"lousa"
]
}
}
}
启动命令npx -y lousa

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

安装包
npmlousa0.1.1

工具

6

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

参数类型必填说明
scenearray是完整场景,按绘制顺序排列(先绘制标题和形状,再绘制连接它们的箭头)。
titlestring是简短的画板标题。
requestsarray否发起创建画板的用户请求。
ttlHoursnumber否看板过期并删除前的小时数(默认值为 12;0 = 永久;最大值为 720)。每次更新都会顺延过期时间。仅当用户要求保留看板时才使用 0。
narrationstring否用 1~2 句话描述图画的内容(在查看器中以卡片形式显示)。

详细介绍

Lousa

一个由 AI Agent 绘制说明内容的白板。

你的 Agent 一笔一画地绘制速率限制器说明

让你的 Agent “直观地解释一下”,它就会在实时白板上绘制一张动画手绘图,而不是再给你一大段文字。Lousa 是一个 MCP 服务 + 网页查看器:Agent 编写声明式场景(方框、箭头、圆柱、注释),白板会一笔一画地将其呈现出来,就像有人正在你面前绘制一样。

Lousa 在葡萄牙语中是传统教室黑板的意思。

有何不同

  • Agent 就是画师。 无需提示词输入框,也无需 OCR——你的编码 Agent 已经掌握上下文,并通过类型化 MCP 工具绘图。
  • 实时增量绘制。 后续操作会编辑场景;打开的标签页只会为发生变化的部分播放动画,就像看着图表逐步演变。
  • 指向具体内容。 在查看器中点击元素即可选中,然后告诉 Agent “改进我选中的内容”——它会通过 get_selection 读取你的选择,并精确处理对应内容。
  • 白板默认会过期(12 小时,滑动过期)——它是白板,不是文件坟场。ttlHours: 0 可让白板永久保留。

快速开始

需要 Node.js 18.17+。

# Claude Code
claude mcp add lousa -- npx -y lousa mcp

# or run the server directly
npx lousa            # viewer at http://127.0.0.1:4666

任何 MCP 宿主都可以使用——stdio 配置请使用命令 npx,参数 ["-y", "lousa", "mcp"]。stdio 端点会自动启动本地服务,因此查看器始终可用。然后让你的 Agent “画出我们的身份验证流程”,并打开它返回的 URL。

MCP 工具

工具功能
create_board根据场景创建白板,并返回 {id, url}
update_board替换场景;未更改的元素会保持字节级一致,因此只有更改部分会播放动画
get_board / list_boards读取白板
get_selection获取用户在查看器中选中的内容(ID + 完整元素)
delete_board删除白板

场景是一个由元素组成的 JSON 数组,包括 box、ellipse、diamond、cylinder、arrow(连接 ID)、line、text、note,并由 rough.js 渲染。完整架构包含在工具定义中;Agent 无需额外设置。

自托管共享服务

在任意 Node 主机上运行 lousa,并让各机器连接到它:

LOUSA_TOKEN=<secret> HOST=0.0.0.0 npx lousa        # server
LOUSA_URL=https://your-host LOUSA_TOKEN=<secret> npx lousa mcp   # each client

LOUSA_TOKEN 用于保护白板列表、创建和删除操作以及 /mcp;每个白板的 URL 都是能力链接。开箱即支持 AWS Lambda + S3 部署(lambda.js 处理程序 + 用于存储的 LOUSA_BUCKET);任何 HTTPS 前端(如 API Gateway)都可以使用。

环境变量默认值用途
PORT / HOST4666 / 127.0.0.1服务绑定地址
LOUSA_DATA_DIR~/.lousa/boards文件系统白板存储路径
LOUSA_BUCKET—使用 S3 存储代替文件系统
LOUSA_TOKEN—要求全局路由和 MCP 提供 bearer token(通过请求头或 ?t=)
LOUSA_URL—lousa mcp 代理到此远程服务
LOUSA_DEFAULT_TTL_HOURS12白板默认过期时间

开发

npm install
npm test          # node --test
node cli.js       # local server

许可证

AGPL-3.0 © Henrique Pires

评论

支持 Markdown

第一次接触 MCP?

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

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