---
title: "Hermes Tool Search: l'Innovazione per l'Efficienza degli Agenti AI"
date: "2026-05-30"
category: "Intelligenza Artificiale"
tags: ["ai agents", "hermes agent", "intelligenza artificiale", "mcp", "ottimizzazione token"]
author: "Giuseppe Carruezzo"
description: "Scopri come la funzione Tool Search di Hermes ottimizza i token MCP, riduce i costi e aumenta l'accuratezza degli agenti AI attraverso il caricamento on-demand."
source: "https://ainsights.it/blog/hermes-tool-search-efficienza-agenti-ai"
---

# Hermes Tool Search: l'Innovazione per l'Efficienza degli Agenti AI

![Hermes Tool Search: l'Innovazione per l'Efficienza degli Agenti AI](/blogai/backend/uploads/6a1b4ad8cb1d3.webp)

L'agente open-source Hermes di Nous Research ha introdotto la funzionalità "Tool Search", una soluzione mirata a risolvere uno dei colli di bottiglia più critici nei sistemi di agenti basati su AI: il sovraccarico della finestra di contesto causato da un numero eccessivo di strumenti MCP. Grazie a un sistema di caricamento on-demand, questa tecnologia promette di abbattere i costi operativi e migliorare drasticamente la precisione dei modelli nelle decisioni complesse.

-   **85%** — Riduzione token (Diminuzione dell’uso di token per le definizioni dei tool secondo Anthropic)
-   **74%** — Accuratezza Opus 4 (Rispetto al 49% iniziale con Tool Search abilitato)
-   **45.000** — Token per turno (Dimensione media dei prompt in una configurazione standard con 5 server MCP)
-   **$0,10** — Costo per turno (Costo stimato per sessioni con cache-miss all’avvio)

## Il problema della "Tassa sui Tool" nel Model Context Protocol

Il Model Context Protocol (MCP) è uno standard che permette agli agenti AI di connettersi a server esterni (come GitHub, Slack o Jira) per eseguire compiti specifici. Tuttavia, l'integrazione di più server MCP introduce un problema di efficienza: ogni volta che l'agente interagisce con il modello, l'intero schema JSON di ogni singolo strumento viene inviato nel prompt. Questo avviene anche se l'agente ha bisogno di un solo strumento per completare l'attività richiesta.

Nelle implementazioni reali, questo "sovraccarico" è immediatamente percepibile. Una configurazione di Hermes con cinque server MCP e 34 strumenti genera prompt medi da 45.000 token per ogni turno di conversazione. Di questi, circa 22.000 token — ovvero il 50% del totale — sono pura "tassa" dovuta agli schemi degli strumenti. Dati forniti dal team di ingegneria di Anthropic indicano che le definizioni dei tool possono consumare fino a 134.000 token prima di qualsiasi ottimizzazione.

Il consumo eccessivo di token non è solo una questione di costi: quando un modello si trova davanti a centinaia di opzioni irrilevanti, subentra la "paralisi decisionale", riducendo sensibilmente la capacità dell'AI di scegliere lo strumento corretto per il compito assegnato.

## ![](/blogai/backend/uploads/6a1b4b15f0194.webp)

## Cos'è Tool Search e come funziona

Tool Search è un livello di "divulgazione progressiva" (progressive disclosure) per gli strumenti MCP e i plugin non essenziali di Hermes Agent. Invece di caricare preventivamente ogni schema, il modello carica solo ciò che gli serve, quando gli serve.

Quando Tool Search è attivo, gli strumenti MCP vengono sostituiti nell'array visibile al modello da tre "bridge tools" (strumenti ponte) estremamente leggeri:

```php
tool_search(query, limit?)   — cerca nel catalogo degli strumenti differiti
tool_describe(name)          — carica lo schema completo per un singolo strumento
tool_call(name, arguments)   — invoca lo strumento differito
```

Questo approccio trasforma un processo massivo in una sequenza logica mirata. Il modello cerca la funzione necessaria, ne esamina i parametri (schema) e infine la esegue. Tutte le protezioni di sicurezza, i controlli (hooks) e le richieste di approvazione dell'utente continuano a operare sul nome reale dello strumento sottostante, garantendo che la sicurezza non venga compromessa dal livello di astrazione.

## Il flusso operativo di Tool Search

1.  **Ricerca**: Il modello chiama tool\_search con una query in linguaggio naturale, ad esempio creare un issue su GitHub.
2.  **Analisi**: Il sistema restituisce i match più pertinenti. Il modello seleziona quello corretto e chiama tool\_describe per leggere i parametri necessari.
3.  **Esecuzione**: Una volta ottenuto lo schema, il modello invoca lo strumento tramite tool\_call fornendo gli argomenti richiesti.

## Impatto sull'accuratezza: i numeri di Anthropic

L'abilitazione di Tool Search non è solo una strategia di risparmio economico, ma un potenziamento delle prestazioni cognitive del modello. I dati provenienti dai test interni di Anthropic su valutazioni MCP mostrano miglioramenti significativi:

-   **Claude Opus 4**: l'accuratezza è passata dal 45% al **74%**.
    
-   **Claude Opus 4.5**: l'accuratezza è passata dal 79,5% all'**88,1%**.
    

Questi incrementi sono dovuti alla riduzione dei "falsi positivi". Eliminando le opzioni irrilevanti dalla finestra di contesto, il modello non viene distratto da strumenti che hanno nomi o descrizioni simili ma funzioni diverse. Inoltre, Anthropic ha registrato una riduzione dell'85% nell'uso dei token dedicati alle definizioni, mantenendo l'accesso all'intera libreria di strumenti.

> _\[Grafico interattivo — visibile nella versione web dell'articolo\]_

## Sotto il cofano: l'algoritmo BM25 e la gestione dello stato

Per far corrispondere la query del modello agli strumenti corretti, Hermes utilizza **BM25** (Best Matching 25), un algoritmo classico di recupero delle informazioni che valuta la pertinenza di un documento rispetto a una determinata query di ricerca.

Il sistema confronta la query del modello con i nomi dei tool, le loro descrizioni e i nomi dei parametri. Nel caso in cui BM25 non restituisca risultati con punteggio positivo, il sistema adotta una strategia di ripiego (fallback) basata sulla corrispondenza letterale delle sottostringhe. Questo previene i casi di "degenerazione zero-IDF", comuni quando tutti i tool in un catalogo condividono una parola chiave (ad esempio, se tutti gli strumenti contengono la parola "github").

Un aspetto tecnico fondamentale è che il catalogo è **stateless** (privo di stato) tra un turno e l'altro. Viene ricostruito integralmente a ogni passaggio partendo dalla lista aggiornata delle definizioni dei tool. Questa scelta architetturale elimina il rischio di "bug di deriva", in cui un catalogo memorizzato non è più sincronizzato con il registro degli strumenti attivi.

```mermaid
flowchart TD
  A[Richiesta Utente] --> B{Context > 10%?}
  B -- Sì --> C[Attiva Tool Search]
  B -- No --> D[Carica tutti i Tool]
  C --> E[Model: tool_search]
  E --> F[BM25 Ranking]
  F --> G[Model: tool_describe]
  G --> H[Model: tool_call]
  H --> I[Esecuzione Strumento Real]
```

## Configurazione e Modalità Auto

Hermes Agent gestisce Tool Search in modalità `auto` per impostazione predefinita. Questa modalità è auto-regolata: la funzione si attiva solo quando gli schemi dei tool consumerebbero almeno il 10% della finestra di contesto attiva del modello.

Se il contesto occupato dai tool è inferiore a questa soglia, il sistema preferisce esporre direttamente tutti gli strumenti per evitare la latenza di un passaggio di ricerca supplementare. Questa decisione viene rivalutata a ogni singolo turno della conversazione.

<table style="min-width: 75px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Parametro</p></th><th colspan="1" rowspan="1"><p>Default</p></th><th colspan="1" rowspan="1"><p>Descrizione</p></th></tr><tr><td colspan="1" rowspan="1"><p><code>enabled</code></p></td><td colspan="1" rowspan="1"><p><code>auto</code></p></td><td colspan="1" rowspan="1"><p>Può essere impostato su <code>on</code> (sempre attivo), <code>off</code> (disabilitato) o <code>auto</code>.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>threshold_pct</code></p></td><td colspan="1" rowspan="1"><p><code>10</code></p></td><td colspan="1" rowspan="1"><p>Percentuale del contesto oltre la quale si attiva la modalità auto.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>search_default_limit</code></p></td><td colspan="1" rowspan="1"><p><code>5</code></p></td><td colspan="1" rowspan="1"><p>Numero di risultati restituiti da tool_search se non specificato.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>max_search_limit</code></p></td><td colspan="1" rowspan="1"><p><code>20</code></p></td><td colspan="1" rowspan="1"><p>Limite massimo di risultati che il modello può richiedere.</p></td></tr></tbody></table>

Per personalizzare il comportamento, è sufficiente modificare il file `hermes.yaml` come mostrato nell'esempio seguente:

```php
tools:
  tool_search:
    enabled: auto
    threshold_pct: 10
    search_default_limit: 5
    max_search_limit: 20
```

### Pro

-   Riduzione drastica dei costi dei token in sessioni lunghe
-   Maggiore precisione del modello grazie alla riduzione della distrazione
-   Supporto per cataloghi di strumenti virtualmente illimitati

### Contro

-   Aggiunge almeno un round-trip (giro di comunicazione) extra per il primo utilizzo di un tool
-   Leggera latenza iniziale dovuta alla ricerca BM25

## Punti chiave

-   Tool Search risolve il problema del gonfiamento del contesto nei sistemi di agenti multi-server.
-   L’uso di bridge tools (search/describe/call) permette un caricamento on-demand degli schemi JSON.
-   L’accuratezza su Claude Opus 4 aumenta di 25 punti percentuali grazie alla riduzione della paralisi decisionale.
-   La modalità auto garantisce che la funzione si attivi solo quando il risparmio di token giustifica la latenza extra.
-   Gli strumenti core di Hermes (terminale, ricerca web) non vengono mai differiti per garantire reattività immediata.

### Verdetto Tecnico — 4.8/5

Tool Search è un aggiornamento essenziale per chiunque utilizzi agenti AI in produzione con architetture MCP complesse. La capacità di bilanciare automaticamente costi e accuratezza lo rende uno standard di riferimento per la gestione dei tool su larga scala.

## FAQ

### Tool Search influisce sulla sicurezza?

No. Anche se il modello usa strumenti ponte, tutti i guardrail e le autorizzazioni vengono verificati sul nome reale dello strumento finale prima dell esecuzione.

### Posso forzare l attivazione di Tool Search anche per pochi strumenti?

Sì, impostando il parametro enabled su on nel file di configurazione hermes.yaml.

### Quali modelli beneficiano di più da questa funzione?

I modelli con finestre di contesto ampie ma sensibili al rumore, come la serie Claude Opus, mostrano i miglioramenti più marcati in termini di accuratezza.

### Tool Search funziona con strumenti locali o solo MCP?

Funziona con tutti gli strumenti MCP e i plugin non-core. Gli strumenti nativi di Hermes (come read\_file) rimangono sempre nel contesto principale.

## Fonti e riferimenti

1.  [Documentazione Ufficiale Hermes Agent Tool Search](https://hermes-agent.nousresearch.com/docs/user-guide/features/tool-search)
2.  [Anthropic Engineering: Advanced Tool Use](https://www.anthropic.com/engineering/advanced-tool-use)
3.  [Tool Attention Paper (arXiv 2604.21816)](https://arxiv.org/abs/2604.21816)

---

*Fonte: [https://ainsights.it/blog/hermes-tool-search-efficienza-agenti-ai](https://ainsights.it/blog/hermes-tool-search-efficienza-agenti-ai)*
