AiDD MCP Server

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Supports code analysis using tree-sitter for C++ files (.cpp, .hpp, .cc)

  • Provides Git operations including repository initialization, status checking, adding files, resetting, checkout, commit, diff, and log viewing

  • Upcoming features include GitHub tools such as PR Description Generator, Code Review, and Actions Manager

SkyDeckAIコード

AI駆動型開発ワークフローのための包括的なツールセットを提供するMCPサーバー。ファイルシステム操作、複数のプログラミング言語に対応したtree-sitterを用いたコード分析、Git操作、コード実行、HTMLからMarkdownへの変換によるWebコンテンツの取得、マルチエンジンWeb検索、コードコンテンツ検索、Lint検出、システム情報取得などの機能を備えています。ローカルリソースとリモートリソースの両方に直接アクセスできるようにすることで、AIによるソフトウェア開発タスクの支援能力を強化するように設計されています。

以前は MCP-Server-AIDD として知られていました

このMCPサーバーは以前はmcp-server-aiddという名前でした。SkyDeck.aiのチームがEast Agileと共にこのアプリケーションを開発したことを記念して、 skydeckai-codeに改名されました。しかし、より重要なのは、AI駆動開発(AIDD)という用語まだ普及していないことに気づいたことです。人々は一目見ただけでは、それが何を意味するのか理解できませんでした。法学修士(LLM)も同様です。「コード」の方がはるかに直感的でした。そして、言語的に直感的であることは、エージェントAIの世界では重要です。

インストール

# Using pip pip install skydeckai-code

クロードデスクトップセットアップ

claude_desktop_config.jsonに追加します:

{ "mcpServers": { "skydeckai-code": { "command": "uvx", "args": ["skydeckai-code"] } } }

SkyDeck AIヘルパーアプリ

SkyDeck AI Helper アプリをご利用の場合は、「SkyDeckAI Code」を検索してインストールできます。

主な特徴

  • ファイルシステム操作(読み取り、書き込み、編集、移動、コピー、削除)
  • ディレクトリ管理とトラバーサル
  • tree-sitterを使った多言語コード解析
  • Python および JavaScript/TypeScript のコード リンティングと問題検出
  • 正規表現パターンマッチングによるコードコンテンツの検索
  • 安全対策を備えた多言語コード実行
  • Git 操作 (ステータス、差分、コミット、ブランチ管理、クローン)
  • HTML から Markdown への変換による API および Web サイトからの Web コンテンツの取得
  • 信頼性の高いフォールバックメカニズムを備えたマルチエンジンウェブ検索
  • 並列およびシリアルツール実行のためのバッチ操作
  • 設定可能なワークスペース境界によるセキュリティ制御
  • スクリーンショットと画面コンテキストツール
  • 画像処理ツール

利用可能なツール

基本的なファイル操作

道具パラメータ返品
読み取りファイルパス: 文字列、オフセット?: 整数、制限?: 整数ファイルの内容(全体または一部)
複数のファイルを読み取るパス: 文字列[]ヘッダー付きの複数のファイルコンテンツ
書き込みファイルパス: 文字列、コンテンツ: 文字列成功確認
ファイルの移行ソース: 文字列、宛先: 文字列成功確認
コピーファイルソース: 文字列、宛先: 文字列、再帰?: ブール値成功確認
ファイルを削除パス: 文字列成功確認
ファイル情報を取得するパス: 文字列ファイルのメタデータ(サイズ、タイムスタンプ、権限)

一般的な使用法:

# Read entire file skydeckai-code-cli --tool read_file --args '{"path": "src/main.py"}' # Read 10 lines starting from line 20 skydeckai-code-cli --tool read_file --args '{"path": "src/main.py", "offset": 20, "limit": 10}' # Read from line 50 to the end of the file skydeckai-code-cli --tool read_file --args '{"path": "src/main.py", "offset": 50}' # Write file skydeckai-code-cli --tool write_file --args '{"path": "output.txt", "content": "Hello World"}' # Copy file or directory skydeckai-code-cli --tool copy_file --args '{"source": "config.json", "destination": "config.backup.json"}' # Get file info skydeckai-code-cli --tool get_file_info --args '{"path": "src/main.py"}'

複雑なファイル操作

編集ファイル

プレビューをサポートするパターンベースのファイル編集:

{ "path": "src/main.py", "edits": [ { "oldText": "def old_function():", "newText": "def new_function():" } ], "dryRun": false, "options": { "partialMatch": true } }

戻り値: 変更の差分またはドライ ラン モードでのプレビュー。

ディレクトリ操作

道具パラメータ返品
許可されたディレクトリを取得するなし現在許可されているディレクトリパス
更新が許可されたディレクトリディレクトリ: 文字列 (絶対パス)成功確認
リストディレクトリパス: 文字列ディレクトリ内容リスト
ディレクトリの作成パス: 文字列成功確認
検索ファイルパターン: 文字列、パス?: 文字列、include_hidden?: ブール値一致するファイルリスト

search_filesツールは名前のパターンでファイルを検索し、 search_codeツールは正規表現を使用してファイルの内容を検索します。特定の名前または拡張子を持つファイルを検索する場合はsearch_filesを使用し、ファイル内の特定のテキストパターンを検索する場合はsearch_code使用します。

ディレクトリツリー

完全なディレクトリ構造を生成します:

{ "path": "src", "include_hidden": false }

戻り値: ディレクトリの内容の JSON ツリー構造。

一般的な使用法:

# List directory skydeckai-code-cli --tool list_directory --args '{"path": "."}' # Search for Python files skydeckai-code-cli --tool search_files --args '{"pattern": ".py", "path": "src"}'

Git操作

道具パラメータ返品
git_initパス: 文字列、initial_branch?: 文字列リポジトリの初期化ステータス
git_ステータスrepo_path: 文字列作業ディレクトリのステータス
git_addrepo_path: 文字列、ファイル: 文字列[]ステージングの確認
git_resetrepo_path: 文字列ステージング解除の確認
git_checkoutrepo_path: 文字列、branch_name: 文字列ブランチスイッチの確認
git_create_branchrepo_path: 文字列、branch_name: 文字列ブランチ作成の確認
git_cloneurl: 文字列、target_path: 文字列、branch?: 文字列クローンの確認
git_diff_unstagedrepo_path: 文字列ステージングされていない変更の差分
git_diff_stagedrepo_path: 文字列ステージングされた変更の差分
git_showrepo_path: 文字列、commit_hash: 文字列特定のコミットの詳細

複雑なGit操作

git_commit
{ "repo_path": ".", "message": "feat: add new feature" }

戻り値: コミット ハッシュと確認。

git_diff
{ "repo_path": ".", "target": "main" }

戻り値: 現在のブランチと指定されたターゲット ブランチまたはコミット間のすべての変更を表示する詳細な diff 出力。

git_log
{ "repo_path": ".", "max_count": 10 }

戻り値: ハッシュ、作成者、日付、メッセージを含むコミット エントリの配列。

一般的な使用法:

# Check status skydeckai-code-cli --tool git_status --args '{"repo_path": "."}' # Clone a repository skydeckai-code-cli --tool git_clone --args '{"url": "https://github.com/username/repo.git", "target_path": "repo"}' # Create and switch to new branch skydeckai-code-cli --tool git_create_branch --args '{"repo_path": ".", "branch_name": "feature/new-branch"}'

コード分析

コードベースマッパー

ソースコード構造を分析します:

{ "path": "src" }

戻り値:

  • クラスとそのメソッド
  • 関数とパラメータ
  • モジュール構造
  • コード構成統計
  • 相続関係

サポートされている言語:

  • Python (.py)
  • JavaScript (.js、.jsx、.mjs、.cjs)
  • TypeScript (.ts、.tsx)
  • Java (.java)
  • C++ (.cpp、.hpp、.cc)
  • Ruby (.rb、.rake)
  • ゴー(.go)
  • Rust (.rs)
  • PHP (.php)
  • C# (.cs)
  • Kotlin (.kt、.kts)

チェックリント

ネイティブ リンティング ツールを使用して、コードベース内のリンティングの問題を確認します。

{ "path": "src", "languages": ["python", "javascript"], "linters": { "pylint": "--disable=C0111", "flake8": true, "eslint": "--fix" }, "max_issues": 100 }

パラメータ:

パラメータタイプ必須説明
パスいいえリンティングするディレクトリまたはファイル (デフォルト: ".")
言語配列いいえリンティングする言語のリスト(空の場合は自動検出)
リンター物体いいえ特定のリンターの設定 - ブール値または CLI 引数を使用できます
最大発行数整数いいえ返される問題の最大数(デフォルト: 100、無制限の場合は 0)

**戻り値:**コードベースで見つかったリンティングの問題に関する詳細なレポート(ファイルパス、行番号、問題の説明、重大度レベルを含む)が返されます。問題はファイルごとにグループ化され、重大度順に並べられます。

サポートされている言語とリンター:

  • Python: pylint、flake8 (利用可能なものを自動的に使用)
  • JavaScript/TypeScript: ESLint
  • Dart/Flutter: dart_analyze (コンパイルエラーも報告)

使用例:

# Check entire codebase with default settings skydeckai-code-cli --tool check_lint # Check specific directory with custom pylint flags skydeckai-code-cli --tool check_lint --args '{ "path": "src", "linters": { "pylint": "--disable=missing-docstring,invalid-name" } }' # Check only Python files and disable flake8 skydeckai-code-cli --tool check_lint --args '{ "path": "src", "languages": ["python"], "linters": { "flake8": false } }' # Check Dart/Flutter files for linting and compilation errors skydeckai-code-cli --tool check_lint --args '{ "path": "lib", "languages": ["dart"], "linters": { "dart_analyze": "--fatal-infos" } }'

検索コード

正規表現を使用した高速コンテンツ検索ツール:

{ "pattern": "function\\s+\\w+", "include": "*.js", "exclude": "node_modules/**", "max_results": 50, "case_sensitive": false, "path": "src" }

パラメータ:

パラメータタイプ必須説明
パターンはいファイルの内容を検索するための正規表現パターン
含むいいえ含めるファイルパターン (glob 構文、デフォルト: "*")
除外するいいえ除外するファイルパターン(glob構文、デフォルト: "")
最大結果数整数いいえ返される結果の最大数(デフォルト: 100)
大文字と小文字を区別ブール値いいえ検索で大文字と小文字を区別するかどうか(デフォルト: false)
パスいいえ検索するベースディレクトリ (デフォルト: ".")

**戻り値:**一致する行をファイルごとに行番号付きでグループ化し、ファイルの変更時刻で並べ替えて、最新のファイルを先頭にします。

このツールは、最適なパフォーマンスを得るために、利用可能な場合は ripgrep を使用し、Python フォールバック実装を備えています。関数の宣言、インポート、変数の使用、エラー処理など、特定のコードパターンを見つけるのに最適です。

使用例:

# Find function declarations in JavaScript files skydeckai-code-cli --tool search_code --args '{ "pattern": "function\\s+\\w+", "include": "*.js" }' # Find all console.log statements with errors skydeckai-code-cli --tool search_code --args '{ "pattern": "console\\.log.*[eE]rror", "path": "src" }' # Find import statements in TypeScript files skydeckai-code-cli --tool search_code --args '{ "pattern": "import.*from", "include": "*.{ts,tsx}", "exclude": "node_modules/**" }'

システム情報

道具パラメータ返品
システム情報を取得するなし包括的なシステムの詳細

戻り値:

{ "working_directory": "/path/to/project", "system": { "os", "os_version", "architecture", "python_version" }, "wifi_network": "MyWiFi", "cpu": { "physical_cores", "logical_cores", "total_cpu_usage" }, "memory": { "total", "available", "used_percentage" }, "disk": { "total", "free", "used_percentage" }, "mac_details": { // Only present on macOS "model": "Mac mini", "chip": "Apple M2", "serial_number": "XXX" } }

重要なシステム情報を、わかりやすく読みやすい形式で提供します。

# Get system information skydeckai-code-cli --tool get_system_info

画面コンテキストと画像ツール

アクティブアプリを取得する

ユーザーのシステム上で現在アクティブなアプリケーションのリストを返します。

{ "with_details": true }

パラメータ:

パラメータタイプ必須説明
詳細付きブール値いいえ各アプリケーションに関する追加の詳細を含めるかどうか(デフォルト: false)

戻り値:

{ "success": true, "platform": "macos", "app_count": 12, "apps": [ { "name": "Firefox", "has_windows": true, "window_count": 3, "visible_windows": [ { "name": "GitHub - Mozilla Firefox", "width": 1200, "height": 800 } ] }, { "name": "VSCode", "has_windows": true } ] }

このツールは、ユーザーのシステムで現在実行されているアプリケーションに関する貴重なコンテキストを提供し、より関連性の高いサポートを提供するのに役立ちます。

利用可能なウィンドウを取得する

現在ユーザーの画面に表示されているすべての利用可能なウィンドウに関する詳細情報を返します。

{}

戻り値:

{ "success": true, "platform": "macos", "count": 8, "windows": [ { "id": 42, "title": "Document.txt - Notepad", "app": "Notepad", "visible": true }, { "title": "Terminal", "app": "Terminal", "visible": true, "active": true } ] }

このツールは、ユーザーの画面に表示されている内容を理解するのに役立ち、コンテキスト認識型の支援に使用できます。

キャプチャスクリーンショット

ユーザーの画面または特定のウィンドウのスクリーンショットをキャプチャします。

{ "output_path": "screenshots/capture.png", "capture_mode": { "type": "named_window", "window_name": "Visual Studio Code" } }

パラメータ:

パラメータタイプ必須説明
出力パスいいえスクリーンショットを保存するパス(デフォルト:生成されたパス)
キャプチャモード物体いいえキャプチャする内容を指定する
キャプチャモードタイプいいえスクリーンショットの種類: 'full'、'active_window'、または 'named_window' (デフォルト: 'full')
キャプチャモード.ウィンドウ名いいえキャプチャするウィンドウの名前(タイプが「named_window」の場合は必須)

戻り値:

{ "success": true, "path": "/path/to/screenshots/capture.png" }

このツールは、視覚化、デバッグ、またはコンテキスト認識の支援のためにスクリーンショットをキャプチャします。

画像ファイルの読み取り

ファイル システムからイメージ ファイルを読み取り、その内容を base64 でエンコードされた文字列として返します。

{ "path": "images/logo.png" }

パラメータ:

パラメータタイプ必須説明
パスはい読み込む画像ファイルへのパス
最大サイズ整数いいえ最大ファイルサイズ(バイト単位)(デフォルト:100MB)

**戻り値:**表示または処理できる Base64 でエンコードされた画像データ。

このツールは、PNG、JPEG、GIF、WebP などの一般的な画像形式をサポートし、最適な表示のために画像のサイズを自動的に変更します。

ウェブツール

ウェブフェッチ

URL からコンテンツを取得し、オプションでファイルに保存します。

{ "url": "https://api.github.com/users/octocat", "headers": { "Accept": "application/json" }, "timeout": 15, "save_to_file": "downloads/octocat.json", "convert_html_to_markdown": true }

パラメータ:

パラメータタイプ必須説明
URLはいコンテンツを取得する URL (http/https のみ)
ヘッダー物体いいえリクエストに含めるオプションのHTTPヘッダー
タイムアウト整数いいえ応答を待つ最大時間(デフォルト: 10秒)
ファイルに保存いいえ応答コンテンツを保存するパス(許可されたディレクトリ内)
HTMLからマークダウンへの変換ブール値いいえtrue の場合、読みやすさを向上させるために HTML コンテンツをマークダウンに変換します (デフォルト: true)

戻り値: HTTPステータスコードとサイズ情報を含むテキスト形式のレスポンスコンテンツ。バイナリコンテンツの場合はメタデータを返し、要求に応じてファイルに保存します。convert_html_to_markdown が有効な場合、HTMLコンテンツは読みやすさを向上させるために自動的にマークダウン形式に変換されます。

このツールを使用すると、サイズ制限 (最大 10 MB) とセキュリティ制約を遵守しながら、Web API にアクセスしたり、ドキュメントを取得したり、Web からコンテンツをダウンロードしたりできます。

使用例:

# Fetch JSON from an API skydeckai-code-cli --tool web_fetch --args '{ "url": "https://api.github.com/users/octocat", "headers": {"Accept": "application/json"} }' # Download content to a file skydeckai-code-cli --tool web_fetch --args '{ "url": "https://github.com/github/github-mcp-server/blob/main/README.md", "save_to_file": "downloads/readme.md" }' # Fetch a webpage and convert to markdown for better readability skydeckai-code-cli --tool web_fetch --args '{ "url": "https://example.com", "convert_html_to_markdown": true }'

ウェブ検索

複数の検索エンジンを使用して強力な Web 検索を実行し、簡潔で関連性の高い結果を返します。

{ "query": "latest python release features", "num_results": 8, "convert_html_to_markdown": true, "search_engine": "bing" }

パラメータ:

パラメータタイプ必須説明
クエリはい処理する検索クエリ。より良い結果を得るには、具体的に入力してください。
結果数整数いいえ返される検索結果の最大数(デフォルト: 10、最大: 20)
HTMLからマークダウンへの変換ブール値いいえtrue の場合、コンテンツは読みやすさを向上させるために HTML からマークダウンに変換されます (デフォルト: true)
検索エンジンいいえ使用する検索エンジンを指定します:「auto」(デフォルト)、「bing」、または「duckduckgo」

戻り値: Markdown形式でフォーマットされた検索結果のリスト(各結果のタイトル、URL、スニペットを含む)が返されます。結果は重複が排除され、読みやすいように階層的に整理されています。

このツールは、信頼性の高い結果を得るために、様々な検索エンジンを様々な解析戦略で試行するマルチエンジンアプローチを採用しています。優先エンジンを指定することもできますが、一部のエンジンでは自動アクセスがブロックされる場合があります。その場合、「自動」を選択すると、ツールは代替エンジンにフォールバックします。

使用例:

# Search with default settings (auto engine selection) skydeckai-code-cli --tool web_search --args '{ "query": "latest python release features" }' # Try DuckDuckGo if you want alternative results skydeckai-code-cli --tool web_search --args '{ "query": "machine learning frameworks comparison", "search_engine": "duckduckgo" }' # Use Bing for reliable results skydeckai-code-cli --tool web_search --args '{ "query": "best programming practices 2023", "search_engine": "bing" }'

ユーティリティツール

バッチツール

可能な場合は並列実行を使用して、単一のリクエストで複数のツール呼び出しを実行します。

{ "description": "Setup new project", "sequential": true, "invocations": [ { "tool": "create_directory", "arguments": { "path": "src" } }, { "tool": "write_file", "arguments": { "path": "README.md", "content": "# New Project\n\nThis is a new project." } }, { "tool": "git_init", "arguments": { "path": ".", "initial_branch": "main" } } ] }

パラメータ:

パラメータタイプ必須説明
説明はいバッチ操作の簡単な説明
一連ブール値いいえツールを順番に実行するかどうか(デフォルト: false)
呼び出し配列はい実行するツール呼び出しのリスト
呼び出し[].ツールはい呼び出すツールの名前
呼び出し[].引数物体はい指定されたツールの引数

**戻り値:**すべてのツール呼び出しの結果を結合し、ツールごとにグループ化して、それぞれの成功/エラーステータスを表示します。結果は、明確なセクションヘッダーとともに、元の呼び出し順序で表示されます。

このツールは、単一のリクエストで複数の操作を効率的に実行します。sequential がsequential (デフォルト)の場合、ツールは並列実行され、パフォーマンスが向上します。sequential がsequentialの場合、ツールは順番に実行され、いずれかのツールが失敗した場合は実行が停止されます。

重要:バッチ内のすべてのツールは同じ作業ディレクトリコンテキストで実行されます。あるツールがディレクトリを作成し、後続のツールがそのディレクトリ内で動作する必要がある場合は、次のいずれかを実行する必要があります。

  1. 現在の作業ディレクトリからの相対パスを使用する(例:単に「src」ではなく「project/src」)か、
  2. update_allowed_directoryを使用してディレクトリを変更するための明示的なツール呼び出しを含める

使用例:

# Setup a new project with multiple steps in sequential order (using proper paths) skydeckai-code-cli --tool batch_tools --args '{ "description": "Setup new project", "sequential": true, "invocations": [ {"tool": "create_directory", "arguments": {"path": "project"}}, {"tool": "create_directory", "arguments": {"path": "project/src"}}, {"tool": "write_file", "arguments": {"path": "project/README.md", "content": "# Project\n\nA new project."}} ] }' # Create nested structure using relative paths (without changing directory) skydeckai-code-cli --tool batch_tools --args '{ "description": "Create project structure", "sequential": true, "invocations": [ {"tool": "create_directory", "arguments": {"path": "project/src"}}, {"tool": "create_directory", "arguments": {"path": "project/docs"}}, {"tool": "write_file", "arguments": {"path": "project/README.md", "content": "# Project"}} ] }' # Gather system information and take a screenshot (tasks can run in parallel) skydeckai-code-cli --tool batch_tools --args '{ "description": "System diagnostics", "sequential": false, "invocations": [ {"tool": "get_system_info", "arguments": {}}, {"tool": "capture_screenshot", "arguments": { "output_path": "diagnostics/screen.png", "capture_mode": { "type": "full" } }} ] }'

考える

リポジトリに変更を加えずに複雑な推論やブレインストーミングを行うためのツール。

{ "thought": "Let me analyze the performance issue in the codebase:\n\n## Root Cause Analysis\n\n1. The database query is inefficient because:\n - It doesn't use proper indexing\n - It fetches more columns than needed\n - The JOIN operation is unnecessarily complex\n\n## Potential Solutions\n\n1. **Add database indexes**:\n - Create an index on the user_id column\n - Create a composite index on (created_at, status)\n\n2. **Optimize the query**:\n - Select only necessary columns\n - Rewrite the JOIN using a subquery\n - Add LIMIT clause for pagination\n\n3. **Add caching layer**:\n - Cache frequent queries using Redis\n - Implement cache invalidation strategy\n\nAfter weighing the options, solution #2 seems to be the simplest to implement with the highest impact." }

パラメータ:

パラメータタイプ必須説明
考えはいあなたの詳細な思考、分析、推論のプロセス

**戻り値:**あなたの考えはマークダウン形式で、これが思考練習であったことを示すメモとともに返されます。

このツールは、複雑な問題をじっくり考えたり、解決策をブレインストーミングしたり、実際に変更を加えることなく実装計画を立てたりするのに役立ちます。推論プロセスを文書化したり、複数のアプローチを評価したり、行動を起こす前に段階的な戦略を計画したりするのに最適な方法です。

使用例:

# Analyze a bug and plan a fix skydeckai-code-cli --tool think --args '{ "thought": "# Bug Analysis\n\n## Observed Behavior\nThe login endpoint returns a 500 error when email contains Unicode characters.\n\n## Root Cause\nThe database adapter is not properly encoding Unicode strings before constructing the SQL query.\n\n## Potential Fixes\n1. Update the database adapter to use parameterized queries\n2. Add input validation to reject Unicode in emails\n3. Encode email input manually before database operations\n\nFix #1 is the best approach as it solves the core issue and improves security." }' # Evaluate design alternatives skydeckai-code-cli --tool think --args '{ "thought": "# API Design Options\n\n## REST vs GraphQL\nFor this use case, GraphQL would provide more flexible data fetching but adds complexity. REST is simpler and sufficient for our current needs.\n\n## Authentication Methods\nJWT-based authentication offers stateless operation and better scalability compared to session-based auth.\n\nRecommendation: Use REST with JWT authentication for the initial implementation." }'

コード実行

実行コード

安全対策と制限を伴い、さまざまなプログラミング言語でコードを実行します。

{ "language": "python", "code": "print('Hello, World!')", "timeout": 5 }

サポートされている言語:

  • Python(python3)
  • JavaScript(Node.js)
  • ルビー
  • PHP
  • 行く
  • さび

パラメータ:

パラメータタイプ必須説明
言語はい使用するプログラミング言語
コードはい実行するコード
タイムアウト整数いいえ最大実行時間(デフォルト:5秒)

使用例:

# Python example skydeckai-code-cli --tool execute_code --args '{ "language": "python", "code": "print(sum(range(10)))" }' # JavaScript example skydeckai-code-cli --tool execute_code --args '{ "language": "javascript", "code": "console.log(Array.from({length: 5}, (_, i) => i*2))" }' # Ruby example skydeckai-code-cli --tool execute_code --args '{ "language": "ruby", "code": "puts (1..5).reduce(:+)" }' # Go example skydeckai-code-cli --tool execute_code --args '{ "language": "go", "code": "fmt.Println(\"Hello, Go!\")" }'

要件:

  • それぞれの言語ランタイムをインストールする必要があります
  • コマンドはシステムPATHで利用可能である必要があります
  • 一時ファイル作成のための適切な権限

⚠️**セキュリティ警告:**このツールはシステム上で任意のコードを実行します。常に以下の点に注意してください。

  1. 実行前にコードを徹底的にレビューする
  2. コードの目的と期待される結果を理解する
  3. 信頼できないコードを実行しない
  4. 潜在的なシステムへの影響に注意する
  5. 実行出力を監視する

シェルスクリプトの実行

安全対策と制限を伴ってシェル スクリプト (bash/sh) を実行します。

{ "script": "echo \"Current directory:\" && pwd", "timeout": 300 }

パラメータ:

パラメータタイプ必須説明
スクリプトはい実行するシェルスクリプト
タイムアウト整数いいえ最大実行時間(デフォルト: 300秒、最大: 600秒)

使用例:

# List directory contents with details skydeckai-code-cli --tool execute_shell_script --args '{ "script": "ls -la" }' # Find all Python files recursively skydeckai-code-cli --tool execute_shell_script --args '{ "script": "find . -name \"*.py\" -type f" }' # Complex script with multiple commands skydeckai-code-cli --tool execute_shell_script --args '{ "script": "echo \"System Info:\" && uname -a && echo \"\nDisk Usage:\" && df -h" }'

特徴:

  • システム間の互換性を最大限に高めるために /bin/sh を使用します
  • 許可されたディレクトリ内で実行
  • stdoutとstderr出力を分離する
  • 適切なエラー処理とタイムアウト制御

⚠️**セキュリティ警告:**このツールはシステム上で任意のシェルコマンドを実行します。常に以下の点に注意してください。

  1. 実行前にスクリプトを徹底的に確認する
  2. スクリプトの目的と期待される結果を理解する
  3. 信頼できないスクリプトを実行しない
  4. 潜在的なシステムへの影響に注意する
  5. 実行出力を監視する

構成

設定ファイル: ~/.skydeckai_code/config.json

{ "allowed_directory": "/path/to/workspace" }

CLI の使用法

基本的なコマンド構造:

skydeckai-code-cli --tool <tool_name> --args '<json_arguments>' # List available tools skydeckai-code-cli --list-tools # Enable debug output skydeckai-code-cli --debug --tool <tool_name> --args '<json_arguments>'

デバッグ

デバッグには MCP Inspector を使用します。

npx @modelcontextprotocol/inspector run

安全

  • 設定された許可されたディレクトリに制限された操作
  • パストラバーサル防止
  • ファイル権限の保持
  • 安全な操作手順

今後の機能

  • GitHub ツール:
    • PR説明ジェネレータ
    • コードレビュー
    • アクションマネージャー
  • Pivotal Tracker ツール:
    • ストーリージェネレーター
    • ストーリーマネージャー

開発状況

現在開発中です。機能と API は変更される可能性があります。

ライセンス

Apache License 2.0 -ライセンスを参照

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

AiDD MCP サーバーは、AI エージェントがファイル システム操作とコード分析を実行するための安全なインターフェイスを提供し、複数のプログラミング言語にわたる AI 支援開発ワークフローを強化します。

  1. Formerly Known As MCP-Server-AIDD
    1. Installation
    2. Claude Desktop Setup
    3. SkyDeck AI Helper App
    4. Key Features
    5. Available Tools
    6. Configuration
    7. CLI Usage
    8. Debugging
    9. Security
    10. Upcoming Features
    11. Development Status
    12. License
ID: mpixtij6se