Marketplace claude-plugin
Use MCP repo-map tools when:** - Searching for symbols by name pattern (faster than Grep) - Getting all symbols in a file (faster than Read + parsing)
git clone https://github.com/aiskillstore/marketplace
T=$(mktemp -d) && git clone --depth=1 https://github.com/aiskillstore/marketplace "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/chipflow/claude-plugin" ~/.claude/skills/aiskillstore-marketplace-claude-plugin && rm -rf "$T"
skills/chipflow/claude-plugin/SKILL.mdContext Tools Plugin - Usage Guide
Dynamic Directory Support (v0.8.0+)
GOOD NEWS: MCP tools automatically adapt to the current working directory!
How it works:
cd /home/user/project-a # MCP tools query/index project-a/.claude/repo-map.db cd /home/user/project-b # MCP tools now query/index project-b/.claude/repo-map.db ✅
Behavior:
- Tools check current working directory on each call
- If
exists: query it.claude/repo-map.db - If not: trigger indexing for current directory
- Logs show which directory is being queried
Benefits:
- No need to restart session when changing projects
- Can work with multiple projects in one session
- Each project maintains its own index
- Tools "just work" wherever you are
Plugin Installation and Updates
CRITICAL: When the user runs
or /plugin install
:/plugin update
The MCP server configuration changes immediately, but the MCP server itself does not restart automatically. The new plugin features (especially MCP tools like
search_symbols) will NOT be available until the session restarts.
YOU MUST tell the user:
The plugin has been installed/updated successfully. To use the MCP tools (search_symbols, get_file_symbols, etc.), you need to restart the session: 1. Exit this session (Ctrl+C or type 'exit') 2. Start a new session with: claude continue The MCP server will restart with the new plugin configuration.
When to give this instruction:
- Immediately after the user runs
/plugin install context-tools - Immediately after the user runs
/plugin update context-tools - When the user tries to use MCP tools but they're not available (and you suspect they just installed)
Why this matters:
- MCP servers are started when Claude Code starts
- Plugin installation modifies MCP server configuration
- Changes only take effect on next Claude Code startup
- Users will be confused if tools don't work after installation
Available MCP Tools
Once the session has been restarted after installation, the following MCP tools are available:
mcp__repo-map__search_symbols
Search for symbols (functions, classes, methods) by name pattern.
Faster than Grep/Search - uses pre-built SQLite index.
Parameters:
(required): Glob pattern likepattern
,get_*
,*HandlerConfig*
(optional): Filter bykind
,"class"
, or"function""method"
(optional): Max results (default: 20)limit
Example:
{ "pattern": "parse_*", "kind": "function", "limit": 10 }
mcp__repo-map__get_file_symbols
Get all symbols defined in a specific file.
Parameters:
(required): Relative path from project root (e.g.,file
)"src/models/user.py"
mcp__repo-map__get_symbol_content
Get the source code content of a symbol by exact name.
Faster than Grep/Search+Read - directly retrieves function/class source code.
Parameters:
(required): Exact symbol name (e.g.,name
,"MyClass"
)"User.save"
(optional): Filter by type if name is ambiguouskind
mcp__repo-map__reindex_repo_map
Trigger a reindex of the repository symbols.
Parameters:
(optional): Force reindex even if cache is fresh (default: false)force
mcp__repo-map__repo_map_status
Get the current status of the repo map index.
Shows:
- Index status:
,idle
,indexing
, orcompletedfailed - Symbol count
- Last indexed time
- Whether index is stale
- Indexing errors (if any)
mcp__repo-map__wait_for_index
Wait for indexing to complete.
Parameters:
(optional): How long to wait (default: 60)timeout_seconds
Note: Most tools automatically wait for indexing to complete, so this is rarely needed.
Database Schema (.claude/repo-map.db)
symbols table:
(TEXT): Symbol namename
(TEXT):kind
,class
, orfunctionmethod
(TEXT): Relative path from project rootfile_path
(INTEGER): Start line (1-indexed)line_number
(INTEGER): End line (nullable)end_line_number
(TEXT): Parent class/module (nullable)parent
(TEXT): First line of docstring (nullable)docstring
(TEXT): Function/method signature (nullable)signature
(TEXT):language
,python
, orcpprust
metadata table (v0.7.0+):
(TEXT PRIMARY KEY): Metadata keykey
(TEXT): Metadata valuevalue
Keys:
:status
|idle
|indexing
|completedfailed
: ISO8601 timestamp when indexing startedindex_start_time
: ISO8601 timestamp when last completedlast_indexed
: Total symbols indexed (string)symbol_count
: Error message if status='failed'error_message
Indexing Status and Auto-Wait (v0.7.0+)
First Use Behavior:
- On first use, indexing starts automatically in background
- Tools automatically wait (up to 60s) if indexing is in progress
- If timeout, tools return helpful error asking user to retry
Watchdog (v0.7.0+):
- Detects hung indexing processes (>10 minutes)
- Automatically resets status to 'failed'
- Can be manually recovered with
reindex_repo_map
Multiprocess Architecture (v0.8.0+):
- Indexing runs in separate subprocess
- MCP server remains responsive even if indexing hangs
- Watchdog can kill hung subprocess without affecting MCP server
- Resource limits (Unix/macOS): 4GB memory, 20 min CPU time
When to Use MCP Tools vs Other Tools
Use MCP repo-map tools when:
- Searching for symbols by name pattern (faster than Grep)
- Getting all symbols in a file (faster than Read + parsing)
- Getting source code of a specific function/class (faster than Grep + Read)
- Need to search across multiple languages (Python, C++, Rust)
Use other tools when:
- Searching file contents (not symbol names) - use Grep
- Reading entire files - use Read
- Need to search files that aren't Python/C++/Rust
- Searching for non-code patterns (comments, strings, etc.)
Project-Specific Files
Automatically generated at session start:
- Project structure and build commands.claude/project-manifest.json
- Human-readable code structure with duplicate detection.claude/repo-map.md
- SQLite database for fast symbol queries (MCP server).claude/repo-map.db
Optional (created manually):
- Project-specific learnings and discoveries.claude/learnings.md
Logs:
- MCP server rotating log (1MB per file, 3 backups).claude/logs/repo-map-server.log- Tool calls and results
- Indexing events and performance
- Watchdog actions and resource limit violations
- Server startup/shutdown
- Session start hook outputs are also logged for debugging