- wire spec: lifecycle, stdio + Streamable HTTP transports, tools, utilities, legacy SSE, versioning, changelog (14 Tier 1) - client ecosystem: Claude Code/VS Code/Cursor/Codex configs, mcp-remote, Smithery, registries, Glama (12 Tier 1) - security/ops: authorization draft, trust model, poisoning, rug pulls, production hardening (12 Tier 1) + 68 Tier 2 cards - conclusions: minimal stdlib client on 2025-11-25, normalizer + resolver agent for pasted configs/GitHub URLs, untrusted-until- consent trust model; nothing built yet - audit PASS (14 subjects, 797 sources, 32 conclusions)
55 lines
2.9 KiB
Markdown
55 lines
2.9 KiB
Markdown
# mcp-client.md (NeMo Agent Toolkit docs)
|
|
|
|
## Metadata
|
|
|
|
| Field | Value |
|
|
|---|---|
|
|
| Institute | Molodetz Institute - Research & Retrieval Division |
|
|
| Subject | mcp-client-support |
|
|
| Document type | Source Dossier |
|
|
| Tier | 1 |
|
|
| Source title | mcp-client.md (NeMo Agent Toolkit docs) |
|
|
| Source URL | https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/c7e1162a1c7ff18bbd797e090a56cad97c281c92/docs/source/build-workflows/mcp-client.md |
|
|
| Source publisher / author | NVIDIA |
|
|
| Source type | vendor docs |
|
|
| Source date (published) | Unknown - not stated (pinned to commit c7e1162a) |
|
|
| Date researched | 2026-10-18 |
|
|
| Researched by | tai (agent), model: Claude Sonnet 5, on behalf of retoor |
|
|
| Research method | gather-subagent direct page fetch, parent synthesis from evidence pack |
|
|
| Confidence | High |
|
|
| Status | Active |
|
|
|
|
## Summary
|
|
|
|
NVIDIA's NeMo Agent Toolkit MCP client docs specify the stdio spawn surface (command, args, env), a 60-second default tool-call timeout with a 300-second auth-flow timeout, and a bounded reconnect policy (enabled by default, 2 attempts, 0.5s to 50s backoff). Session bounds are 100 concurrent sessions with 1-hour idle eviction, and a pre-flight CLI (`tool list`/`call`/`ping`) supports inspecting tools and schemas before use.
|
|
|
|
## Key findings
|
|
|
|
- stdio config surface: `server.command` ("such as `python` or `docker`"), `server.args`, `server.env` ("Environment variables for the stdio process").
|
|
- `tool_call_timeout`: "Timeout for MCP tool calls. Defaults to `60` seconds"; `auth_flow_timeout` defaults to `300` seconds.
|
|
- Reconnect policy: `reconnect_enabled` (default true), `reconnect_max_attempts` (default 2), `reconnect_initial_backoff` 0.5s, `reconnect_max_backoff` 50.0s.
|
|
- Concurrency/session bounds: `max_sessions` ("Maximum number of concurrent session clients. Defaults to `100`"), `session_idle_timeout` ("Time after which inactive sessions are cleaned up. Defaults to `1 hour`").
|
|
- Auth provider only for `streamable-http`; includes a `nat mcp client tool list/call/ping` CLI for pre-flight inspection of tools and schemas.
|
|
|
|
## Pros / strengths
|
|
|
|
- Concrete defaults for every operations knob the client needs: timeouts, reconnect, sessions, eviction.
|
|
- Pinned to a commit, so the documented values are reproducible.
|
|
- The pre-flight CLI is a good pattern for user-visible inspection of tools before approval.
|
|
|
|
## Cons / limitations / caveats
|
|
|
|
- Product docs, not guidance: defaults are stated without rationale or tuning advice.
|
|
- The stdio env passthrough is exposed without the spec's consent/sandbox warnings alongside it.
|
|
- The auth provider covers streamable-http only, so stdio auth posture is left implicit.
|
|
|
|
## Relevance to tai
|
|
|
|
Concrete default values for the tai client's operational knobs (60s call timeout, bounded reconnect with backoff, session caps/idle eviction) and the stdio-spawn config shape.
|
|
|
|
## Changelog
|
|
|
|
| Date | Change |
|
|
|---|---|
|
|
| 2026-10-18 | Initial dossier created. |
|