Token导航 LogoToken导航TokenDH.com
loom (Jake Mok Nelson) logo
AI代理未说明官方级别未说明来源级核验

loom (Jake Mok Nelson)

MCP Server

Loom是一个基于Web的项目和任务管理应用程序,帮助用户高效管理项目、任务、问题、目标和成果,提供实时更新的现代Web仪表板和REST API,并支持通过MCP协议与LLM应用集成。

工具数

38

提示词数

0

GitHub Stars

0

资源数

0
GoClaudeAI代理Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

jake-mok-nelson

提供方

jake-mok-nelson

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

织布机

Loom是一个基于web的项目和任务管理应用程序,可以有效地帮助您管理项目、任务、问题、目标和结果。它提供了一个带有实时更新的现代web仪表板和用于编程访问的REST API,所有这些都由本地SQLite数据库支持。Loom还用作使用Streamable HTTP传输的MCP(模型上下文协议)服务器,使LLM应用程序能够通过标准化的MCP协议管理项目和任务。

特性

  • 项目管理:通过web UI和REST API创建、列出、获取、更新和删除项目
  • 任务管理:创建、列出、获取、更新和删除任务,包括状态、优先级、类型和注释
  • 问题跟踪:捕捉与项目相关的问题,并可选择与特定任务相关的问题
  • 目标追踪:使用可选的项目/任务链接和目标类型捕获目标
  • 结果跟踪:跟踪与项目相关的结果,并可选择与任务相关的结果以随时间推移取得进展
  • 语音通知:LLM工具的文本转语音功能,可向用户发送语音消息
  • Web仪表板:现代、响应迅速的web界面,通过服务器发送事件(SSE)实时更新
  • MCP服务器:用于LLM工具集成的带流式HTTP传输(2025-03-26规范)的完整MCP(模型上下文协议)服务器
  • REST API:用于对所有功能进行编程访问的完整REST API
  • 本地存储:存储在本地SQLite数据库中的所有数据(默认值: ~/.loom/loom.db)

安装

先决条件

  • 转到1.23或更高版本
  • Node.js和npm(可选,只需要安装echogarden进行语音通知)

从源代码构建

git clone https://github.com/jake-mok-nelson/loom.git
cd loom
go build -o loom

安装

# Move the binary to your PATH
sudo mv loom /usr/local/bin/

# Install echogarden for voice notifications (optional)
npm install -g echogarden

配置

默认情况下,Loom将其数据库存储在 ~/.loom/loom.db。您可以通过设置来自定义此位置 LOOM_DB_PATH 环境变量:

export LOOM_DB_PATH=/path/to/your/loom.db

用法

启动服务器

Loom在不同的端口上运行API服务器(REST API、SSE和MCP)和网站(仪表板):

# Using the binary directly (API + MCP on :8080, Dashboard on :3000)
./loom

# Specify custom ports
./loom -addr :9090 -web-addr :4000

# Using make
make web

然后打开浏览器http://localhost:3000(或您的自定义web端口)查看仪表板。 API、SSE和MCP可流式HTTP端点均可在http://localhost:8080(或您的自定义API端口)。

命令行选项

  • -addr:API和MCP服务器地址和端口(默认值: :8080)
  • -web-addr:网站服务器地址和端口(默认值: :3000)

您还可以设置 LOOM_DB_PATH 使用自定义数据库位置的环境变量。

架构:REST API与MCP

Loom在同一端口上公开了两个互补的接口,每个接口服务于不同的受众:

REST API(/api/*)MCP(/sse)
消费者Web仪表板、脚本、HTTP客户端LLM应用程序(Claude Desktop等)
协议标准REST(基于HTTP的JSON)基于流式HTTP的JSON-RPC 2.0
能力只读 --查询项目、任务、问题、结果、目标完整CRUD --创建、读取、更新、删除和链接/取消链接所有实体
实时GET /events 将SSE更新推送到仪表板GET /sse 将MCP通知流式传输到LLM客户端
用例在浏览器仪表板中显示数据让AI代理以编程方式管理项目

为什么两者都有?

  • REST API为仪表板供电。 web UI需要简单、快速的GET端点来获取和显示数据,以及一个SSE流(/events)当数据发生变化时自动刷新。它不需要写访问权限,因为用户通过他们的LLM工具进行交互,而不是直接通过仪表板。
  • MCP为LLM工具集成提供动力。 人工智能代理(如克劳德)需要一个标准化的协议来发现可用的工具并执行它们。MCP通过JSON-RPC提供了跨所有实体类型的完整创建/读取/更新/删除功能。当MCP工具修改数据时,仪表板通过REST SSE流接收实时刷新事件。

这两个接口一起形成一个循环: LLM代理通过MCP写入数据→ 仪表板通过REST API读取并显示它→ 变化通过SSE实时显示。

Web仪表板

Loom提供了一个反应式web仪表板,用于可视化和管理您的项目和任务。仪表板通过服务器发送事件(SSE)和现代桌面优化界面提供实时更新。

仪表板功能

  • 概述:显示所有数据类型的最近活动
  • 项目:通过任务状态摘要按状态(活动、计划、待处理、已完成、已存档)查看和筛选所有项目
  • 任务:按状态、优先级、类型和项目筛选
  • 问题:通过状态过滤跟踪与项目和任务相关的问题
  • 结果:通过状态筛选监控项目的进度跟踪
  • 目标:查看短期、职业、价值观和需求目标
  • 实时更新:数据更改时仪表板会自动刷新
  • 搜索:对所有项目进行全局搜索
  • 深色主题:现代、友好的深色界面,专为桌面使用而优化

REST API

Loom提供了一个REST API,用于对所有功能进行编程访问。所有端点都返回JSON响应。

API终点

  • GET /api/projects -列出所有项目
  • GET /api/tasks?project_id=1&status=pending&task_type=feature -列出带有可选筛选器的任务
  • GET /api/problems?project_id=1&task_id=2&status=open -列出可选筛选器的问题
  • GET /api/outcomes?project_id=1&task_id=2&status=completed -使用可选筛选器列出结果
  • GET /api/goals?project_id=1&task_id=2&goal_type=short_term -使用可选筛选器列出目标
  • POST /api/voice -文本到语音端点(接受JSON text 字段,返回WAV音频)
  • GET /events -用于实时更新的服务器发送事件(SSE)端点

所有API端点都包含用于交叉源访问的CORS头。

MCP服务器(流式HTTP)

织机实现 模型上下文协议(MCP) 使用 流式HTTP 运输(规范版本 2025-03-26).这取代了传统的HTTP+SSE传输,并在 /sse 它支持JSON和流式响应。

MCP端点

  • POST /sse -发送JSON-RPC 2.0请求(初始化、工具/列表、工具/调用等)
  • GET /sse -打开服务器到客户端通知的流式连接
  • DELETE /sse -终止会话

可用的MCP工具

所有项目管理操作均可作为MCP工具使用:

工具说明
create_project创建新项目
list_projects列出所有项目
get_project获取项目详细信息
update_project更新项目
delete_project删除项目
create_task在项目中创建任务
list_tasks使用筛选器列出任务
get_task获取任务详细信息
update_task更新任务
delete_task删除任务
create_problem制造问题
list_problems列出过滤器的问题
get_problem获取问题详细信息
update_problem更新问题
delete_problem删除问题
link_problem_to_project将问题链接到项目
unlink_problem_from_project从项目中取消链接问题
get_problem_projects获取解决问题的项目
get_project_problems为项目解决问题
create_outcome创造一个结果
list_outcomes使用筛选器列出结果
get_outcome获取结果详细信息
update_outcome更新结果
delete_outcome删除结果
create_goal设定一个目标
list_goals用过滤器列出目标
get_goal获取目标详细信息
update_goal更新目标
delete_goal删除目标
link_goal_to_project将目标与项目联系起来
unlink_goal_from_project从项目中取消目标链接
get_goal_projects为目标获取项目
get_project_goals为项目设定目标
create_task_note为任务创建注释
list_task_notes列出任务的注释
get_task_note获取任务笔记
update_task_note更新任务说明
delete_task_note删除任务注释

MCP客户端配置

要将MCP客户端(例如Claude Desktop)连接到Loom,请使用Streamable HTTP传输配置:

{
  "mcpServers": {
    "loom": {
      "type": "streamable-http",
      "url": "http://localhost:8080/sse"
    }
  }
}

语音通知

Loom在通过MCP创建任务、问题、目标和结果时,为语音公告提供文本转语音功能。仪表板导航栏中有一个扬声器图标(🔊/🔇) 这允许用户静音/取消静音语音通知。语音状态在会话中持续存在。

设置Kokoro TTS

织机用途 回声花园 随着 Kokoro公司 离线TTS引擎,用于高质量、自然声音的语音合成。

安装

  1. 安装回声花园 (需要Node.js 18+):
npm install -g echogarden
  1. 下载Kokoro模型 (可选,首次使用时自动下载模型):

Kokoro模型将在首次致电时自动下载到 /api/voice。下载内容包括: - kokoro-82m-v1.0-fp32 (301MB)-主型号 - kokoro-82m-v1.0-voices (26MB)-语音预设

模型缓存在 ~/.cache/echogarden/ 供后续使用。

配置

织机已预先配置为使用Kokoro。不需要额外的设置。语音端点使用:

  • 发动机:Kokoro(离线,不需要API密钥)
  • 质量:24kHz采样率,声音自然
  • 语音:自动为检测到的语言选择合适的语音

测试语音合成

手动测试语音端点:

curl -X POST http://localhost:8080/api/voice \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello from Kokoro"}' \
  -o output.wav && open output.wav

用法

创建项目时,语音通知会通过SSE自动发送到仪表板:

  • 当您通过MCP创建任务时:“任务{title}已创建”
  • 当您通过MCP创建问题时:“创建了问题{title}”
  • 当您通过MCP创建目标时:“目标{title}已创建”
  • 当您通过MCP创建结果时:“创建了结果{title}”

用户可以使用扬声器图标切换语音通知(🔊/🔇) 在仪表板导航栏中。

发展

运行测试

go test ./...

建筑

go build -o loom

许可证

麻省理工学院

目录标签

目录标签

GoClaudeAI代理项目管理本地部署任务管理问题追踪目标追踪成果追踪语音通知

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

38

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP