Discover context using MCP tools — fff, sem, ctx, qmd, codebase-memory-mcp for codebase understanding
Scanned 9/3/2026
Install to Claude Code
npx -y skills add jellydn/my-ai-tools --skill context-discovery --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Context Discovery?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jellydn-context-discovery)More formats (shields.io, HTML) on the badges page.
---
name: "context-discovery"
description: "Discover context using MCP tools — fff, sem, ctx, qmd, codebase-memory-mcp for codebase understanding"
license: "MIT"
compatibility: "cline, claude, opencode, amp, codex, gemini, cursor, pi"
hint: "Use before starting work to understand codebase context via available MCP tools"
user-invocable: true
---
# Context Discovery
## When to Use
Use this skill **before and during implementation** when:
- Starting work on an unfamiliar module or feature
- The task involves multiple files or systems
- You need to understand existing patterns before coding
- Previous decisions or discussions may be relevant
- You want to avoid duplicating existing functionality
## What It Does
Leverages available MCP tools to proactively discover context about the codebase, existing patterns, decisions, and related work. Instead of relying solely on grep/read cycles, it uses purpose-built discovery tools.
## Discovery Workflow
### Step 1: File Discovery
Find the relevant files using `fff`:
```
fff auth # Find auth-related files
fff "*order*" # Find order-related files by pattern
fff config # Find config files
```
Scan the results to identify the module structure. `fff` returns frecency-ranked results — the files you access most appear first.
### Step 2: Pattern Discovery via `sem`
Once you know the relevant files, use `sem` to understand the code's history and structure:
```
sem blame path/to/file.ts # See who changed each line and when
sem diff main..HEAD -- path/ # See what changed in this area
sem summary path/to/ # Get a summary of the module
```
`sem` provides entity-level diffs (function-level, not just file-level), making it easier to understand what actually changed.
### Step 3: Historical Context via `ctx`
Search past agent sessions for relevant context:
```
ctx search "auth implementation patterns" # Past work on auth
ctx search "this module" path/to/module/ # Past discussions about this area
ctx search "decision" "why did we" path/ # Past decision-making
```
`ctx` indexes agent sessions, so you can find past discussions, decisions, and patterns the agent has already encountered.
### Step 4: Project Knowledge via `qmd`
Query durable project knowledge:
```
qmd query "What architecture decisions exist for X?"
qmd search "authentication patterns"
qmd get ADR-001 # Get a specific ADR
```
`qmd` stores project learnings, ADRs, conventions, and gotchas that persist across sessions.
### Step 5: Code Structure via `codebase-memory-mcp`
For large codebases, use the code graph to understand structure:
```
search_graph("OrderHandler") # Find the function/class
trace_path("OrderHandler", calls) # What does it call?
trace_path("OrderHandler", callers) # What calls it?
get_code_snippet("package.OrderHandler") # Read the source
get_architecture() # Project overview
```
### Step 6: External Context via `context7`
Look up documentation for libraries and frameworks:
```
context7 "express.js middleware API reference"
context7 "react useEffect cleanup pattern"
```
## Decision Tree
```
Where to look depends on what you need:
┌─────────────────────────────┬─────────────────┐
│ Need this │ Use this tool │
├─────────────────────────────┼─────────────────┤
│ Find files by name/pattern │ fff │
│ Find what changed recently │ sem diff │
│ Find past agent discussions │ ctx search │
│ Find ADRs / project memory │ qmd query │
│ Understand code structure │ codebase-memory │
│ Look up external docs │ context7 │
│ Find related PRs │ github MCP │
└─────────────────────────────┴─────────────────┘
```
## When Not to Use Context Discovery
- **Simple tasks**: For well-known code, grep + read is faster
- **Already familiar**: If you know the codebase well, skip steps
- **External APIs**: Use `context7` or web search instead
- **Configuration-only changes**: Straightforward edits don't need deep context
## Integration with Other Skills
- Use after `/blindspots` to investigate surfaced unknowns
- Use before `implementation-logger` to establish baseline understanding
- Results from context discovery feed into implementation decisions
- Document surprising finds in implementation log
## Tips
- **Start broad, narrow fast**: Use `fff` to find candidates, then `sem`/`qmd` for depth
- **Prefer recent context**: `ctx` and `git log` give you recent work, which is most relevant
- **Limit discovery**: 2-5 minutes is usually enough
- **Document what you find**: Add significant discoveries to implementation log or qmd
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!