关于 three.ws Loom
Loom 是 three.ws 的 MCP 服务,用于浏览社区提交的 3D 创作画廊、获取单个创作及其查看器链接,并提交自己的 GLB 模型。适合希望在 Agent 中展示或分享 3D 模型的用户。
主要功能
- 01按时间倒序浏览公开的创作列表
- 02通过游标分页翻阅画廊
- 03获取创作详情与可嵌入的查看器链接
- 04提供嵌入用的 iframe 代码片段
- 05向公开画廊提交 GLB 模型
适用场景
- 01在 Agent 中浏览社区的 3D 模型作品
- 02将某个创作嵌入网页进行预览
- 03将本地生成的 GLB 模型发布到公开画廊
MCP 相关
该服务以 MCP 服务形式提供 get_loom_feed、get_creation 与 submit_creation 三个工具,其中提交工具为写入操作。读取操作无需密钥或账户,提交操作受服务端的 IP 频率限制。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @three-ws/loom-mcpTHREE_WS_BASEBase URL of the three.ws API that serves the Loom gallery (/api/loom). Override only when self-hosting or targeting a preview deployment.THREE_WS_TIMEOUT_MSPer-request timeout in milliseconds for the live Loom reads and submissions.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
3收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | 要返回的作品数(1–120,默认 60)。 |
| before | integer | 否 | 分页游标(毫秒 epoch):仅返回早于此时间的作品。传入上一页的 nextBefore。 |
详细介绍
@three-ws/loom-mcp
Loom——three.ws 社区 3D 创作画廊,可供任何 AI Agent 使用。浏览社区创作的公开 GLB 作品流,通过其查看器 URL 获取作品,并提交自己的作品。
一个通过 stdio 提供 Loom(three.ws 社区 3D 创作画廊)的 Model Context Protocol 服务。浏览其他人创作的作品,通过可直接嵌入的查看器 URL 获取任意作品,并将自己的 GLB 投稿到公开作品流。
Loom 与 three.ws 的其他 3D 套件形成完整流程:使用 @three-ws/avatar-agent 创作模型,或使用 @three-ws/scene-mcp 组合场景,然后在此发布,让整个平台都能看到。所有读取操作都实时公开;提交无需密钥或账户——服务端仅通过 IP 速率限制进行管控。
安装
npm install @three-ws/loom-mcp
也可以使用 npx 运行(无需安装):
npx @three-ws/loom-mcp
快速开始
Claude Code,一行配置:
claude mcp add loom -- npx -y @three-ws/loom-mcp
Claude Desktop / Cursor(claude_desktop_config.json 或 mcp.json):
{
"mcpServers": {
"loom": {
"command": "npx",
"args": ["-y", "@three-ws/loom-mcp"]
}
}
}
使用 MCP Inspector 检查功能:
npx -y @modelcontextprotocol/inspector npx @three-ws/loom-mcp
工具
| 工具 | 类型 | 功能 |
|---|---|---|
get_loom_feed | 只读 | 按最新优先浏览社区创作的公开 3D 作品画廊,并通过 nextBefore 游标分页。 |
get_creation | 只读 | 按 id 获取一件作品,包含完整元数据、可内嵌预览的查看器 URL 和 iframe。 |
submit_creation | 写入 | 将创作的 GLB 投稿到公开画廊。无需密钥;受速率限制(每个 IP 约每小时 20 次)。 |
每次读取都会返回作品的 glbUrl、viewer_url(/forge/embed 轨道环绕 + AR 查看器)、og_image_url(社交卡片)以及可直接粘贴使用的 iframe_snippet,因此任何 MCP 客户端都可以内嵌预览模型。
输入参数
get_loom_feed — limit(1–120,默认 60)、before(毫秒纪元游标;传入上一页的 nextBefore 以向前翻页)。
get_creation — id(必填——作品 UUID)。
submit_creation — prompt(必填,≤1000 个字符)、glbUrl(必填——参见下方允许的主机)、author(可选署名,≤40 个字符,默认为 anon)、previewImageUrl、tier、backend(均为可选)。
提交作品
submit_creation 会将作品发布到公开且所有人都可读取的图库中——请仅提交你打算分享的模型。无需账户、密钥或签名者:该端点开放,服务端通过 IP 速率限制(约每小时 20 次提交)和严格的输入清理来进行限制。author 是自由文本署名,不是经过身份验证的身份。
glbUrl 必须是托管在以下域名之一上的 https URL(此处和服务端都会进行验证):
three.ws · r2.dev · cloudflarestorage.com · replicate.delivery · githubusercontent.com
重新提交完全相同的 glbUrl 时,会返回已有作品,而不会创建重复项。去重功能按设计尽力而为:它只扫描最新的少数条目,这些条目是意外重复 POST 最可能出现的位置。若 GLB 已经随信息流下移,再次提交就会创建第二条记录。
对于已不存在的 ID,get_creation 会返回带类型的 not_found 错误,而不是空作品,因此保存的引用中若包含过期 ID,就能明确识别。
示例
// submit_creation
> {
"prompt": "a cowboy hat, low-poly",
"glbUrl": "https://three.ws/accessories/hat-cowboy.glb",
"author": "nova",
"backend": "hunyuan"
}
{
"ok": true,
"creation": {
"id": "f295398e-2d25-410d-a82f-c8725295a1b3",
"prompt": "a cowboy hat, low-poly",
"glbUrl": "https://three.ws/accessories/hat-cowboy.glb",
"author": "nova",
"createdAt": 1750000000000,
"viewer_url": "https://three.ws/forge/embed?src=https%3A%2F%2Fthree.ws%2Faccessories%2Fhat-cowboy.glb&title=a+cowboy+hat%2C+low-poly",
"og_image_url": "https://three.ws/api/avatar-og?src=https%3A%2F%2Fthree.ws%2Faccessories%2Fhat-cowboy.glb",
"iframe_snippet": "<iframe src=\"https://three.ws/forge/embed?src=…\" width=\"640\" height=\"360\" …></iframe>"
}
}
// get_loom_feed
> { "limit": 2 }
{ "ok": true, "count": 2, "nextBefore": 1749999000000, "has_more": true,
"creations": [ { "id": "…", "prompt": "…", "glbUrl": "…", "viewer_url": "…", "iframe_snippet": "…" } ] }
将作品的 iframe_snippet 放到任意网页上,或打开其 viewer_url 来环绕查看模型(在支持的设备上可使用 AR)。
示例
可运行的示例位于 examples/:
node examples/list-tools.mjs # every tool with its full input schema
node examples/browse-loom.mjs # a page of the gallery + one creation's embed, live
这两个示例都会通过 stdio 启动此服务,并读取实时公开图库。它们刻意设计为只读:submit_creation 会将内容发布到所有人都可读取的信息流,因此示例不会代你发布任何内容。预期输出请参阅 examples/README.md。
要求
- Node.js >= 20。
- 可访问网络
https://three.ws(或你自己的THREE_WS_BASE)。
环境变量
| 变量 | 必需 | 默认值 |
|---|---|---|
THREE_WS_BASE | 否 | https://three.ws |
THREE_WS_TIMEOUT_MS | 否 | 20000 |
任何工具都无需 API 密钥、签名者或账户。
链接
- 主页:https://three.ws
- Forge 图库:https://three.ws/forge
- 更新日志:https://three.ws/changelog
- 问题反馈:https://github.com/nirholas/three.ws/issues
- 许可证:Apache-2.0,参见 LICENSE
属于 three.ws SDK 套件的一部分——3D AI Agent、链上身份和 Agent 支付。
网站 · 更新日志 · GitHub
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。