Skip to main content
Glama
quzhiii

ai-disk-doctor-integrations

by quzhiii

Интеграции AI Disk Doctor

Универсальный локальный Agent Skill и MCP-сервер только для чтения для AI Disk Doctor Core.

Этот репозиторий является слоем интеграции и распространения. Он не реализует второй сканер, очиститель, механизм рисков, модель восстановления или систему политик. Локальное ядро (Core) остаётся источником истины для выполнения и политик.

Объём Alpha

MCP-сервер предоставляет четыре инструмента:

Инструмент

Поведение

Побочный эффект Core

core_status

Проверка доступности Core и требуемой поверхности команд

Нет

scan_summary

Запуск существующего контракта aidisk scan --json

Core может сохранить .aidisk/reports/scan-*.json

ai_model_inventory

Запуск существующего контракта aidisk models inventory --json

Не предполагается

scan_history

Список метаданных локальных снимков, принадлежащих Core

Нет

I0 не предоставляет инструментов clean, restore, quarantine, delete, произвольного shell или произвольной мутации файловой системы. explain_storage намеренно не включён до тех пор, пока объединённый контракт объяснимости M1C не станет доступен в публичном Core.

Related MCP server: local-tools-mcp-server

Установка

Предварительные требования

  • Node.js 18 или новее.

  • AI Disk Doctor Core v1.7.0 или совместимая более поздняя версия Core в PATH как aidisk/aidisk.exe.

  • Установите AIDISK_EXE, если бинарный файл Core установлен в другом месте.

Установка из клона:

git clone https://github.com/quzhiii/ai-disk-doctor-integrations.git
cd ai-disk-doctor-integrations
npm install
npm start

Для детерминированной локальной установки зафиксируйте клон репозитория или используйте тегированный релиз. Зависимость npm зафиксирована на @modelcontextprotocol/sdk 1.30.0 в package-lock.json.

Процесс использует MCP-транспорт stdio и должен запускаться MCP-клиентом, а не открываться как отдельная интерактивная программа.

OpenCode

OpenCode поддерживает проектно-локальные объявления MCP в opencode.json или opencode.jsonc:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ai-disk-doctor": {
      "type": "local",
      "command": ["node", "C:/absolute/path/to/ai-disk-doctor-integrations/src/server.js"],
      "cwd": "C:/absolute/path/to/your-workspace",
      "enabled": true
    }
  }
}

Для глобальной установки используйте абсолютные пути для аргументов command и при необходимости задайте AIDISK_EXE в environment. Установите cwd в рабочее пространство пользователя, где должны храниться снимки Core, а не в каталог интеграции. Затем используйте opencode mcp list или попросите агента проверить core_status. Проверенный пример находится в adapters/opencode/opencode.jsonc.

OpenCode Agent Skills обнаруживаются из .opencode/skills, .claude/skills или .agents/skills. Скопируйте или создайте симлинк skills/ai-disk-doctor в одно из этих мест для проектной или пользовательской установки.

Qwen Code

Qwen Code поддерживает локальные stdio MCP-серверы через qwen mcp или settings.json:

qwen mcp add --scope user --transport stdio ai-disk-doctor node ./src/server.js

Эквивалентная запись в .qwen/settings.json:

{
  "mcpServers": {
    "ai-disk-doctor": {
      "command": "node",
      "args": ["/absolute/path/to/ai-disk-doctor-integrations/src/server.js"],
      "cwd": "/absolute/path/to/your-workspace",
      "env": { "AIDISK_EXE": "aidisk" },
      "trust": false
    }
  }
}

Корень репозитория является пакетом расширения Qwen через его qwen-extension.json. Установите репозиторий как локальное расширение после npm install; см. adapters/qwen/README.md. Канонический Skill остаётся тем же Skill, а не специфичной для Qwen реализацией управления.

CodeBuddy / WorkBuddy

Используйте локальную поверхность конфигурации MCP, поддерживаемую установленным продуктом, и укажите её на тот же процесс stdio node ./src/server.js. Установите его рабочий каталог в рабочее пространство, где должна храниться история снимков Core. Никакая экспертная персона или специфичная для вендора логика рисков не включена. Точная упаковка откладывается до появления официального, локально тестируемого контракта клиента CodeBuddy / WorkBuddy; см. adapters/codebuddy/README.md.

TRAE

Используйте документированную проектную конфигурацию MCP от TRAE и добавьте тот же локальный процесс stdio. Установите его рабочий каталог в рабочее пространство, где должна храниться история снимков Core. Точная упаковка проекта откладывается до появления локально доступного клиента TRAE для проверки; см. adapters/trae/README.md.

Диагностика Core

# Verify the Core directly
aidisk --help

# Verify the integration server syntax
npm run check

# Override the Core executable
# Windows PowerShell:
$env:AIDISK_EXE = 'C:\\Tools\\aidisk.exe'
# POSIX shells:
export AIDISK_EXE=/opt/aidisk

Если Core отсутствует или возвращает некорректный/несовместимый вывод, core_status сообщает о структурированном сбое. Процесс MCP не загружает Core, не клонирует репозитории, не связывается с облачным сервисом и не подставляет молча другой сканер.

Границы безопасности

  • MCP-транспорт — только локальный stdio.

  • Сервер запускает только настроенный исполняемый файл aidisk с фиксированными подкомандами, ориентированными на чтение.

  • Не существует инструмента произвольного shell или произвольной команды.

  • Не существует инструмента очистки, выполнения карантина, восстановления, удаления или мутации.

  • scan_summary помечен как readOnlyHint: false, потому что текущее сохранение сканирования Core может записать снимок, принадлежащий AI Disk Doctor. Он по-прежнему destructiveHint: false и не изменяет пользовательские/рабочие файлы.

  • Инвентаризация моделей — только метаданные согласно контракту Core; эта интеграция не читает содержимое подсказок, транскриптов, исходников, документов, токенов, cookie или учётных данных.

  • Пути, передаваемые инструментам, передаются только соответствующей команде Core или считывателю метаданных истории. Они не рекурсивно читаются этой интеграцией.

Агенты никогда не должны обходить эти правила, удаляя пути с помощью shell-команд. Если будущий поток мутации будет одобрен, он должен использовать отдельную поверхность авторизации.

Разработка

npm install
npm run check
npm test

Для реального смоук-теста Core установите/соберите зафиксированную ревизию Core, поместите aidisk в PATH или задайте AIDISK_EXE и запустите npm test. Тест с реальным Core пропускается, если AIDISK_EXE не задан. Остальные протокольные тесты используют временные каталоги и случай отсутствующего Core; они не делают вид, что вендорные клиенты установлены.

Лицензия

Исходный код интеграции распространяется под двойной лицензией MIT или Apache-2.0. См. LICENSE-MIT и LICENSE-APACHE. Лицензирование Core остаётся регулируемым публичным репозиторием Core.

Статус

I0 Alpha. Этот репозиторий не является коммерческим Desktop и не содержит учётных записей, биллинга, прав доступа, телеметрии, облачной синхронизации или проприетарного кода Desktop.

Available Tools

4 tools
ai_model_inventoryAI Model And Cache InventoryA
Read-onlyIdempotent

Use AI Disk Doctor's existing metadata-only model inventory with Core defaults and return a bounded asset projection. It does not read model, prompt, source, token, or credential contents and does not mutate files.

ParametersJSON Schema
NameRequiredDescriptionDefault
toolNoOptional Core inventory tool selector.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
toolYes
rootsYes
assetsYes
summaryYes
truncatedYes
provenanceYes
generated_atNo
total_assetsYes
schema_versionNo
returned_assetsYes
stale_after_daysNo

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds key behavioral context: it explicitly states 'does not read model, prompt, source, token, or credential contents' and 'does not mutate files.' This goes beyond the hints by specifying what is not read and what is not mutated, which is valuable for the agent. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that states purpose, scope, and key behavioral constraints. It is front-loaded with the action ('return a bounded asset projection') and includes critical exclusions. Every clause earns its place, with no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that the tool has an output schema (which presumably describes the return projection), the description doesn't need to explain return values. The tool is simple (1 optional parameter) and has strong annotations. The description covers behavior and constraints well. It is complete enough for the agent to understand what the tool does and what it avoids. The only minor gap is not providing more context on when to use it vs. siblings, but given the simplicity, a 4 is justified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, meaning the schema documents the 'tool' parameter with its enum values. The description adds context by saying 'Optional Core inventory tool selector,' but this is largely redundant with the schema's 'Optional Core inventory tool selector' description. Since the schema already covers the parameter well, the description adds minimal extra meaning, but it does reinforce the optionality, so a baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool returns a 'bounded asset projection' using 'AI Disk Doctor's existing metadata-only model inventory with Core defaults.' It specifies the resource (model inventory) and the action (return a projection), which is clear enough. However, it does not explicitly distinguish from sibling tools like scan_summary or core_status, though the resource and action are specific enough to imply differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by stating it uses 'Core defaults' and an optional tool selector, but it does not provide explicit when-to-use guidance or mention alternatives. It doesn't say when to use this tool vs. siblings, but the context of a metadata-only inventory is somewhat clear. The guidance is implied rather than explicit, so it earns a 3.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

core_statusAI Disk Doctor Core StatusA
Read-onlyIdempotent

Check local AI Disk Doctor Core availability, required command surface, semantic version, and compatibility provenance without scanning or modifying files.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
coreYes
serverYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds contextual detail beyond the annotations by listing specific aspects checked (availability, command surface, semantic version, compatibility provenance) and explicitly reaffirms non-invasive behavior. Annotations already declare readOnly and idempotent, so the description enhances rather than contradicts them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, well-structured sentence conveys all essential details without redundancy. Every phrase earns its place, and the sentence is front-loaded with the primary action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool is low-complexity (no parameters) and an output schema exists, the description sufficiently covers what the tool checks (availability, command surface, version, provenance) and its side-effect-free nature. It is complete for an information-only status check.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters and the schema is fully covered. Since there are no parameters to describe, the description is not expected to elaborate on them, and the zero-parameter baseline of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a clear verb ('Check') with a specific resource ('local AI Disk Doctor Core availability, required command surface, semantic version, and compatibility provenance'). It differentiates from sibling tools like scan_summary and ai_model_inventory by emphasizing it does not scan or modify files.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this is a safe read-only status check but does not explicitly state when to choose it over alternatives. It notes it avoids scanning and modifying, which hints at contrast with scan_summary, but lacks explicit when-to-use or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

latest_diffAI Disk Doctor Latest DiffA
Read-onlyIdempotent

Use Core-owned latest snapshot discovery and diff semantics through aidisk diff --latest --json. No reports directory or paths are accepted from the model.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
toolYes
afterNo
beforeNo
changesYes
summaryYes
truncatedYes
provenanceYes
generated_atNo
total_changesYes
returned_changesYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds no contradictory information; it explains that the tool uses Core-owned semantics and the `--latest --json` options, which is additional context beyond the annotations, though it doesn't describe side effects because there are none.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences that are front-loaded with the purpose and immediately state the key constraint (no paths accepted). Every word adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters, an output schema exists (though not detailed), and annotations cover safety traits, the description is complete for its purpose. It might benefit from clarifying the return format, but the output schema presumably handles that, so this is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema description coverage is 100%, meaning no parameters need explanation. The description clarifies the inherent behavior (using latest snapshot and JSON output) without needing to describe parameter semantics, so it adequately handles the absence of parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs 'Core-owned latest snapshot discovery and diff semantics' via the `aidisk diff --latest --json` command, which is a specific verb and resource. It distinguishes itself from siblings by indicating it uses Core-owned semantics and does not accept paths or reports directories.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool: when the model needs the latest diff using Core-owned discovery. It explicitly notes that no reports directory or paths are accepted, which guides usage, but does not explicitly contrast with sibling tools such as scan_summary or ai_model_inventory.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scan_summaryAI Disk Doctor Scan SummaryA

Run AI Disk Doctor's existing non-destructive scan and return a bounded projection of Core JSON evidence. The current Core CLI may persist an AI Disk Doctor-owned snapshot under .aidisk/reports; it does not mutate user files.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoOptional Core rule category filter. The integration validates only bounds; Core owns category semantics.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
toolYes
policyNo
summaryYes
volumesYes
scan_timeNo
truncatedYes
provenanceYes
top_findingsYes
total_findingsYes
returned_findingsYes

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description goes beyond annotations by explicitly disclosing non-destructive behavior, no mutation of user files, and potential snapshot persistence under .aidisk/reports. Annotations have readOnlyHint: false, but description clarifies safety profile, adding significant value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences efficiently convey purpose, scope, side effects, and safety. No redundant phrasing or filler; carefully front-loaded with the core action and outcome.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single optional parameter tool with output schema present, description covers purpose, return projection, side effects, and guarantees about user files. Includes relevant environmental detail (CLI snapshot). Complete enough for agent to safely invoke.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'category' has full schema description (100% coverage) explaining it as an optional Core rule category filter with bounds validation. The tool description does not add extra semantics, but schema already provides adequate meaning, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses specific verb 'Run' with clear resource 'AI Disk Doctor's existing non-destructive scan' and states output 'bounded projection of Core JSON evidence'. It clearly distinguishes from siblings (core_status, ai_model_inventory, latest_diff) by focusing on scan execution and non-destructiveness.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States when to use (run scan) and provides context about non-destructive nature, but does not explicitly mention alternatives or when not to use. Sibling tools are present, but no comparative guidance given. Clear purpose implies usage context, but no exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv0.1.0-alpha.2
    • First observedai_model_inventory
    • First observedcore_status
    • First observedlatest_diff
    • First observedscan_summary

TDQS

A4.1/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: scan_summary runs a scan, core_status checks the Core installation, ai_model_inventory lists models, and latest_diff computes diffs. No overlap or ambiguity in their responsibilities.

Naming Consistency3/5

All names are lowercase snake_case, but they do not follow a consistent verb_noun pattern. scan_summary starts with a verb, while core_status, ai_model_inventory, and latest_diff are noun-led or adjective-noun, creating slight inconsistency.

Tool Count4/5

With 4 tools, the set is small but well-focused on the disk doctor integration's core needs: scanning, status, inventory, and diffing. It is neither bloated nor insufficient for the stated purpose.

Completeness4/5

The tools cover primary operations (scan, check status, list models, diff latest snapshots), but lack explicit snapshot management or detailed per-file reporting. Minor gaps that an agent could potentially work around.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    A read-only MCP server that enables AI assistants to search files, list directories, retrieve system info, and get file metadata on the local file system.
    4
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Read-only MCP server that exposes Autopsy digital forensics case data as tools, enabling LLM clients like Cline to browse filesystems, query artifacts, and search keywords without modifying the case.
    1
    MIT