Поставщик контекста кода MCP
MCP-сервер, который предоставляет контекст кода и анализ для помощников ИИ. Извлекает структуру каталогов и символы кода с помощью парсеров WebAssembly Tree-sitter с нулевыми собственными зависимостями.
Функции
Создать структуру дерева каталогов
Анализ файлов JavaScript/TypeScript и Python
Извлечение символов кода (функций, переменных, классов, импорта, экспорта)
Совместимость с протоколом MCP для бесшовной интеграции с помощниками на базе искусственного интеллекта
Related MCP server: Document Automation MCP Server
Быстрое использование (настройка MCP)
Установка через Smithery
Чтобы автоматически установить Code Context Provider для Claude Desktop через Smithery :
npx -y @smithery/cli install @AB498/code-context-provider-mcp --client claudeОкна
{
"mcpServers": {
"code-context-provider-mcp": {
"command": "cmd.exe",
"args": [
"/c",
"npx",
"-y",
"code-context-provider-mcp@latest"
]
}
}
}MacOS/Linux
{
"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— анализировать только файлы в корневом каталоге
Это особенно полезно, когда:
Работа с большими монорепозиториями
Анализ проектов со множеством зависимостей
Сосредоточение внимания только на основном исходном коде, а не на сторонних библиотеках
Поддерживаемые языки
Анализ символов кода поддерживается для:
JavaScript (.js)
JSX (.jsx)
TypeScript (.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Лицензия
Массачусетский технологический институт