Skip to main content
Glama
kensou24

Evernote MCP Server

by kensou24

Evernote MCP Server

English | 简体中文

Model Context Protocol (MCP) server for Evernote - enables Claude Code to interact with your Evernote notes.

Supports both International Evernote and Yinxiang Biji (印象笔记)

Features

  • Notebook operations (create, read, update, delete, list, get default)

  • Note operations (create, read, update, delete, copy, move, list, versions)

  • Tag management (create, read, update, delete, list, find by notebook)

  • Saved searches (create, read, update, delete, list)

  • Resource/Attachment operations (get, update, data, attributes, recognition)

  • Advanced note features (get content, search text, tag names, note versions)

  • Sync & utilities (sync state, note counts, find related content)

  • Full-text search using Evernote's search syntax

  • Multiple output formats (ENML, text, markdown, JSON)

Installation

npm install -g @anthropic/claude-code
uvx evernote-mcp

Configuration

1. Get Evernote Developer Token

International Evernote: https://evernote.com/api/DeveloperToken.action

Yinxiang Biji (印象笔记): https://app.yinxiang.com/api/DeveloperToken.action

2. Configure Claude Code

Edit ~/.config/claude-code/config.json:

For International Evernote:

{
  "mcpServers": {
    "evernote": {
      "command": "uvx",
      "args": ["evernote-mcp"],
      "env": {
        "EVERNOTE_AUTH_TOKEN": "your_token_here",
        "EVERNOTE_BACKEND": "evernote"
      }
    }
  }
}

For Yinxiang Biji (印象笔记):

{
  "mcpServers": {
    "evernote": {
      "command": "uvx",
      "args": ["evernote-mcp"],
      "env": {
        "EVERNOTE_AUTH_TOKEN": "your_token_here",
        "EVERNOTE_BACKEND": "china"
      }
    }
  }
}

Usage Examples

claude-code
User: Create a note in my "Project Notes" notebook summarizing the current TODO items from src/todo.py

Claude: I'll read the TODO file and create a note for you.
[Creates note with extracted TODOs]
User: Search my Evernote for notes about "API design" and summarize the key points

Claude: Let me search for those notes and analyze them.
[Searches and summarizes findings]
User: Create a notebook called "Code Reviews" and add a note template

Claude: I'll set that up for you.
[Creates notebook and template note]
User: Find all notes tagged with "important" and list them by update time

Claude: I'll search for notes with that tag and sort them.
[Uses search_notes and list_tags]

Environment Variables

Variable

Default

Description

EVERNOTE_AUTH_TOKEN

-

Your developer token (required)

EVERNOTE_BACKEND

evernote

evernote (International) or china (印象笔记)

EVERNOTE_RETRY_COUNT

5

Network retry count on failure

EVERNOTE_USE_SYSTEM_SSL_CA

false

Use system SSL CA certificates

Available Tools

Notebooks (6 tools)

  • create_notebook(name, stack) - Create a new notebook

  • list_notebooks() - List all notebooks

  • get_notebook(guid) - Get notebook details by GUID

  • update_notebook(guid, name, stack) - Update notebook name/stack

  • expunge_notebook(guid) - Permanently delete notebook

  • get_default_notebook() - Get the default notebook for new notes

Notes (8 tools)

  • create_note(title, content, notebook_guid, tags, format) - Create a new note

  • get_note(guid, output_format) - Get note (enml/text/markdown/json)

  • update_note(guid, title, content, format) - Update note title/content

  • delete_note(guid) - Move note to trash

  • expunge_note(guid) - Permanently delete note

  • copy_note(guid, target_notebook_guid) - Copy note to another notebook

  • move_note(guid, target_notebook_guid) - Move note to another notebook

  • list_notes(notebook_guid, limit) - List notes in notebook

Tags (7 tools)

  • list_tags() - List all tags

  • get_tag(guid) - Get tag details by GUID

  • create_tag(name, parent_guid) - Create a new tag

  • update_tag(guid, name, parent_guid) - Update tag name/parent

  • expunge_tag(guid) - Permanently delete tag

  • list_tags_by_notebook(notebook_guid) - List tags in a specific notebook

  • untag_all(guid) - Remove tag from all notes

Saved Searches (5 tools)

  • list_searches() - List all saved searches

  • get_search(guid) - Get saved search by GUID

  • create_search(name, query) - Create a new saved search

  • update_search(guid, name, query) - Update saved search

  • expunge_search(guid) - Delete saved search

Advanced Note Operations (5 tools)

  • get_note_content(guid) - Get ENML content only

  • get_note_search_text(guid, note_only, tokenize_for_indexing) - Get extracted plain text

  • get_note_tag_names(guid) - Get tag names for a note

  • list_note_versions(note_guid) - List previous versions (Premium only)

  • get_note_version(note_guid, update_sequence_num, ...) - Get specific version (Premium)

Resources/Attachments (13 tools)

  • get_resource(guid, with_data, with_recognition, ...) - Get resource by GUID

  • get_resource_data(guid, encode) - Get resource binary data (base64)

  • get_resource_alternate_data(guid, encode) - Get alternate data (e.g., PDF preview)

  • get_resource_attributes(guid) - Get resource metadata

  • get_resource_by_hash(note_guid, content_hash, ...) - Find resource by MD5 hash

  • get_resource_recognition(guid, encode) - Get OCR/recognition data

  • get_resource_search_text(guid) - Get extracted search text from resource

  • update_resource(guid, mime, attributes) - Update resource metadata

  • set_resource_application_data_entry(guid, key, value) - Set app data

  • unset_resource_application_data_entry(guid, key) - Remove app data

  • get_resource_application_data(guid) - Get all application data

  • get_resource_application_data_entry(guid, key) - Get specific app data entry

Reminders (5 tools)

  • set_reminder(note_guid, reminder_time, reminder_order) - Set reminder on a note

  • complete_reminder(note_guid, done_time) - Mark reminder as completed

  • clear_reminder(note_guid) - Clear all reminder fields from a note

  • list_reminders(notebook_guid, limit, include_completed) - List notes with reminders

  • get_reminder(note_guid) - Get reminder info for a specific note

Search & Utilities (4 tools)

  • search_notes(query, notebook_guid, limit) - Search using Evernote query syntax

  • get_sync_state() - Get sync state information

  • find_note_counts(query, with_trash) - Get note counts per notebook/tag

  • find_related(note_guid, plain_text, max_notes, ...) - Find related notes/tags/notebooks

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kensou24/evernote-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server