[Docs](https://linkinseconds.com/docs)AI agents and MCP

# Other MCP clients

Connect any MCP client that supports remote Streamable HTTP servers, with OAuth sign-in or a custom Authorization header.

Any MCP client that supports **remote servers over Streamable HTTP** can use Link in Seconds. It can sign in with **OAuth** (no key, you approve it in the browser) or send an API key in a **custom request header**. Look for a “remote”, “HTTP” or “URL” server option.

## Settings to enter

| Field | Value |

| Name | `linkinseconds` |

| Type / transport | HTTP (Streamable HTTP) |

| URL | `https://linkinseconds.com/api/mcp` |

| Header | `Authorization: Bearer lis_YOUR_KEY` |

Most clients use a JSON shape like this one:

JSON

```
{
  "mcpServers": {
    "linkinseconds": {
      "url": "https://linkinseconds.com/api/mcp",
      "headers": { "Authorization": "Bearer lis_YOUR_KEY" }
    }
  }
}
```

## Clients that sign in with OAuth

Apps that connect to remote servers with OAuth and have no field for a header can connect too. Enter the server URL, choose OAuth, and the app finds our sign-in on its own: a `401` from the server points it to `/.well-known/oauth-protected-resource`, and it registers itself, sends you to a Link in Seconds page to approve it, and gets a token that only works on the MCP server. ChatGPT works this way; see the [ChatGPT guide](https://linkinseconds.com/docs/mcp/chatgpt).

- Authorization code with PKCE (S256), public clients, scope `mcp`.

- Clients register themselves with dynamic client registration (RFC 7591), once per connection.

- Access tokens last one hour; refresh tokens rotate on every use.

- You can disconnect an app at any time under Connected apps on the [API keys page](https://linkinseconds.com/dashboard/api-keys).

## Test the connection yourself

This is the first request every client sends. A JSON reply with `serverInfo` means your key works:

Shell

```
curl -s -X POST https://linkinseconds.com/api/mcp \
  -H "Authorization: Bearer lis_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"test","version":"1"}}}'
```

| Reply | Meaning |

| 200 with serverInfo | Working. |

| 401 Unauthorized | Key missing, mistyped or deleted. An OAuth client starts its sign-in from this reply. |

| 403 | The account is suspended. |

| 405 on GET | Normal. The server only answers `POST`; it never opens a stream. |

## Protocol details

- Stateless: no session id, every request stands alone. Batched requests are accepted.

- Protocol versions 2024-11-05 through 2025-11-25 are accepted; the server answers with the one you request.

- Capabilities: tools only (no resources or prompts).

- The server is also described by its [server card](https://linkinseconds.com/.well-known/mcp/server-card.json).

Note

Using an MCP client in the browser? CORS is open on the server, and the key or OAuth token, not cookies, is what authenticates.

[PreviousVS Code](https://linkinseconds.com/docs/mcp/vs-code)[Next Tools reference](https://linkinseconds.com/docs/mcp/tools)

Last updated 21 October 2026. Something unclear or missing? [Tell us](https://linkinseconds.com/contact).

Source: https://linkinseconds.com/docs/mcp/other-clients
