/ Annuaire / Playground / Graphify
● Communauté safishamsi ⚡ Instantané

Graphify

par safishamsi · safishamsi/graphify

Graphify indexes any folder (code, docs, PDFs, images, video) into a knowledge graph with Leiden-clustered communities — so your agent queries concepts, not filenames.

Graphify is a multimodal knowledge-graph skill. Install via uv tool install graphifyy, run graphify install, and every Claude Code / Codex / Cursor session after that can query your graph with /graphify query, /graphify path, /graphify explain. Code parsing is local via tree-sitter (25 languages); concept extraction uses Claude; visual output is an interactive HTML + structured JSON. --watch keeps it in sync with your repo.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

graphify-skill.replay ▶ prêt
0/0

Installer

Choisissez votre client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "graphify-skill": {
      "command": "uv",
      "args": [
        "tool",
        "install",
        "graphifyy"
      ],
      "_inferred": true
    }
  }
}

Ouvrez Claude Desktop → Settings → Developer → Edit Config. Redémarrez après avoir enregistré.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "graphify-skill": {
      "command": "uv",
      "args": [
        "tool",
        "install",
        "graphifyy"
      ],
      "_inferred": true
    }
  }
}

Cursor utilise le même schéma mcpServers que Claude Desktop. La config projet l'emporte sur la globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "graphify-skill": {
      "command": "uv",
      "args": [
        "tool",
        "install",
        "graphifyy"
      ],
      "_inferred": true
    }
  }
}

Cliquez sur l'icône MCP Servers dans la barre latérale Cline, puis "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "graphify-skill": {
      "command": "uv",
      "args": [
        "tool",
        "install",
        "graphifyy"
      ],
      "_inferred": true
    }
  }
}

Même format que Claude Desktop. Redémarrez Windsurf pour appliquer.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "graphify-skill",
      "command": "uv",
      "args": [
        "tool",
        "install",
        "graphifyy"
      ]
    }
  ]
}

Continue utilise un tableau d'objets serveur plutôt qu'une map.

~/.config/zed/settings.json
{
  "context_servers": {
    "graphify-skill": {
      "command": {
        "path": "uv",
        "args": [
          "tool",
          "install",
          "graphifyy"
        ]
      }
    }
  }
}

Ajoutez dans context_servers. Zed recharge à chaud à la sauvegarde.

claude mcp add graphify-skill -- uv tool install graphifyy

Une seule ligne. Vérifiez avec claude mcp list. Supprimez avec claude mcp remove.

Cas d'usage

Usages concrets : Graphify

Onboard to a 5-year-old legacy codebase in hours, not weeks

👤 New hires, contractors inheriting code ⏱ ~60 min intermediate

Quand l'utiliser : You've joined a project with 10k+ files, dozens of internal services, and tribal knowledge spread across PRs and Confluence.

Prérequis
  • uv installed — curl -LsSf https://astral.sh/uv/install.sh | sh
  • Graphify installed globally — uv tool install graphifyy && graphify install
Déroulement
  1. Index the repo
    /graphify index /workspace/monolith --include '**/*.{ts,py,md}'✓ Copié
    → Graph builds; report tells you cluster count and dominant concepts
  2. Ask the graph
    /graphify query 'how does payment processing connect to audit logging?'✓ Copié
    → Path through concepts with file references — not just a grep
  3. Open the visual
    /graphify explain 'user-account cluster' and open the HTML viewer✓ Copié
    → Interactive graph opens; cluster is highlighted with its bridges

Résultat : You know the conceptual shape of the codebase — where the hot paths live, which clusters are isolated, what depends on what.

Pièges
  • Graph becomes stale as the repo changes — graphify --watch to auto-update; or re-index before a big review session
  • Noise from vendored deps — Configure --exclude 'node_modules/,vendor/' on initial indexing
Combiner avec : filesystem · context7

Build a research graph over 200 papers and ask cross-paper questions

👤 Researchers, policy analysts, lit-review writers ⏱ ~90 min intermediate

Quand l'utiliser : You have a folder of 200 PDFs and need to find cross-paper threads no single paper exposes.

Déroulement
  1. Index the corpus
    /graphify index /research/climate-pdfs✓ Copié
    → Concept clusters emerge (e.g. 'carbon pricing', 'adaptation finance')
  2. Bridge-finding query
    /graphify path 'adaptation finance' → 'sovereign debt'✓ Copié
    → Ordered chain of concepts + papers that connect the two
  3. Generate a literature review
    Summarize the 'adaptation finance → sovereign debt' bridge as a 400-word section with paper citations.✓ Copié
    → Draft paragraph with correct citations from the graph

Résultat : Insights that come from the structure of the corpus, not just keyword grep.

Pièges
  • Scanned PDFs don't OCR — Run OCR (ocrmypdf) before indexing; Graphify won't magic-text images
Combiner avec : filesystem

Merge graphs from multiple repos into one searchable view

👤 Platform teams owning microservice fleets ⏱ ~120 min advanced

Quand l'utiliser : You run 15 services. You want one graph that spans them so an agent can follow a request end-to-end.

Déroulement
  1. Index each service
    For each repo under /services/, run graphify index with --out graph-<name>.json✓ Copié
    → 15 graph.json files on disk
  2. Merge
    graphify merge-graphs graph-*.json --out fleet.json✓ Copié
    → One unified graph with cross-repo edges
  3. Ask end-to-end
    /graphify query 'trace a POST /checkout through the fleet'✓ Copié
    → Path through multiple services, each node annotated with its repo

Résultat : Cross-service traceability without a service mesh or OTEL rollout.

Pièges
  • Same concept named differently across repos — Graphify's similarity merge handles most; for the rest, define aliases in the config
Combiner avec : filesystem · github

Combinaisons

Associez-le à d'autres MCPs pour un effet X10

graphify-skill + filesystem

Graphify points at files; filesystem lets the agent actually read/edit them

/graphify query 'retry logic' → list files, then filesystem read_text_file each one to draft a refactor.✓ Copié
graphify-skill + github

Turn graph queries into PR plans

Use the graph to find everywhere we do ad-hoc retries; open a GitHub issue listing each file with a proposed consolidation.✓ Copié
graphify-skill + sequential-thinking

Multi-step reasoning that uses the graph as an oracle

Plan the refactor step-by-step; at each step, consult /graphify query for impact.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
/graphify index path, include, exclude, --watch First — build the graph Claude calls for concept extraction (use prompt caching)
/graphify query natural-language question The primary query interface free (local) + small model call
/graphify path concept A → concept B When you want to see how two ideas connect free
/graphify explain node/cluster id Deep-dive on a single cluster free + small model call
graphify merge-graphs graph-*.json Cross-repo / cross-folder views free

Coût et limites

Coût d'exécution

Quota d'API
Local indexing is free; concept extraction uses Claude API (your key)
Tokens par appel
Indexing a 10k-file repo ≈ tens of dollars with caching; queries are cheap
Monétaire
Free software; pay for the extraction calls only
Astuce
Cache aggressively — Graphify already does prompt caching for extraction; index once, query 1000x

Sécurité

Permissions, secrets, portée

Stockage des identifiants : Uses your Claude API key for extraction; graph.json stored locally
Sortie de données : Concept extraction calls go to Anthropic (your account). No telemetry from Graphify itself.
Ne jamais accorder : Sharing graph.json publicly when indexed from a private repo — it embeds code snippets and filenames

Dépannage

Erreurs courantes et correctifs

graphify: command not found after install

uv tool install graphifyy puts the binary in ~/.local/bin; ensure that's on PATH, or run with uv tool run graphify.

Vérifier : uv tool list | grep graphify
Indexing takes forever on a large repo

Scope with --include '**/*.{py,ts,md}' and --exclude 'node_modules/,dist/'. Concept extraction, not parsing, is the bottleneck.

Vérifier : Watch the progress log; parsing should be seconds, extraction takes the time
Queries return irrelevant clusters

Graph quality depends on the index — add README/docs files to the input set so Claude has project context for naming clusters

Vérifier : Rebuild including /docs/**/*.md; queries should sharpen
Merge-graphs produces duplicate nodes

Lower --similarity-threshold (default ~0.8) to 0.7 to merge near-duplicates more aggressively; tune per-repo

Alternatives

Graphify vs autres

AlternativeQuand l'utiliserCompromis
SerenaYou want LSP-precise symbol navigation and refactor tools, not conceptual clustersNo multi-modal input; no clustering
Memory MCPYou want Claude to remember session facts, not index a corpusNo graph; no query-by-concept
Raw embedding + vector DBYou need custom retrieval logic and don't care about community detectionYou build the whole pipeline — graphify is opinionated and faster to ship

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills