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

# Connect

> Connect Claude Desktop, Cursor, or a hosted AI agent to Jedify.

Jedify's MCP works with **local clients** (Claude Desktop, Cursor, Claude Code) and **hosted agents and app builders** (such as ChatGPT or no-code app builders). Both use the same [modes](/mcp/modes) and [authentication](/mcp/authentication).

## Local clients: Claude Desktop, Cursor & Claude Code

Add this to your client's MCP configuration (requires **Node.js 18+**):

```json theme={null}
{
  "mcpServers": {
    "jedify": {
      "command": "npx",
      "args": ["-y", "@jedify/mcp-auth"]
    }
  }
}
```

This connects in Asker mode. For Builder mode, use `"args": ["-y", "@jedify/mcp-auth", "--builder"]`.

The config file lives at:

<Tabs>
  <Tab title="Claude Desktop">
    **Settings → Developer → Edit Config**, or edit directly:

    * **macOS** — `~/Library/Application Support/Claude/claude_desktop_config.json`
    * **Windows** — `%APPDATA%\Claude\claude_desktop_config.json`
  </Tab>

  <Tab title="Cursor">
    Command palette (`Cmd/Ctrl+Shift+P`) → **MCP Settings → Open MCP Settings**, or edit directly:

    * **macOS / Linux** — `~/.cursor/mcp.json`
    * **Windows** — `%APPDATA%\Cursor\mcp.json`
  </Tab>

  <Tab title="Claude Code">
    Edit `~/.claude.json` in your home directory and add the `jedify` server under `mcpServers` (the same block shown above).
  </Tab>
</Tabs>

Restart your client. The first time you use a Jedify tool, you'll [sign in](/mcp/authentication).

### Authenticate with an API key

To skip the browser login — on a headless machine, a shared environment, or a CI setup — set `JEDIFY_API_KEY` in an `env` block. When it's present, the proxy authenticates every request with the key instead of prompting you to sign in:

```json theme={null}
{
  "mcpServers": {
    "jedify": {
      "command": "npx",
      "args": ["-y", "@jedify/mcp-auth"],
      "env": {
        "JEDIFY_API_KEY": "your-api-key"
      }
    }
  }
}
```

<Note>
  The API key must be **bound to a user** — it carries that user's identity and permissions, so no email or sign-in is needed. Ask your Jedify administrator to issue one. If `JEDIFY_API_KEY` is unset, the proxy falls back to the browser login. Requires `@jedify/mcp-auth` **v1.1.0 or later**.
</Note>

### Select a mode with an API key

An API key carries its own mode — **Asker**, unless the key was issued for another mode. To choose the mode yourself, set the server URL with a `?mode=` parameter via `REMOTE_MCP_URL`; the URL parameter always takes precedence over the key's own mode:

```json theme={null}
{
  "mcpServers": {
    "jedify": {
      "command": "npx",
      "args": ["-y", "@jedify/mcp-auth"],
      "env": {
        "REMOTE_MCP_URL": "https://be.jedify.com/mcp/message?mode=builder",
        "JEDIFY_API_KEY": "your-api-key"
      }
    }
  }
}
```

Replace `builder` with `editor` to request Editor mode. To confirm Builder mode, ask your agent *"Which Jedify builder tools do you have?"* — you should see `create_semantic_function` and `list_semantic_functions`.

## Hosted agents & app builders

In your platform's MCP settings, provide the server URL and an API key:

|                |                                                                                                              |
| -------------- | ------------------------------------------------------------------------------------------------------------ |
| **Server URL** | `https://be.jedify.com/mcp/message` — for Builder mode, use `https://be.jedify.com/mcp/message?mode=builder` |
| **API key**    | See [Authentication](/mcp/authentication)                                                                    |

To confirm you're in Builder mode, ask your agent *"Which Jedify builder tools do you have?"* — you should see `create_semantic_function` and `list_semantic_functions`.

## Next steps

<CardGroup cols={2}>
  <Card title="Modes" icon="toggle-on" href="/mcp/modes">
    Asker vs Builder.
  </Card>

  <Card title="Authentication" icon="key" href="/mcp/authentication">
    Sign in or use an API key.
  </Card>

  <Card title="Asker examples" icon="comments" href="/mcp/asker/use-cases">
    What to ask.
  </Card>

  <Card title="Builder mode" icon="cube" href="/mcp/builder/semantic-functions">
    Build dashboards.
  </Card>
</CardGroup>
