Player not loading? Watch on YouTube
Eric Roby builds a FastMCP interface for an existing Python dev notes application and connects it to Claude Desktop. He compares the framework's decorators and type hints with FastAPI, explaining how an AI agent calls exposed tools instead of a browser calling HTTP endpoints.
The example stores notes in a JSON file with IDs, titles, bodies and tags. Its storage.py module contains the application logic, while server.py exposes search, retrieval and note creation as MCP tools. The walkthrough adds a startup entry point, argument and return type hints, docstrings, logging and error handling. Roby describes these annotations as information that helps a model understand the available tools.
A Python demo client exercises the server over STDIO, discovers its tools and reads notes. It also requests the nonexistent note ID 999 to check error handling. In this setup, the client starts the server process; Roby explains that it does not need a listening port or Uvicorn.
The final section installs the server into Claude Desktop and requests the title and body of note ID 2. After granting tool access, Roby shows the returned content. This is a tutorial for connecting an assistant to local data, rather than a demonstration of how to run models locally.