Skip to main content
Glama

Dart MCP 服务器

铁匠徽章

Dart 的模型上下文协议 (MCP) 服务器实现,通过 MCP 工具提供任务管理、文档处理和工作区组织功能。

先决条件

  • Node.js 16.x 或更高版本

  • Python 3.8 或更高版本

  • Dart Python SDK 已安装( pip install dart-sdk

  • 有效的 Dart API 令牌

Related MCP server: Dart MCP Server

特征

  • 任务管理

    • 创建和更新任务

    • 设置任务优先级和状态

    • 向团队成员分配任务

  • 文档管理

    • 创建和组织文档

    • 支持 Markdown 内容

    • 报告生成

  • 空间管理

    • 创建和管理工作区

    • 使用文件夹组织内容

    • 控制访问权限

  • 飞镖靶集成

    • 默认状态管理

    • 任务组织

    • 团队协作

安装

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 Dart MCP 服务器:

npx -y @smithery/cli install @jmanhype/dart-mcp-server --client claude

手动安装

  1. 克隆存储库:

git clone https://github.com/jmanhype/dart-mcp-server.git cd dart-mcp-server
  1. 安装 Node.js 依赖项:

npm install
  1. 设置 Python 环境并安装 Dart SDK:

# Create and activate virtual environment python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate # Install Dart SDK pip install dart-sdk
  1. 设置环境变量:

# Copy example environment file cp .env.example .env # Edit .env with your configuration # Required: DART_TOKEN # Optional: PYTHONPATH (path to dart sdk)

用法

  1. 构建 TypeScript 代码:

npm run build
  1. 启动 MCP 服务器:

npm start

发展

# Watch for TypeScript changes npm run dev # Run tests npm test

环境变量

使用以下变量创建.env文件:

# Required: Your Dart API token DART_TOKEN=your_dart_token_here # Optional: Path to your Dart SDK installation PYTHONPATH=/path/to/dart/sdk # Optional: Python executable path (defaults to system Python) PYTHON_PATH=/path/to/python

可用的 MCP 工具

  • create_task :创建具有标题、描述、优先级等的新任务。

  • update_task :更新现有任务的状态、标题、描述

  • get_default_status :获取默认状态 DUID

  • get_default_space :获取默认空间 DUID

  • get_dartboards :列出可用的飞镖靶

  • get_folders :列出空间中的文件夹

  • create_folder :创建新文件夹

  • create_doc :创建新文档或报告

  • create_space :创建新的工作区

  • delete_space :删除现有工作区

故障排除

如果您遇到问题:

  1. 验证 Python 环境:

    python --version pip list | grep dart
  2. 检查 Dart SDK 安装:

    python -c "import dart; print(dart.__version__)"
  3. 验证环境变量:

    echo $DART_TOKEN echo $PYTHONPATH

执照

MIT 许可证

Dart 工具

PyPI 支持的 Python 版本许可证

Dart 是由 AI 驱动的项目管理。

dart-tools是 Dart CLI 和 Python 库。它支持通过终端 CLI 或 Python 直接与 Dart 集成。

  • 安装

  • 使用 CLI

  • 使用 Python 库

  • 在 AWS Lambda 函数中使用 Python 库

  • 使用 MCP 服务器

  • 高级用法

  • 帮助和资源

  • 贡献

  • 执照

安装

在终端中,通过运行安装

pip install dart-tools

使用 CLI

首先设置身份验证

dart login

然后,你可以使用以下命令创建一个新任务

dart createtask "Update the landing page" -p0 --tag marketing

这将创建一项名为“更新登陆页面”的新任务,其优先级为“关键”(即 P0),标签为“营销”。

您可以使用dart --help或子命令的更具体帮助(在本例中dart createtask --help来探索所有这些选项以及更多选项。

另一个常见的工作流程是更新现有任务。为此,请运行类似

dart updatetask [DUID] -s Done

此命令会将引用的任务标记为“完成”。此处的[DUID] (包括括号)应替换为现有任务的“Dart ID”。您可以通过多种方式从任何现有任务获取 DUID,例如从任务 URL 末尾复制,或在 Dart 的任务页面中点击“...”按钮,然后选择“复制 ID”。

使用 Python 库

首先,设置身份验证。在终端中运行dart login进行交互,或者访问你的 Dart 配置文件,然后运行dart.login(token)或将 token 保存到DART_TOKEN环境变量中。

然后你可以运行类似

import os from dart import create_task, is_logged_in, update_task # Check that auth is set up and stop if not, can remove this once everything is set up is_logged_in(should_raise=True) # Create a new task called 'Update the landing page' with priority 'Critical' (i.e. p0) and with the 'marketing' tag new_task = create_task( "Update the landing page", priority_int=0, tag_titles=["marketing"] ) # Update the task to be 'Done' update_task(new_task.duid, status_title="Done")

使用 MCP 服务器

模型上下文协议 (MCP) 服务器实现使 AI 助手(例如 Claude)能够通过标准化工具与 Dart 进行交互。这使得 AI 功能能够与 Dart 的任务管理系统无缝集成。

安装

# Clone the repository git clone https://github.com/its-dart/dart-tools.git cd dart-tools/dart/mcp # Install dependencies npm install # Set up Python environment python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate pip install dart-tools # Configure environment cp .env.example .env # Edit .env with your DART_TOKEN

可用的 MCP 工具

该服务器提供以下 MCP 工具:

  • 任务管理(创建/更新任务)

  • 文档管理(创建/组织文档)

  • 空间管理(工作区/文件夹)

  • 飞镖靶集成

有关详细文档,请参阅MCP Server README

高级用法

Dart 能实现的几乎所有功能都能用 Python 库实现,但并非所有功能都有便捷的包装函数。对于大多数高级用法,最好的办法是联系我们,我们可以提供帮助。

但是,如果您想自行探索,客户端的类型已经很完善,您可以直接浏览代码,看看能实现哪些功能。所有更新都将通过dart.transact函数进行。

例如,你可以运行类似于update_task的操作

from dart import ( Dart, Operation, OperationKind, OperationModelKind, TaskUpdate, TransactionKind, ) # Initialize the inner client dart = Dart() # Prepare the update operation task_update = TaskUpdate( duid="[DUID]", size=5, ) task_update_op = Operation( model=OperationModelKind.TASK, kind=OperationKind.UPDATE, data=task_update, ) # Call the operation transactionally to perform the update response = dart.transact([task_update_op], TransactionKind.TASK_UPDATE)

帮助和资源

  • 主页

  • Web 应用程序

  • 帮助中心

  • 错误和功能

  • 图书馆来源

  • 在 Discord 上聊天

  • 请发送电子邮件至support@itsdart.com

贡献

欢迎贡献!请打开一个问题或提交一个拉取请求。

执照

该项目已获得 MIT 许可。

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jmanhype/dart-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server