tree-sitter AST 파싱, 시맨틱 검색, 심볼 탐색을 통해 AI agent를 위한 토큰 효율적인 코드 인텔리전스를 제공합니다.
다른 이름 greglas75/codesift, codesift-mcp
- 스타
- 4
- Tools
- —
- 다운로드, 30일
- —
- 최신 버전
- —
- 마지막 커밋
- 2026년 11월 14일
- 라이선스
- —
CodeSift MCP란?
CodeSift은(는) MCP server입니다. tree-sitter AST 파싱, 시맨틱 검색, 심볼 탐색을 통해 AI agent를 위한 토큰 효율적인 코드 인텔리전스를 제공합니다.
프로젝트 README에서 생성된 요약
CodeSift MCP server 정보
CodeSift는 tree-sitter AST 파싱을 통해 코드베이스를 인덱싱하여 AI agent를 위한 인텔리전스 레이어를 제공합니다. 표준 grep 또는 read 워크플로와 비교하여 토큰 소비를 61%에서 95%까지 줄이도록 설계되었습니다. 이 시스템은 55개의 핵심 도구와 95개의 탐색 가능한 도구를 포함하여 총 150개의 MCP 도구를 제공하므로 복잡한 탐색 작업에 매우 효율적입니다. 개발자는 Claude Code, Cursor, Gemini CLI, Zed, Aider와 같은 다양한 MCP 클라이언트에서 이를 사용할 수 있습니다.
설정은 Codex 또는 Google Antigravity와 같은 특정 플랫폼을 구성하는 CLI를 통해 이루어집니다. 서버는 빠른 재인덱싱을 보장하기 위해 증분 업데이트가 가능한 SQLite 인덱스를 사용합니다. 임베딩 프로바이더를 통한 시맨틱 검색을 지원하며 커뮤니티 탐지, 호출 체인 추적, 데드 코드 식별과 같은 고급 분석 기능을 제공합니다. 사용자는 또한 프로젝트 위키나 HTML 아키텍처 대시보드를 생성하여 agent에게 고수준의 컨텍스트를 제공할 수 있습니다.
활용 사례
- 1토큰 비용 절감AI agent가 압축된 심볼 상세 정보를 사용하여 코드베이스를 탐색함으로써 컨텍스트 윈도우 사용량을 절약할 수 있습니다.
- 2시맨틱 코드 검색 수행개발자가 정확한 텍스트 일치 대신 자연어 쿼리를 사용하여 agent에게 특정 로직을 찾도록 요청할 수 있습니다.
- 3실행 경로 추적개발자가 HTTP 라우트에서 데이터베이스까지의 호출 시퀀스를 보여주는 플로우차트를 요청할 수 있습니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
CodeSift MCP 설치 방법
형식 확인: 2026년 11월 10일Cursor에 추가Goose에 추가Claude Code에 CodeSift MCP 설치
$ claude mcp add codesift -- npx -y codesift-mcpCursor에 CodeSift MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"codesift": {
"command": "npx",
"args": [
"-y",
"codesift-mcp"
]
}
}
}VS Code에 CodeSift MCP 설치
.vscode/mcp.json
{
"servers": {
"codesift": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"codesift-mcp"
]
}
}
}VS Code CLI에 CodeSift MCP 설치
$ code --add-mcp '{"name":"codesift","type":"stdio","command":"npx","args":["-y","codesift-mcp"]}'Claude Desktop에 CodeSift MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"codesift": {
"command": "npx",
"args": [
"-y",
"codesift-mcp"
]
}
}
}Codex에 CodeSift MCP 설치
$ codex mcp add codesift -- npx -y codesift-mcpCodex config.toml에 CodeSift MCP 설치
~/.codex/config.toml
[mcp_servers.codesift] command = "npx" args = ["-y", "codesift-mcp"]
Gemini CLI에 CodeSift MCP 설치
$ gemini mcp add -s user codesift npx -- -y codesift-mcpGemini settings.json에 CodeSift MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"codesift": {
"command": "npx",
"args": [
"-y",
"codesift-mcp"
]
}
}
}구성
CODESIFT_OPENAI_API_KEYCODESIFT_TELEMETRY
| 이름 | 설명 | 유형 |
|---|---|---|
| CODESIFT_OPENAI_API_KEY | — | |
| CODESIFT_TELEMETRY | — |
자동 검사
2026년 11월 14일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 이는 보안 감사가 아닙니다. 코드를 직접 읽고 서버에 필요한 최소한의 권한만 부여하십시오. 검사 방식 · 점수를 높이기 위해 수정할 항목
- 소스 저장소 연결 및 접근 가능greglas75/codesift is public and reachablegithub.com/greglas75/codesift ↗통과
- 패키지가 이 저장소를 소스로 명시codesift-mcp names greglas75/codesift as sourcenpmjs.com/package/codesift-mcp ↗통과
- 빌드 출처(Sigstore 증명)Sigstore attestation for codesift-mcpnpmjs.com/package/codesift-mcp/v/0.26.5#provenance ↗통과
- 오픈 소스 라이선스 (OSI)No license결함 발견
- 최근 1년 내 커밋 또는 릴리스Last commit or release 2026-11-13github.com/greglas75/codesift ↗통과
- OpenSSF Scorecard검사되지 않음
- 패키지 이름이 인기 패키지와 유사하지 않음No popular package one edit away from codesift-mcp통과
- 패키지 및 해당 종속성에 중요한 보안 권고 없음검사되지 않음
- 모델에 대한 숨겨진 지침 없음0 tool descriptions and the README read; no override phrases, credential paths or hidden characters통과
- 파괴적인 도구에 라벨 표시됨검사되지 않음
- 원격 엔드포인트가 MCP 핸드셰이크에 응답검사되지 않음
README
GitHub에서 보기CodeSift -- Token-efficient code intelligence for AI agents
CodeSift indexes your codebase with tree-sitter AST parsing and gives AI agents 150 MCP tools (55 core + 95 discoverable) via CLI or MCP server. It uses 61-95% fewer tokens than raw grep/Read workflows on typical code navigation tasks.
Works with: Claude Code, Cursor, Codex, Gemini CLI, Zed, Aider, Continue — any MCP client.
Install
Bulletproof one-liner (clears stale cache, installs latest, auto-configures all platforms):
npm cache clean --force && npm i -g codesift-mcp@latest
npm cache clean --force clears stale registry metadata that can cause ETARGET errors. The postinstall script then runs codesift setup all automatically.
Restart your AI client (close + reopen) so the new MCP server is picked up. New terminal sessions in your IDE work fine — no need to quit the IDE itself.
Windows: close every MCP client before upgrading (Claude Code, Codex, Cursor, …). A running
CodeSift server holds native .node files open (onnxruntime-node, @huggingface/transformers),
Windows will not let npm replace an open file, and the upgrade fails with EBUSY / EPERM.
To configure individual platforms manually:
codesift setup claude # Claude Code — config + rules + hooks + CLAUDE.md
codesift setup codex # Codex CLI — config + AGENTS.md rules
codesift setup cursor # Cursor IDE — config + .cursor/rules
codesift setup gemini # Gemini CLI — config + GEMINI.md rules
codesift setup antigravity # Google Antigravity — config only
codesift setup all # All platforms at once
Verify installed version:
codesift --version
What setup installs (all by default):
| Component | What it does | Opt-out |
|---|---|---|
| MCP config | Registers codesift-mcp server | (required) |
| Rules file | Tool mapping, hints, ALWAYS/NEVER rules for your AI agent | --no-rules |
| Hooks (where supported) | Auto-index after Edit/Write, redirect large Read/Bash flows to CodeSift | --no-hooks |
Additionally, every MCP client receives ~800 tokens of compact guidance automatically via the MCP instructions field — zero setup needed.
Update
npm update -g codesift-mcp
codesift setup all # Updates rules files to latest version
codesift setup all --force # Force-update even if you modified rules
setup writes the absolute codesift-mcp bin path when available. This avoids
per-session npx cache drift and stale dist/server.js paths. Re-run setup
after updating to refresh rules files and repair old MCP config entries.
Quick start
# Index a project
codesift index /path/to/project
# Search for a function
codesift symbols local/my-project "createUser" --kind function --include-source
# Semantic search (requires embedding provider)
codesift retrieve local/my-project \
--queries '[{"type":"semantic","query":"how does caching work?"}]'
# Build the project wiki — agents read it on every new session
codesift wiki-generate
Wiki tip:
setup --hooks(on by default) wires a SessionStart hook that injects a project overview into every new agent session, plus a PostToolUse hook that auto-refreshes it. Both are silent no-ops until you runcodesift wiki-generateonce in the repo — skip it and the wiki never reaches your agent. This is the #1 reason wiki adoption stays at zero.
Benchmark results
Combo benchmark (real-world tool sequences)
772 real tasks from usage.jsonl — exact query sequences agents used across 33+ repos. Native (grep/find/read) vs CodeSift.
| Sequence | Runs | Tok native | Tok Sift | Delta | Wins |
|---|---|---|---|---|---|
| pat→st→pat→st (4-gram) | 37 | 377,258 | 36,758 | -90% | 28/37 |
| pat→st→pat | 39 | 186,436 | 20,500 | -89% | 31/39 |
| st→pat→st→pat | 35 | 307,490 | 35,905 | -88% | 25/35 |
| ss→st | 78 | 202,837 | 36,408 | -82% | 35/78 |
| st→pat→st | 40 | 250,240 | 44,424 | -82% | 27/40 |
| st→tree→st | 28 | 262,703 | 61,093 | -77% | 22/28 |
| tree→st | 57 | 380,324 | 133,578 | -65% | 44/57 |
| AGGREGATE | 772 | 5,130,240 | 1,994,825 | -61% | 542/772 |
Per-tool (single-tool benchmark)
| Tool | Tok native | Tok Sift | Delta |
|---|---|---|---|
| search_text vs rg | 1,015,245 | 49,718 | -95% |
| search_symbols vs rg | 192,486 | 34,186 | -82% |
| get_file_outline vs Read | 91,796 | 58,229 | -37% |
Performance features
| Feature | Description | Impact |
|---|---|---|
| mtime-based incremental indexing | Skip files with unchanged mtime on reindex | 5.6x faster reindex (57s → 10s on 778-file repo) |
| index_file | Re-index a single file without full repo walk | 9ms when the file is unchanged (short-circuit); a changed file costs one row write, not a whole-index rewrite |
| SQLite index | Normalized per-repo DB in WAL mode; incremental writes touch one file's rows (details) | 10.8x faster single-file re-index, ~17800x faster warm index load |
| detail_level on search_symbols | compact (~15 tok/result), standard, full |
compact is 63% fewer tokens than standard |
| token_budget on search_symbols | Pack results to token limit instead of guessing top_k | Precise budget control |
| Centrality bonus in BM25 | Symbols in frequently-imported files rank higher | Core utilities surface first in search |
| Response dedup cache | Identical calls within 30s return cached result | Eliminates duplicate API calls |
| In-flight dedup | Parallel identical requests coalesce into one | Prevents race condition duplicates |
| Auto-grouping | Force group_by_file when output exceeds 80K chars | Prevents 100K+ token responses |
| Relevance-gap filtering | Cut search results below 15% of top score | 50→21 results (cleaner output) |
| Semantic chunking | Chunk by symbol boundaries, not fixed lines | Functions stay intact for semantic search |
| Token savings display | "Saved ~X tokens ($Y)" on every response | Visible ROI per call |
| Framework-aware dead code | Whitelist React hooks, NestJS lifecycle, Next.js handlers | <10% false positives (was ~40%) |
| Mermaid diagrams | detect_communities, get_knowledge_map, trace_route output Mermaid |
Paste-ready architecture diagrams |
| HTML report | generate_report → standalone browser report |
Complexity, dead code, hotspots, communities |
| Progressive cascade | >15K tok → compact format, >25K → counts only, >30K → truncate | Auto-adjusting response size |
| Tool visibility | Non-core tools hidden via MCP disable(), discoverable on demand |
~10K fewer tokens in system prompt |
| MCP instructions | ~800 tok of agent guidance sent automatically to every client | Zero-setup onboarding |
| Ranked search | search_text(ranked=true) classifies hits by containing symbol, deduplicates |
Saves 1-3 follow-up calls |
| PreToolUse hooks | Redirect large-file Read to CodeSift outline/search | Prevents 5K+ token file dumps |
| PostToolUse hooks | Auto-reindex after Edit/Write | Always-fresh index |
| Sequential hints | Prepended hints (H1-H9) suggest batching after 3+ consecutive calls | Guides agents toward efficient usage |
| Wiki generation | generate_wiki produces markdown wiki from code topology |
Architecture docs from Louvain communities + hubs + surprises |
| Lens HTML | Self-contained HTML dashboard with D3 chord diagram | Visual architecture overview in one file |
| Wiki hook inject | PreToolUse injects community context on file Read | Agent gets architectural context automatically |
CLI commands
Indexing
| Command | Description |
|---|---|
codesift index <path> |
Index a local folder (mtime-based incremental — skips unchanged files) |
codesift index-repo <url> |
Clone and index a remote git repository |
codesift repos |
List all indexed repositories |
codesift invalidate <repo> |
Clear index cache for a repository |
Search
| Command | Description |
|---|---|
codesift search <repo> <query> |
Full-text search across all files |
codesift symbols <repo> <query> |
Search symbols by name/signature (supports --detail compact|standard|full and --token-budget N) |
Outline
| Command | Description |
|---|---|
codesift tree <repo> |
File tree with symbol counts |
codesift outline <repo> <file> |
Symbol outline of a single file |
codesift repo-outline <repo> |
High-level repository outline |
Symbol retrieval
| Command | Description |
|---|---|
codesift symbol <repo> <id> |
Get a single symbol by ID |
codesift symbols-batch <repo> <ids...> |
Get multiple symbols by ID |
codesift find <repo> <query> |
Find symbol and show source |
codesift refs <repo> <name> |
Find all references to a symbol |
codesift context-bundle <repo> <name> |
Symbol + imports + siblings + types used in one call |
Graph & analysis
| Command | Description |
|---|---|
codesift trace <repo> <name> |
Trace call chain (callers/callees). Supports --format mermaid for flowchart output. |
codesift impact <repo> --since <ref> |
Blast radius of git changes + affected tests + risk scores per file |
codesift context <repo> <query> |
Assemble relevant code context. Supports --level L0|L1|L2|L3 for compression. |
codesift knowledge-map <repo> |
Module dependency map with circular dependency detection |
codesift trace-route <repo> <path> |
Trace HTTP route → handler → service → DB calls (NestJS/Next.js/Express/Ktor/Spring Boot Kotlin) |
codesift communities <repo> |
Louvain community detection — discover code clusters from import graph |
Code analysis
| Command | Description |
|---|---|
codesift dead-code <repo> |
Find exported symbols with zero external references |
codesift complexity <repo> |
Cyclomatic complexity + nesting depth per function |
codesift clones <repo> |
Copy-paste detection (hash bucketing + line similarity) |
codesift dup-check [--base <ref>] |
Gate for new code: is anything added since merge-base <base> HEAD (incl. uncommitted and untracked files) a copy of existing code? Exit 1 on findings — for pre-push hooks and reviews. Suppress with // codesift-dup-ok: <reason> |
codesift hotspots <repo> |
Git churn x complexity = risk-ranked file list |
codesift patterns <repo> <pattern> |
Structural anti-pattern search (33 built-in + custom regex) |
Wiki & Lens
| Command | Description |
|---|---|
codesift wiki-generate |
Generate wiki pages + Lens HTML from code topology (communities, hubs, surprises, hotspots) |
codesift wiki-generate --focus src/tools |
Scope wiki to a specific directory |
codesift wiki-generate --no-lens |
Skip Lens HTML generation |
codesift wiki-lint <wiki-dir> |
Check wiki for broken links, orphan pages, stale content |
Output goes to .codesift/wiki/ in the repo root. Includes markdown pages with [[wikilinks]], backlinks, community summaries, and a self-contained codesift-lens.html with D3 chord diagram and force-directed graph.
Cross-repo
| Command | Description |
|---|---|
codesift cross-search <query> |
Search symbols across ALL indexed repositories |
codesift cross-refs <name> |
Find references across ALL indexed repositories |
Diff
| Command | Description |
|---|---|
codesift diff <repo> --since <ref> |
Structural diff between git refs |
codesift changed <repo> --since <ref> |
List changed symbols between refs |
Batch & utility
| Command | Description |
|---|---|
codesift retrieve <repo> --queries <json> |
Batch multiple queries in one call |
codesift stats |
Show usage statistics |
codesift generate-claude-md <repo> |
Generate CLAUDE.md project summary |
codesift list-patterns |
List all built-in anti-pattern names |
MCP tools (146 total — 55 core + 95 discoverable)
When running as an MCP server, CodeSift exposes 51 core tools directly. The remaining 95 niche tools are discoverable via discover_tools and describe_tools, or via plan_turn which routes a natural-language task to the best-fit tools and auto-reveals any hidden ones.
| Category | Tools |
|---|---|
| Indexing | index_folder (mtime skip, dirty propagation), index_repo, index_file (single-file reindex, 9ms), list_repos, invalidate_cache |
| Search | search_symbols (detail_level: compact/standard/full, token_budget, kind filter incl. component/hook), search_text (auto_group, group_by_file, ranked) |
| Outline | get_file_tree, get_file_outline, get_repo_outline, suggest_queries (React-aware: suggests component/hook queries when detected) |
| Symbol retrieval | get_symbol, get_symbols, find_and_show, get_context_bundle (React enrichment: hooks_used, child_components, parent_components, wrapper pattern) |
| References & graph | find_references (LSP-enhanced), trace_call_chain (JSX-aware: <Component> = call edge; filter_react_hooks option), impact_analysis, trace_route (HTTP route → handler → DB — NestJS/Next.js/Express/Ktor/Spring Boot/Yii2/Laravel) |
| React | trace_component_tree (BFS JSX composition tree with Mermaid output), analyze_hooks (hook inventory, Rule of Hooks violations, custom hook composition), analyze_renders (re-render risk: inline props, missing memo, children-aware threshold, markdown output), analyze_context_graph (createContext → Provider → useContext consumer mapping) |
| LSP bridge | go_to_definition (LSP + index fallback), get_type_info (hover), rename_symbol (cross-file type-safe rename) |
| Context & knowledge | assemble_context (level: L0/L1/L2/L3), get_knowledge_map, detect_communities (Louvain) |
| Conversation search | index_conversations, search_conversations, find_conversations_for_symbol |
| Diff | diff_outline, changed_symbols |
| Batch retrieval | codebase_retrieval (batch multiple sub-queries with shared token budget, incl. type: "conversation") |
| Security | scan_secrets (AST-aware secret detection, ~1,100 rules, masked output) |
| PHP / Yii2 | resolve_php_namespace (PSR-4 FQCN→file), trace_php_event (event→listener chain), find_php_views (render→view mapping), resolve_php_service (Yii::$app→concrete class), php_security_scan (compound: SQL injection, XSS, eval, exec, unserialize), php_project_audit (meta-tool — includes ActiveRecord analysis, N+1 detection, god-model detection via checks= parameter) |
| Analysis | find_dead_code (framework-aware incl. React/Next.js route entry points), analyze_complexity (React: hook_count, state_count, effect_count, jsx_depth), find_clones, analyze_hotspots, search_patterns (33 built-in: JS/TS ×9, React ×20, Kotlin ×6, PHP ×4), list_patterns, frequency_analysis (AST subtree clustering), find_perf_hotspots (6 perf anti-patterns: unbounded queries, sync I/O, N+1 loops, unbounded parallel, missing pagination, expensive recompute), explain_query (Prisma→SQL with EXPLAIN ANALYZE), audit_scan (5-gate composite: dead code + clones + patterns + complexity + hotspots) |
| Architecture | classify_roles (symbol role classification via call graph), check_boundaries (architecture boundary enforcement), ast_query (structural grep via tree-sitter), fan_in_fan_out (import graph coupling: most-imported, most-dependent, hub files, coupling score 0-100), co_change_analysis (temporal coupling from git history: Jaccard similarity, cluster detection), architecture_summary (one-call composite: stack + communities + coupling + circular deps + LOC + entry points, Mermaid output) |
| Cross-repo | cross_repo_search, cross_repo_refs |
| Report | generate_report (standalone HTML with complexity, dead code, hotspots, communities), generate_wiki (markdown wiki pages + Lens HTML from code topology — communities, hubs, surprises, hotspots, framework pages) |
| Tool discovery | discover_tools (keyword search across hidden tools), describe_tools (full schema on demand, optional reveal) |
| Discovery | plan_turn(query=...) — route natural-language task description to best-fit tools, symbols, and files; returns ranked recommendations with confidence scores, reveal_required hints, and gap analysis |
| Meta | index_status (check if repo is indexed: file/symbol counts, language breakdown, text_stub languages), analyze_project (stack + conventions detection), get_extractor_versions (parser language support) |
| Utility | generate_claude_md (architecture + behavioral guidance), usage_stats (with token savings tracking) |
Conversation search
Search past Claude Code conversation history — the decisions, rationale, and debugging sessions that shaped your code.
# Index conversations for current project (auto-detected from cwd)
# Also runs automatically at startup via auto-discovery
index_conversations()
# Index a specific project's conversations
index_conversations(project_path="/Users/me/.claude/projects/-Users-me-DEV-my-project")
# Search past conversations
search_conversations(query="auth middleware bug", limit=5)
# Find conversations that discussed a specific code symbol
find_conversations_for_symbol(symbol_name="processPayment", repo="local/my-project")
# In codebase_retrieval batch queries
codebase_retrieval(repo, queries=[
{"type": "semantic", "query": "how does auth work"},
{"type": "conversation", "query": "why we chose Redis over Postgres cache"}
])
Features:
- Auto-discovery at startup (zero config)
- Session-end hook for immediate re-indexing
- Noise filtering: tool_result dumps stripped, tool_use truncated, images →
[image] - Compaction-aware: skips summary injections, indexes last summary as meta-doc
- Cross-reference: link code symbols to the conversations that discussed them
Secret scanning
Detect hardcoded secrets (API keys, JWT tokens, passwords, connection strings) in your indexed codebase. Uses ~1,100 detection rules from TruffleHog via @sanity-labs/secret-scan, with CodeSift's tree-sitter AST for false-positive reduction.
# Scan entire repo for secrets
scan_secrets(repo="local/my-project")
# Filter by severity
scan_secrets(repo="local/my-project", severity="critical")
# Only high-confidence findings, including test files
scan_secrets(repo="local/my-project", min_confidence="high", exclude_tests=false)
# Scope to specific directory
scan_secrets(repo="local/my-project", file_pattern="src/config/**")
Features:
- Eager scanning on file change — results are cached and instant on query
- AST-aware confidence: test files, docs, placeholder variables auto-demoted to
low - Masked output — secrets shown as
sk-p***hijk, raw values never in cache or logs - Inline allowlist — add
// codesift:allow-secretto suppress a finding - Config files indexed —
.env,.yaml,.toml,.json,.ini,.propertiesscanned - Severity mapping: cloud keys (AWS, GCP) = critical, API keys (OpenAI, GitHub) = high
- Inline warnings in
index_fileresponses when secrets detected
Wiki & Lens — auto-generated architecture documentation
Generate browsable wiki pages and an interactive HTML dashboard from your codebase's topology — zero manual writing.
# Generate wiki for current repo
codesift wiki-generate
# Scope to a directory
codesift wiki-generate --focus src/tools
# Check wiki integrity
codesift wiki-lint .codesift/wiki
What it generates (in .codesift/wiki/):
- Community pages — one per Louvain community (module), with members, cohesion score, cross-boundary edges
- Hubs page — top symbols by fan-in (load-bearing code)
- Surprises page — unexpected cross-community connections (structural + temporal coupling)
- Hotspots page — files ranked by git churn × complexity
- Framework pages — conditional pages for Next.js routes, Hono middleware, Astro islands (when detected)
- Index page — links to all pages with
[[wikilinks]]and auto-generated backlinks - Summaries — compact
*.summary.mdfiles (~400 tokens) for AI agent context injection
Lens HTML dashboard (codesift-lens.html):
- Self-contained single HTML file — open in any browser, no server needed
- D3 chord diagram showing cross-community connections
- D3 force-directed graph with community nodes
- 5 tabs: Overview, Communities, Hubs, Surprises, Wiki browser
- Dark/light theme, responsive
AI agent integration:
- Hook inject via
handlePrecheckRead— when an agent reads a file, it automatically receives the file's community wiki summary as context - Configurable token budget (2000 chars default)
- Staleness detection — warns when wiki is outdated vs current index
MCP tool:
generate_wiki(repo, focus?, output_dir?, include_lens?)
PHP / Yii2 support
Full PHP code intelligence with first-on-market Yii2 framework awareness. No other general-purpose MCP tool provides static Yii2 intelligence.
Symbol extraction (tree-sitter-based):
- Namespaces, classes, interfaces, traits, enums (PHP 8.1), functions, methods, properties, constants
- PHPDoc extraction, signature extraction with type hints and return types
- PHPUnit test detection:
TestCasesubclass =test_suite,test*methods =test_case,setUp/tearDown=test_hook
Yii2 framework awareness:
- Convention routing:
trace_route("site/index")resolves toSiteController::actionIndex()(incl. module nesting) analyze_projectdetects Yii2 viacomposer.jsonand extracts: controllers, models, modules, widgets, behaviors, components, assets, config files- 6 PHP-specific tools: namespace resolution (PSR-4), event/listener tracing, view mapping, service locator resolution, security scanning, project audit (meta-tool with ActiveRecord analysis, N+1 detection, god-model detection via
checks=parameter) - Auto-load: PHP tools are automatically enabled when
composer.jsonis detected at CWD — no need to calldiscover_tools/describe_toolsfirst
Laravel support:
- Route tracing via
Route::get('/path', [Controller::class, 'method'])pattern matching - Convention extraction: controllers, middleware, models, routes, migrations
# Trace a Yii2 route
trace_route(repo, path="site/about")
# Analyze ActiveRecord models (via php_project_audit)
php_project_audit(repo, checks=["activerecord"], model_name="User")
# PHP security scan (8 parallel checks)
php_security_scan(repo)
# Resolve PSR-4 namespace to file
resolve_php_namespace(repo, class_name="App\\Models\\User")
LSP bridge: Intelephense configured for go-to-definition, find-references, type-info, and rename across PHP files.
CodeSift MCP 질문
CodeSift MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add codesift -- npx -y codesift-mcp를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
CodeSift MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
CodeSift로 토큰을 얼마나 절약할 수 있나요?
CodeSift는 일반적인 코드 탐색 작업 시 raw grep 또는 Read 워크플로보다 61-95% 적은 토큰을 사용합니다.
어떤 AI 클라이언트와 호환되나요?
Claude Code, Cursor, Codex, Gemini CLI, Zed, Aider, Continue를 포함한 모든 MCP 클라이언트에서 작동합니다.
CodeSift로 프로젝트를 인덱싱하려면 어떻게 해야 하나요?
codesift index /path/to/project 명령어를 사용하여 로컬 폴더를 인덱싱할 수 있습니다.
Windows에서 업그레이드하기 전에 무엇을 해야 하나요?
네이티브 파일이 열려 있어 발생하는 EBUSY 또는 EPERM 에러를 방지하려면 업그레이드 전에 모든 MCP 클라이언트(Claude Code 또는 Cursor 등)를 종료해야 합니다.