home / mcp / mcp notes mcp server

MCP Notes MCP Server

A simple note-taking MCP server for recording and managing notes with AI models.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "9ninety-mcpnotes": {
      "command": "npx",
      "args": [
        "-y",
        "-p",
        "mcp-notes",
        "mcp-notes-server",
        "--dynamodb",
        "dynamodb://access_key:secret_key@region/table"
      ],
      "env": {
        "AWS_ACCESS_KEY_ID": "AKIAIOSFODNN7EXAMPLE",
        "AWS_SECRET_ACCESS_KEY": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLE"
      }
    }
  }
}

MCP Notes is a dual-server setup that lets you manage AI-assisted notes and tasks locally while exposing a web-based interface for manual interaction. It uses the MCP protocol to enable AI-driven note creation, listing, retrieval, updates, and deletion, all backed by AWS DynamoDB for storage. This guide walks you through using the MCP server components, installing prerequisites, and configuring your environment so you can manage personal notes securely and efficiently.

How to use

You interact with the MCP Notes server using an MCP client that can connect via standard input/output (stdio) or through a remote HTTP endpoint. Start by running one of the provided server runners that include the DynamoDB configuration in their startup arguments. Use the CLI if you want to run the server locally with npx or node, or use your editorโ€™s MCP integration to connect directly to the running process.

How to install

Prerequisites: Install Node.js on your system, and ensure you have access to an AWS account with DynamoDB. DynamoDB storage is used for all notes.

Install and run the MCP Notes server using one of the provided runtime methods.

Option A: Run with npx (recommended for quick starts) to start the MCP server that uses DynamoDB.

Option B: Run with Node.js directly from a local script file.

Then launch the web interface to manage notes or interact with notes via MCP-enabled clients.

Configuration and usage notes

You will connect to the MCP server by providing a DynamoDB connection string that includes your credentials or by supplying credentials through environment variables. The MCP server expects a DynamoDB table to store notes.

Important: DynamoDB credentials and the DynamoDB endpoint URL are embedded in the examples below. Replace access_key, secret_key, region, and table with your own values.

Examples of starting the MCP server (stdio configurations)

{
  "mcpServers": {
    "notes_mcp_npx": {
      "command": "npx",
      "args": [
        "-y",
        "-p",
        "mcp-notes",
        "mcp-notes-server",
        "--dynamodb",
        "dynamodb://access_key:secret_key@region/table"
      ]
    }
  }
}
{
  "mcpServers": {
    "notes_mcp_node": {
      "command": "node",
      "args": [
        "file://path/to/notes-mcp-server.js",
        "--dynamodb",
        "dynamodb://access_key:secret_key@region/table"
      ]
    }
  }
}

Running the web interface

You can run the web server that provides a user-friendly UI for managing notes. Use one of the following commands to launch the web server and connect to DynamoDB storage.

npx -p mcp-notes mcp-notes-web-server --dynamodb "dynamodb://access_key:secret_key@region/table"
bun src/notes-web-server.ts --dynamodb "dynamodb://access_key:secret_key@region/table"

Available MCP tools and endpoints

Note: The MCP tools enable you to list, retrieve, write, and delete notes. They are exposed as part of the MCP server and can be invoked by your MCP client.

Data structure

Notes are stored with the fields: id, title, summary, tags, and content. The id should be a descriptive string with a random number suffix, for example "meeting-notes-1362".

Security and environment

Security is primarily handled via AWS DynamoDB credentials and connection configuration. Use environment variables or secure credential strings to avoid embedding secrets in configuration files.

Troubleshooting

If you encounter connection issues, verify that your DynamoDB table exists and that the credentials and region in your DynamoDB URL are correct. Ensure the server process has permission to access DynamoDB from your AWS account.

Available tools

listNotes

Return all notes, optionally filtered by tags. Useful for getting an overview of stored notes.

getNote

Retrieve a single note by its id. Useful for viewing the full content and details of a note.

writeNote

Create or update a note with a title, summary, content, and tags. Returns a success confirmation.

deleteNote

Delete a note by its id. Returns a deletion confirmation.