Graph of Skills MCP
Graph of Skills строит граф зависимостей между SKILL.md и отдает агенту через MCP только нужный набор скиллов под задачу
- 228 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Запускает Python-сервер через uv и отправляет тексты скиллов провайдеру эмбеддингов, ключ хранится в `.env`
- Инструменты `index_skills` и `add_skill` изменяют граф и читают каталоги скиллов на диске
Установка
- Работает в
Ручная установка
claude mcp add graph-of-skills -- uv run --directory /path/to/graph-of-skills gos-claudeСначала `git clone https://github.com/davidliuk/graph-of-skills.git`, `uv sync` и `cp .env.example .env` с ключом эмбеддингов. Для готового графа добавьте `--workspace data/gos_workspace/skills_200_v1`.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Запускает Python-сервер через uv и отправляет тексты скиллов провайдеру эмбеддингов, ключ хранится в `.env`
- Инструменты `index_skills` и `add_skill` изменяют граф и читают каталоги скиллов на диске
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Graph of Skills (GoS) решает проблему больших библиотек скиллов: если загрузить в контекст все `SKILL.md`, место кончается, а векторный поиск не знает, что один скилл требует другого. GoS заранее строит по библиотеке граф с зависимостями, связями рабочих процессов и семантическими ребрами, а во время задачи отдает небольшой ранжированный набор вместе с предпосылками и родственными скиллами. Поиск идет в четыре шага. Сначала берутся кандидаты по эмбеддингам и по точным токенам, затем списки объединяются, после этого результат переранжируется по структуре графа и возвращается пакет ограниченного размера, удобный агенту. Метод принят на EMNLP 2026, в репозитории лежат оценки на SkillsBench и библиотеки скиллов для воспроизведения результатов. Для Claude Code в репозитории есть MCP-сервер `gos-claude`. Его подхватывает `.mcp.json`, если открыть проект, либо регистрируют командой `claude mcp add graph-of-skills -- uv run --directory /path/to/graph-of-skills gos-claude`. Инструменты: `search_skills`, `retrieve_skill_bundle`, `hydrate_skills`, `list_skills`, `get_skill_detail`, `get_skill_neighbors`, `get_status`, а также `index_skills` и `add_skill` для построения и пополнения графа.
Для кого. Исследователям и разработчикам с библиотекой в сотни скиллов, у которых агент тонет в списке доступных навыков, и командам, которые хотят воспроизвести метод из статьи.
Подходит, если
- В библиотеке сотни `SKILL.md`, и агент не может загрузить их все в контекст
- Скилл для задачи требует других скиллов, и нужен набор вместе с предпосылками
- Агенту нужно найти скиллы для обработки 3D-сетки: запрос `search_skills` вернет ранжированную подборку
- Вы пополняете библиотеку и хотите добавлять скиллы в существующий граф через `add_skill`
- Требуется проверить метод на SkillsBench с готовыми рабочими пространствами
Не подходит, если
- В библиотеке десяток скиллов: хватит обычной загрузки без графа
- Нет ключа провайдера эмбеддингов (OpenAI, Gemini или совместимого): индекс без него не построить
- Нужна установка одной командой: проект ставится клоном и `uv sync`, а граф скачивают или строят отдельно
Пример запроса к агенту
Найди через GoS скиллы для обработки 3D-сеток, получи их пакет вместе с предпосылками и выполни задачу по их инструкциямMCP
- Транспорт
- stdio
- Авторизация
- ключ необязателен
Переменные окружения
OPENAI_API_KEYсекрет- Ключ провайдера эмбеддингов; для OpenRouter задается `OPENROUTER_API_KEY`, остальное в `.env.example`.
Ограничения
- Нужны Python 3.10–3.12, `uv` и ключ провайдера эмбеддингов (OpenAI, Gemini или совместимый), который задается в `.env`.
- Установка идет клонированием репозитория и `uv sync`, готовые рабочие пространства скачивают скриптом `./scripts/download_data.sh --workspace`.
- Это исследовательский проект: оценка выполнена на SkillsBench, а обновлялся репозиторий в последний раз 30 августа 2026 года.
- Построение графа вызывает модели и тратит токены провайдера, кэширование ответов OpenRouter включено по умолчанию.
Как отключить. Выполните `claude mcp remove graph-of-skills`, а если сервер подхватывался через `.mcp.json`, удалите эту запись или закройте проект. Каталог репозитория с рабочими пространствами удаляется вручную.
Частые вопросы
Как подключить Graph of Skills к Claude Code?
Клонируйте репозиторий, выполните `uv sync`, заполните `.env` и скачайте рабочие пространства. Затем откройте проект в Claude Code (сервер подхватится через `.mcp.json`) или зарегистрируйте его командой `claude mcp add graph-of-skills -- uv run --directory /path/to/graph-of-skills gos-claude`.
Чем GoS отличается от векторного поиска скиллов?
Векторный поиск ранжирует скиллы по сходству текста. GoS дополнительно учитывает граф зависимостей и связей, поэтому вместе со скиллом возвращает его предпосылки и соседей по рабочему процессу.
Какие инструменты MCP есть у GoS?
`search_skills`, `retrieve_skill_bundle`, `hydrate_skills`, `list_skills`, `get_skill_detail`, `get_skill_neighbors`, `get_status`, `index_skills` и `add_skill`. Первые дают поиск и загрузку, последние строят и пополняют граф.
Откуда взять готовый граф?
Рабочие пространства и данные скачивает скрипт `./scripts/download_data.sh --workspace`; библиотеки скиллов и данные тестов выложены на Hugging Face в наборе DLPenn/graph-of-skills-data.
Какие провайдеры эмбеддингов подходят?
OpenAI напрямую, OpenRouter, Gemini или любой совместимый с OpenAI провайдер. Модель и размерность задаются в `.env` переменными `GOS_EMBEDDING_MODEL` и `GOS_EMBEDDING_DIM`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыClaude Skills MCP — поиск скиллов по смыслу
Claude Skills MCP
MCP-сервер с векторным поиском: агент описывает задачу и получает подходящие скиллы из коллекций Anthropic и K-Dense
Meta Skill (ms)
Meta Skill
Meta Skill (ms) хранит скиллы локально в SQLite и Git, ищет по ним гибридным поиском и отдает агентам через MCP под бюджет токенов
Локальный семантический поиск по 374 скиллам: агент находит нужный по описанию задачи и читает его целиком только при выборе.
Поиск скиллов по запросу прямо в разговоре: агент находит SKILL.md, читает его и применяет без предварительной установки
Настольное приложение и CLI, чтобы ставить, синхронизировать и раскладывать скиллы агентов между Claude Code, Codex, Cursor и другими инструментами
Терминальная панель на Go для скиллов агентов: список, проверка, обновление и поиск новых в одном окне
Коротко о README
README начинается со сведений об авторах, ссылок на статью EMNLP 2026 и хронологии обновлений. Далее объяснены идея графа навыков и конвейер поиска из четырех шагов, результаты на SkillsBench и размерах библиотеки до 2000 скиллов, установка и настройка провайдеров эмбеддингов. Отдельно описана работа с Claude Code через MCP-плагин и перечень команд CLI.