Files
Claude-Code-Workflow/.claude/workflows/mcp-tool-strategy.md
catlog22 7e4d370d45 Enhance workflows and commands for intelligent tools strategy
- Updated intelligent-tools-strategy.md to include `--skip-git-repo-check` for Codex write access and development commands.
- Improved context gathering and analysis processes in mcp-tool-strategy.md with additional examples and guidelines for file searching.
- Introduced new command concept-enhanced.md for enhanced intelligent analysis with parallel CLI execution and design blueprint generation.
- Added context-gather.md command for intelligent collection of project context based on task descriptions, generating standardized JSON context packages.
2025-09-29 23:30:03 +08:00

6.3 KiB

MCP Tool Strategy: Triggers & Workflows

Triggering Mechanisms

Auto-Trigger Scenarios:

  • User mentions "exa-code" or code-related queries → mcp__exa__get_code_context_exa
  • Need current web information → mcp__exa__web_search_exa
  • Finding code patterns/files → mcp__code-index__search_code_advanced
  • Locating specific files → mcp__code-index__find_files

Manual Trigger Rules:

  • Complex API research → Exa Code Context
  • Architecture pattern discovery → Exa Code Context + Gemini analysis
  • Real-time information needs → Exa Web Search
  • Codebase exploration → Code Index tools first, then Gemini analysis

🎯 Available MCP Tools

Exa Code Context (mcp__exa__get_code_context_exa)

Purpose: Search and get relevant context for programming tasks Strengths: Highest quality context for libraries, SDKs, and APIs Best For: Code examples, API patterns, learning frameworks

Usage:

mcp__exa__get_code_context_exa(
  query="React useState hook examples",
  tokensNum="dynamic"  # or 1000-50000
)

Examples: "React useState", "Python pandas filtering", "Express.js middleware"

Exa Web Search (mcp__exa__web_search_exa)

Purpose: Real-time web searches with content scraping Best For: Current information, research, recent solutions

Usage:

mcp__exa__web_search_exa(
  query="latest React 18 features",
  numResults=5  # default: 5
)

Code Index Tools (mcp__code-index__)

核心方法: search_code_advanced, find_files, refresh_index

核心搜索:

mcp__code-index__search_code_advanced(pattern="function.*auth", file_pattern="*.ts")
mcp__code-index__find_files(pattern="*.test.js")
mcp__code-index__refresh_index()  # git操作后刷新

实用场景:

  • 查找代码: search_code_advanced(pattern="old.*API")
  • 定位文件: find_files(pattern="src/**/*.tsx")
  • 更新索引: refresh_index() (git操作后)

文件搜索测试结果:

  • find_files(pattern="*.md") - 搜索所有 Markdown 文件
  • find_files(pattern="*complete*") - 通配符匹配文件名
  • find_files(pattern="complete.md") - 精确匹配可能失败
  • 📝 建议使用通配符模式获得更好的搜索结果

📊 Tool Selection Matrix

Task MCP Tool Use Case Integration
Code Context Exa Code API examples, patterns → Gemini analysis
Research Exa Web Current info, trends → Planning phase
Code Search Code Index Pattern discovery, file location → Gemini analysis
Navigation Code Index File exploration, structure → Architecture phase

🚀 Integration Patterns

Standard Workflow

# 1. Explore codebase structure
mcp__code-index__find_files(pattern="*async*")
mcp__code-index__search_code_advanced(pattern="async.*function", file_pattern="*.ts")

# 2. Get external context
mcp__exa__get_code_context_exa(query="TypeScript async patterns", tokensNum="dynamic")

# 3. Analyze with Gemini
cd "src/async" && ~/.claude/scripts/gemini-wrapper -p "
PURPOSE: Understand async patterns
CONTEXT: Code index results + Exa context + @{src/async/**/*}
EXPECTED: Pattern analysis
RULES: Focus on TypeScript best practices
"

# 4. Implement with Codex
codex -C src/async --full-auto exec "Apply modern async patterns" -s danger-full-access

Enhanced Planning

  1. Explore codebase with Code Index tools
  2. Research with Exa Web Search
  3. Get code context with Exa Code Context
  4. Analyze with Gemini
  5. Architect with Qwen
  6. Implement with Codex

🔧 Best Practices

Code Index

  • Search first - Use before external tools for codebase exploration
  • Refresh after git ops - Keep index synchronized
  • Pattern specificity - Use precise regex patterns for better results
  • File patterns - Combine with glob patterns for targeted search
  • Glob pattern matching - Use *.md, *complete* patterns for file discovery
  • Exact vs wildcard - Exact names may fail, use wildcards for better results

Exa Code Context

  • Use "dynamic" tokens for efficiency
  • Be specific - include technology stack
  • MANDATORY when user mentions exa-code or code queries
  • Default 5 results usually sufficient
  • Use for current info - supplement knowledge cutoff

🎯 Common Scenarios

Learning New Technology

# Explore existing patterns + get examples + research + analyze
mcp__code-index__search_code_advanced(pattern="router|routing", file_pattern="*.ts")
mcp__exa__get_code_context_exa(query="Next.js 14 app router", tokensNum="dynamic")
mcp__exa__web_search_exa(query="Next.js 14 best practices 2024", numResults=3)
cd "src/app" && ~/.claude/scripts/gemini-wrapper -p "Learn Next.js patterns"

Debugging

# Find similar patterns + solutions + fix
mcp__code-index__search_code_advanced(pattern="similar.*error", file_pattern="*.ts")
mcp__exa__get_code_context_exa(query="TypeScript generic constraints", tokensNum="dynamic")
codex --full-auto exec "Fix TypeScript issues" -s danger-full-access

Codebase Exploration

# Comprehensive codebase understanding workflow
mcp__code-index__set_project_path(path="/current/project")  # 设置项目路径
mcp__code-index__refresh_index()  # 刷新索引
mcp__code-index__find_files(pattern="*auth*")  # Find auth-related files
mcp__code-index__search_code_advanced(pattern="function.*auth", file_pattern="*.ts")  # Find auth functions
mcp__code-index__get_file_summary(file_path="src/auth/index.ts")  # Understand structure
cd "src/auth" && ~/.claude/scripts/gemini-wrapper -p "Analyze auth architecture"

Project Setup Workflow

# 新项目初始化流程
mcp__code-index__set_project_path(path="/path/to/new/project")
mcp__code-index__get_settings_info()  # 确认设置
mcp__code-index__refresh_index()  # 建立索引
mcp__code-index__configure_file_watcher(enabled=true)  # 启用文件监控
mcp__code-index__get_file_watcher_status()  # 确认监控状态

Performance Tips

  • Code Index first → explore codebase before external tools
  • Use "dynamic" tokens for Exa Code Context
  • MCP first → gather context before analysis
  • Focus queries - avoid overly broad searches
  • Integrate selectively - use relevant context only
  • Refresh index after major git operations