ask-mcp について
ask-mcpは、Light Protocol、Solana開発、Claude Code、Agent Skillsに関する技術調査スキルです。ローカルファイルの確認とDeepWikiへの問い合わせを組み合わせ、根拠を示した正確な回答を重視します。
主な機能
- 01DeepWikiでリポジトリを調査
- 02Glob、Grep、Readでローカルファイルを確認
- 03Taskサブエージェントで並行調査
- 04技術的な参照情報を付けて回答
活用シーン
- 01Light Protocolの実装に関する疑問を調査
- 02Claude Codeのコマンドや設定を確認
- 03SolanaプログラムとクライアントSDKを調査
MCP 対応
DeepWiki MCPを使い、公開リポジトリの構造や内容を確認し、技術的な質問を検索します。リポジトリの情報収集にはmcp__zkcompression__SearchLightProtocolも参照します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ lightprotocol/ skills --skill ask-mcpインストール後、Claude Code で/ask-mcpを入力して読み込まれたか確認します。
詳細
DeepWiki リサーチ
DeepWiki MCP を介してリポジトリに問い合わせ、技術的な質問に対して、正確でソースに裏付けられた回答を得ます。
ワークフロー
- 質問を理解する
- ユーザーの質問内容と、該当する分野を特定します
- 質問が曖昧な場合は、こちらの理解を伝えて確認を求めます
- コンテキストを収集する
- 質問を以下の実行手順に当てはめます
Glob、Grep、Readを使用して、関連するローカルファイルを探します- DeepWiki MCP(
mcp__deepwiki__ask_question)とmcp__zkcompression__SearchLightProtocolに問い合わせ、リポジトリレベルのコンテキストを収集します - 必要に応じて
Taskサブエージェントを使用し、複数のリポジトリを並行して調査します
- 統合して回答する
実行手順
1. ローカルリポジトリで必要なコンテキストを読む
Glob と Grep を使用して、現在のリポジトリ内の関連ファイルを探します。Read を使用して、回答に必要な特定の内容を読み込みます。
2. 質問の範囲を特定する
分野を判断します:
- プログラム、クライアント SDK、アーキテクチャ、実装の詳細
- 特定のコンポーネント(LightAccount、ValidityProof、CPI など)
3. リポジトリのコンテキストを取得する
質問の範囲に応じて、適切なリポジトリを選択します:
Light Protocol(圧縮アカウント、状態ツリー、ZK 圧縮、Light SDK)
mcp__deepwiki__read_wiki_structure("Lightprotocol/light-protocol")
mcp__deepwiki__read_wiki_contents("Lightprotocol/light-protocol")
mcp__deepwiki__ask_question("Lightprotocol/light-protocol", "your question")
Solana 開発(プログラム、アカウント、Solana 全般)
mcp__deepwiki__read_wiki_structure("blueshift-gg/blueshift-dashboard")
mcp__deepwiki__read_wiki_contents("blueshift-gg/blueshift-dashboard")
mcp__deepwiki__ask_question("blueshift-gg/blueshift-dashboard", "your question")
Claude Code(CLI の機能、コマンド、設定)
mcp__deepwiki__read_wiki_structure("anthropics/claude-code")
mcp__deepwiki__read_wiki_contents("anthropics/claude-code")
mcp__deepwiki__ask_question("anthropics/claude-code", "your question")
エージェントスキル(スキル、サブエージェント、パターン)
mcp__deepwiki__read_wiki_structure("anthropics/skills")
mcp__deepwiki__read_wiki_contents("anthropics/skills")
mcp__deepwiki__ask_question("anthropics/skills", "your question")
4. 精度ルールを適用する
避ける表現:
- 曖昧な動詞:「処理する」「管理する」「対応する」「可能にする」「提供する」
- 抽象名詞:「操作」「管理」「調整」
- 正確な動詞がある場合の「〜すること」
- マーケティング表現:「包括的」「豊富」「シームレス」「可能にする」「機能を提供する」
- ユーザー向けドキュメントでの ZK 用語:「包含証明」「非包含証明」→ 代わりに、何をするのかを説明します:「アドレスが存在しないことを証明する」「アカウントハッシュが存在することを証明する」
- 一般的な説明:「アカウントメタデータ」ではなく「CompressedAccountMeta」
使用する表現:
- 正確な関数名/メソッド名
- 具体的なデータ構造
- 具体的な操作:「判別子を設定する」「ハッシュを作成する」「アカウントを無効化する」
- ファイルと行番号の参照
- accounts 配列内のアカウントを参照する u8 インデックスを説明する場合は「reference」を使用します(Solana の標準用語)
- 動詞として「CPI」を使用します(例:「Account Compression Program を CPI する」)
- 文脈から意味が明らかな場合は、技術的なメソッド名/関数名を動詞として使用します
何が起きるかを正確に説明してください。
5. 回答の形式
回答は次の要素で構成します:
- 技術的な正確さ
- インラインコメント付きのコード例
- ソース参照(ファイルパス、行番号)
出力例
質問: 圧縮アカウントの作成時、instruction data には何を含めますか?
回答:
圧縮アカウント作成命令データ
命令データには、証明の検証とツリーの調整に使用する3つのコンポーネントが含まれます。
コンポーネント:
pub struct InstructionData {
proof: ValidityProof,
address_tree_info: PackedAddressTreeInfo,
output_state_tree_index: u8,
// + custom account data
}
1. 非包含証明
ValidityProofは、導出されたアドレスが指定されたアドレスツリーに存在しないことを証明します- クライアントは
getValidityProof()RPC 呼び出しで生成します
2. ツリー位置パラメーター
PackedAddressTreeInfo:どのアドレスツリーにアドレスを登録するかを指定します(公開鍵ではなく、u8 インデックス)output_state_tree_index:どのステートツリーに圧縮アカウントのハッシュを保存するかを指定します
3. カスタムアカウントデータ
- プログラム固有のフィールド(例:
message: String、ユーザーデータ)
実行フロー:
- アドレスツリーが一意性を証明し、アドレスを保存します
- ステートツリーがアカウントのハッシュを保存します
- ValidityProof が、アドレスが未使用であることを暗号学的に保証します
ツリーを分離する理由:
圧縮アカウントでは、アドレスが存在しないことをクライアントが生成した暗号学的証明によって示す必要があります(通常の Solana では、ランタイムが PDA の存在を確認します)。アドレスツリーは一意性を保証し、ステートツリーはアカウントのハッシュを保存します。
パック済み構造体では、remaining_accounts 内のアカウントを参照するために u8 インデックスを使用し、トランザクションサイズを削減します。
セキュリティ
このスキルは、外部の秘密情報を取得、保存、送信しません。コードのパターン、ドキュメントの参照、開発ガイダンスのみを提供します。
- 認証情報は使用しません。 このスキルに API キー、秘密鍵、署名用シークレットは必要ありません。
env: []が明示的に宣言されています。 - DeepWiki MCP は公開リポジトリにのみアクセスします。 すべての
mcp__deepwiki__*呼び出しは、公開 GitHub リポジトリ(Lightprotocol/light-protocol、anthropics/claude-code、anthropics/skills)を照会します。認証トークンの要求や送信はありません。DeepWiki は、トークンを明示的に設定しない限り、非公開リポジトリにはアクセスしません。このスキルではトークンを設定しません。 - ユーザーが提供する設定。 RPC エンドポイント、ウォレットのキーペア、認証トークン(Privy、ウォレットアダプター)は、ユーザー自身のアプリケーションコードで設定します。このスキルは、その使用方法を示すだけです。
- ツール境界を適用します。
allowed-toolsリストにより、このスキルは読み取り専用操作(Read、Glob、Grep)、調査用サブエージェント(Task)、Light Protocol ドメインへの Web フェッチ、MCP クエリに制限されています。他のスキルの読み込み、ファイルの書き込み、シェルコマンドの実行はできません。上記のフロントマターにあるallowed-toolsリストが、これらの制約に一致していることを確認してください。 - インストール元。
npx skills add Lightprotocol/skillsは、公開 GitHub リポジトリ(Lightprotocol/skills)からインストールします。実行前にソースを確認してください。 - 監査済みプロトコル。 Light Protocol のスマートコントラクトは独立した監査を受けています。監査レポートは github.com/Lightprotocol/light-protocol/tree/main/audits で公開されています。