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

# Five-Minute Quickstart

> Create an MCP gateway, bind a capability, and connect an MCP client to Noorle.

By the end of this page you have a live MCP gateway that a client such as Claude
Code or MCP Inspector can call.

## Before you start

* A Noorle account. Sign up at [portal.noorle.com](https://portal.noorle.com).
* An MCP client that speaks **Streamable HTTP**.

## 1. Create a gateway

In the Portal, open **Gateways** and create one. You give it a name and an
optional description; the platform assigns the handle.

The gateway's endpoint is its own subdomain:

```
https://mcp-{handle}.noorle.cloud
```

The handle is twelve lowercase letters, generated server-side. The Portal shows
the full endpoint URL on the gateway's General view — copy it from there rather
than assembling it yourself.

## 2. Bind capabilities

Open the gateway's **Capabilities** view and bind what you want exposed. Every
account is seeded with eleven built-ins; **Web Search**, **HTTP Client**, and
**Code Runner** are a reasonable first set because none of them needs an
authenticated caller to be useful.

Two things to know before you pick:

* **Computer never appears on a gateway.** It is agent-only, enforced in code.
* **Files, Sandbox, and three Browser tools are withheld from callers the
  gateway cannot identify.** The workspace they would read and write is derived
  from the gateway plus the authenticated user, so an anonymous caller on a
  public gateway does not see them in `tools/list` at all.

See [Built-in capabilities](/docs/run/capabilities/overview) for the full list.

## 3. Choose how tools are presented

A gateway's **Tool Presentation** setting controls what a client's `tools/list`
returns. The platform default is **Adaptive**, which serves the tools directly
below 30 bound tools and switches to the three discovery meta-tools at or above
that. You can pin **Direct**, **Discovery**, or **Unified** instead.

See [Tool presentation](/docs/run/agents/omni-tool).

## 4. Connect a client

A new gateway **requires authentication by default** — clients register through
OAuth, or present an API key. Switch the gateway's **Authentication** to Public
if you want it reachable without a credential — see
[MCP gateways](/docs/run/platform/mcp-gateway#authentication).

The transport is Streamable HTTP. Point your client at the gateway origin; there
is no separate `/sse` path.

**Claude Code:**

```bash theme={"dark"}
claude mcp add --transport http noorle https://mcp-{handle}.noorle.cloud
```

For a private gateway, add a bearer credential:

```bash theme={"dark"}
claude mcp add --transport http noorle https://mcp-{handle}.noorle.cloud \
  --header "Authorization: Bearer $NOORLE_API_KEY"
```

**cURL smoke test** — a `POST` must accept both media types or the transport
returns 406:

```bash theme={"dark"}
curl -X POST https://mcp-{handle}.noorle.cloud \
  -H "Authorization: Bearer $NOORLE_API_KEY" \
  -H "Accept: application/json, text/event-stream" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
```

A new gateway requires authentication, so drop the `Authorization` header and
you get a 401 before media-type negotiation is reached.

The response comes back as `text/event-stream` frames — that is the transport's
normal encoding for a POST, not an error.

**MCP Inspector:**

```bash theme={"dark"}
npx @modelcontextprotocol/inspector
```

Choose Streamable HTTP and paste the gateway URL.

<Note>
  Noorle's MCP gateways advertise **tools only**. `prompts/list` and
  `resources/list` return empty results; `prompts/get`, `resources/read`, and
  `completion/complete` return method-not-found. A client that only speaks
  resources or prompts has nothing to talk to.
</Note>

## 5. Try it

Ask your client to do something one of the bound tools covers — "search the web
for X", "run some Python to compute Y". The call routes through the gateway to
the capability and the result comes back over the same connection.

If a tool you expected is missing from `tools/list`, check in this order:

1. The capability is bound to *this* gateway.
2. The tool is exposed on the MCP surface at all (Computer is not).
3. The tool does not require a workspace anchor while you are calling
   anonymously (Files, Sandbox, and Browser's `screenshot` / `pdf` / `snapshot`).

## Next

* [MCP gateways](/docs/run/platform/mcp-gateway) — authentication, presentation, limits
* [Built-in capabilities](/docs/run/capabilities/overview)
* [Connectors](/docs/run/connectors/overview) — bring your own APIs and MCP servers
* [Create an agent](/docs/run/agents/creating-an-agent) — when you want the loop run for you
