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

# Connect a client

> Add the hosted Nebyoulous MCP server to Claude Code, Claude Desktop, Cursor, VS Code, or any client that supports remote MCP.

The hosted server runs at:

```text theme={null}
https://api.nebyoulous.space/mcp
```

It uses the **Streamable HTTP** transport and signs you in with **OAuth**. Add
the URL to your client, and the first time it connects, your browser opens a
Nebyoulous approval page. There's no API key to copy.

## Add it to your client

**Claude Code**

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

Add `--scope user` to make it available in every project. Then run `/mcp`
in Claude Code, pick **nebyoulous**, and choose **Authenticate**.

**Claude Desktop and Claude.ai**

Open **Settings → Connectors**, choose **Add custom connector**, and enter:

* **Name:** Nebyoulous
* **URL:** `https://api.nebyoulous.space/mcp`

Choose **Connect** and approve the request in the browser window that
opens. Custom connectors aren't available on every Claude plan.

**Cursor**

Add this to `.cursor/mcp.json` in a project, or to `~/.cursor/mcp.json` for
all projects:

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

In **Cursor Settings → MCP**, nebyoulous shows that it needs a login.
Choose it to open the approval page.

**VS Code**

Add this to `.vscode/mcp.json`, or run **MCP: Add Server** from the command
palette:

```json theme={null}
{
  "servers": {
    "nebyoulous": {
      "type": "http",
      "url": "https://api.nebyoulous.space/mcp"
    }
  }
}
```

Start the server from the file or the MCP view, then allow the sign-in.

**Other clients**

Any client that supports Streamable HTTP and the MCP authorization spec
works. Point it at `https://api.nebyoulous.space/mcp`. It discovers the rest
from the server:

| | |
| - | - |
| Protected resource metadata | `/.well-known/oauth-protected-resource/mcp` |
| Authorization server metadata | `/.well-known/oauth-authorization-server` |
| Dynamic client registration | `POST /oauth/register` |
| Authorization | `GET /oauth/authorize` (code flow, PKCE `S256` required) |
| Token | `POST /oauth/token` (`authorization_code` and `refresh_token`) |

Clients are public: no client secret (`token_endpoint_auth_method: none`).

## What happens when you sign in

**1. The client registers and opens your browser**

A `401` from the server points the client at the OAuth metadata. It
registers itself and opens the Nebyoulous approval page.

**2. You approve on nebyoulous.space**

Sign in if you aren't already. The page names the client asking for access.
Pick how long the connection stays signed in (7, 30, or 90 days), then
choose **Allow access**. **Deny** cancels it.

**3. The client gets tokens**

The browser returns to the client, and the client trades the code for an
access token and a refresh token. It refreshes on its own until the
lifetime you picked runs out. After that, sign in again.

To disconnect, remove the server from your client. There's no way to revoke a
connection from the web app yet.

## Check it works

Ask your assistant *"Who am I signed in as on Nebyoulous?"*. It calls `getMe` and
answers with your email and username. The [tool reference](/mcp/tools) lists
everything else it can do.

## Troubleshooting

> **403 PENDING\_APPROVAL**
>
> Your account is waiting for an admin to approve it. The server answers
> every request this way until then. See the
> [quickstart](/quickstart#1-create-an-account).

> **401 or the client keeps asking you to sign in**
>
> The connection's lifetime ran out, or the client lost its tokens. Sign in
> again from the client, for example `/mcp` → **Authenticate** in Claude
> Code.

> **405 Method Not Allowed**
>
> The client is trying the older SSE transport, which opens a `GET` stream.
> This server is stateless Streamable HTTP and only accepts `POST /mcp`.
> Update the client, or set its transport to HTTP rather than SSE.

> **The assistant needs files on your machine**
>
> The hosted server can't see your disks. Use the
> [CLI server](/mcp/local) to scan cards and run syncs.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.