Server MCP
Aggiungi strumenti MCP locali e remoti.
Puoi aggiungere strumenti esterni a Dropstone utilizzando il Model Context Protocol, o MCP. Dropstone supporta sia server locali che remoti.
Una volta aggiunti, gli strumenti MCP sono automaticamente disponibili per il LLM insieme agli strumenti integrati.
Avvertenze
Quando utilizzi un server MCP, questo aggiunge contenuto al contesto. Questo può accumularsi rapidamente se hai molti strumenti. Pertanto, ti consigliamo di essere selettivo riguardo a quali server MCP utilizzare.
Tip
I server MCP aggiungono contenuto al contesto, quindi fai attenzione a quali abiliti.
Alcuni server MCP, come il server MCP di GitHub, tendono ad aggiungere molti token e possono facilmente superare il limite di contesto.
Abilitazione
Puoi definire i server MCP nella tua configurazione Dropstone sotto mcp. Aggiungi ogni MCP con un nome univoco. Puoi fare riferimento a quel MCP per nome quando interagisci con il LLM.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"nome-del-server-mcp": {
// ...
"enabled": true,
},
"nome-dell-altro-server-mcp": {
// ...
},
},
}
Puoi anche disabilitare un server impostando enabled su false. Questo è utile se vuoi disabilitare temporaneamente un server senza rimuoverlo dalla configurazione.
Sovrascrivere le impostazioni predefinite remote
Le organizzazioni possono fornire server MCP predefiniti tramite il loro endpoint .well-known/dropstone. Questi server possono essere disabilitati per impostazione predefinita, consentendo agli utenti di attivare quelli di cui hanno bisogno.
Per abilitare un server specifico dalla configurazione remota della tua organizzazione, aggiungilo alla tua configurazione locale con enabled: true:
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"jira": {
"type": "remote",
"url": "https://jira.example.com/mcp",
"enabled": true
}
}
}
I valori della tua configurazione locale sovrascrivono le impostazioni predefinite remote. Consulta precedenza della configurazione per maggiori dettagli.
Locale
Aggiungi server MCP locali impostando type su "local" all'interno dell'oggetto MCP.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"il-mio-server-mcp-locale": {
"type": "local",
// Oppure ["bun", "x", "my-mcp-command"]
"command": ["npx", "-y", "my-mcp-command"],
"enabled": true,
"environment": {
"MY_ENV_VAR": "my_env_var_value",
},
},
},
}
Il comando definisce come viene avviato il server MCP locale. Puoi anche passare un elenco di variabili d'ambiente.
Ad esempio, ecco come aggiungere il server MCP di test @modelcontextprotocol/server-everything.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"mcp_everything": {
"type": "local",
"command": ["npx", "-y", "@modelcontextprotocol/server-everything"],
},
},
}
E per usarlo, posso aggiungere usa lo strumento mcp_everything ai miei prompt.
usa lo strumento mcp_everything per sommare i numeri 3 e 4
Opzioni
Ecco tutte le opzioni per configurare un server MCP locale.
| Opzione | Tipo | Obbligatoria | Descrizione |
|---|---|---|---|
type | Stringa | Sì | Tipo di connessione al server MCP, deve essere "local". |
command | Array | Sì | Comando e argomenti per eseguire il server MCP. |
environment | Oggetto | Variabili d'ambiente da impostare durante l'esecuzione del server. | |
enabled | Booleano | Abilita o disabilita il server MCP all'avvio. | |
timeout | Numero | Timeout in ms per recuperare gli strumenti dal server MCP. Predefinito: 5000 (5 secondi). |
Remoto
Aggiungi server MCP remoti impostando type su "remote".
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"il-mio-mcp-remoto": {
"type": "remote",
"url": "https://my-mcp-server.com",
"enabled": true,
"headers": {
"Authorization": "Bearer MY_API_KEY"
}
}
}
}
L'url è l'URL del server MCP remoto e con l'opzione headers puoi passare un elenco di intestazioni.
Opzioni
| Opzione | Tipo | Obbligatoria | Descrizione |
|---|---|---|---|
type | Stringa | Sì | Tipo di connessione al server MCP, deve essere "remote". |
url | Stringa | Sì | URL del server MCP remoto. |
enabled | Booleano | Abilita o disabilita il server MCP all'avvio. | |
headers | Oggetto | Intestazioni da inviare con la richiesta. | |
oauth | Oggetto | Configurazione dell'autenticazione OAuth. Consulta la sezione OAuth qui sotto. | |
timeout | Numero | Timeout in ms per recuperare gli strumenti dal server MCP. Predefinito: 5000 (5 secondi). |
OAuth
Dropstone gestisce automaticamente l'autenticazione OAuth per i server MCP remoti. Quando un server richiede l'autenticazione, Dropstone:
- Rileva la risposta 401 e avvia il flusso OAuth
- Utilizza la registrazione dinamica del client (RFC 7591) se supportata dal server
- Memorizza i token in modo sicuro per le richieste future
Automatico
Per la maggior parte dei server MCP con OAuth, non è necessaria alcuna configurazione speciale. Basta configurare il server remoto:
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"il-mio-server-oauth": {
"type": "remote",
"url": "https://mcp.example.com/mcp"
}
}
}
Se il server richiede l'autenticazione, Dropstone ti chiederà di autenticarti al primo utilizzo. In caso contrario, puoi attivare manualmente il flusso con dropstone mcp auth <nome-server>.
Pre-registrato
Se disponi di credenziali client dal provider del server MCP, puoi configurarle:
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"il-mio-server-oauth": {
"type": "remote",
"url": "https://mcp.example.com/mcp",
"oauth": {
"clientId": "{env:MY_MCP_CLIENT_ID}",
"clientSecret": "{env:MY_MCP_CLIENT_SECRET}",
"scope": "tools:read tools:execute"
}
}
}
}
Autenticazione
Puoi attivare manualmente l'autenticazione o gestire le credenziali.
Autenticati con un server MCP specifico:
dropstone mcp auth il-mio-server-oauth
Elenca tutti i server MCP e il loro stato di autenticazione:
dropstone mcp list
Rimuovi le credenziali memorizzate:
dropstone mcp logout il-mio-server-oauth
Il comando mcp auth aprirà il tuo browser per l'autorizzazione. Dopo l'autorizzazione, Dropstone memorizzerà i token in modo sicuro in ~/.local/share/dropstone/mcp-auth.json.
Disabilitazione di OAuth
Se vuoi disabilitare l'OAuth automatico per un server (ad esempio, per server che utilizzano chiavi API), imposta oauth su false:
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"il-mio-server-con-chiave-api": {
"type": "remote",
"url": "https://mcp.example.com/mcp",
"oauth": false,
"headers": {
"Authorization": "Bearer {env:MY_API_KEY}"
}
}
}
}
Opzioni OAuth
| Opzione | Tipo | Descrizione |
|---|---|---|
oauth | Oggetto | false | Oggetto di configurazione OAuth, oppure false per disabilitare il rilevamento automatico di OAuth. |
clientId | Stringa | ID client OAuth. Se non fornito, verrà tentata la registrazione dinamica del client. |
clientSecret | Stringa | Segreto client OAuth, se richiesto dal server di autorizzazione. |
scope | Stringa | Ambiti OAuth da richiedere durante l'autorizzazione. |
Debug
Se un server MCP remoto non riesce ad autenticarsi, puoi diagnosticare i problemi con:
# Visualizza lo stato di autenticazione per tutti i server compatibili con OAuth
dropstone mcp auth list
# Esegui il debug della connessione e del flusso OAuth per un server specifico
dropstone mcp debug il-mio-server-oauth
Il comando mcp debug mostra lo stato di autenticazione corrente, verifica la connettività HTTP e tenta il flusso di rilevamento OAuth.
Gestione
I tuoi MCP sono disponibili come strumenti in Dropstone, insieme agli strumenti integrati. Puoi quindi gestirli tramite la configurazione Dropstone come qualsiasi altro strumento.
Globale
Ciò significa che puoi abilitarli o disabilitarli globalmente.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"my-mcp-foo": {
"type": "local",
"command": ["bun", "x", "my-mcp-command-foo"]
},
"my-mcp-bar": {
"type": "local",
"command": ["bun", "x", "my-mcp-command-bar"]
}
},
"tools": {
"my-mcp-foo": false
}
}
Possiamo anche utilizzare un pattern glob per disabilitare tutti gli MCP corrispondenti.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"my-mcp-foo": {
"type": "local",
"command": ["bun", "x", "my-mcp-command-foo"]
},
"my-mcp-bar": {
"type": "local",
"command": ["bun", "x", "my-mcp-command-bar"]
}
},
"tools": {
"my-mcp*": false
}
}
Qui stiamo utilizzando il pattern glob my-mcp* per disabilitare tutti gli MCP.
Per agente
Se hai un gran numero di server MCP, potresti voler abilitarli solo per agente e disabilitarli globalmente. Per fare questo:
- Disabilitalo come strumento a livello globale.
- Nella tua configurazione agente, abilita il server MCP come strumento.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"my-mcp": {
"type": "local",
"command": ["bun", "x", "my-mcp-command"],
"enabled": true
}
},
"tools": {
"my-mcp*": false
},
"agent": {
"my-agent": {
"tools": {
"my-mcp*": true
}
}
}
}
Pattern glob
Il pattern glob utilizza semplici pattern di espressioni regolari glob:
*corrisponde a zero o più caratteri qualsiasi (ad esempio,"my-mcp*"corrisponde amy-mcp_search,my-mcp_list, ecc.)?corrisponde esattamente a un carattere- Tutti gli altri caratteri corrispondono letteralmente
Note
Gli strumenti del server MCP vengono registrati con il nome del server come prefisso, quindi per disabilitare tutti gli strumenti di un server usa:
"mynomeserver_*": false
Esempi
Di seguito sono riportati esempi di alcuni server MCP comuni. Contattaci se desideri che ne venga documentato un altro.
Sentry
Aggiungi il server MCP Sentry per interagire con i tuoi progetti e problemi Sentry.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"sentry": {
"type": "remote",
"url": "https://mcp.sentry.dev/mcp",
"oauth": {}
}
}
}
Dopo aver aggiunto la configurazione, autenticati con Sentry:
dropstone mcp auth sentry
Questo aprirà una finestra del browser per completare il flusso OAuth e collegare Dropstone al tuo account Sentry.
Una volta autenticato, puoi utilizzare gli strumenti Sentry nei tuoi prompt per interrogare problemi, progetti e dati sugli errori.
Mostrami gli ultimi problemi non risolti nel mio progetto. usa sentry
Context7
Aggiungi il server MCP Context7 per cercare nella documentazione.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"context7": {
"type": "remote",
"url": "https://mcp.context7.com/mcp"
}
}
}
Se hai creato un account gratuito, puoi utilizzare la tua chiave API e ottenere limiti di richiesta più elevati.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"context7": {
"type": "remote",
"url": "https://mcp.context7.com/mcp",
"headers": {
"CONTEXT7_API_KEY": "{env:CONTEXT7_API_KEY}"
}
}
}
}
Qui assumiamo che tu abbia impostato la variabile d'ambiente CONTEXT7_API_KEY.
Aggiungi usa context7 ai tuoi prompt per utilizzare il server MCP Context7.
Configura uno script Cloudflare Worker per memorizzare nella cache le risposte API JSON per cinque minuti. usa context7
In alternativa, puoi aggiungere qualcosa come questo al tuo AGENTS.md.
Quando devi cercare nella documentazione, usa gli strumenti `context7`.
Grep di Vercel
Aggiungi il server MCP Grep di Vercel per cercare frammenti di codice su GitHub.
{
"$schema": "https://dropstone.io/schema/config.json",
"mcp": {
"gh_grep": {
"type": "remote",
"url": "https://mcp.grep.app"
}
}
}
Poiché abbiamo chiamato il nostro server MCP gh_grep, puoi aggiungere usa lo strumento gh_grep ai tuoi prompt per far sì che l'agente lo utilizzi.
Qual è il modo corretto per impostare un dominio personalizzato in un componente SST Astro? usa lo strumento gh_grep
In alternativa, puoi aggiungere qualcosa come questo al tuo AGENTS.md.
Se non sei sicuro su come fare qualcosa, usa `gh_grep` per cercare esempi di codice da GitHub.