Docs Using Nota
AI apps and MCP
Let an AI app on your Mac request dictation, files or history through MCP, with consent for each ability.
With AI apps turned on, a compatible app such as Claude, Cursor or Codex can ask Nota for help. You say "listen to me", Nota records, and the app gets your words as text. The app can also look things up in what you dictated, transcribe a file, run your text through a mode, and add words to your dictionary. It all happens on this Mac, between the app and Nota. You allow each app, one ability at a time.
What an app can ask
These are the abilities Nota offers. An app sees only the ones you leave on.
nota_dictate. Starts a dictation and returns the text when you stop. You see the pill, hear the start sound and read Listening for Claude (the app's own name) above the pill, with the short reason the app gave. Stop with your usual shortcut. Esc cancels, and nothing is handed over. Nothing is pasted anywhere. The app can pick a mode and choose whether the mode's AI rewrite runs. The words count toward your trial like any dictation, and the dictation is saved in History. You approve: Microphone.nota_transcribe_file. Transcribes an audio or video file on this Mac, with the model of the mode it picks. It accepts the same files as Transcribe a file, up to 2 GB, and saves the result to History. With a cloud model, the audio goes to that provider with your key, as it does on the Transcribe page. You approve: Files.nota_search_history. Searches your recent dictations by words, dates or mode, newest first. You approve: History.nota_get_last_transcription. Returns your newest dictation. You approve: History.nota_get_transcription. Returns one dictation by its id. You approve: History.nota_list_modes. Lists your modes: name, model, language, and the apps and websites each one switches on. No keys and no web addresses with credentials. No approval needed.nota_run_mode. Runs text you give it through a mode that has AI rewrite, and returns the result. The text goes to your AI provider with your key. It does not read your clipboard, selected text or screen. You approve: AI rewrite.nota_dictionary_list. Shows your dictionary words and replacements. You approve: Dictionary.nota_dictionary_add. Adds words, or one replacement, to your dictionary. It skips what is already there. It cannot remove or change anything. You approve: Dictionary.nota_usage. Shows how many dictations, files, words and audio minutes you used, and the estimated cost of cloud models, for a period such as today or 30 days. It matches the API usage card on Home. No approval needed.nota_status. Shows whether Nota is running and busy, your plan, how many trial words are left, the active mode and model, and which abilities are on. No license key, email or device details. This one cannot be turned off. No approval needed.
Apps that show ready-made prompts list three from Nota: listen, today and transcribe_file.
Safety
- Off by default. Nothing is listening for apps until you turn on Let AI apps use Nota in Settings › AI apps. Turning it off again cuts every app at once.
- One switch per ability. You can turn off Listen, History, Transcribe files, Dictionary, Modes and Usage and cost, one by one. An app does not even see the abilities that are off.
- You allow each app. The first time an app uses an ability, Nota shows its own panel with the app's icon, titled Allow <app> to use Nota?. Choose Allow, Allow Once or Don't Allow. The app cannot see or click this panel. Allow is remembered until you revoke it under Connected apps. A refusal, or no answer, is remembered for that session only. With Ask before every recording on, Nota asks for each recording.
- You can always see it listening. A recording started by an app shows the pill, plays the start sound and says Listening for and the app's name.
- Text may leave your Mac through the app. What Nota hands to an AI app may be sent by that app to its own cloud. The approval panel says so. Choose History AI apps can see (24 hours, 7 days, 30 days or All) to limit how far back an app can look. The default is 7 days.
- Keys and license stay put. No ability returns an API key, your license key or email, a recording or the path to one. Audio never goes to the app, only the text you allowed.
- No Nota server. The app and Nota talk to each other on this Mac. Nothing is relayed through us.
- A record you can read. Activity lists what each app called and when, never the words themselves. You can clear it.
An app cannot delete or edit your History, remove dictionary words, change settings, switch your active mode, paste into other apps or send messages. Text that comes back from History or a file is marked as recorded speech and not as instructions, so an app should not act on requests hidden in it.
The AI app must support MCP servers launched as a local program. Client settings and tool timeouts vary; use the configuration shown by the copy of Nota you have installed.
Turn it on
- Keep Nota in your Applications folder. If it is somewhere else, move it first, so the connection keeps working.
- Open Settings › AI apps and turn on Let AI apps use Nota. Under the switch Nota says: Claude, ChatGPT, Cursor and other apps can ask Nota to listen, search your history and more. You approve each app. It is off by default.
- Leave on the groups you want. Each has a one-line description in Settings: Listen (record with Nota and hand the text to the AI app), History (search and read your transcripts), Transcribe files (transcribe audio and video files), Dictionary (see and add dictionary words), Modes (list your modes and run them on text) and Usage and cost (how much you dictated and what models cost).
- Set Ask before every recording if you want a prompt each time an app starts listening, and pick History AI apps can see: 24 hours, 7 days (the default), 30 days or All.
- Add Nota to your AI app, as described below.
- Ask the app something, such as "listen to me". Nota shows Allow <app> to use Nota?. Choose Don't Allow, Allow Once or Allow.
Start Nota when an AI app needs it is on by default. Its subtitle reads Opens in the background, without a window: if Nota is closed, the app's first request opens it that way. Below the list, Connected apps shows every app you allowed and Activity shows what each one called and when.
Connect an app
Nota never edits another app's files. The app asks you to confirm, or you paste a line yourself. Everything starts in Settings › AI apps › Add Nota to an AI app, which lists Claude, Claude Code, ChatGPT, Codex, Cursor, VS Code, Windsurf, Zed, Gemini CLI, LM Studio, Goose, Raycast, JetBrains IDEs, Perplexity and Other AI apps, in that order. The snippets always point at the helper inside the copy of Nota that is running. Normally that is the path shown below, and a different one if Nota runs from somewhere else. Settings puts the right path into whatever you copy. If Nota is not in /Applications or ~/Applications, the list says Move Nota to Applications first, so the connection keeps working.
Claude
- In Nota, click Add to Claude. Nota builds an extension bundle and opens it in Claude.
- Claude shows its own install dialog. Click Install.
If Claude is not installed, Nota shows the bundle in Finder instead.
The other way is Copy JSON. In Claude, open Settings › Developer › Edit Config, paste, save and restart Claude.
{
"mcpServers": {
"nota": {
"command": "/Applications/Nota.app/Contents/MacOS/nota-mcp"
}
}
}Claude Code
Click Copy command in Nota and run it in a terminal:
claude mcp add --scope user nota -- "/Applications/Nota.app/Contents/MacOS/nota-mcp"Codex
Click Copy command and run it:
codex mcp add nota -- "/Applications/Nota.app/Contents/MacOS/nota-mcp"Codex waits 60 seconds for a tool by default, which is too short for a long dictation. Click Copy TOML and put it in ~/.codex/config.toml, or add just the timeout line to the entry that already exists:
[mcp_servers.nota]
command = "/Applications/Nota.app/Contents/MacOS/nota-mcp"
tool_timeout_sec = 600ChatGPT
Nota’s helper runs locally using stdio. ChatGPT Desktop can use local tools through compatible plugins where available; ChatGPT’s remote MCP apps use a different connection workflow. Follow the ChatGPT plugin guide and MCP app guide for the surface you use. The Codex command above configures Codex. Ordinary Nota dictation can type into a ChatGPT input field without an MCP connection.
Cursor
Click Add to Cursor. The app asks you to confirm. Confirm. The other button is Copy JSON. Paste it into ~/.cursor/mcp.json:
{
"mcpServers": {
"nota": {
"command": "/Applications/Nota.app/Contents/MacOS/nota-mcp"
}
}
}VS Code
Click Add to VS Code. The app asks you to confirm. Confirm. The other button is Copy command. Run it in a terminal:
code --add-mcp '{"command":"/Applications/Nota.app/Contents/MacOS/nota-mcp","name":"nota"}'You can also add it to your user mcp.json. VS Code's key there is servers.
Windsurf
Click Copy JSON. The hint reads Paste into the MCP settings of Windsurf. Paste it into ~/.config/devin/mcp_config.json. Older builds use ~/.codeium/windsurf/mcp_config.json.
{
"mcpServers": {
"nota": {
"command": "/Applications/Nota.app/Contents/MacOS/nota-mcp"
}
}
}Zed
Click Copy JSON. The hint reads Paste into Zed's settings.json. Add it to your Zed settings:
"context_servers": {
"nota": {
"command": "/Applications/Nota.app/Contents/MacOS/nota-mcp",
"args": []
}
}Gemini CLI
Click Copy command and run it. Gemini CLI waits up to 600 seconds for a tool.
gemini mcp add nota "/Applications/Nota.app/Contents/MacOS/nota-mcp"LM Studio
Click Add to LM Studio. The app asks you to confirm. Confirm. The other button is Copy JSON. Paste it into LM Studio's mcp.json, which you open from Program › Install › Edit mcp.json:
{
"mcpServers": {
"nota": {
"command": "/Applications/Nota.app/Contents/MacOS/nota-mcp"
}
}
}Goose
Click Add to Goose. The app asks you to confirm. Confirm. The other button is Copy YAML. Paste it into ~/.config/goose/config.yaml:
extensions:
nota:
name: Nota
type: stdio
cmd: "/Applications/Nota.app/Contents/MacOS/nota-mcp"
args: []
enabled: true
timeout: 600Raycast
Raycast Pro only. Click Copy JSON in Nota. The hint in Settings reads Raycast › Install MCP Server, then paste.
- Copy the JSON in Nota.
- In Raycast, run Install Server. It is also under Manage MCP Servers. Paste the JSON.
- If the form does not take the JSON, enter nota as the name and the path below as the command.
/Applications/Nota.app/Contents/MacOS/nota-mcpJetBrains IDEs
Click Copy JSON. The hint reads Settings › Tools › AI Assistant › MCP › Add › As JSON. In your JetBrains IDE, open Settings › Tools › AI Assistant › MCP, click Add, choose As JSON and paste:
{
"mcpServers": {
"nota": {
"command": "/Applications/Nota.app/Contents/MacOS/nota-mcp"
}
}
}Perplexity
Click Copy command in Nota. It copies only the path of Nota's helper. The hint reads Settings › Connectors › Add Connector, then paste. In Perplexity, open Settings › Connectors › Add Connector › Simple and paste the path:
/Applications/Nota.app/Contents/MacOS/nota-mcpOther AI apps
The hint reads Cline, Continue, Kiro, Warp, BoltAI, Msty and any app that runs MCP servers. Click Copy JSON in Nota and paste the same JSON as above in the app's MCP settings. Continue also reads it from a file in .continue/mcpServers/.
If the app gives up while you talk
Sometimes the AI app stops waiting before you finish. What happens next depends on how it stopped, and that is up to each app.
- The app cancels. It sends a cancel, quits or closes the connection. Nota does what Esc does: the recording stops, nothing goes to the app, and nothing is pasted or counted. History keeps a cancelled entry with its audio, and the usual Transcript cancelled notice with Undo shows for 5 seconds. Undo transcribes it as a normal dictation and pastes it into the app in front. You can also use History › Retranscribe later.
- The app only stops waiting. It times out without a cancel. The recording continues until you stop it or its time limit is reached. The text is then saved to History as a normal dictation and counted, but it is pasted nowhere. All you see is the recorder finishing.
Remove Nota from an app
Start inside Nota, in Settings › AI apps › Connected apps.
- Revoke takes back all of an app's permissions. Nota asks again the next time the app uses it.
- An app with nothing allowed shows Remove instead. It drops the app from the list.
- Turning off Let AI apps use Nota cuts every app at once.
To take Nota out of an app's own list, remove it there:
- Claude: Settings › Extensions › Nota, then uninstall. Or delete
notafrom claude_desktop_config.json. - Claude Code:
claude mcp remove nota --scope user - Codex:
codex mcp remove nota, or delete[mcp_servers.nota]from ~/.codex/config.toml. - Cursor: Settings › MCP, or ~/.cursor/mcp.json.
- VS Code: run MCP: List Servers, choose nota, then Uninstall.
- Gemini CLI:
gemini mcp remove nota - Zed: delete
context_servers.nota. - LM Studio: edit mcp.json.
- Goose: run
goose configure, or edit config.yaml. - Windsurf, Raycast, JetBrains IDEs, Perplexity and any other app: delete the
notaentry you pasted, in the same place you pasted it.
Limits
- The client must be able to start a local MCP program on this Mac. A client that only accepts a remote web address cannot connect to this local helper. You can still use ordinary Nota dictation in its input field.
- One recording and one file at a time. A second request for a recording gets Nota is already recording. A second file waits its turn.
- There is no setting for the recording time limit in Nota. The AI app passes it as
max_secondswhen it starts a recording: a whole number from 5 to 600, 180 by default. You can ask for it in your request, for example "listen for up to 5 minutes", and the app may then pass 300. For Claude Desktop Nota lowers it to 220 seconds at most. Other callers still use the requested limit, within the 5 to 600 second range. Codex needs its tool timeout raised, which the snippets above do, and Gemini CLI waits 600 seconds. - An app can make 60 requests a minute. Beyond that it waits.
- During the free trial, listening and file transcription count your words. When the trial ends they stop, and so does running a mode. History, dictionary and usage keep working. See License.
- Notebook notes are separate from History. These tools do not offer Notebook Q&A, speaker identification or a chat over your notes.
- Not offered: deleting or editing History, removing dictionary words, creating or editing modes, changing settings, switching your active mode, sending audio to the app, or showing text while you are still speaking.
- History does not record which app you dictated into, so an app cannot filter by app. It can filter by mode, and modes can be tied to apps and websites.
Troubleshooting
An app that cannot reach Nota shows one of these messages. Check that Nota is open and that Let AI apps use Nota is on first.
| The app says | What to do |
|---|---|
| AI apps are turned off in Nota | Turn on Let AI apps use Nota in Settings › AI apps. |
| Nota isn't running | Open Nota and try again. To have Nota start by itself, keep on Start Nota when an AI app needs it. |
| Nota was moved or deleted | Move Nota to Applications, then add it to the app again from Settings › AI apps. |
| Update the Nota connection | Add Nota to the app again from Settings › AI apps. The connection in the app is older than your Nota. |
| Finish setting up Nota first | Finish the setup in Nota. See Install Nota. |
| This is turned off in Nota | Turn that group on in Settings › AI apps. The app may not list it until you do. |
| The user didn't allow this in Nota | Approve the panel Nota shows on your active screen. If you missed it, ask again. No answer counts as a no. To be asked again for an app you allowed before, revoke it under Connected apps. |
| Nota is already recording | Finish or cancel the current recording first. |
| Your Nota trial has ended | Listening, file transcription and modes need Nota Pro. See License. |
| Nota heard no speech | Check your microphone on the Audio page, then ask the app to listen again. |
- The app lists Nota but never gets your words, in ChatGPT desktop or Codex: raise the timeout as shown above. Otherwise Codex gives up after 60 seconds.
- Nothing is pasted when an app listens. That is by design. The text goes to the app.