Design Tools and an MCP Server for a Claude Agent
Design a tight set of 4-5 well-described tools, drive selection with tool_choice (auto, any, and named forcing), expose them through a Model Context Protocol server with env-var secrets and isRetryable structured errors, then wire it into a Claude loop. Submit a single script or notebook for instant, rubric-based feedback.
3 hrs
Est. time
4
Outcomes
7
Rubric criteria
65%
Pass score
What you'll learn
Skills you'll have real reps in after shipping this.
See how it works
Why tool descriptions decide selection
Claude chooses tools from their descriptions. A small set of specific, action-oriented descriptions selects far more reliably than many vague ones.
What MCP exposes
An MCP server publishes tools and resources to any client, with configuration and secrets supplied at the boundary rather than baked into code.
The scenario
Your Claude agent keeps picking the wrong tool. The descriptions are vague, there are fifteen tools competing for attention, and when a tool hits a transient network error the agent has no idea whether to retry. On top of that, a teammate hardcoded an API key into a tool so they could ship faster.
You are going to fix the tool layer. A small set of tools with descriptions Claude can actually act on, the right tool_choice for each situation, an MCP server that exposes them cleanly with secrets pulled from the environment, and structured errors that tell the agent whether a failure is worth retrying.
Your role
You are a Claude solutions architect responsible for the tool and integration layer. Your deliverable is one module showing tool descriptions written for reliable selection, correct tool_choice usage, an MCP server with env-based secrets, and structured isRetryable errors.
Start the task to unlock the full brief
You'll get the step-by-step requirements, setup commands, the 7-criterion grading rubric, tips, and the ability to submit your solution for instant AI grading.
Free to start · submit when you're ready
Learning resources
What you'll build in this tool and MCP task
This is a build-and-submit task, not a guided lab. You design the tool and integration layer of a Claude agent the way it should be built: a small set of tools with descriptions Claude can act on, correct tool_choice usage, and a Model Context Protocol server that exposes them cleanly. The deliverable is one Python module that doubles as a reference for how to wire tools to Claude.
The details here are exactly the ones that separate a flaky agent from a reliable one. You cap the tool set at 4-5 and write descriptions for reliable selection, you use auto, any, and named tool_choice deliberately, you expose everything through an MCP server with secrets pulled from the environment, and you return structured errors with an isRetryable flag so the agent knows when to retry.
Grading is rubric-based and explainable. Your submission is scored against weighted criteria (SDK integration, tool design, tool_choice, MCP server, secret configuration, structured errors, and the selection demonstration) with per-criterion feedback quoted from your code. The pass threshold is 65 percent and you can resubmit. These are the tool and MCP skills the Claude Certified Architect exam tests.