nvidia-mcp
Provides free access to NVIDIA's hosted model catalog on build.nvidia.com, with automatic model routing and tools for searching, calling, probing, and cross-checking models across categories like reasoning, vision, code, translation, and embeddings.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@nvidia-mcpExplain this Python code and suggest improvements"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
NVIDIA MCP — Free Access to 100+ AI Models
An MCP server that gives Claude, Cursor, and any other AI agent free access to NVIDIA's hosted model catalog — Nemotron, Llama, GPT-OSS, DeepSeek, vision models, and embeddings — through one API key, with automatic model routing.
NVIDIA MCP is a Model Context Protocol server that connects your AI coding agent to build.nvidia.com. You get a free NVIDIA API key, add one config block, and your agent can call more than 100 models: reasoning models for hard problems, vision models for images, code models for refactoring, and embedding models for semantic search. The server picks the right model for each task automatically, so you describe the job instead of memorizing model names.
Why use it
Free NVIDIA API credits. NVIDIA gives developers free credits on build.nvidia.com. No credit card to start.
One key, 100+ models. Nemotron, Llama 3.3, GPT-OSS, DeepSeek, Riva translation, NV-Embed, and more — all through a single OpenAI-compatible endpoint.
Automatic routing. Say "refactor this module" or "bu görseldeki tabloyu çıkar" and the server picks a suitable model. English and Turkish task descriptions are both understood.
Parallel cross-checking.
nv_fanoutsends one prompt to up to 6 models at once and returns every answer side by side — useful when one model's answer isn't enough.Honest availability data. Being listed in NVIDIA's catalog does not mean a model is servable. This repo ships measured probe results and a
nv_probetool so you can verify your own account.
Related MCP server: model-radar
How to get a free NVIDIA API key
You need an nvapi-... key from NVIDIA. It takes about two minutes.
Go to build.nvidia.com.
Click Login (top right) and sign in, or create a free NVIDIA account. A personal email works; you do not need an enterprise account.
Open any model page — for example llama-3.3-70b-instruct.
Click the Get API Key button on that page (usually above the code sample on the right).
Click Generate Key. Your key appears once, starting with
nvapi-.Copy it immediately and store it somewhere safe. NVIDIA will not show it again — you would have to generate a new one.
Notes on the free tier:
New accounts receive free API credits, enough for a substantial amount of experimentation.
The same key works for every model in the catalog; you do not generate a separate key per model.
Credits and per-model availability depend on your account tier. Run
nv_probe(below) to see exactly what your key can reach.
Install
git clone https://github.com/holm-digital-io/nvidia-mcp.git
cd nvidia-mcp
python3 -m venv .venv
.venv/bin/pip install -e .Create a .env file next to the package:
NVIDIA_API_KEY=nvapi-your-key-hereVerify:
.venv/bin/python -c "from nvidia_mcp import client; print(len(client.list_model_ids()), 'models reachable')"Connect it to your agent
Claude Code
Add to .mcp.json in your project root:
{
"mcpServers": {
"nvidia-models": {
"command": "/absolute/path/to/nvidia-mcp/.venv/bin/python",
"args": ["-m", "nvidia_mcp.server"],
"env": { "PYTHONPATH": "/absolute/path/to/nvidia-mcp" }
}
}
}Cursor
Add the same block to ~/.cursor/mcp.json.
Claude Desktop
Add the same block to claude_desktop_config.json
(macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\).
Restart the client afterwards so it picks up the new server.
Tools
Tool | What it does |
| Lists every task category the router knows, with its top models. |
| Live model list from your account, tagged by capability and liveness. |
| "What should I use for X?" Recommends models without calling any. |
| Verifies the API key and reports catalog size. |
| Actually calls each model and reports which ones answer, and how fast. |
| Calls one specific model. Supports images for vision models. |
| Routes and runs in one step. Pass an image and it selects a vision model. |
| Runs one prompt across up to 6 models in parallel, returns all answers. |
| Embeds texts. Returns shape only unless you pass |
| Ranks candidate strings against a query by cosine similarity. |
Images can be passed as an HTTPS URL, a data: URI, or a local file path — the server base64-encodes local files for you.
Task categories
reasoning, general_chat, fast_cheap, code, vision, document_parse,
embedding, embedding_code, embedding_multimodal, rag_qa, safety,
reward, translation, creative, long_context, domain_medical,
domain_finance, video, image_gen.
Routing has two layers: a hand-ranked table in nvidia_mcp/catalog.py, plus name-pattern heuristics so models NVIDIA adds later still get tagged. Curated position encodes quality; measured liveness is applied as a separate filter, so a code specialist still outranks a faster generalist inside code.
Which models actually respond?
This is the part most NVIDIA integrations get wrong. GET /v1/models returned 102 model ids, but on a free-tier key only about a third answer a request — the rest return 404 Not Found or never respond.
Measured on 2026-08-11 (free tier, 45s timeout). Fastest first:
Model | Response | Best for |
| 1.0s | fast, cheap |
| 1.1s | translation |
| 1.5s | vision |
| 1.7s | fast, cheap |
| 1.8s | general |
| 1.9s | reasoning |
| 2.1s | fast, cheap |
| 2.1s | moderation |
| 2.4s | vision |
| 2.7s | fast, cheap |
| 6.7s | vision |
| 7.1s | creative |
| 13.8s | reasoning |
| 15.6s | general |
| 18.3s | reasoning |
| 20.5s | code |
| 21.4s | general, long context |
| 24.0s | general |
| 39.1s | reasoning |
Embedding models that answered: nvidia/nemotron-3-embed-1b (1.2s, 2048-dim), nvidia/nv-embedqa-e5-v5 (1.3s, 1024), nvidia/nv-embedcode-7b-v1 (3.0s, 4096), nvidia/nv-embed-v1 (3.7s, 4096), nvidia/llama-nemotron-embed-1b-v2 (4.8s, 2048), nvidia/llama-nemotron-embed-vl-1b-v2 (10.0s, 2048).
Availability is per-account and changes over time. Re-measure yours:
Ask your agent: "run nv_probe"Examples
Ask your agent in plain language; it selects the tool.
Route without calling
Which NVIDIA model should I use to extract a table from a scanned invoice?
Run with automatic model choice
Use nv_auto to describe what's in ./screenshot.png
Cross-check one question across models
Use nv_fanout to ask three models whether this SQL query has an injection risk
Semantic ranking
Use nv_similarity to rank these 20 support tickets against "billing problem"
FAQ
Is the NVIDIA API really free? NVIDIA gives developers free credits on build.nvidia.com, which is enough for meaningful development and testing without a credit card. It is free credits, not unlimited free inference — heavy production use eventually requires a paid plan or self-hosted NIM containers.
Do I need an NVIDIA GPU? No. Every model runs on NVIDIA's cloud. This server only sends HTTPS requests, so it works fine on a Mac, a Windows laptop, or a small Linux VM.
Which models are best for coding?
On the free tier, poolside/laguna-xs-2.1 is the only dedicated code model that responds; the other code-specific ids (Codestral, CodeLlama, StarCoder2, CodeGemma) return 404. The server therefore lists strong generalists — nvidia/nemotron-3-super-120b-a12b and meta/llama-3.3-70b-instruct — as first-class fallbacks in the code category.
Why did a model return empty text?
Reasoning models spend their token budget on reasoning_content before writing an answer. If you cap max_tokens too low, text comes back empty. The server detects this and returns a note telling you to raise max_tokens (4096+ for reasoning models). nv_auto raises it automatically for reasoning tasks.
Why does a model in the catalog return 404?
GET /v1/models lists the full NVIDIA catalog, not what your specific key is entitled to call. Roughly two thirds of listed ids are not servable on a free-tier key. Run nv_probe for ground truth on your account.
Does it work with Cursor and Claude Desktop? Yes. It is a standard stdio MCP server, so any MCP-compatible client works — Claude Code, Claude Desktop, Cursor, Windsurf, Cline, and others.
Is my API key sent anywhere else?
No. The key is read from your local .env, used only in the Authorization header to integrate.api.nvidia.com, and is never logged or included in any tool response.
Configuration
Variable | Default | Purpose |
| — | Required. Your |
|
| Point at self-hosted NIM instead. |
|
| Per-request timeout in seconds. |
Development
.venv/bin/python tests/test_routing.py # routing regression suite
.venv/bin/python -m nvidia_mcp.server # run the server directly over stdioLicense
MIT — see LICENSE.
Not affiliated with or endorsed by NVIDIA Corporation. "NVIDIA", "Nemotron", and "NIM" are trademarks of NVIDIA Corporation.
Available Tools
10 toolsnv_autoA
Pick the best model for the task automatically, then run the prompt on it.
Args: task: what kind of job this is, e.g. "code review", "görsel analizi". prompt: the actual content to send. system: optional system prompt. images: image URLs or local paths (forces a vision model if given). temperature: 0.0-1.0. max_tokens: response cap.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | ||
| images | No | ||
| prompt | Yes | ||
| system | No | ||
| max_tokens | No | ||
| temperature | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only mentions the auto-selection and the vision-model forcing for images. It does not state whether the tool is a read-only generation operation, any side effects, or what the response contains. The description lacks important safety and operational details such as cost, latency, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficient and front-loaded. The first sentence immediately states the core purpose, followed by a concise parameter list with short, focused definitions. No sentence is wasted, and the structure is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having no annotations, the description covers the essential input parameters and the primary behavior. Since an output schema exists, it need not explain return values. It does not address edge cases (e.g., unsupported tasks) or selection criteria, but for a straightforward auto-selection tool, it provides enough context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the tool description must compensate. It explains every parameter, adding meaningful details: 'task' has examples, 'images' notes it forces a vision model, 'temperature' gives a range, and 'max_tokens' is described as a response cap. Some descriptions are redundant (e.g., 'prompt: the actual content to send'), but overall it provides useful semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Pick') and resource ('best model for the task'), then notes it runs the prompt on that model. This distinguishes it from siblings like nv_call (which likely uses a specified model) and nv_route (which may route based on rules). The phrase 'automatically' adds a unique behavioral trait.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when automatic model selection is desired, but it does not explicitly state when to use this tool versus alternatives like nv_call or nv_route. There are no exclusions or conditions, leaving the agent to infer the appropriate context. The phrase 'automatically' gives some clear context but falls short of explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_callA
Call one specific NVIDIA model.
Args: model: exact model id, e.g. "mistralai/codestral-22b-instruct-v0.1". prompt: the user message. system: optional system prompt. images: image URLs or local file paths (vision models only). temperature: 0.0-1.0. max_tokens: response cap.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | ||
| images | No | ||
| prompt | Yes | ||
| system | No | ||
| max_tokens | No | ||
| temperature | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It adds constraints like 'vision models only' for images and parameter ranges for temperature, but does not explain what happens on error, whether the call is synchronous, how output is returned, or any side effects. The lack of annotation coverage leaves significant behavioral transparency gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured: a one-sentence purpose followed by a clear bulleted list of args. Every item adds necessary information without fluff, and the most important usage statement is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple inference tool with an output schema, the description is largely complete: it covers all parameters and key constraints. However, it does not explicitly connect to nv_list_models for valid model IDs or explain how it differs from routing/auto tools, so there is a minor contextual gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, yet the description compensates thoroughly by explaining each parameter in plain language: model is an exact ID with an example, prompt is the user message, system is optional, images are URL/paths for vision models only, temperature has an explicit range, and max_tokens is a response cap. This adds rich meaning beyond the bare schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Call') and resource ('one specific NVIDIA model'), clearly distinguishing it from sibling tools like nv_list_models (lists models) and nv_auto (likely automatic selection). The scope is precise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'one specific NVIDIA model' implies that this tool is for direct, single-model calls when the exact model ID is known, but it does not explicitly mention alternatives or exclusion criteria. The description does not reference sibling tools or when to prefer nv_route or nv_auto, leaving usage guidance implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_categoriesA
List every task category this server can route to, with its top models.
Start here when you want to know what the NVIDIA catalog is good for.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It conveys that the tool is a read-only listing operation and that it returns categories with models, but it does not disclose potential limitations, pagination, or response details. For a simple list tool, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no wasted words. The first sentence states the core function, the second gives practical guidance. It is perfectly sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema exists, the description adequately covers the purpose, usage context, and expected output. It could optionally mention whether the list is exhaustive or sorted, but 'every task category' implies completeness. The description is sufficient for a straightforward listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the description's lack of parameter documentation is acceptable. The baseline of 4 is appropriate because no parameter explanations are needed and the description focuses on the tool's purpose rather than input specifics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('List every task category') and resource ('this server can route to'), and adds context ('with its top models'). It distinguishes itself from siblings like nv_list_models and nv_route by framing itself as the starting point for understanding the catalog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Start here when you want to know what the NVIDIA catalog is good for' gives clear usage context, implying this is the discovery tool. It does not explicitly mention alternatives or when not to use it, but the 'start here' guidance effectively positions it among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_embedA
Embed texts. Returns shape and stats; write vectors to disk with save_to.
Args: texts: strings to embed. model: embedding model id. Defaults to the best available one. save_to: optional file path to write the vectors as JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | ||
| texts | Yes | ||
| save_to | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses a potential side effect (writing vectors to disk via save_to) and notes the default model behavior. However, with no annotations, it does not address permissions, reversibility, or error behavior, leaving gaps in the operational picture.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is succinct: two introductory sentences plus a compact Args block. It is well-structured, front-loaded with the main action, and every sentence adds useful information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool of this simplicity, the description covers the primary function, optional side effect, and parameter meanings. The existence of an output schema reduces the need to detail return values, though some edge-case behavior like input size limits or error handling is not mentioned, keeping it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters (texts, model, save_to) are explained in the Args section, providing meaning beyond the bare schema. This is especially valuable given the schema has no descriptions, and the explanations are clear and sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool embeds texts and mentions that it returns shape and stats, which conveys the core function. However, it does not explicitly distinguish itself from sibling tools like nv_similarity or nv_call, so it lacks clear differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool over alternatives. It only mentions that the model parameter defaults to the best available one, but does not explain ideal use cases, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_fanoutA
Run one prompt across several models in parallel and return every answer.
Use this to cross-check a hard question, compare model behaviour, or build a
quick ensemble. Either pass models explicitly, or pass task to let the
router pick the top candidates for you.
Args:
prompt: the message every model receives.
models: explicit model ids (max 6). Omit to auto-select from task.
task: task description used to auto-select models when models is empty.
system: optional shared system prompt.
images: image URLs or local paths (vision models only).
temperature: 0.0-1.0.
max_tokens: per-model response cap.
| Name | Required | Description | Default |
|---|---|---|---|
| task | No | ||
| images | No | ||
| models | No | ||
| prompt | Yes | ||
| system | No | ||
| max_tokens | No | ||
| temperature | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It explains the parallel execution, auto-selection via `task`, the max 6 models limit, and that images are for vision models only. It does not discuss failure modes or cost implications, but for a query-like fanout operation the disclosed traits are substantial and useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded: a one-sentence purpose, followed by a concise use-case line, then a clean Args list. Every sentence adds value, and the length is appropriate given the need to document seven parameters that the schema leaves undescribed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers all parameters, explains the two mutually complementary modes (`models` vs `task`), sets constraints (max 6, temperature range), and notes the vision-model limitation. Since an output schema exists, return value details are not required. The description is sufficiently complete for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no parameter descriptions (0% coverage), so the description's Args section is essential and does a thorough job. Each parameter is explained with practical constraints: `models` has max 6, `task` is used only when `models` is empty, `images` require vision models, `temperature` is 0.0-1.0, and `max_tokens` is a per-model cap. This significantly surpasses the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Run one prompt across several models in parallel and return every answer.' This clearly distinguishes it from sibling tools like nv_call (single model) or nv_route (routing), making the tool's unique fanout behavior immediately obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit use cases: 'cross-check a hard question, compare model behaviour, or build a quick ensemble.' It also clarifies the choice between passing `models` explicitly or using `task` for auto-selection. However, it does not explicitly name alternative tools or state when not to use this tool, so it falls just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_healthA
Check that the API key works and report catalog size.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description alone must disclose behavioral traits. It mentions checking the API key and reporting catalog size, but omits side-effect status (likely read-only), error behavior, or performance implications. This fails to fully carry the disclosure burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, no wasted words. It front-loads the purpose and keeps the description minimal, which is ideal for a zero-parameter health check.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, has an output schema, and no parameters, so the description need not explain return values. However, it lacks guidance on when to use this tool among the many siblings, leaving the decision context incomplete for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description adds no parameter-specific semantics. Baseline 4 is appropriate because there is nothing to document; the description correctly reflects the input schema's emptiness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verbs 'Check' and 'report' to describe a health-check resource, clearly distinguishing it from sibling tools like nv_call or nv_list_models. It states exactly what the tool does: validate the API key and output catalog size.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance or alternatives are provided. The context of a health check is implied (e.g., verifying connectivity before other calls), but the description does not state this or mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_list_modelsA
List models available on the account, tagged by capability.
Args: category: optional filter, e.g. "code", "vision", "reasoning", "embedding". refresh: bypass the 1-hour catalog cache.
| Name | Required | Description | Default |
|---|---|---|---|
| refresh | No | ||
| category | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does mention the 1-hour catalog cache and the refresh parameter to bypass it, which is useful. However, it does not describe other potential side effects, permissions, or output characteristics, leaving some gaps for a tool with no safety annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise: one declarative sentence for the purpose followed by a tight list of parameters. It is front-loaded and contains no extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has an output schema, so return values are already covered. The two optional parameters are clearly explained, and the cache behavior is mentioned. For a simple listing tool, the description covers all necessary context without being verbose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides no descriptions for the parameters, but the description fully compensates by explaining 'category' as an optional filter with concrete examples and 'refresh' as a cache bypass. This adds meaningful semantics beyond the schema's bare names and types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with the verb 'List', the resource 'models', and the scope 'available on the account, tagged by capability'. This distinguishes it from sibling tools like nv_route or nv_call, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: listing models, optionally filtered by category, with a refresh option. However, it does not name alternatives or specify exclusions, so it lacks the explicit 'when-not-to-use' guidance that would earn a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_probeA
Test which models actually answer on THIS account, and how fast.
Being listed by the catalog endpoint does not mean a model is servable — on a free-tier key a large share return 404. Run this to get ground truth.
Args: category: probe one category only (e.g. "vision"). Empty probes them all. timeout_seconds: per-model deadline.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | ||
| timeout_seconds | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that free-tier keys may yield 404s, that the probe tests one category at a time or all, and that timeout_seconds is a per-model deadline. This provides useful behavioral context without repeating schema info. It could mention that the tool is read-only, but 'test' implies no side effects, and the 404 caveat is strong added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured: a one-sentence purpose, a brief context paragraph, and an args list. Every sentence adds value. It is front-loaded with the core action and uses formatting for readability, with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is an output schema (not shown), the description doesn't need to explain return values. It covers purpose, usage context, and both parameters sufficiently. It does not discuss error handling beyond the 404 note, but the timeout and category scope suffice for a probing tool. Overall, it is complete for its complexity and sibling set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no descriptions (0% coverage), so the description must explain parameters. It does: 'category: probe one category only (e.g. "vision"). Empty probes them all' and 'timeout_seconds: per-model deadline.' This clarifies the empty default and the scalar meaning, going beyond the bare schema. It doesn't list valid categories, but that is a minor gap given the sibling nv_categories.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Test which models actually answer on THIS account, and how fast.' It distinguishes itself from the catalog-listing sibling (nv_list_models) by focusing on actual servability and ground truth. The verb 'test' plus resource 'models' is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for when to use the tool: 'Being listed by the catalog endpoint does not mean a model is servable... Run this to get ground truth.' This implies it is the follow-up to nv_list_models when you need reliable availability. It also notes free-tier key behavior, giving clear situational guidance. It doesn't explicitly name alternatives but the catalog endpoint reference covers that.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_routeA
Recommend the best NVIDIA models for a task, without calling them.
Args: task: free-text description of the job, English or Turkish. e.g. "refactor this Python module" / "bu görseldeki tabloyu çıkar". top_k: how many candidate categories to return.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | ||
| top_k | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the burden of disclosing behavioral traits. It does disclose the critical trait that the tool does not call the models, but it lacks details on return format, error handling, authentication, or any service dependencies, leaving gaps for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is remarkably concise: a single purpose sentence followed by a structured 'Args' section. There is no filler, and each sentence conveys essential information, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool with an output schema, the description covers the core purpose, parameter semantics, and a key behavioral nuance. It could clarify the relationship between 'models' and 'categories' but remains sufficiently complete for this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully explains both parameters: 'task' as a free-text description with English/Turkish support and examples, and 'top_k' as the number of candidate categories to return. This adds meaningful behavioral context beyond the schema's bare titles and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation ('Recommend') on a specific resource ('the best NVIDIA models') and for a task, explicitly noting it does so 'without calling them.' This contrasts with sibling tools like nv_call and nv_list_models, providing a distinct purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for model recommendation without execution, but it does not explicitly mention when to prefer this tool over alternatives or provide exclusions. The task examples give some context, but no direct alternative guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nv_similarityA
Rank candidate texts by semantic similarity to a query.
Args: query: the search string. candidates: texts to rank. model: embedding model id. Defaults to the best available one.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | ||
| query | Yes | ||
| candidates | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses a useful behavioral detail: the model parameter 'Defaults to the best available one', indicating automatic model selection. However, it does not address side effects, permissions, rate limits, or error conditions, leaving some gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded with the main purpose in the first sentence. The Args section is structured and each line serves a clear function, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only ranking tool, the description covers the essential inputs and behavior. Since an output schema exists, the lack of return-value explanation is acceptable. Minor gaps like empty-candidate handling or model availability are not addressed, but the overall completeness is strong given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It provides concise definitions for all three parameters: query as 'the search string', candidates as 'texts to rank', and model as 'embedding model id' with a default behavior. This adds meaningful context beyond the bare schema titles, though it lacks detailed constraints or examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Rank candidate texts by semantic similarity to a query', which is a specific verb+resource action. It clearly distinguishes this from sibling tools like nv_embed (embedding generation) or nv_call (direct invocation), making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through its phrasing ('Rank candidate texts...'), but it does not explicitly state when to use this tool versus alternatives. No exclusions or alternative tool mentions are provided, so the guidance remains only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool targets a distinct operation: listing models, listing categories, routing, health check, probing, single call, auto call, fanout, embedding, and similarity ranking. The few potentially overlapping pairs (list_models vs categories, route vs auto) are clearly separated by their descriptions, with route explicitly not calling and auto explicitly executing.
Tool names are all prefixed with nv_ and are readable, but they do not follow a consistent pattern: some are verb_noun (nv_list_models), some are bare nouns (nv_categories, nv_health, nv_similarity), and some are bare verbs (nv_route, nv_probe, nv_call, nv_embed). The inconsistent use of underscores (only in nv_list_models) and the mix of verb and noun stems makes the naming scheme unpredictable.
Ten tools is well-scoped for an NVIDIA model inference server: it covers catalog discovery, task routing, account health, availability probing, single and multi-model invocation, and embedding utilities. Each tool serves a distinct purpose, and the count is neither too sparse nor bloated.
The tool set covers the core lifecycle of working with NVIDIA models: discovering models, selecting the right model, verifying access, calling models, and embedding/similarity. Minor gaps exist, such as no dedicated method to fetch detailed model metadata (beyond list filtering) or support for multi-turn chat/streaming, but these are workarounds.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for building and testing AI agents with multi-model experimentation and insights.
An MCP server that integrates with Discord to provide AI-powered features.
9 remote MCP servers on Cloudflare Workers for AI agents. Free tier + Pro API keys.
Official MCP server for Agentwork — delegate tasks to AI agents with human-in-the-loop
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that enables AI applications to access 20+ model providers (including OpenAI, Anthropic, Google) through a unified interface for text and image generation.230MIT
- AlicenseAqualityAmaintenanceMCP server that pings 130+ free coding LLM models across 17 providers in real-time, ranks them by latency, and helps AI agents pick the fastest available model.21MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that gives AI assistants access to a multi-agent business operations platform with specialized AI services covering real estate, legal, translation, research, content creation, training, and more.59MIT
- AlicenseAqualityBmaintenanceMCP server that provides access to 15+ non-Claude AI models through a single API key, with PII Shield protection and 10 tools for chat, model management, pricing, and usage tracking.1017MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/holm-digital-io/nvidia-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server