Turning Point Academy · MCP Engineering

Capstone — Brief

Curso MCP Engineering · M5


This is the printable brief for the final project of MCP Engineering. It's your roadmap: read it in full before starting, pick an idea, and use the checklists to know exactly when you're done. You got this far knowing what MCP is, how the primitives work, how to go from an API to tools, how to choose the transport, how to protect a remote server with OAuth 2.1, and how to apply the security checklist. The capstone brings all of that together in a single project of your own. The evaluation is handled separately, in the Capstone rubric — read it too before starting.


Objective

Build, test, and connect a real MCP server —made by you— that integrates everything from the course: a server that starts, exposes useful tools over real data, runs on the right transport, protects itself if it's remote, applies security, and connects to a real client.

We're not looking for a big project. We're looking for one that works end to end, is well thought out, and is secure. If you pull that off, you already know how to build MCP servers — full stop.


Requirements (detailed checklist)

Check each box only when it's truly done and tested:


Project ideas

Pick one of these four (or invent your own, keeping 2–3 tools, real data, and a small scope):

IdeaSuggested toolsData / APITransportDifficulty
Weather assistantcurrent_weather(city), forecast(city, days)Free public weather APIstdio localLow — ideal for the first project
Quotes dashboardprice(asset), convert(amount, from, to)Keyless API (crypto / stocks / currencies)stdio localMedium — good effort/impact balance
Notes searchersearch(text), read(file)Local .md folder or CSVstdio localMedium — perfect for practicing least privilege (read-only, never leaving the folder)
Remote server with authany of the aboveAPI or local dataStreamable HTTP + OAuth 2.1High — the most complete and the most impressive

Deliverables

  1. Server code (server.py or index.ts) that starts and exposes the tools.
  2. A short README: description, how to install/run, and how to connect it to a client.
  3. Test evidence: a screenshot or description of the tools working in the Inspector.
  4. Connection evidence: the server responding from Claude Code / Claude Desktop.
  5. If remote — auth note: how the token is obtained and what the server validates (issuer, audience, scope).

Suggested step-by-step plan

  1. Pick an idea and a stack. Start from the mcp-server-starter skill pack (or from mcp-python-starter / mcp-ts-starter) to have the skeleton ready.
  2. Write a single tool that wraps your API or your data, with a clear description and types. Don't start with all three at once.
  3. Test it in the Inspector: npx @modelcontextprotocol/inspector <startup-command>. List it, run it with test inputs, confirm the result.
  4. Add the 2nd (and 3rd) tool by repeating the change → relaunch → verify cycle.
  5. Choose the transport. Local: keep stdio. Remote: move to Streamable HTTP and add OAuth 2.1 (validate issuer, audience, and scope).
  6. Go through the security checklist: least privilege on each tool and output treated as untrusted.
  7. Connect it to a real client (claude mcp add ...) and ask the agent to use a tool.
  8. Write the README and self-assess with the Rubric before submitting.

Tips

When you see it respond from Claude, you'll understand why you did this whole course. Now, for real: build it.


Turning Point Academy · MCP Engineering Course · Module 5 · Final project (capstone)