adrianczuczka/mason

adrianczuczka/mason

от adrianczuczka
Mason — MCP-сервер для AI-ассистентов, который строит концептуальную карту кодовой базы. Вместо повторного чтения файлов ассистент загружает карту, экономя до 67% токенов на архитектурных вопросах....

Mason – the context builder for LLMs 👷

npm version CI npm downloads license issues

A persistent concept map for your AI coding assistant — so it stops re-exploring your codebase every session.

Up to 67% fewer tokens on architecture questions · same answer quality · MCP-only

claude mcp add mason --scope user -- npx -p mason-context mason-mcp

Restart Claude Code, then ask: "use mason to set up this project." The assistant calls mason_init, walks you through a quick Q&A to build the concept map, and you're done.

Next session, your assistant loads the map instead of grepping 8 files to figure out what your app does.

0.4.0 note: Mason is MCP-only as of v0.4.0. The previous mason <command> CLI has been removed — everything runs through MCP tools, driven by your assistant. See 0.4.0 migration below if you used the old CLI.


The pain

Every new conversation about your code, your assistant starts from zero. It greps for auth, reads three files, greps for user, reads three more, pieces together the architecture, then finally answers. Tomorrow you ask a different question — same dance. The understanding it built yesterday is gone.

Инструменты были проиндексированы:
analyze_project

Выполняет анализ истории git в кодовой базе. Возвращает паттерны соглашений о коммитах, устаревшие директории и часто изменяемые файлы. Это совокупная статистика по сотням коммитов, которую было бы трудоёмко вычислить вручную.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

export_to_confluence

Синхронизирует концептуальную карту проекта с Confluence в виде вики-страниц, понятных продуктовой команде: индексная страница, по одной странице на каждую функцию (описания на языке PM, без путей к файлам) и страница изменений. Mason заменяет содержимое управляемых страниц; ручные правки этого содержимого перезаписываются. Требует, чтобы сначала был вызван mason_set_confluence.

Параметры
  • changelogPageTitlestring

    Title of the changelog page (default: 'Mason — Changelog')

  • dirstringобязательный

    Absolute path to the project root directory

  • featurePagePrefixstring

    Prefix for each feature page title (default: 'Feature: ')

  • indexPageTitlestring

    Title of the index page (default: 'Mason — System Map')

  • parentPageIdstring

    Override the configured parent page ID

  • spaceKeystring

    Override the configured space key

full_analysis

Выполняет полный анализ проекта за один вызов. Возвращает статистику истории git, структуру проекта с количеством файлов, подобранные образцы кода (примерно по 60 строк каждый) и сопоставление тестовых и исходных файлов. Это рекомендуемая отправная точка — сначала вызывайте этот инструмент, затем читайте конкретные файлы нативно для получения полного содержимого.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

generate_snapshot_batch

Этап Map сборки концепт-карты. Возвращает один пакет исходных файлов (скелеты каждого файла в пакете плюс несколько более глубоко прочитанных тел для привязки), вместе с системным промптом, который инструктирует вас извлекать возможности и потоки ТОЛЬКО для этого пакета. Вызывайте повторно с возвращённым nextOffset, пока он не станет null, вызывая save_partial_snapshot между каждым вызовом. Используйте названия функций, естественные для продукта, чтобы частичные результаты чисто объединялись на этапе Reduce.

Параметры
  • batchSizeinteger

    Files per batch. Defaults to 50.

  • dirstringобязательный

    Absolute path to the project root directory

  • filesstring[]

    Scope the batch walk to this explicit file list — e.g. the drift set from mason_check_drift (changedFiles + unmappedFiles). Pass the SAME list on every batch call of one refresh run. Triggers refresh mode: reduce_snapshot will merge the partials into the existing map instead of rebuilding it.

  • offsetinteger

    0-indexed file offset to start the batch at. Omit on the first call; pass the nextOffset from the previous response for subsequent calls.

get_code_samples

Получает превью (первые ~60 строк) репрезентативных файлов исходного кода из кодовой базы. Включает точки входа, конфигурационные файлы, горячие файлы (часто изменяемые), тестовые примеры и по одному файлу из каждой директории для охвата. Читает файлы нативно для полного содержимого.

Параметры
  • countnumber

    Maximum number of files to sample (default: 15)

  • dirstringобязательный

    Absolute path to the project root directory

get_context

Собирает контекст задачи: сопоставляет решения с обоснованием, утверждением, владельцем, источниками, последней проверкой и актуальностью, а также связанные тесты, влияние на файлы и любые доступные записи карты. Предложения - рекомендации; устаревшие записи не проверены; принятые решения - ограничения, действительные при условии актуальности. Ни инициализация, ни карта не требуются. Передайте задачу и необязательные файлы. map.status и диагностика сохраняют отсутствующие или недействительные знания. Влияние охватывает до трех уникальных файлов, расширяя якоря каталогов.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

  • filesstring[]

    Optional file paths already known to be involved (e.g. from a diff or stack trace). Entries containing them are boosted above pure text matches.

  • taskstringобязательный

    The task, bug, or change request in natural language — e.g. 'add rate limiting to the API client' or a ticket description

get_impact

Прослеживает исторических партнёров по совместным изменениям, связанные тесты и ссылки с доказательствами: разрешённые импорты, явные пути или неопределённые кандидаты имён. Кандидаты - не доказанные зависимости. Детерминированный и только для чтения; не требует инициализации или карты понятий.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

  • filesstring[]обязательный

    File paths or names to analyze (e.g., ['WeatherRepository.kt'] or ['src/services/auth.ts'])

get_snapshot

Возвращает опциональную карту архитектуры «фича-файл» с данными о дрейфе и доверии. Если карты нет, возвращает exists:false, а также структуру проекта, Git-сигналы и пары тестов. Decision capture, get_context и get_impact по-прежнему работают. Инициализация не требуется.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

mason_automation

Проверяет установленную автоматизацию и наблюдаемые события хоста, или возобновляет/проверяет сохранённые доказательства исправления документации между сеансами. status доступен только для чтения; check сохраняет локальные эталоны и отчёты проверки, не редактируя исходный код и не утверждая рекомендации. Возвращает краткие результаты с полным путём к отчёту. Работает без карты.

Параметры
  • actionenumобязательный

    Inspect configuration and receipts, or capture/resume and verify original audit evidence.

  • dirstringобязательный

    Absolute path to the project directory

mason_check_drift

Проверяет, насколько карта понятий отошла от HEAD. Детерминированная (git + файловая система, без LLM). Возвращает, какие функции/потоки устарели и какие изменённые файлы за ними стоят, новые исходные файлы, ещё не занесённые на карту, файлы-призраки (занесены, но удалены), переименования и recommendation: up-to-date (ничего не нужно делать), incremental (обновить только устаревшие записи через save_snapshot) или full-rebuild (перезапустить сборку Map-Reduce). Вызывайте этот инструмент перед тем, как довериться карте в длительной сессии, или периодически, чтобы поддерживать карту и любые синхронизированные вики в актуальном состоянии.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

mason_complete_init

Записывает настройку инструкций ассистента локально в игнорируемый .mason/local/project.json, а настройки функций - в общий .mason/config.json. Другие инструменты работают без этого маркера. Повторные вызовы сохраняют исходное время настройки и существующие параметры; передавайте confluenceConfigured только для изменения этого параметра.

Параметры
  • confluenceConfiguredboolean

    Set the Confluence setup status; omit to preserve the existing value

  • dirstringобязательный

    Absolute path to the project root directory

mason_init

Inspect this project now: returns documentation audit findings, committed-diff review findings, decision/map status, and a quickstart playbook. Quickstart and map modes are read-only and deterministic. Explicit mode: setup configures MCP, instructions and lifecycle hooks to use mason on PATH while retaining original audit evidence; use it only when the user requests setup. Optional host selects codex or claude. Optional base selects the review comparison; evidence imports CI manifests with check outcomes, commit freshness, and links to changed files and accepted decisions. mode: map returns the full Map-Reduce build workflow. Repeat calls refresh findings even after setup.

Параметры
  • basestring

    Git ref for committed-diff review. Defaults to the first available main branch ref.

  • dirstringобязательный

    Absolute path to the project root directory

  • evidencestring[]

    Repository-local CI evidence manifests to include in the review. Imports Vitest JSON and SARIF without executing check commands.

  • hostenum

    Assistant to configure in setup mode; inferred only when unambiguous.

  • modeenum

    Quickstart inspects without edits; map requests an architecture build; setup installs the shared onboarding flow.

mason_repair

Отслеживает исправления документации относительно исходных аудиторских доказательств. prepare сохраняет локальную базовую линию и возвращает рабочий заказ по области; verify читает эту базовую линию и сообщает об исправленных, неисправленных, требующих проверки, непроверенных и новых замечаниях. Подавленные предупреждения остаются нерешёнными. Не редактирует документацию и не утверждает решения. Карта не требуется.

Параметры
  • actionenumобязательный
  • baselinePathstring

    Original baseline path returned by prepare; required for verify.

  • checksenum[]

    Optional audit check subset for prepare. Verification always uses the original checks.

  • dirstringобязательный

    Absolute path to the project root directory

mason_set_confluence

Настраивает учётные данные Confluence. Двухшаговый процесс: (1) вызов без spaceKey для проверки учётных данных и получения списка доступных пространств — передайте их пользователю. (2) повторный вызов с теми же baseUrl/email/apiToken плюс выбранный spaceKey для сохранения. Учётные данные хранятся в ~/.mason/config.json. Предупредите пользователя, что API-токен будет виден в истории чата, прежде чем он его вставит.

Параметры
  • apiTokenstringобязательный

    API token from id.atlassian.com/manage-profile/security/api-tokens

  • baseUrlstringобязательный

    Confluence base URL. Accepts acme, acme.atlassian.net, or https://acme.atlassian.net (normalized automatically).

  • emailstringобязательный

    User's Atlassian account email

  • parentPageIdstring

    Optional parent page ID under which Mason's index page is created

  • spaceKeystring

    Confluence space key. Omit on the first call to list available spaces.

reduce_snapshot

Сокращает шаг построения карты концепций. Возвращает каждый частичный снимок и системный запрос с просьбой объединить их в одну целостную карту всего проекта. Преобразует варианты платформ в единые возможности продукта, дедуплицирует почти дубликаты и гарантирует, что ни один файл не будет пропущен. После создания объединенной карты вызовите save_snapshot, чтобы сохранить её (это также очищает частичные снимки).

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

review_decision

Prepare a decision review: returns the full record and history, any operative accepted revision, provenance, changes and previews for both sets of anchors, and a reviewToken. Then record accept, reaffirm, or retire with that token, the authorized reviewer, and a reason. Acceptance replaces the operative revision; retirement withdraws the entire record including its proposal. Acceptance requires owner, source, readable Git HEAD, and committed anchor changes. Changed records or code invalidate the token. Identities and approvals are recorded assertions for normal PR review, not authenticated proof.

Параметры
  • actionenum

    Prepare is read-only. Other actions record an explicitly authorized review.

  • dirstringобязательный

    Absolute path to the project root directory

  • idstringобязательный

    Decision id from get_context or save_decision

  • notestring

    Review rationale; required for a verdict. Cite evidence for the decision.

  • reviewerstring

    Identity of the actual reviewer; required for a verdict. Never invent one.

  • reviewTokenstring

    Token from the prepared review; rejects stale record or code revisions

save_decision

Фиксирует или изменяет предложение решения с обоснованием, якорями, необязательным владельцем, источниками и известным участником. Не требуется настройка или карта. Создаёт локальную запись и сохраняет историю содержимого. Изменения создают отложенное предложение, пока последняя принятая редакция остаётся действующей; неизменённое содержимое не перепроверяет и не обновляет его. Используйте review_decision для авторизованного принятия или повторного подтверждения. Предложение не может заменить запись с действующей принятой редакцией; рассмотрите её замену, а оригинал отдельно выведите из обращения.

Параметры
  • actorstring

    Known person or agent recording this revision. Omit if unknown; do not infer from Git identity.

  • bodystringобязательный

    The knowledge itself: what was tried/decided, why, and what to avoid. Must contain information NOT derivable by reading the code.

  • categoryenumобязательный
  • dirstringобязательный

    Absolute path to the project root directory

  • filesstring[]

    Repo-relative files or directory prefixes this applies to. Matching is shared by retrieval, hooks, review, and drift checking; changes flag the decision for re-verification.

  • forceboolean

    Save even when a near-duplicate was detected

  • idstring

    Existing id to revise. Changed content becomes a proposal; unchanged content leaves the review and freshness untouched.

  • ownerstring | null

    Responsible person or team, when known. Null clears it. Required for acceptance.

  • sourcesobject[]

    Known PR, issue, incident, discussion, or document references. Omit to preserve; [] clears. At least one is required for acceptance.

  • supersedesstring

    Id of an unreviewed record or proposal with no accepted revision to replace. Operative accepted decisions require separate review and retirement.

  • titlestringобязательный

    Short, specific headline — becomes the stable record id

save_partial_snapshot

Сохраните частичную карту понятий, полученную для одного пакета. Вызывайте это один раз на пакет, с batchId из ответа generate_snapshot_batch. Частичные карты накапливаются в .mason/partial-snapshots/ и объединяются на этапе свёртки.

Параметры
  • batchIdstringобязательный

    The batchId returned by generate_snapshot_batch.

  • dirstringобязательный

    Absolute path to the project root directory

  • featuresobjectобязательный

    Partial features for this batch only — files outside the batch will be added by other partials.

  • flowsobjectобязательный

    Partial flows whose entire chain is in this batch. Cross-batch flows are reconstructed in reduce.

  • offsetintegerобязательный

    The offset returned by generate_snapshot_batch. Used to order partials in the reduce step.

save_snapshot

Сохраняет карту соответствия концепций файлам в виде постоянного снимка проекта. Отображает названия функций и потоки данных на файлы, которые их реализуют. Сохраняется между сеансами — будущие сессии могут вызвать get_snapshot, чтобы мгновенно найти нужные файлы. Не требуется API-ключ — вы — LLM, которая генерирует эту карту.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

  • featuresobjectобязательный

    Map of feature names to their implementing files

  • flowsobjectобязательный

    Map of flow names to ordered file chains

  • removeFeaturesstring[]

    Feature names to delete from the existing map — for features that were renamed or no longer exist. Applied before merging; only meaningful on incremental saves.

  • removeFlowsstring[]

    Flow names to delete from the existing map. Applied before merging; only meaningful on incremental saves.

save_verification

Записывайте вердикты verify_snapshot. Записи, признанные ok, получают отметку verifiedAt; сбои помечаются флагом verificationFailed с вашим примечанием и отображаются в get_context, get_snapshot и mason_check_drift, пока не будут исправлены. Примечания к вердикту обязательны для сбоев.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

  • verdictsobjectобязательный

    Entry name → verdict, exactly as returned by verify_snapshot

verify_snapshot

Выборочно проверяет КОРРЕКТНОСТЬ карты понятий (дрифт проверяет свежесть; эта проверка — что записи были верны изначально). Возвращает выборку записей — всегда сначала непроверенные и проверенные дольше всего — с каркасами их заявленных файлов, чтобы вы могли судить, действительно ли файлы реализуют то, что утверждает запись. Сообщайте результаты обратно через save_verification. Запускайте периодически или после автоматического обновления, записавшего записи, не просмотренные человеком.

Параметры
  • dirstringобязательный

    Absolute path to the project root directory

  • sampleinteger

    Entries to sample (default 5)

Похожие MCP-сервера

James-Chahwan/repo-graph

James-Chahwan/repo-graph

Строит граф кодовой базы для LLM-ассистентов: описывает сущности, связи и потоки. Позволяет быстро находить нужные файлы без чтения всего кода, экономя до 60% токенов — полезно для больших проектов...

Python15
PatrickSys/codebase-context

PatrickSys/codebase-context

MCP сервер для AI-агентов: перед поиском и редактированием кода строит карту конвенций команды — архитектуру, активные шаблоны и лучшие примеры. Агент получает компактный контекст с сигналами трендов, golden files и памятью команды. Разработчики экономят токены и получают релевантные примеры без ...

TypeScript63
szeider/consult7

szeider/consult7

MCP сервер для выноса анализа больших файлов на модели с контекстом до 2M токенов через OpenRouter. Решает проблему переполнения контекста агента, позволяя анализировать целые кодовые базы и генерировать ревью. Поддерживает Gemini, Claude и другие модели.

Python296
rdanieli/tentra-mcp

rdanieli/tentra-mcp

MCP-сервер для AI-агентов: создает постоянный граф кода и архитектурные диаграммы. Работает в Cursor, Claude Code, Codex и Windsurf. Сокращает токены на 99.4% (символьные запросы вместо полного перечтения). Включает 36 инструментов для архитектуры, анализа кода, графического поиска и контрактов. ...

TypeScript5
Disentinel/grafema

Disentinel/grafema

Grafema - MCP сервер, который строит единый граф из вашего кода, инфраструктуры и знаний, позволяя запрашивать структуру системы с помощью 30+ MCP инструментов. Полезен разработчикам и AI-агентам д...

Rust36
janreges/ai-distiller-mcp

janreges/ai-distiller-mcp

AI Distiller MCP-сервер дистиллирует код до публичных API и типов, сжимая объём на 90-98% для контекста AI. Помогает разработчикам дать Claude и Cursor точное понимание кодовой базы, уменьшая галлю...

C167
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин