npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

autodoc-mcp-server

v1.1.13

Published

MCP сервер для доступа к базе данных автономного агента autodoc - поиск в кодовой базе и анализ зависимостей

Readme

🔌 MCP сервер для Cline

Интеграция с Cline IDE для доступа к документации и поиску в кодовой базе через инструменты MCP.

🚀 Быстрый старт

Локальный запуск

  1. Установите зависимости:

    pip install -r requirements.txt
  2. Запустите сервер:

    python main.py
  3. Используйте в Cline:

    • Инструменты появятся автоматически в интерфейсе
    • Доступно через контекстное меню или команды

Установка как npm-пакет (для использования без локального запуска)

  1. Требования:

    • Python 3.8+
    • Установите зависимости: pip install mcp chromadb networkx
  2. Опубликуйте пакет:

    npm publish
  3. Используйте в любом проекте:

    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