> ## Documentation Index
> Fetch the complete documentation index at: https://docs.timeless.day/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP server

> Connect AI assistants to your Timeless data using the Model Context Protocol.

The Timeless MCP server lets AI assistants like Claude, Cursor, and other MCP-compatible clients access your meetings, transcripts, rooms, documents, and webhooks directly.

[MCP (Model Context Protocol)](https://modelcontextprotocol.io) is an open standard for connecting AI assistants to external data sources. Instead of copying and pasting data, your assistant can query Timeless on your behalf.

## Server URL

```
https://api.timeless.day/mcp/
```

## Authentication

The MCP server supports two ways to authenticate, both tied to your Timeless account:

* **OAuth 2.1 (recommended)** — a browser-based sign-in that your client manages for you.
* **API key** — a static bearer token for headless setups or clients that only support custom headers.

### OAuth 2.1

By default, the MCP server uses OAuth 2.1 with PKCE. When you first connect, your MCP client opens a browser window where you sign in with your Google or Microsoft account. After you authorize, the client handles token management automatically — no manual token handling required.

### API key

If your client supports custom request headers, you can authenticate with a Timeless API token instead of the OAuth flow. Pass it in the `Authorization` header using the `Bearer` scheme:

```
Authorization: Bearer YOUR_API_TOKEN
```

Generate a token from your [Timeless dashboard](https://my.timeless.day/api-token) — it is the same token used for the [REST API](/api-reference/introduction). Tokens are 64-character hex strings; keep them secret and treat them like passwords.

## Connecting your client

Use the tabs below for the OAuth flow, or jump to [connecting with an API key](#connecting-with-an-api-key) for header-based authentication.

<Tabs>
  <Tab title="Claude Desktop">
    Add the following to your Claude Desktop configuration file:

    * **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
    * **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`

    ```json theme={null}
    {
      "mcpServers": {
        "timeless": {
          "type": "http",
          "url": "https://api.timeless.day/mcp/"
        }
      }
    }
    ```

    Restart Claude Desktop. You will be prompted to authorize on first use.
  </Tab>

  <Tab title="Claude Code">
    Run the following command in your terminal:

    ```bash theme={null}
    claude mcp add --transport http timeless https://api.timeless.day/mcp/
    ```

    You will be prompted to authorize on first use.
  </Tab>

  <Tab title="Cursor">
    Add the following to your Cursor MCP configuration (`.cursor/mcp.json` in your project or global settings):

    ```json theme={null}
    {
      "mcpServers": {
        "timeless": {
          "url": "https://api.timeless.day/mcp/"
        }
      }
    }
    ```

    Restart Cursor. You will be prompted to authorize on first use.
  </Tab>
</Tabs>

## Connecting with an API key

To skip the browser sign-in, add your Timeless API token as an `Authorization` header in your client configuration. The client connects immediately using the token — no authorization prompt.

<Tabs>
  <Tab title="Claude Desktop">
    Add the following to your Claude Desktop configuration file:

    * **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
    * **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`

    ```json theme={null}
    {
      "mcpServers": {
        "timeless": {
          "type": "http",
          "url": "https://api.timeless.day/mcp/",
          "headers": {
            "Authorization": "Bearer YOUR_API_TOKEN"
          }
        }
      }
    }
    ```

    Restart Claude Desktop.
  </Tab>

  <Tab title="Claude Code">
    Run the following command in your terminal:

    ```bash theme={null}
    claude mcp add --transport http timeless https://api.timeless.day/mcp/ \
      --header "Authorization: Bearer YOUR_API_TOKEN"
    ```
  </Tab>

  <Tab title="Cursor">
    Add the following to your Cursor MCP configuration (`.cursor/mcp.json` in your project or global settings):

    ```json theme={null}
    {
      "mcpServers": {
        "timeless": {
          "url": "https://api.timeless.day/mcp/",
          "headers": {
            "Authorization": "Bearer YOUR_API_TOKEN"
          }
        }
      }
    }
    ```

    Restart Cursor.
  </Tab>
</Tabs>

## Available tools

Once connected, your AI assistant can use the following tools:

### Meetings

| Tool                     | Description                                                                                                               |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
| `list_meetings`          | List meetings with filtering by status, date range, participant, company, and room. Supports expanding related documents. |
| `get_meeting_transcript` | Get a timestamped transcript with speaker labels for a given meeting.                                                     |
| `get_meeting_recording`  | Get a temporary signed URL to download a meeting recording.                                                               |

### Rooms

| Tool         | Description                                                                     |
| ------------ | ------------------------------------------------------------------------------- |
| `list_rooms` | List rooms with text search. Supports expanding related documents and meetings. |

### Documents

| Tool           | Description                                                                        |
| -------------- | ---------------------------------------------------------------------------------- |
| `get_document` | Get a document in a specific format: `markdown`, `html`, `raw`, `docx`, or `json`. |

### Webhooks

| Tool             | Description                                              |
| ---------------- | -------------------------------------------------------- |
| `list_webhooks`  | List all webhooks for your account.                      |
| `create_webhook` | Create a new webhook with a URL and event subscriptions. |
| `update_webhook` | Update a webhook's URL, events, or enabled status.       |
| `delete_webhook` | Delete a webhook.                                        |

## Example usage

After connecting, you can ask your assistant questions like:

* "What meetings did I have last week?"
* "Show me the transcript from my meeting with Sarah"
* "Summarize the action items from today's standup"
* "Create a webhook to notify me when meetings are completed"

The assistant will call the appropriate Timeless tools to answer your questions.
