autodoc-mcp-server
v1.1.13
Published
MCP сервер для доступа к базе данных автономного агента autodoc - поиск в кодовой базе и анализ зависимостей
Maintainers
Readme
🔌 MCP сервер для Cline
Интеграция с Cline IDE для доступа к документации и поиску в кодовой базе через инструменты MCP.
🚀 Быстрый старт
Локальный запуск
Установите зависимости:
pip install -r requirements.txtЗапустите сервер:
python main.pyИспользуйте в Cline:
- Инструменты появятся автоматически в интерфейсе
- Доступно через контекстное меню или команды
Установка как npm-пакет (для использования без локального запуска)
Требования:
- Python 3.8+
- Установите зависимости:
pip install mcp chromadb networkx
Опубликуйте пакет:
npm publishИспользуйте в любом проекте:
npx -y autodoc-mcp-serverЭто позволит запускать MCP-сервер как внешний инструмент, аналогично
@modelcontextprotocol/server-sequential-thinking.
🛠️ Инструменты MCP
search_docs
Семантический поиск в кодовой базе
Примеры использования:
- "где используется JWT токен?"
- "как работает функция авторизации?"
- "найди все места с обработкой ошибок"Параметры:
query(string): Поисковый запросtop_k(integer, optional): Количество результатов (1-10)
get_dependencies
Анализ зависимостей файла
Примеры:
- "auth/jwt.py"
- "src/main.ts"
- "utils/helpers.js"Показывает:
- Какие модули импортирует файл
- Какие файлы импортируют этот файл
- Граф зависимостей
index_status
Статус индексации
Показывает:
- Количество проиндексированных файлов
- Размер векторной базы данных
- Состояние графа зависимостей
- Время последнего обновленияtrigger_reindex
Принудительная переиндексация
Запускает:
- Полную переиндексацию всех файлов
- Обновление графа зависимостей
- Пересоздание векторных эмбеддингов⚙️ Конфигурация
Переменные окружения:
# Эмбеддинги
EMBEDDING_PROVIDER=ollama
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=bge-m3
# Или OpenRouter
EMBEDDING_PROVIDER=openrouter
OPENROUTER_API_KEY=your_keyНастройки в config.py:
# Какие файлы индексировать
SUPPORTED_EXTENSIONS = ['.py', '.md', '.js', '.ts']
# Параметры индексации
TEXT_CHUNK_SIZE = 500
TEXT_CHUNK_OVERLAP = 50
# Поиск
DEFAULT_TOP_K = 3
MAX_TOP_K = 10🔧 Как использовать в Cline
1. Автоматическая интеграция
После запуска MCP сервера инструменты появляются в Cline автоматически.
2. Контекстные команды
cline: "покажи зависимости файла auth.py"
cline: "найди функции логирования"
cline: "статус индексации"3. Вспомогательные команды
cline: "переиндексируй кодовую базу"
cline: "где используется база данных?"📊 Что видит MCP сервер
MCP сервер подключается к той же базе данных, что и автономный агент:
Кодовая база → Автономный агент (индексирует)
↓
ChromaDB + NetworkX
↓
MCP сервер (читает для Cline)🐛 Устранение неполадок
Сервер не запускается
# Проверьте зависимости
pip install -r requirements.txt
# Проверьте Ollama
curl http://localhost:11434/api/tagsИнструменты не появляются в Cline
# Проверьте настройки MCP в Cline
# Убедитесь что путь к main.py правильный
code ~/.config/Code/User/globalStorage/saoudrizwan.cline/cline_mcp_settings.jsonОшибки поиска
# Проверьте статус индексации
cline: "статус индексации"
# Запустите переиндексацию
cline: "переиндексируй"🔄 Синхронизация с автономным агентом
MCP сервер работает с той же базой данных, что и автономный агент:
- Автономный агент пишет данные (индексирует)
- MCP сервер читает данные (показывает в Cline)
- Watchdog обеспечивает автоматическую индексацию
📈 Производительность
- Быстрый поиск: Векторная база ChromaDB
- Авто-индексация: Watchdog мониторит изменения
- Кэширование: LRU cache для эмбеддингов
- Асинхронность: Параллельная обработка
🤝 Разработка
Добавление нового инструмента:
# В server.py, функция list_tools()
Tool(
name="my_tool",
description="Описание инструмента",
inputSchema={
"type": "object",
"properties": {
"param": {"type": "string"}
}
}
)
# В call_tool() добавить обработку
elif name == "my_tool":
# Логика инструмента
pass📄 Лицензия
MIT License
