Discover MCPs & agents
Loading MCPs and agents…
Loading MCPs and agents…
Search, read and edit your Amber Notes: folders, checklists, tables and trackers.
From the repo.
The notes app your AI can actually use. Apple Notes-style notes for iPhone and Mac that ChatGPT, Claude, Claude Code and Codex can read and edit.
Download for Mac · iPhone coming soon · ambernotes.app
![]() | ![]() | ![]() |
*), dashed (-) and numbered lists. Return continues a list, Tab nests it.| Part | Where | What |
|---|---|---|
| App | Pane/ | SwiftUI for iOS 26 and macOS 26. The editor is TextKit 2 with its own layout fragments for checkboxes, bullets, tables and embeds. SwiftData holds a local copy of everything. |
| Sync | Pane/Sync/ | Pushes and pulls through Supabase with version checks, and listens on Supabase Realtime for changes from other devices. |
| Backend | supabase/ | Postgres with row-level security on every table, per-account limits and rate limits in the database, Storage for files, and Edge Functions. |
| AI server | supabase/functions/mcp/ | An MCP server (Streamable HTTP) with 27 tools. Public address https://mcp.ambernotes.app (proxied by the site, web/middleware.ts). Web clients connect with OAuth 2.1 (PKCE, dynamic client registration) and approve in the app or on the web at ambernotes.app/connect. Claude Code and Codex use a revocable header token. Every call runs as the note owner with row-level security. |
| Share site | web/ | Next.js. Renders shared notes safely (sanitized markdown, strict CSP), with a report link and a privacy page. |
| Share extension | PaneShare/ | Share sheet target on iOS. |
The Xcode project is generated from project.yml with XcodeGen. Folder and target names still say "Pane", the app's working name.
You need macOS 26 with Xcode 26, Homebrew, and Docker (for the local Supabase stack). A fresh clone runs entirely on your machine.
brew install xcodegen supabase/tap/supabase deno pnpm
git clone https://github.com/emilwagman/amber-notes.git
cd amber-notes
supabase start # local Postgres, Auth, Storage and Functions on ports 56420–56429
xcodegen generate
open Pane.xcodeproj # run the "Pane" scheme on "My Mac" or an iPhone simulator
The app talks to the local stack through Config/Backend.xcconfig, which carries Supabase's standard local-only development key. To point your builds at a real project, create Config/Backend.local.xcconfig (gitignored) with your own PANE_SUPABASE_URL, PANE_SUPABASE_KEY and PANE_SHARE_URL.
Running on a physical device needs your own Apple team. Change DEVELOPMENT_TEAM in project.yml, and the bundle ids if you like.
scripts/qa-test.sh # Mac unit and interaction tests
deno test --allow-all supabase/functions/mcp/notes.test.ts
scripts/mcp-e2e.sh # MCP end-to-end, against the local stack
scripts/share-e2e.sh # share links end-to-end, against the local stack
(cd web && pnpm install && pnpm test && pnpm build) # share site
The interaction tests drive the real editor in an offscreen window, so they never move your mouse or take focus.
Everything the app needs runs on one Supabase project:
.env as SUPABASE_ACCESS_TOKEN=sbp_….scripts/deploy-backend.sh <project-ref>. It links the project, applies the migrations, deploys the functions, pushes the auth settings, and writes Config/Backend.local.xcconfig.web/ to any Next.js host and set PANE_SHARE_URL to it.In the app, open Settings → Connect an AI and follow the steps for your client. ChatGPT and Claude get a plain server address, https://mcp.ambernotes.app, and ask Amber Notes for permission through OAuth: a page on ambernotes.app opens, where you answer in the app or sign in and answer on the web. Claude Code and Codex get a command with a revocable token. Connections are listed in Settings, where you can disconnect each one.
MIT. Made by Emil Wagman at Incredible.
Use the endpoint URL below in your config. No API key — you connect directly.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "https://mcp.ambernotes.app"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.