MCP Hub
Back to servers

notes-mcp-server

Provides MCP tools to create and retrieve notes stored in memory.

glama
Updated
May 10, 2026

FastAPI + MCP + LangGraph Demo

This is a very small learning project.

One app exposes the same note operations in two ways:

  • REST API with FastAPI
  • MCP tools for AI clients and agents

What is included

  • POST /notes to create a note
  • GET /notes/{note_id} to read a note
  • MCP tools:
    • create_note
    • get_note
  • mcp_client_demo.py to call the MCP server directly
  • langgraph_agent_demo.py to give a LangGraph agent access to the MCP tools

Install

.venv/bin/pip install -e .

Run the server

.venv/bin/uvicorn main:app --reload

Open:

  • FastAPI docs: http://127.0.0.1:8000/docs
  • MCP endpoint: http://127.0.0.1:8000/mcp/

Try the REST API

Create:

curl -X POST http://127.0.0.1:8000/notes \
  -H "content-type: application/json" \
  -d '{"title":"hello","content":"from fastapi"}'

Read:

curl http://127.0.0.1:8000/notes/1

Try the MCP client

Start the server first, then run:

.venv/bin/python mcp_client_demo.py

Try the LangGraph agent

Start the server first, then set your OpenAI key:

export OPENAI_API_KEY=your_key_here

Optional model override:

export OPENAI_MODEL=gpt-4.1-mini

Run the demo:

.venv/bin/python langgraph_agent_demo.py

Without OPENAI_API_KEY, the script will still show that LangGraph can load the MCP tools, but it will skip the actual agent run.

Notes

  • Data is stored only in memory.
  • Restarting the server clears all notes.
  • This is intentionally minimal for learning.

Reviews

No reviews yet

Sign in to write a review