Filter:
QuestionTask 2.1

Why does an agent misroute between two similar tools, and what's the first fix?

Space to flip
AnswerTask 2.1

Tool descriptions are the primary mechanism for tool selection — minimal or overlapping ones misroute. First fix: expand each description with input formats, example queries, edge cases, and boundaries vs. similar tools.

← → navigate
QuestionTask 2.1

What makes a tool description differentiate one tool from a similar alternative?

Space to flip
AnswerTask 2.1

State its purpose, expected inputs, outputs, and when to use it versus similar alternatives — plus input formats, example queries, edge cases, and boundary explanations.

← → navigate
QuestionTask 2.1

Two tools still overlap after better descriptions — two structural fixes?

Space to flip
AnswerTask 2.1

Rename to eliminate overlap (analyze_contentextract_web_results); or split a generic tool into purpose-specific tools with defined I/O contracts (analyze_documentextract_data_points, summarize_content, verify_claim_against_source).

← → navigate
QuestionTask 2.1

A well-written tool description still gets ignored. Where else should you look?

Space to flip
AnswerTask 2.1

The system prompt. Keyword-sensitive instructions can create unintended tool associations that override even a well-written description. Review and remove that wording.

← → navigate
QuestionTask 2.2

How does an MCP tool signal failure, and why isn't "Operation failed" enough?

Space to flip
AnswerTask 2.2

The isError flag marks the tool result as a failure. A uniform generic "Operation failed" prevents the agent from making appropriate recovery decisions — attach structured metadata instead.

← → navigate
QuestionTask 2.2

What structured metadata should an MCP error response carry?

Space to flip
AnswerTask 2.2

errorCategory (transient / validation / permission), an isRetryable boolean, and a human-readable description. Structured metadata prevents wasted retry attempts.

← → navigate
QuestionTask 2.2

Name the four error categories and the recovery each implies.

Space to flip
AnswerTask 2.2
  • transient (timeouts, service unavailable) → retry
  • validation (invalid input) → fix input
  • business (policy violation) → explain
  • permission (access denied) → escalate
← → navigate
QuestionTask 2.2

How should a business-rule violation be returned to the agent?

Space to flip
AnswerTask 2.2

With retriable: false plus a customer-friendly explanation, so the agent communicates appropriately — not a raw error and not a pointless retry.

← → navigate
QuestionTask 2.2

A subagent hits a transient failure — what is handled locally, what propagates?

Space to flip
AnswerTask 2.2

Recover transient failures locally; propagate to the coordinator only errors that can't be resolved locally — with partial results and what was attempted. And distinguish an access failure (needs a retry decision) from a valid empty result (success, no matches).

← → navigate
QuestionTask 2.3

Why cap an agent near 4–5 tools instead of giving it 18?

Space to flip
AnswerTask 2.3

More tools increase decision complexity and degrade tool selection reliability. Restrict each subagent's tool set to its role to prevent cross-specialization misuse.

← → navigate
QuestionTask 2.3

Why do agents misuse tools outside their specialization, and what's the principle?

Space to flip
AnswerTask 2.3

An agent given off-role tools tends to misuse them (a synthesis agent attempting web searches). Apply scoped tool access: give each agent only the tools its role needs, with limited cross-role tools for specific high-frequency needs.

← → navigate
QuestionTask 2.3

The synthesis agent needs frequent simple fact-checks. Best approach?

Space to flip
AnswerTask 2.3

Give it a scoped cross-role verify_fact tool for simple lookups, while complex verifications keep routing through the coordinator. Don't hand it all web-search tools.

← → navigate
QuestionTask 2.3

What are the three tool_choice options and what does each do?

Space to flip
AnswerTask 2.3
  • "auto" — model decides whether to call a tool
  • "any" — must call some tool (no conversational text)
  • {"type":"tool","name":"…"} — forces one specific tool
← → navigate
QuestionTask 2.3

How do you guarantee extract_metadata runs before enrichment tools?

Space to flip
AnswerTask 2.3

Use forced tool_choice ({"type":"tool","name":"extract_metadata"}) to call it first, then process subsequent steps in follow-up turns. (Also: replace a generic fetch_url with a constrained load_document that validates URLs.)

← → navigate
QuestionTask 2.4

Where do shared team MCP servers go versus personal/experimental ones?

Space to flip
AnswerTask 2.4

Shared team tooling → project-level .mcp.json (committed to the repo). Personal/experimental servers → user-level ~/.claude.json.

← → navigate
QuestionTask 2.4

How do you keep auth tokens out of git when configuring an MCP server?

Space to flip
AnswerTask 2.4

Use environment-variable expansion in .mcp.json — e.g. ${GITHUB_TOKEN} — instead of committing the literal token.

← → navigate
QuestionTask 2.4

When are tools from configured MCP servers available to the agent?

Space to flip
AnswerTask 2.4

At connection time — tools from all configured MCP servers are discovered and available to the agent simultaneously.

← → navigate
QuestionTask 2.4

The agent keeps using built-in Grep over a better MCP tool. Why, and the fix?

Space to flip
AnswerTask 2.4

The MCP tool's description is too thin. Enhance MCP tool descriptions to explain capabilities and outputs in detail so the agent prefers the more capable MCP tool. (And choose a community server, e.g. Jira, over a custom one for standard integrations.)

← → navigate
QuestionTask 2.4

What are MCP resources, and what problem do they solve?

Space to flip
AnswerTask 2.4

A mechanism to expose content catalogs — issue summaries, documentation hierarchies, database schemas. They give agents visibility into available data without requiring exploratory tool calls.

← → navigate
QuestionTask 2.5

Grep vs Glob — what does each one search?

Space to flip
AnswerTask 2.5

Grep searches file contents for patterns (function names, error messages, import statements). Glob matches file paths by name/extension pattern (e.g. **/*.test.tsx).

← → navigate
QuestionTask 2.5

Read/Write vs Edit — and what do you do when Edit fails?

Space to flip
AnswerTask 2.5

Read/Write = whole-file operations; Edit = targeted change via unique text match. When the anchor text isn't unique and Edit fails, fall back to Read + Write.

← → navigate
QuestionTask 2.5

How should an agent build understanding of an unfamiliar codebase?

Space to flip
AnswerTask 2.5

Incrementally: start with Grep to find entry points, then Read to follow imports and trace flows — rather than reading all files upfront.

← → navigate
QuestionTask 2.5

How do you trace a function's usage across wrapper modules?

Space to flip
AnswerTask 2.5

First identify all the exported names, then Grep each name across the codebase.

← → navigate

Keyboard: navigate · Space flip · S shuffle · R restart · G got it · V review again