mcpField
L
Laraue Boards

Laraue Boards

远程服务
boards.laraue.com生产力01 天前更新

关于 Laraue Boards

Laraue Boards 是一款类似 Jira 的任务管理系统后端。它通过组织、空间、Epic 和议题组织工作,并支持灵活的权限设置和议题历史记录。

主要功能

  1. 01创建和管理议题
  2. 02在议题中发表评论
  3. 03查看议题历史
  4. 04配置组织和空间权限
  5. 05生成 AI 内容摘要

适用场景

  1. 01跨空间管理任务和议题
  2. 02查看议题的变更记录
  3. 03设置组织实体的访问规则
  4. 04在应用中生成 AI 内容摘要

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://boards.laraue.com/boards-mcp/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://boards.laraue.com/boards-mcp/mcp需要授权

工具

详细介绍

Laraue.Apps.Boards

此仓库包含一个类似 Jira 的任务管理系统的后端。

界面示例

image

应用结构

Laraue.Apps.Boards.DataAccess

包含模型及其相关枚举的层

Laraue.Apps.Boards.Services

使用其他服务的服务层。用于封装主要在 CRD 操作中的复杂逻辑。
例如:创建 issue 时,可能会更新 updated_at 属性、向历史记录添加条目等。
因此,该服务提供了创建 issue 的方法。

**注意:**核心服务不应管理事务,但可以要求调用方在函数顶部调用 context.Database.EnsureTransaction。

Laraue.Apps.Boards.WebApiServices

供 WebApi 调用的服务

Laraue.Apps.Boards.TelegramServices

供 TelegramApi 调用的服务

本地运行

请查看前端仓库,了解如何处理前端。

每个主机都会读取自己的 appsettings.Development.json(已被 git 忽略,而非已提交到仓库的 appsettings.json)来设置本地覆盖项。下面是一个最精简的配置示例,适用于 Laraue.Apps.Boards.WebApiHost,可连接本地 Postgres,且不依赖 Identity/Billing(AI 摘要仍 默认使用本地 Ollama 实例,见下文):

{
  "Auth": {
    "Key": "any-local-signing-key"
  },
  "MockExternalServices": true
}

Laraue.Apps.Boards.TelegramHost 只需要配置 MockExternalServices 这一行(它需要设置自己的 Telegram:Token,而不是 Auth:Key)。各设置的作用,以及如何改为连接真实的 AI/Identity/Billing 实例,请参阅下文的各个小节。

AI 内容摘要(本地开发)

appsettings.json 中的 AiSummarizer 部分默认使用本地 Ollama 实例,因为 Ollama 提供兼容 OpenAI 的 /v1/chat/completions 端点,而摘要器可以调用任何兼容 OpenAI 的 API。安装 Ollama,然后拉取配置中引用的模型:

ollama pull gemma3:12b

安装后,Ollama 默认在 http://localhost:11434 提供服务。较小的本地模型有时会漏掉 JSON 回复中的字段, 因此 appsettings.Development.json 会启用 AiSummarizer:UseJsonSchema:这样回复会受到 JSON Schema 的约束(response_format: json_schema,Ollama 支持此功能)。对于只支持普通 JSON 模式的提供商(如 DeepSeek),请关闭此设置。生产环境中,请覆盖 AiSummarizer:BaseUrl/AiSummarizer:Model/AiSummarizer:ApiKey,以连接真实的提供商 (例如 DeepSeek)。

不运行 Identity/Billing

Boards 通过 gRPC 调用另外两个服务:Laraue.Apps.Identity(首次登录时提供全局用户身份)和 Laraue.Apps.Billing(AI token 使用量/订阅限额)。本地无需运行这两个服务——两个主机的 appsettings.Development.json 都设置了 "MockExternalServices": true,这会为这些调用换成本地进程内的模拟实现 (始终成功、固定的宽松限额,不产生网络流量),而不是使用真实的 gRPC 客户端。如果确实想要 调用本地运行的 Identity/Billing 实例,请将其设回 false。

为测试创建新用户

POST: http://localhost:5200/api/test/user

{
    "username": "winDiezel",
    "languageCode": "ru",
    "firstName": null,
    "lastName": null
}
在测试环境中以用户身份进行身份验证

发送 GET 请求 http://localhost:5200/api/test/user/{userId} 以获取 bearer token。
将其设置在前端的 .env 文件中:

NUXT_PUBLIC_TEST_USER_TOKEN=Taken_Token

权限架构

应用权限分为两部分:

  1. 实体权限。用于设置对组织空间、史诗和 issue 的访问权限
    1. 组织级别。一次性为所有实体设置权限。
    2. 可分别灵活设置各个空间的权限。可以与组织级别的权限组合使用。
  2. 管理权限。用于设置对重命名组织等管理操作的访问权限。

评论

支持 Markdown

第一次接触 MCP?

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

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