mcpField
D
Dart MCP Server

Dart MCP Server

ローカル
github.com/jmanhype生産性531 週間前に更新

Dart MCP Server について

Dart MCP Serverは、Dartのタスク、ドキュメント、スペース、dartboardの操作をAIアシスタントに提供します。Pythonサブプロセス経由でDart SDKを呼び出し、stdioでMCPクライアントと通信します。

主な機能

  1. 01タスクの作成と更新
  2. 02dartboardと既定ステータスの確認
  3. 03フォルダーの一覧表示と作成
  4. 04ドキュメントとスペースの作成
  5. 05スペースの削除

活用シーン

  1. 01Dartのタスクの作成や変更
  2. 02スペースとdartboardの情報確認
  3. 03プロジェクト文書やレポートの作成
  4. 04ワークスペースとフォルダーの管理

MCP 対応

MCPサーバーとして、Dartのタスク、ドキュメント、スペース、dartboardを操作するツールをクライアントにstdioで提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"dart-mcp-server-jmanhype": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
起動コマンドnpx -y @smithery/cli

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@smithery/cli

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

dart-mcp-server

smithery badge

Dart プロジェクト管理プラットフォームと AI アシスタントを連携する MCP サーバーです。サーバーは TypeScript で実装されていますが、すべての Dart API 呼び出しは dart-sdk パッケージを使用する Python サブプロセスに委譲します。

機能

Dart のタスク管理、ドキュメント、スペース、dartboard の操作を MCP ツールとして公開します。各ツール呼び出しでは Python プロセスを起動し、dart-sdk をインポートして操作を実行し、stdout 経由で JSON の結果を返します。MCP クライアントとは stdio で通信します。

ステータス

項目状態
MCP トランスポートstdio
言語TypeScript(サーバー)+ Python(Dart SDK の呼び出し)
MCP SDK@modelcontextprotocol/sdk ^1.5.0
Dart SDKdart-sdk(pip、サブプロセス経由で呼び出し)
Node.js>= 16.0.0
Python>= 3.8.0
ライセンスMIT

MCP ツール

ツール機能
create_taskタイトル、説明、優先度、ステータス、担当者、タグを指定してタスクを作成します
update_taskDUID を指定して、既存タスクのステータス、タイトル、説明を更新します
get_default_statusdartboard のデフォルトのステータス DUID を返します
get_default_spaceデフォルトのスペース DUID を返します
get_dartboards利用可能な dartboard を一覧表示します
get_foldersスペース内のフォルダーを一覧表示します
create_folder新しいフォルダーを作成します
create_docドキュメントまたはレポートを作成します
create_space新しいワークスペースを作成します
delete_spaceDUID を指定してワークスペースを削除します

セットアップ

Smithery 経由
npx -y @smithery/cli install @jmanhype/dart-mcp-server --client claude
手動
git clone https://github.com/jmanhype/dart-mcp-server.git
cd dart-mcp-server
npm install          # also runs postinstall: creates .venv and pip installs dart-sdk
npm run build
npm start
環境変数
変数必須説明
DART_TOKENはいDart API トークン(Dart プロフィールから取得)
PYTHONPATHいいえデフォルトの場所にない場合の Dart SDK のパス
PYTHON_PATHいいえPython 実行ファイルのパス(デフォルトはシステムの Python)
Python 環境の確認
python -c "import dart; print(dart.__version__)"

この確認に失敗すると、MCP サーバーはどのツールも実行できません。

アーキテクチャ

src/
  index.ts  — MCP server, tool handlers, Python subprocess management
  test.ts   — Basic test runner

各ツールハンドラーは Python スクリプトを文字列として構築し、python3 -c "<script>" を実行して、JSON 出力を解析します。Python プロセスのタイムアウトは 120 秒です。

制限事項

  • ツールを呼び出すたびに新しい Python プロセスを起動します(Dart API への永続的な接続はありません)
  • ソース内の .env のパスは /Users/speed/dart-tools/.env にハードコードされています
  • 入力検証は Dart SDK が提供するもの以外ありません
  • リスト操作でのページネーションには対応していません
  • Python サブプロセスのエラーメッセージはそのまま渡されます
  • postinstall スクリプトは仮想環境を作成しますが、一部の CI 環境では失敗する可能性があります

依存関係

パッケージバージョン用途
@modelcontextprotocol/sdk^1.5.0MCP サーバープロトコル
dotenv^16.4.7環境変数の読み込み
typescript^5.3.3ビルドツールチェーン
dart-sdk(pip)Dart API 用の Python クライアント

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。