Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AA_SOURCENoBackend selection: `auto` | `api` | `rsc`.auto
AA_API_KEYNoAA JSON API key; enables the `aa:api` backend. Optional — no API key is needed (the server falls back to scraping).
AA_API_TTLNoAPI cache TTL (seconds).21600
AA_OFFLINENoSet to `1` to serve from cache only and never touch the network.unset
AA_BASE_URLNoOverride host (tests/mirrors).https://artificialanalysis.ai
AA_RICH_TTLNoRich-dataset (model-page overlay) cache TTL (seconds).21600
AA_CACHE_DIRNoPayload cache directory.~/.cache/aa-mcp
AA_CACHE_TTLNoScrape cache TTL (seconds).3600
AA_LOG_LEVELNostderr log level.WARNING
AA_MAX_BYTESNoDecoded-body cap (gzip-bomb guard).50331648
AA_HTTP_TIMEOUTNoPer-attempt HTTP timeout (seconds).30
AA_HTTP_DEADLINENoTotal budget for one fetch (seconds).45

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
aa_leaderboardA

Rank and filter the ~700 tracked model variants — the default starting point.

Answers "which model is smartest / cheapest / fastest / best value right now". Returns a compact markdown table sorted by sort (default: intelligence).

Args: mode: "rank" (default), "value" (intelligence per $/task), or "frontier" (the Pareto intelligence-vs-$/task frontier — the same code path as aa_pareto, which also plots other x axes; the footnote gives the knee). sort: metric/alias to sort by — e.g. intelligence, cost_per_task, tps, ttft, context_tokens, price_in, price_out, params_b, release_date, or any benchmark key. Use aa_reference topic=fields for all names. fields: comma list of columns to show instead of the default set. top: rows to return (default 10; >15 drops the Creator column for brevity). creator: substring match on the creator/lab (e.g. "anthropic"). name: substring match on the model name/slug. open_weights: True/False to keep only open- or closed-weights models. reasoning: True/False to keep only reasoning or non-reasoning models. min_intelligence: drop models below this Intelligence Index value. max_cost_per_task: drop models above this $/task (cache-aware). min_speed: drop models below this median output tok/s. max_ttft: drop models above this median time-to-first-token (seconds). min_context: drop models with a smaller context window (tokens). released_after: ISO date (YYYY-MM-DD); keep models released on/after it. include_deprecated: include deprecated rows (default False). refresh: bypass the cache and re-fetch (use for "released today").

aa_modelA

One model's full digest: specs, indices, benchmark scores, pricing and speed.

Use after aa_leaderboard/aa_search when you need everything about a single model. The header and footnote always carry the round-trippable slug.

Args: query: model name or slug (fuzzy). Ambiguous names return a candidate table. sections: comma string (or list) of identity/indexes/benchmarks/pricing/ speed/cost/openness/modalities, or all. Default: identity, indexes, benchmarks, pricing, speed. Alias: specs = identity. Unknown names error with the valid list. refresh: bypass the cache and re-fetch.

aa_paretoA

The Pareto frontier: any score vs any cost/size/speed axis, with the knee.

Always available — no per-benchmark tool needed. Returns the models where no other model has both a lower-or-equal x and a higher-or-equal score, ordered by x ascending, plus a knee line and coverage.

The three site views this covers:

  • aa_pareto (default) = "Intelligence Index vs. Cost per Index Task"

  • aa_pareto x=out_tokens_per_task = "Intelligence Index vs. Output Tokens per Task"

  • aa_pareto x=index_total_cost = "Intelligence Index vs. Cost to Run the AA Intelligence Index" (whole suite)

Args: score: any rankable with per-model numbers (default intelligence); e.g. cyberIndex, terminalBench40, gpqa, capabilities.legal, openness. x: the trade-off axis — cost_per_task (default), index_total_cost, out_tokens_per_task, time_per_task, context_tokens, params_b, ttft, price_in, price_out. top: frontier points to return (default 15; cheapest first). creator: substring match on the creator/lab. open_weights: True/False to keep only open- or closed-weights models. min_intelligence: drop models below this Intelligence Index value. min_context: drop models with a smaller context window (tokens). include_deprecated: include deprecated rows (default False). include_all: return every frontier point instead of the top cheapest. refresh: bypass the cache and re-fetch.

aa_compareA

Side-by-side comparison of 2-12 models on any benchmark (site parity).

Mirrors artificialanalysis.ai's comparison pages: models as columns (or a per-metric delta view), every rankable metric, and a reproducible YAML spec. Rows AA publishes only on an eval chart set / homepage panel (the cyber boards, AA-3D, …) are joined in and the source is footnoted; any cell that stays - is footnoted (a per-model missing on requested metrics: … count, the per-metric detail while the gap is small, or a whole-model "no published pricing or speed" line) so no gap is silent.

Media/speech arena models (e.g. "Grok Voice 3.0") also resolve: comparing only arena entries renders their board metrics (Elo / STS / WER, appearances, price, release, open weights) with a footer warning that per-board scores are not cross-comparable; mixing a language model with an arena entry is refused with an explanation.

Args: queries: 2-12 model names or slugs (language models, or arena entries on one board). metrics: "all" (every rankable key any selected model has), "benchmarks" (benchmark/index kinds only), or a comma list of keys/labels/aliases; empty uses the default rows (Intelligence, Intel/$, $/task, in/out $/1M, tok/s, TTFT, Context). For an arena comparison the names are arena fields (elo, sts, wer, ci, appearances, price, release, open_weights, rank, board, creator). view: "table" (models as columns) or "diff" (one row per metric, value plus the delta vs the first model, e.g. 57.6 (+4.9)). compact: default metric set only — keep the core rows instead of the full set; ignored (and stated in the footer) whenever metrics= is given. spec: a YAML or JSON document with models/metrics/view/compact/filters, merged with the explicit arguments; every reply ends with a copy-pasteable spec: block that reproduces the call (view and compact included, so the round-trip is lossless). refresh: bypass the cache and re-fetch.

aa_benchmarksA

Search everything rankable: benchmarks, indexes, derived metrics, arenas.

Each hit carries its How to query hint (the exact tool call), so finding "Artificial Analysis Speech to Speech Index" immediately gives you aa_media board=speech_to_speech.

Args: query: tokenised AND-match over key/label/aliases/description/tags (e.g. "speech", "cyber", "long context"). domain: one domain name (coding, math, science, security, agentic, tool-use, long-context, instruction-following, knowledge, reasoning, safety, multimodal, speech, media, music, video, business, finance, legal, medical, engineering, economics, cost, speed, openness, ...). tag: one raw tag (a narrower filter than domain=). verbose: also show what each thing measures.

aa_benchmark_leaderboardA

Rank models on one benchmark, stating the source and coverage honestly.

Auto-selects the richest source: the full 700-row leaderboard when the field exists there, else AA's curated eval chart set, else the homepage panel; the header says which and warns when it is not a full leaderboard.

Args: benchmark: benchmark key, label or eval slug (e.g. gpqa, gpqa-diamond, "GPQA Diamond", briefcaseElo). top: rows to return (default 15). fields: comma list of columns to show instead of the default set. creator: substring match on the creator/lab. open_weights: True/False to keep only open- or closed-weights models. min_intelligence: drop models below this Intelligence Index value. include_estimates: include AA-estimated scores (default True); estimates are marked with * and footnoted. refresh: bypass the cache and re-fetch.

aa_providersA

Provider endpoints: per-host pricing, precision, speed and feature flags.

Pass model for one model's serving endpoints (with per-endpoint $/task and precision), or host/filters for the 1,200-row provider board. With neither, returns the cheapest endpoints globally.

Args: model: model name or slug — switches to per-model endpoint detail. host: substring match on the serving host (e.g. "groq"). top: rows to return (default 15). sort: cost_per_task (default), price_in, price_out, tps, ttft, intelligence or context_tokens. Lower-is-better keys sort ascending. fields: comma list of columns; supports precision, cache_read, discount, e2e, function_calling, json_mode, context_tokens. open_weights: keep only endpoints for open- or closed-weights models. min_context: drop endpoints with a smaller context window (tokens). refresh: bypass the cache and re-fetch.

aa_mediaA

Human-preference arenas: image, video, speech, music (Elo + 95% CI).

Args: board: any image/video/TTS/music board key (text_to_image, image_editing, text_to_video, image_to_video, video_editing, text_to_speech, text_to_speech_controlled, music_instrumental, music_with_vocals) or a speech board (speech_to_text, speech_to_text_streaming, speech_to_speech — also accepted as realtime_voice / "realtime voice"). Hyphens/spaces/case are ignored (text-to-image == text_to_image). top: rows to return (default 15). fields: comma string (or list) of columns; supports ci_lower, ci_upper, ci (95% CI), open_weights, url. Elo CI is not shown by default. open_weights: keep only open- or closed-weights entries. refresh: bypass the cache and re-fetch.

aa_agentsB

AA agent leaderboards: coding agents, chatbots and search APIs.

Args: board: coding_agents (default), chatbots or search_api. top: rows to return (default 15). refresh: bypass the cache and re-fetch.

aa_searchA

Cheap name -> slug resolver; call this first whenever a name is uncertain.

Always returns the slug so the next tool call can be exact. Media/speech arena models (image/video/speech/music boards) are searched too and returned with their board, so a name like "Grok Voice 3.0" resolves instead of coming back empty.

Args: query: fuzzy model name or partial slug (e.g. "claude opus"). creator: optional creator/lab substring filter. open_weights: True/False to keep only open- or closed-weights models. top: rows to return (default 15). refresh: bypass the cache and re-fetch.

aa_referenceA

Static reference text: tool routing, metric/eval definitions, provenance.

No network. Use to learn what the fields mean and which tool answers what.

Args: topic: overview (default), indexes, benchmarks, pricing, speed, providers, media, fields (alias list), sources, or all.

aa_rawA

Raw JSON escape hatch (token-expensive — prefer the table tools).

Args: kind: model, leaderboard, providers, providers_board, media, agents, home, eval or catalog. query: slug/board/slug argument for the chosen kind (e.g. a model slug for "model", a board key for "media"/"agents", an eval slug for "eval"). fields: comma list of top-level keys to keep per record. top: records to return, capped at 5 (default 1). refresh: bypass the cache and re-fetch.

Prompts

Interactive templates invoked by user choice

NameDescription
best_model_for_taskPick the best model for a task and budget.
compare_modelsCompare specific models side by side.

Resources

Contextual data attached and managed by the client

NameDescription
Metric & benchmark definitionsMetric/eval definitions and methodology notes.
Benchmark catalogThe full benchmark registry as JSON.
Rankable indexEvery rankable thing (benchmarks, indexes, derived metrics, arenas) with its how-to-query hint, as JSON.
Rankable index (YAML)The same rankable index as YAML (aa_benchmarks domain/tag search covers the same data).
Comparison spec templateA YAML template for aa_compare's spec= argument (models/metrics/view/compact/filters).
Data sources & cacheURLs, cache paths, TTLs, offline mode and recovery.
reference: overviewStatic reference text for the overview topic.
reference: indexesStatic reference text for the indexes topic.
reference: benchmarksStatic reference text for the benchmarks topic.
reference: pricingStatic reference text for the pricing topic.
reference: speedStatic reference text for the speed topic.
reference: providersStatic reference text for the providers topic.
reference: mediaStatic reference text for the media topic.
reference: fieldsStatic reference text for the fields topic.
reference: sourcesStatic reference text for the sources topic.

TDQS

A4/5.0

Scored across 12 tools

Disambiguation4/5

Tools mostly have distinct roles: aa_search resolves names, aa_reference explains fields, aa_raw is an escape hatch, aa_model is single-model detail. There is some overlap between aa_leaderboard, aa_benchmark_leaderboard, aa_pareto and aa_compare since all rank/compare models and share many filter args, but the descriptions clearly delineate rank-vs-frontier-vs-side-by-side-vs-single-benchmark usage.

Naming Consistency5/5

All 12 tools use the aa_ prefix with lowercase snake_case (aa_leaderboard, aa_model, aa_pareto, aa_benchmark_leaderboard, aa_reference, aa_raw). The pattern is predictable throughout, with only the shared 'aa_' namespace prefix adding any variation.

Tool Count5/5

12 tools is a well-scoped set for a model-intelligence data server, each mapping to a coherent capability (leaderboard, single model, Pareto, compare, benchmarks, providers, media, agents, search, reference, raw). Nothing feels redundant or missing at the count level.

Completeness4/5

Coverage is strong: ranking, single-model digests, Pareto frontiers, side-by-side comparison, benchmark search, provider endpoints, media/agents arenas, fuzzy name resolution, static reference, and a raw JSON escape hatch. Minor gaps remain (no explicit write/refresh-scheduling or per-benchmark-specific tools), but aa_benchmark_leaderboard and aa_raw largely cover the workarounds.

Maintenance

ActivityMaintained
ResponsivenessNo issues