Skip to content

This project demonstrates how to build a custom MCP (Model Context Protocol) server that exposes tool-powered functionality for creating, updating, listing, and deleting AI-generated sticky notes.

Notifications You must be signed in to change notification settings

AshutoshRajGupta/AI-Sticky-Notes-Using-MCP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ—’οΈ MCP AI Sticky Notes – AI-Powered Notes System Using Claude + MCP Server

This project demonstrates how to build a custom MCP (Model Context Protocol) server that exposes tool-powered functionality for creating, updating, listing, and deleting AI-generated sticky notes.

The MCP server integrates seamlessly with Claude Desktop, where:

  • Claude (LLM) acts as the MCP client
  • Claude Desktop acts as the MCP host
  • Your MCP Server registers custom tools
  • Users interact naturally through chat
  • Claude intelligently invokes your server tools to manage sticky notes

This project is a real example of Agentic Tool Use, powered entirely by MCP.

πŸš€ Features

βœ”οΈ Build your own MCP server (Model Context Protocol)

βœ”οΈ Claude automatically detects and calls your tools

βœ”οΈ Create, list, update, and delete sticky notes

βœ”οΈ Stored notes managed directly through your server

βœ”οΈ Zero manual commands β€” everything triggered by AI

βœ”οΈ Shows real-world tool use + agent execution


🧠 How It Works

1️⃣ You define tools in your MCP server

Examples:

  • create_note
  • get_all_notes
  • update_note
  • delete_note

Tools specify:

  • Name
  • Description
  • JSON schema
  • Handler function

Example tool definition:

{
  "name": "create_note",
  "description": "Create a new sticky note with title and content",
  "input_schema": {...}
}

2️⃣ Claude Desktop loads your MCP server

In the claude_desktop_config.json, you point Claude to your MCP server.

Claude now understands your custom tools.


3️⃣ User speaks naturally:

β€œCreate a sticky note with 5 points explaining what MCP is.”

Claude interprets it β†’ Plans the action β†’ Calls your MCP tool β†’ Sends JSON payload β†’ Your server executes β†’ Response returned β†’ Claude shows result.


4️⃣ Notes stored through your backend

You can store notes:

  • In memory
  • In a JSON file
  • In SQLite / MongoDB
  • Or any storage (your choice)

🧩 Architecture Diagram

Below is an ASCII diagram showing how everything interacts:

               β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
               β”‚         User Query           β”‚
               β”‚  ("Create sticky note...")   β”‚
               β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                               β”‚
                               β–Ό
                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                     β”‚    Claude AI     β”‚
                     β”‚ (MCP Client LLM) β”‚
                     β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β”‚  Natural language β†’ Tool plan
                             β–Ό
                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                  β”‚   Claude Desktop App    β”‚
                  β”‚     (MCP Host)          β”‚
                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β”‚ Loads MCP server
                             β–Ό
                β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                β”‚        Your MCP Server       β”‚
                β”‚ Registers custom tools:      β”‚
                β”‚  β€’ create_note               β”‚
                β”‚  β€’ list_notes                β”‚
                β”‚  β€’ update_note               β”‚
                β”‚  β€’ delete_note               β”‚
                β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                            β”‚ Executes tool call
                            β–Ό
                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                 β”‚       Notes System         β”‚
                 β”‚ (in-memory / JSON / DB)    β”‚
                 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β”‚ Returns result
                             β–Ό
                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                     β”‚    Claude AI     β”‚
                     β”‚ Returns response β”‚
                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“ Project Structure (Example)

mcp-sticky-notes/
β”‚
β”œβ”€β”€ server.py                 # MCP server containing all tools
β”œβ”€β”€ notes_manager.py          # In-memory or DB-backed notes logic
β”œβ”€β”€ protocol/                 # MCP protocol handlers
β”œβ”€β”€ requirements.txt
β”œβ”€β”€ README.md
└── claude_desktop_config.json

βš™οΈ Installation & Setup

1️⃣ Clone the project

git clone https://github.com/AshutoshRajGupta/AI-Sticky-Notes-Using-MCP
cd AI-Sticky-Notes-Using-MCP

2️⃣ Install dependencies

pip install -r requirements.txt

3️⃣ Run the MCP server

python server.py

4️⃣ Configure Claude Desktop

Add your MCP server in:

~/Library/Application Support/Claude/claude_desktop_config.json

Example:

{
  "mcpServers": {
    "stickyNotes": {
      "command": "python",
      "args": ["server.py"]
    }
  }
}

5️⃣ Restart Claude Desktop

Claude will now recognize your Sticky Notes tools.


πŸ’¬ Example Interaction

User: β€œCreate a new sticky note explaining what MCP is in 4 points.”

Claude: (Invokes your MCP server tool automatically) *β€œCreated a sticky note titled β€˜About MCP’ with 4 bullet points.”

User: β€œShow all my notes.”

Claude calls list_notes β†’ Returns your notes.


SS Attached

image image image image

πŸ§ͺ Tools Implemented

πŸ“Œ create_note

Create a new note with title & content.

πŸ“Œ list_notes

Return all notes stored in the system.

πŸ“Œ update_note

Modify an existing sticky note.

πŸ“Œ delete_note

Remove a note by its ID or title.


πŸš€ Why This Project Is Powerful

This is not a normal chatbot. It demonstrates:

  • Agentic AI
  • Tool-calling automation
  • Real MCP integration
  • External function execution
  • AI manipulating structured data
  • Full local agent ecosystem

This is exactly the kind of project AI/ML recruiters love.


About

This project demonstrates how to build a custom MCP (Model Context Protocol) server that exposes tool-powered functionality for creating, updating, listing, and deleting AI-generated sticky notes.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages