/ Annuaire / Playground / Semble
● Communauté MinishLab ⚡ Instantané

Semble

par MinishLab · MinishLab/semble

Recherche de code qui coûte ~2% de grep+read en tokens — sémantique + lexicale, entièrement local, sous la seconde sur des dépôts d'un million de lignes.

Semble est un MCP de recherche de code de Minish Lab. Il indexe un dépôt avec des embeddings hybrides sparse+dense et retourne à Claude des résultats de recherche sémantique plus précis que grep — pas besoin de vider des fichiers entiers. L'utilisation de tokens est dramatiquement inférieure au modèle standard « grep puis lecture », surtout sur les gros monorepos.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

semble-mcp.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": {
    "semble-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "semble[mcp]",
        "semble"
      ]
    }
  }
}

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

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "semble-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "semble[mcp]",
        "semble"
      ]
    }
  }
}

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": {
    "semble-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "semble[mcp]",
        "semble"
      ]
    }
  }
}

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

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "semble-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "semble[mcp]",
        "semble"
      ]
    }
  }
}

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

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "semble-mcp",
      "command": "uvx",
      "args": [
        "--from",
        "semble[mcp]",
        "semble"
      ]
    }
  ]
}

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

~/.config/zed/settings.json
{
  "context_servers": {
    "semble-mcp": {
      "command": {
        "path": "uvx",
        "args": [
          "--from",
          "semble[mcp]",
          "semble"
        ]
      }
    }
  }
}

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

claude mcp add semble-mcp -- uvx --from semble[mcp] semble

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

Cas d'usage

Usages concrets : Semble

Trouver où un concept est implémenté dans un grand dépôt

👤 Ingénieurs explorant de grandes bases de code ⏱ ~5 min beginner

Quand l'utiliser : Vous avez besoin de « où se trouve la logique de validation de session ? » répondu en un coup.

Prérequis
  • Dépôt indexésemble index . — la première exécution prend quelques minutes pour les gros dépôts
Déroulement
  1. Rechercher
    Utilise semble. Trouve où se trouve la logique de validation du token de session. Retourne les plages fichier:ligne.✓ Copié
    → 3 à 5 correspondances avec des plages fichier:ligne concrètes
  2. Lecture ciblée
    Lis uniquement ces plages de lignes (pas les fichiers entiers). Résume le flux de validation.✓ Copié
    → Résumé concis du flux ; faible empreinte en tokens

Résultat : Question répondue avec une fraction des tokens que grep+read aurait brûlés.

Pièges
  • Index obsolète après un gros rebasesemble reindex ou configurez un hook file-watcher
Combiner avec : filesystem

Auditer l'utilisation d'un pattern de code dans un dépôt

👤 Équipes de refactorisation ⏱ ~15 min intermediate

Quand l'utiliser : Vous êtes sur le point de déprécier un helper et voulez toutes ses utilisations + variantes.

Déroulement
  1. Passe lexicale
    Trouve tous les appels à legacy_token_check.✓ Copié
    → Liste de correspondances exactes
  2. Passe sémantique
    Trouve les fonctions qui font le même travail sous un nom différent.✓ Copié
    → Implémentations similaires signalées

Résultat : Périmètre de refactorisation entièrement connu avant de commencer.

Pièges
  • Faux positifs lors de la passe sémantique — Vérifiez chaque candidat ; semble fournit un score de similarité pour le triage

Combinaisons

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

semble-mcp + filesystem

Pattern recherche → lecture ciblée (uniquement les plages retournées par semble)

Utilise semble pour trouver les candidats, puis filesystem pour lire uniquement les plages correspondantes.✓ Copié
semble-mcp + github

Construire une PR de refactorisation avec tous les sites d'appel mis à jour

Trouve tous les sites d'appel avec semble, génère une PR qui met à jour chacun.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
search query, k?, mode? Par défaut — trouver par concept gratuit
lexical_search pattern, k? Tokens exacts / regex gratuit
index path Première exécution / après grosse restructuration gratuit
reindex path Rattraper après des modifications gratuit

Coût et limites

Coût d'exécution

Quota d'API
Aucun — local
Tokens par appel
Minime — généralement 100–500
Monétaire
Gratuit
Astuce
Indexez le dépôt une fois ; les requêtes sont bon marché. Les économies de tokens s'accumulent.

Sécurité

Permissions, secrets, portée

Portées minimales : Lecture locale des fichiers pour l'indexation
Stockage des identifiants : Aucun
Sortie de données : Aucune — les embeddings restent locaux

Dépannage

Erreurs courantes et correctifs

OOM lors de l'indexation de gros dépôts

Réduisez la taille de batch dans la configuration ou indexez par package

La recherche ne retourne rien de pertinent

Ré-indexez — votre copie locale a peut-être dérivé ; ou affinez la requête

uvx install se bloque

Pré-chargez avec uv pip install semble[mcp]

Alternatives

Semble vs autres

AlternativeQuand l'utiliserCompromis
ripgrep + MCP grepVous n'avez besoin que de recherche par correspondance exactePas de rappel sémantique ; coût en tokens plus élevé sur les résultats
ast-grep / serenaVous voulez une recherche/remplacement structurel conscient de la syntaxeModèle différent ; pas basé sur les embeddings

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills