nathannj
MCP Servernathannjpublic

mcp notes

一个管理指定目录下 Markdown 笔记的 MCP 服务器实现。

Repository Info

1
Stars
0
Forks
1
Watchers
1
Issues
Python
Language
-
License

About This Server

一个管理指定目录下 Markdown 笔记的 MCP 服务器实现。

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

MCP Notes Server

This is an MCP (Model Context Protocol) server implementation that manages markdown notes in a given directory. The server provides functionality to create, read, and update markdown notes using the stdio transport.

Features

  • Create new markdown notes
  • Read existing markdown notes
  • Update existing markdown notes
  • List all notes in the vault
  • Automatic file management in the specified directory
  • Proper error handling and logging
  • Timestamp tracking for note creation and modification
  • JSON Schema validation for all operations

Server Capabilities

The server implements the following capabilities:

  • Version: 1.0.0
  • Name: Notes MCP Server
  • Description: A server for managing markdown notes in an given directory
  • Supported Transports: stdio

Resources

The server provides the following resource:

  • Properties:
    • path: The path to the vault
    • note_count: The total number of notes in the vault

Tools

The server implements the following MCP tools:

create_note

Creates a new markdown note.

Parameters:

  • title: The title of the note (required)
  • content: The content of the note (optional, defaults to empty string)

Returns:

  • filename: The name of the created file
  • path: The full path to the created file
  • created_at: ISO timestamp of creation

read_note

Reads an existing markdown note.

Parameters:

  • title: The title of the note to read (required)

Returns:

  • title: The title of the note
  • content: The content of the note
  • path: The full path to the file
  • created_at: ISO timestamp of creation
  • modified_at: ISO timestamp of last modification

update_note

Updates an existing markdown note.

Parameters:

  • title: The title of the note to update (required)
  • content: The new content for the note (optional, defaults to empty string)

Returns:

  • filename: The name of the updated file
  • path: The full path to the file
  • updated_at: ISO timestamp of update

list_notes

Lists all markdown notes in the vault.

Parameters: None

Returns:

  • notes: Array of note objects, each containing:
    • title: The title of the note
    • path: The full path to the file
    • created_at: ISO timestamp of creation
    • modified_at: ISO timestamp of last modification
  • total: Total number of notes

Setup

  1. Install the required dependencies:
pip install -r requirements.txt
  1. Configure the server to work within the given directory on line 110 of main.py by editing the notes_dir property:

  2. Configure Cursor to use the MCP server:

    • The configuration file is located at .cursor/mcp.json
    • Cursor will automatically detect and use this configuration
    • The server is configured to run with Python and proper UTF-8 encoding

Running the Server

The server will automatically start when Cursor loads the project. You can also run it manually:

python main.py

The server will start and listen for MCP requests through stdin/stdout. All operations are logged with appropriate levels (info/error) for debugging and monitoring.

Error Handling

The server implements proper error handling for various scenarios:

  • Missing required parameters
  • File already exists
  • File not found
  • General exceptions

All errors are logged and returned with appropriate error codes and messages.

Configuration Details

The MCP server is configured in .cursor/mcp.json with the following settings:

{
  "mcpServers": {
    "notes-server": {
      "command": "python",
      "args": ["main.py"],
      "env": {
        "PYTHONIOENCODING": "utf-8"
      }
    }
  }
}

To add the MCP as globally used, add it to the .cursor folder in your user directory, or go to Cursor Settings -> MCP -> Add New Global MCP Server -> copy/paste the mcp.json in this project to the new file -> Update the args to point to main.py

This configuration:

  • Names the server "notes-server"
  • Uses Python to run the server
  • Sets UTF-8 encoding for proper character handling

Quick Start

1

Clone the repository

git clone https://github.com/nathannj/mcp-notes
2

Install dependencies

cd mcp-notes
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

Ownernathannj
Repomcp-notes
LanguagePython
License-
Last fetched8/10/2025

Recommended MCP Servers

💬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
🔗

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
🕷️

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation