# Connect SpeakPen

> Send your voice notes into Obsidian, or let your AI assistant read them. Pick what you use below.

Using a coding agent? Paste this into it:

```text
Connect to my SpeakPen notes: read https://speakpen.app/connect and set it up.
```

<a id="for-agents"></a>

## For AI agents

You are helping the user connect SpeakPen, their voice notes app. The MCP server is https://speakpen.app/mcp (Streamable HTTP, read-only, OAuth sign-in). Work out which client you are running in, follow that section below, and tell the user when they need to click Allow in their browser.

This page is also available as plain Markdown: https://speakpen.app/connect.md

Access is read-only and covers notes only, never audio. Limit: 60 tool calls per minute.

Tools: `search`, `fetch`, `list_recent_notes`

<a id="claude-code"></a>

## Claude Code

1. Add the server:

   ```bash
   claude mcp add --transport http speakpen https://speakpen.app/mcp
   ```

2. Then run /mcp inside Claude Code, pick speakpen and sign in. Your browser opens: sign in to SpeakPen and click Allow.

   ```text
   /mcp
   ```

3. Optional: the SpeakPen skill teaches Claude Code when to look in your notes. The plugin also adds the speakpen server, so you can install it instead of running the command above:

   ```text
   /plugin marketplace add Qumge/speakpen-skill
   /plugin install speakpen@speakpen
   ```

<a id="codex"></a>

## Codex CLI

1. Add the server:

   ```bash
   codex mcp add speakpen --url https://speakpen.app/mcp
   ```

2. Sign in. Your browser opens: sign in to SpeakPen and click Allow.

   ```bash
   codex mcp login speakpen
   ```

<a id="cursor"></a>

## Cursor

1. Add this to ~/.cursor/mcp.json (or .cursor/mcp.json in a project):

   ```json
   {
     "mcpServers": {
       "speakpen": {
         "url": "https://speakpen.app/mcp"
       }
     }
   }
   ```

2. When Cursor asks you to sign in to speakpen, sign in to SpeakPen in your browser and click Allow.

<a id="vscode"></a>

## VS Code

1. Add this to .vscode/mcp.json in your workspace, with a token in place of YOUR_TOKEN:

   ```json
   {
     "servers": {
       "speakpen": {
         "type": "http",
         "url": "https://speakpen.app/mcp",
         "headers": {
           "Authorization": "Bearer YOUR_TOKEN"
         }
       }
     }
   }
   ```

2. Create the token in Settings → Connections → Developers.

<a id="gemini-cli"></a>

## Gemini CLI

1. Add the server:

   ```bash
   gemini mcp add --transport http speakpen https://speakpen.app/mcp
   ```

2. Then, inside Gemini CLI, sign in. Your browser opens: sign in to SpeakPen and click Allow.

   ```text
   /mcp auth speakpen
   ```

<a id="other"></a>

## Other MCP clients

In any MCP client that supports remote servers, add a remote (Streamable HTTP) server with this address, then sign in when asked:

```text
https://speakpen.app/mcp
```

If your client can't sign in with OAuth, create a token in Settings → Connections → Developers and send it with every request:

```text
Authorization: Bearer YOUR_TOKEN
```

<a id="chatgpt"></a>

## ChatGPT

ChatGPT and Claude are set up by you, in their own settings. An agent can't open those for you.

1. In ChatGPT, add a custom MCP server (ChatGPT's help explains where this is; some plans and workspaces don't allow it).

2. Use this address and choose OAuth sign-in:

   ```text
   https://speakpen.app/mcp
   ```

3. Sign in to SpeakPen and click Allow.

<a id="claude"></a>

## Claude.ai and Claude Desktop

1. Open Customize → Connectors, click + Add, then Add custom connector.

2. Name it SpeakPen, paste this address and click Continue. Leave the sign-in settings as they are, click Continue again, then Add:

   ```text
   https://speakpen.app/mcp
   ```

3. When Claude asks you to sign in, sign in to SpeakPen and click Allow.

The steps are the same in Claude Desktop.

<a id="obsidian"></a>

## Obsidian

1. In Obsidian: Settings → Community plugins → Browse → search "SpeakPen Sync" → Install and enable.

2. In SpeakPen, open Settings → Connections and click Generate token on the Obsidian card. Copy the token: it is shown only once.

3. Open SpeakPen Sync settings in Obsidian and paste the token into the API token field.

Notes sync one way: from SpeakPen into your vault.

[How voice notes sync to Obsidian →](https://speakpen.app/voice-to-obsidian)

<a id="check"></a>

## Check it works

Ask your assistant:

```text
What did I record recently?
```

<a id="disconnect"></a>

## Disconnect

Open Settings → Connections. Click Disconnect next to an assistant, or revoke a token under Developers. Access stops right away.

<a id="privacy"></a>

## Privacy

Assistants can only read your notes. They can't create, change or delete anything, and they never receive your audio. You can disconnect them at any time.
