Skip to main content
Glama
farmerajf

apple-notes-mcp

by farmerajf
README.md
# Apple Notes MCP Server

MCP (Model Context Protocol) server for Apple Notes integration on macOS. Provides programmatic access to create, read, and search Apple Notes.

## Features

- **Search Notes**: Find notes using comma-separated search terms (OR logic)
- **Get Note by Title**: Retrieve note content by its title
- **Get Note by ID**: Retrieve note content by its unique ID
- **Create Note**: Create new notes with title and content

## Requirements

- macOS (Apple Notes is macOS-only)
- Node.js (version 14 or higher recommended)
- Apple Notes app installed

## Installation

```bash
npm install
```

## Usage

This is an MCP server designed to be used with MCP-compatible clients. To run the server:

```bash
npm start
```

Or directly:

```bash
node index.js
```

## Available Tools

### find_apple_notes
Search for notes using comma-separated terms (OR search).

**Parameters:**
- `search_terms` (string, required): Comma-separated search terms

**Returns:** JSON array of matching notes with id, title, creation_date, and modification_date

### get_apple_note_by_title
Get the content of a specific note by its title.

**Parameters:**
- `title` (string, required): Title of the note

**Returns:** Note content as text

### get_apple_note_by_id
Get the content of a specific note by its ID.

**Parameters:**
- `note_id` (string, required): ID of the note

**Returns:** Note content as text

### create_apple_note
Create a new note in Apple Notes.

**Parameters:**
- `title` (string, required): Title of the new note
- `content` (string, required): Content of the new note

**Returns:** Success message with the new note's ID

## Configuration

To use this MCP server with Claude Desktop or other MCP clients, add it to your MCP configuration file:

```json
{
  "mcpServers": {
    "apple-notes": {
      "command": "node",
      "args": ["/path/to/apple-notes-mcp/index.js"]
    }
  }
}
```

## Limitations

- Only works on macOS with Apple Notes installed
- Requires appropriate permissions for osascript to access Notes
- Read-only operations - no editing or deletion capabilities (preserves note integrity)

## License

MIT