Tool Design & MCP Integration
CCAR-F · 52 questions
- A 311 MCP suite exposes lookupcase and getticket with near-identical one-line descriptions, so Claude misroutes calls. What should architects fix first?
- A permits MCP search tool description omits input formats and edge cases, so Claude often picks the wrong search tool. What should the description include?
- A public-health portal has a vague analyzecontent tool that overlaps lab extraction. What redesign best reduces selection errors?
- A housing authority agent relies on one generic analyzedocument tool for extraction, summary, and claim checks. What interface change helps most?
- A transit system prompt says "always search" and overrides careful MCP tool descriptions. What should architects review?
- A court clerk MCP set uses minimal one-word descriptions across similar filing tools. Why does selection stay unreliable?
- A water-billing MCP exposes accountlookup and meterreadhistory. What should each description clarify?
- A parks reservations MCP often confuses group versus individual bookings. What description content reduces ambiguous selection?
- A permitting MCP returns only "Operation failed" with no metadata, so the agent cannot decide retry versus explain. What should errors include?
- A 311 validation error should not be retried in a loop. How should the tool mark it?
- A housing search subagent hits a transient timeout on one source. What error-handling pattern should it follow?
- A utility MCP must distinguish empty meter history from access denial. Which design is correct?
- A court e-filing MCP call fails because the clerk role lacks write rights. How should the tool respond?
- A health MCP source times out mid-fetch after some lab rows arrive. What should the structured error carry?
- A transit fare tool rejects a policy-violating adjustment. How should structured errors steer the agent?
- A solid-waste MCP returns the same generic failure string for every problem. Why is that harmful?
- A synthesis-only civic research agent is given 18 tools including web search and starts mis-calling search. What distribution fix is best?
- A municipal report-writer subagent keeps calling web search instead of synthesizing provided findings. What tool-set change helps?
- A parcel enrichment coordinator must run extractparcelmetadata before any enrichment tools. How can it enforce that first call?
- A clerk extraction workflow must produce a schema tool call rather than free-form chat. Which toolchoice setting fits?
- A housing agent previously used unconstrained fetchurl for policy PDFs. What safer tool design validates civic document sources?
- A civic policy synthesizer often needs quick fact checks but must not get full open-data search rights. What tool-distribution pattern fits?
- A transit ops agent sometimes answers from context and sometimes must call a named MCP tool. What should architects understand about toolchoice?
- A city engineering team wants shared Jira MCP servers for every clone without committing tokens. Where should the MCP config live?
- A developer experiments with a GIS MCP that teammates should not inherit. How should it be configured?
- A permits team finds Claude picking weak Grep guesses instead of the capable MCP search tool. What should they improve?
- County IT needs standard Jira ticket workflows for service desks. What MCP approach fits first?
- A library catalog agent wastes calls exploring collection schemas. How can MCP resources help?
- A transit monorepo configures several MCP servers. What should be true after connection-time discovery?
- Treasury has unique levy calculation workflows no community server covers. When is a custom MCP justified?
- A municipal legacy explorer must find all callers of calculatefee across packages. Which built-in tool fits best?
- A school-district agent must locate test files by name pattern regardless of folder layout. Which tool should it use?
- Edit fails because anchors in a shared utility module are not unique. What should the civic coding agent do?
- A water SCADA helper needs to understand a large legacy tree without loading everything. What built-in strategy fits?
- A court case-management refactor must find usages of wrapper-exported helpers. What search sequence works?
- A parks booking service needs a small, precise change in one handler with unique surrounding text. Which built-in fits?
- A 311 triage agent must always call the classifyrequest tool first, before any other tool, on every incoming resident message. Which mechanism most reliably enforces that on a given turn?
- A 311 intake tool takes a complainttype string parameter that residents' free text maps to loosely, causing the model to send inconsistent values like 'trash', 'garbage problem', and 'refuse issue' for the same category. What schema change fixes this?
- A water-billing adjustment tool accepts an adjustmentamount number with no schema constraint, and a malformed agent call once sent a negative meter reading that silently created an absurd billing credit. Where should this be caught?
- A parks department exposes five near-identical single-purpose tools: getfieldname, getfieldcapacity, getfieldsurface, getfieldhours, and getfieldcontact, each returning one attribute of the same reservation record. What redesign improves this?
- A housing-authority document-verification MCP tool sometimes fails because the applicant's uploaded file is corrupted, and sometimes fails because the verification service is temporarily down. Both currently return the same generic error object. How should the tool's structured error distinguish them for the agent?
- A treasury payment-processing tool can fail three ways: a network timeout, a validation error on the payer's account number, and an authorization failure because the calling agent lacks permission. Architecturally, how should the agent's response differ across these three?
- A fire-dispatch agent already knows the exact file path of a single incident report it needs to review in full, with no need to search for it. Which built-in tool is the right fit for retrieving its contents?
- A sanitation-department agent needs to run an existing, already-reviewed shell script that converts a batch of route CSVs into the format the routing system expects. No existing built-in file tool performs this conversion. What is the appropriate tool choice, and what safeguard should accompany it?
- A building-inspections search tool can match thousands of historical inspection records for a busy commercial corridor, and returning every field of every match would overwhelm the agent's context. What payload design fixes this?
- A permitting agent's createpermit tool occasionally gets called twice for the same request after a network retry, and each call currently creates a brand-new permit record, producing duplicates. How should the tool be designed to make retries safe?
- A public-health agent has access to a deletepatientrecord tool that permanently removes a record from the system. What tool design pattern is most appropriate to prevent an accidental or misinterpreted call from causing irreversible harm?
- A transit-ops citation-lookup tool can match tens of thousands of records for a busy route and currently has no way to request results in pages, so every query either times out or silently returns an arbitrary small slice. What schema addition fixes this?
- A county animal-control office exposes a lookupimpoundrecord tool to Claude. Its inputschema defines the properties animalid, sheltersite, and intakedate, and the description of animalid reads "required - the tag number of the impounded animal." The required array in the schema is empty. In practice Claude sometimes calls the tool with no animalid at all. What is the correct explanation of how a parameter is actually made mandatory?
- A city permitting office connects two MCP servers to the same Claude assistant. The legacy building-permit system's server and the new fire-inspection system's server each expose a tool named getstatus. Staff report that status lookups are returning results from the wrong system. What is the appropriate architectural fix?
- A city's 311 resident-service assistant uses two tools: searchservicerequests, which only queries the request database, and closeservicerequest, which marks a resident's case closed. The team wants lookups to run without interrupting the agent while case closures always pause for a human dispatcher. How should the tools be designed to support that policy?
- A transit authority is building an MCP server that exposes on-time-performance data to Claude. Roughly forty analysts across three offices will use it, it must authenticate each analyst against the agency's identity provider, and it needs to be patched centrally when the schedule feed changes. Which transport choice fits these requirements, and why?