Endpoint MCP di produzione
https://mcp.fbplot.com/mcpTrasporto: HTTP streaming; Codice di autorizzazione OAuth 2.1 + PKCE; negoziazione del protocollo supportata.
Risolvere, quindi ispezionare
Chiedi al cliente di chiamare resolve_players quando ha un nome visualizzato. Confermare il candidato prima di trasmettere il suo ID stabile.
{
"name": "Lamine Yamal",
"season": "2025/2026",
"limit": 5
}Crea un PNG radar con parità di siti web
La chiave di idempotenza rende sicuri i tentativi per la stessa richiesta normalizzata. La risposta include esplicito chart_id, edit_urle un MCP in linea image blocco del contenuto. Non viene restituito alcun URL PNG.
{
"chart_type": "radar",
"series": [
{ "player_id": "PLAYER_ID_1", "season": "2025/2026" },
{ "player_id": "PLAYER_ID_2", "season": "2025/2026" }
],
"metric_ids": ["goals", "assists", "expected_goals", "key_passes", "progressive_carries"],
"normalization": "per90",
"score_mode": "percentile",
"visual_style_id": "fbplot-default",
"aspect_ratio": "feed",
"branding": { "watermark": true },
"customization": {
"radar": {
"comparison_mode": "overlay",
"style": { "grid_shape": "circular", "metric_label_size": 13 },
"header": { "subtitle": "2025/2026 · per 90", "alignment": "center" }
}
},
"idempotency_key": "report-2025-08-26-01"
}Crea una pizza PNG
I grafici della pizza profilano un giocatore con 3-16 metriche selezionate utilizzando lo stesso componente grafico circolare del sito web.
{
"chart_type": "pizza",
"series": [{ "player_id": "PLAYER_ID", "season": "2025/2026" }],
"metric_ids": ["goals", "assists", "expected_goals", "key_passes", "progressive_carries"],
"normalization": "per90",
"visual_style_id": "fbplot-default",
"aspect_ratio": "feed"
}Crea un PNG con grafico a dispersione
Per i grafici a dispersione, i primi due ID metrici sono gli assi X e Y. Aggiungi una metrica del raggio opzionale ed evidenzia fino a 12 etichette di serie.
{
"chart_type": "scatterplot",
"series": [
{ "player_id": "PLAYER_ID_1", "season": "2025/2026" },
{ "player_id": "PLAYER_ID_2", "season": "2025/2026" }
],
"metric_ids": ["goals", "assists"],
"radius_metric_id": "minutes",
"highlighted_player_ids": ["PLAYER_ID_1", "PLAYER_ID_2"],
"normalization": "per90",
"visual_style_id": "fbplot-default",
"aspect_ratio": "feed"
}Esempio di API OpenAI
Mantieni abilitata l'approvazione per la scrittura di un grafico e consenti al client di completare OAuth anziché incorporare un token utente nel codice dell'applicazione.
import OpenAI from "openai"
const response = await new OpenAI().responses.create({
model: "gpt-5.6",
tools: [{
type: "mcp",
server_label: "fbplot",
server_url: "https://mcp.fbplot.com/mcp",
require_approval: "always"
}],
input: "Compare these two players in a radar chart"
})Regole di stile e branding
- Impostazione predefinita di FBPlot. Utilizza la tavolozza Analyst Studio, i caratteri del grafico supportati, il contrasto griglia/asse accessibile e la filigrana FBPlot.
- Guidato dal marchio. Può utilizzare un kit del marchio dell'account salvato. I loghi sono selezionati solo dalle risorse FBPlot di proprietà; gli URL del logo esterno e l'input base64 vengono rifiutati.
- High contrast. Aumenta il contrasto e mantiene le differenze di linea/indicatore per il confronto oltre al solo colore.
- Privacy delle risorse. Il PNG viene fornito in linea tramite MCP. La copia privata archiviata rimane nell'ambito del proprietario e scade; non viene creato alcun URL di condivisione pubblica.
https://mcp.fbplot.com/mcp