首页
学习
活动
专区
圈层
工具
发布
MCP广场 >详情页
Dart MCP 服务器2026-04-04373分享添加福利群:解决AI开发者的「MCP实战痛点」
一个基于Dart的MCP服务器实现,通过标准化的工具和无缝的Dart集成,启用人工智能辅助的任务管理、文档处理和工作空间组织。
By jmanhype
2026-04-04373
github
详情内容

Dart MCP 服务器

smithery 徽章

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

Dart 服务器 MCP 服务器

前提条件

  • Node.js 16.x 或更高版本
  • Python 3.8 或更高版本
  • 安装了 Dart Python SDK (pip install dart-sdk)
  • 有效的 Dart API 令牌

功能

  • 任务管理
    • 创建和更新任务
    • 设置任务优先级和状态
    • 将任务分配给团队成员
  • 文档管理
    • 创建和组织文档
    • 支持 Markdown 内容
    • 生成报告
  • 空间管理
    • 创建和管理工作区
    • 使用文件夹组织内容
    • 控制访问权限
  • Dartboard 集成
    • 默认状态管理
    • 任务组织
    • 团队协作

安装

通过 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: 列出可用的 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),并带有“marketing”标签。

你可以使用 dart --help 或更具体的子命令帮助来探索所有这些选项和更多功能,在本例中为 dart createtask --help

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

dart updatetask [DUID] -s Done

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

使用 Python 库

首先,设置身份验证。在终端中运行 dart login 进行交互式过程,或者访问你的 Dart 个人资料,然后运行 dart.login(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 服务器

Model Context Protocol (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 工具:

  • 任务管理(创建/更新任务)
  • 文档管理(创建/组织文档)
  • 空间管理(工作区/文件夹)
  • Dartboard 集成

有关详细文档,请参阅 MCP 服务器 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 许可证。

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档