Skip to content

For agents

The memory layer your agents need

Ela exposes your notes through MCP, the protocol agents already speak. Search returns structured handles with provenance, not raw file dumps. Coverage metadata on every response.

MCP exposes read tools only. Agent writes go through the HTTP API, CLI --remote, or the web review queue.

Local vs cloud

Two endpoints, one retrieval model

Local runs on your machine with full folder access, including Private. Cloud serves AI running anywhere and does not return Private notes. A library (`vault_id` in the API) comes from the credential.

CapabilityLocalCloud

Ranked search

Lexical ranking always. Semantic is opt-in on local (ELANOTES_EMBEDDINGS=1, one-time model download) and hybrid on cloud.

Citations on every result

The note, the heading, the dates. Answers with receipts.

Coverage reporting

Know what was searched and what was excluded

Private folder access

Cloud agents do not receive these notes. Local MCP does, after unlock.

Offline operation

Works without internet, entirely on your hardware

Remote agent access

An endpoint for AI running anywhere

MCP tools

Everything an agent needs to know you

A complete read surface: search, browse, follow connections, catch up on changes. Every response comes with citations and coverage.

search_notes

Ranked search that returns citations, not walls of text.

grep_notes

Exact-match search that always works, even on a note saved a second ago.

read_note

Fetch a note, or just the lines needed. Never a context-window blowout.

list_notes

Browse folders so an agent can see what is in the library.

get_links

Follow backlinks, tags, and related notes.

recent_changes

Catch up on what changed since the agent last looked.

index_status

Check how fresh the index is before trusting it.

vault_info

What this library contains, and what the caller is allowed to see.

Setup

Connect in minutes

Run the local MCP server

pnpm --filter @elanotes/mcp-local build
{
  "mcpServers": {
    "elanotes": {
      "command": "node",
      "args": [
        "/ABS/PATH/TO/elanotes/packages/mcp-local/dist/cli.js",
        "--vault",
        "/ABS/PATH/TO/your/vault"
      ]
    }
  }
}

VAULT_PATH is the env equivalent of --vault.

Or connect Cloud MCP with Pro

Create an access token in Settings. Ela shows the Cloud MCP URL and a config to paste into your client, once. Cloud MCP does not return Private notes.

Design principles

Built for agents that need to trust results

These hold at every layer. They are what make Ela memory instead of just search.

Citations, not dumps

Search returns pointers with provenance. Agents fetch only what they need. Less token waste, less room to hallucinate.

Coverage on every response

Every answer says what was searched, what was excluded, and why. Silent gaps are the worst failure mode. Ela does not have them.

Same question, same answer

Results are reproducible, not a slot machine. An agent that asks twice gets the same truth twice.

One library on the credential

A library (`vault_id` in the API) comes from the token, not the URL. Sign-in still joins one shared library. A library per person is not shipped yet.

Zero is a valid answer

Ela returns nothing, with an explanation, rather than padding results with noise. Agents learn when to say "I don't know."

Private is ciphertext

Local setup can read Private after unlock. Cloud search and cloud MCP exclude it and say so. Sync stores ciphertext, plus the slug, size, and timing.

Point it at a folder. Start asking.

Keep the notes you have. The notes app is free. Pro is $4 a month.

The web and desktop apps work today. Desktop builds are not code-signed yet.