🎁 Get the FREE AI Skills Starter GuideSubscribe →
BytesAgainBytesAgain
🦀 ClawHub

GraphCare — Structural Database Health Scanner

by @nlr-ai

Structural database health scanner. Audits schema topology for orphaned tables, missing indexes, nullable FKs, circular dependencies — without ever reading r...

Versionv1.0.0
Downloads400
TERMINAL
clawhub install graphcare

📖 About This Skill


name: graphcare description: "Structural database health scanner. Audits schema topology for orphaned tables, missing indexes, nullable FKs, circular dependencies — without ever reading row data. Supports PostgreSQL, MySQL, SQLite." version: 1.0.0 metadata: openclaw: requires: bins: - node env: [] emoji: "\U0001F6E1" homepage: https://github.com/mind-protocol/graphcare

GraphCare — Structural Database Health Scanner

The first structural antivirus for AI databases. Scans your schema topology for hidden problems — without ever touching your data.

Why

AI agents evolve schemas at speed. But nobody audits the structure. Over time:

  • Foreign keys lose their indexes (JOINs slow to a crawl)
  • Tables drift into isolation (orphaned, unreachable data)
  • Primary keys go missing (replication breaks, ORMs fail)
  • Nullable FKs create silent referential gaps
  • Circular dependencies make inserts impossible
  • Redundant indexes waste disk and slow writes
  • GraphCare catches all of this in one scan.

    Zero-Trust by Design

    GraphCare only queries metadata (information_schema, PRAGMA, pg_indexes). It is structurally impossible for it to read, leak, or mutate your row data.

  • READ-ONLY: Zero writes, zero mutations
  • NO ROW DATA: Only schema metadata is accessed
  • STATELESS: Memory purged after every scan
  • Setup

    GraphCare is an MCP server. Add it to your MCP client config:

    {
      "mcpServers": {
        "graphcare": {
          "command": "node",
          "args": ["/path/to/graphcare/index.js"]
        }
      }
    }
    

    Or run via Docker:

    docker build -t graphcare .
    docker run -i graphcare
    

    Or install from npm:

    npm install -g graphcare-mcp
    graphcare-mcp
    

    Tools

    audit_db_structure

    Full structural scan. Pass a connection string, get a complete health report.

    Parameters:

  • connection_string (required) — Database URI: postgresql://, mysql://, sqlite:///path/to/db, or just file.db
  • Returns: JSON report with:

  • db_type — Database engine detected
  • tables[] — All tables found
  • findings[] — Each structural issue with type, severity, table, and message
  • metrics{} — Counts per finding type + computed health_score (0-100)
  • Example:

    Use graphcare to audit my database at postgresql://localhost:5432/myapp
    

    The agent calls audit_db_structure with the connection string and receives a structured JSON report.

    explain_finding

    Plain-language explanation of any finding type. Includes severity, impact, and recommended fix.

    Parameters:

  • finding_type (required) — One of: orphaned_table, missing_fk_index, duplicate_index, nullable_fk, no_primary_key, circular_dependency
  • context (optional) — Table or column name for specific advice
  • What GraphCare Detects

    | Finding | Severity | Impact | |---------|----------|--------| | Orphaned Tables | Warning | Structurally isolated dead weight | | Missing FK Indexes | Critical | #1 cause of slow JOINs and DELETEs | | No Primary Key | Critical | Breaks replication and ORMs | | Nullable Foreign Keys | Warning | Hidden referential integrity gaps | | Circular Dependencies | Warning | Makes clean inserts impossible | | Duplicate Indexes | Info | Wasted disk, slower writes |

    Supported Databases

  • PostgreSQL — Full 6-finding detection via information_schema + pg_indexes
  • MySQL — Full detection via information_schema
  • SQLite — Full detection via sqlite_master + PRAGMA
  • Security

    This tool runs read-only queries against database metadata catalogs only. It never executes SELECT on user tables, never writes, and holds no state between invocations. Connection strings are received via MCP JSON-RPC over stdin — never exposed in process listings.


    *Built by Mind Protocol.*

    ⚙️ Configuration

    GraphCare is an MCP server. Add it to your MCP client config:

    {
      "mcpServers": {
        "graphcare": {
          "command": "node",
          "args": ["/path/to/graphcare/index.js"]
        }
      }
    }
    

    Or run via Docker:

    docker build -t graphcare .
    docker run -i graphcare
    

    Or install from npm:

    npm install -g graphcare-mcp
    graphcare-mcp