Code Context Provider MCP
코드 컨텍스트 공급자 MCP
AI 어시스턴트에 코드 컨텍스트와 분석을 제공하는 MCP 서버입니다. 네이티브 종속성이 없는 WebAssembly 트리시터 파서를 사용하여 디렉터리 구조와 코드 심볼을 추출합니다.
특징
디렉토리 트리 구조 생성
JavaScript/TypeScript 및 Python 파일 분석
코드 심볼(함수, 변수, 클래스, 가져오기, 내보내기) 추출
AI 어시스턴트와의 원활한 통합을 위한 MCP 프로토콜과 호환
Related MCP server: syntax-map-mcp
빠른 사용(MCP 설정)
Smithery를 통해 설치
Smithery를 통해 Claude Desktop용 Code Context Provider를 자동으로 설치하려면:
지엑스피1
윈도우
{
"mcpServers": {
"code-context-provider-mcp": {
"command": "cmd.exe",
"args": [
"/c",
"npx",
"-y",
"code-context-provider-mcp@latest"
]
}
}
}맥OS/리눅스
{
"mcpServers": {
"code-context-provider-mcp": {
"command": "npx",
"args": [
"-y",
"code-context-provider-mcp@latest"
]
}
}
}또는 npm 사용하여 전역적으로 설치합니다.
npm install -g code-context-provider-mcp그런 다음 다음을 실행하여 사용하세요.
code-context-provider-mcp # if you're not using @latest, you may want to clear the cache for latest version using `Remove-Item -Path "$env:LOCALAPPDATA\npm-cache\_npx" -Recurse -Force` for windows and `rm -rf ~/.npm/_npx` for linux/macos사용 가능한 도구
get_code_context
디렉토리를 분석하고 코드 기호와 함께 구조를 반환합니다(선택 사항).
매개변수:
absolutePath(문자열, 필수): 분석할 디렉토리의 절대 경로analyzeJs(부울, 선택 사항): JavaScript/TypeScript 및 Python 파일을 분석할지 여부(기본값: false)includeSymbols(부울, 선택 사항): 응답에 코드 기호를 포함할지 여부(기본값: false)symbolType(enum, 선택 사항): includeSymbols가 true인 경우 포함할 심볼 유형(옵션: 'functions', 'variables', 'classes', 'imports', 'exports', 'all', 기본값: 'all')filePatterns(문자열 배열, 선택 사항): 분석할 파일 패턴(예: [' .js', ' .py', 'config.*'])maxDepth(숫자, 선택 사항): 분석할 최대 디렉토리 깊이(기본값: 5단계)
참고: 익명 함수는 결과에서 자동으로 필터링됩니다.
도구 호출 시 출력 텍스트 예
Directory structure for: C:\Users\Admin\Desktop\mcp\context-provider-mcp
Code Analysis Summary:
- Files analyzed: 3
- Total functions: 29
- Total variables: 162
- Total classes: 0
Note: Symbol analysis is supported for JavaScript/TypeScript (.js, .jsx, .ts, .tsx) and Python (.py) files only.
Code analysis limited to a maximum depth of 5 directory levels (default).
├── index.js (39 KB)
│ └── [Analyzed: 22 functions, 150 variables, 0 classes]
│ Functions:
│ - initializeTreeSitter [39:0]
│ - getLanguageFromExtension [107:0]
│ - getPosition [138:24]파일 패턴 예제
filePatterns 매개변수를 사용하여 분석할 파일을 지정할 수 있습니다. 이 기능은 여러 언어가 포함된 복잡한 프로젝트나 특정 관심 파일을 분석할 때 유용합니다.
예:
["*.js", "*.py"]- 모든 JavaScript 및 Python 파일 분석["config.*"]- 확장자에 관계없이 모든 구성 파일을 분석합니다.["package.json", "*.config.js"]- package.json 및 모든 JavaScript 구성 파일을 분석합니다.[".ts", ".tsx", ".py"]- TypeScript 및 Python 파일 분석(확장자 형식 사용)
파일 패턴 매칭은 다음을 지원합니다.
와일드카드(*)를 사용한 간단한 글로브 패턴
직접 파일 확장자(점 포함 또는 제외)
정확한 파일 이름
대규모 프로젝트 처리
매우 큰 프로젝트의 경우 maxDepth 매개변수를 사용하여 도구가 디렉터리를 탐색하는 깊이를 제한할 수 있습니다.
maxDepth: 2- 루트 디렉토리와 하위 디렉토리의 한 수준만 분석합니다.maxDepth: 3- 루트와 두 레벨의 하위 디렉토리를 분석합니다.maxDepth: 0- 루트 디렉토리에 있는 파일만 분석합니다.
이 기능은 다음과 같은 경우에 특히 유용합니다.
대형 모노레포 작업
많은 종속성이 있는 프로젝트 분석
타사 라이브러리가 아닌 주요 소스 코드에만 초점을 맞춥니다.
지원 언어
코드 기호 분석은 다음에 대해 지원됩니다.
자바스크립트(.js)
JSX(.jsx)
타입스크립트(.ts)
TSX(.tsx)
파이썬(.py)
filePatterns 매개변수를 사용하면 디렉토리 구조에 다른 파일 유형을 포함할 수 있지만, 심볼릭 분석은 제한될 수 있습니다.
개발
개발 환경 설정
# Clone the repository
git clone https://github.com/your-username/code-context-provider-mcp.git
cd code-context-provider-mcp
# Install dependencies
npm install
# Set up WASM parsers
npm run setup설치 후
설치 후 패키지의 prepare 스크립트가 자동으로 실행되어 WASM 파서를 다운로드합니다. 어떤 이유로든 다운로드가 실패하면 사용자는 수동으로 설치 프로그램을 실행할 수 있습니다.
npx code-context-provider-mcp-setup특허
MIT
더 많은 정보나 도움이 필요하시면
Available Tools
1 toolget_code_contextA
Returns Complete Context of a given project directory, including directory tree, and code symbols. Useful for getting a quick overview of a project. Use this tool when you need to get a comprehensive overview of a project's codebase. Useful at the start of a new task.
| Name | Required | Description | Default |
|---|---|---|---|
| absolutePath | Yes | Absolute path to the directory to analyze. For windows, it is recommended to use forward slashes to avoid escaping (e.g. C:/Users/username/Documents/project/src) | |
| analyzeJs | No | Whether to analyze JavaScript/TypeScript and Python files. Returns the count of functions, variables, classes, imports, and exports in the codebase. | |
| includeSymbols | No | Whether to include code symbols in the response. Returns the code symbols for each file. | |
| maxDepth | No | Maximum directory depth for code analysis (default: 5 levels). Directory tree will still be built for all levels. Reduce the depth if you only need a quick overview of the project. | |
| symbolType | No | Type of symbols to include if includeSymbols is true. Otherwise, returns only the directory tree. | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It describes what the tool returns (context, directory tree, code symbols) and its usefulness for project overviews, but lacks details on performance, error handling, or specific output format. This provides basic behavioral context but leaves gaps for a tool with 5 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized with three sentences that each add value: stating the tool's purpose, its usefulness for overviews, and when to use it. It is front-loaded with the core functionality. A minor deduction for slight redundancy ('useful' appears twice).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, no output schema, no annotations), the description is moderately complete. It covers the purpose and usage context but lacks details on output format, error cases, or performance considerations. Without an output schema, more guidance on return values would be beneficial for full contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema fully documents all 5 parameters. The description does not add any parameter-specific semantics beyond what the schema provides, such as explaining interactions between parameters like analyzeJs and includeSymbols. The baseline score of 3 reflects adequate but not enhanced parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('returns complete context') and resources ('project directory, including directory tree, and code symbols'). It distinguishes the tool's comprehensive overview capability, which is well-defined even without sibling tools for comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool ('useful for getting a quick overview of a project' and 'useful at the start of a new task'). However, it lacks explicit guidance on when not to use it or alternatives, as there are no sibling tools mentioned to differentiate from.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
get_code_context
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool has a clear and distinct purpose focused on providing project context.
The naming follows a consistent verb_noun pattern (get_code_context), and with only one tool, there is no inconsistency to evaluate. The naming is clear and descriptive.
A single tool is generally too few for most MCP server purposes, as it limits functionality and can feel thin. For a 'Code Context Provider', one tool may not cover all potential needs like updating or filtering context, making it borderline inadequate.
The tool set is severely incomplete for the implied domain of code context provision. While it offers a comprehensive overview, there are obvious gaps such as tools for updating context, filtering by file type, or handling specific symbols, which could lead to agent workarounds or failures.
Maintenance
Related MCP Connectors
Codebase graphs, caller impact analysis, and recorded project context for AI coding agents.
Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.
Code intelligence for coding agents: semantic, AST, graph, and full-text search. 279+ languages.
Deterministic context layer for your codebase: change impact, blast radius, answers with receipts.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI assistants to understand and navigate codebases through structural analysis. Provides code mapping, symbol search, and impact analysis using ast-grep for accurate parsing of Python, JavaScript, TypeScript, and Go projects.453MIT
- AlicenseCqualityDmaintenanceEnables code analysis of JavaScript, TypeScript, TSX, Python, and Rust files using Tree-sitter, providing symbol listing, definition/reference lookup, AST queries, LSP-style features, and SQLite indexing for efficient cross-file searches.219 npmMIT
- AlicenseNot gradedqualityCmaintenanceProvides a semantic understanding of your codebase by parsing with tree-sitter and building a graph of symbols and dependencies. Enables AI assistants to navigate code, analyze changes, and discover architecture using 18 tools with minimal context overhead.9 npm1MIT
- AlicenseAqualityFmaintenanceA deterministic structural code map server for AI agents, giving them the shape of a codebase (imports, exports, classes, functions, signatures, comments, TODO-markers) without reading whole files into context. Powered by tree-sitter WASM grammars, it runs anywhere Node 18+ works.77 npm1AGPL 3.0