You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Cline](https://github.com/cline/cline) is an AI coding assistant that runs in VS Code-compatible editors (VS Code, Cursor, Windsurf, etc.). For general setup information (prerequisites, Docker installation, security best practices), see the [Installation Guides README](./README.md).
4
+
5
+
## Remote Server
6
+
7
+
Cline stores MCP settings in `cline_mcp_settings.json`. To edit it, click the Cline icon in your editor's sidebar, open the menu in the top right corner of the Cline panel, and select **"MCP Servers"**. You can add a remote server through the **"Remote Servers"** tab, or click **"Configure MCP Servers"** to edit the JSON directly.
8
+
9
+
```json
10
+
{
11
+
"mcpServers": {
12
+
"github": {
13
+
"url": "https://api.githubcopilot.com/mcp/",
14
+
"type": "streamableHttp",
15
+
"disabled": false,
16
+
"headers": {
17
+
"Authorization": "Bearer <YOUR_GITHUB_PAT>"
18
+
},
19
+
"autoApprove": []
20
+
}
21
+
}
22
+
}
23
+
```
24
+
25
+
Replace `YOUR_GITHUB_PAT` with your [GitHub Personal Access Token](https://github.com/settings/tokens). To customize toolsets, add server-side headers like `X-MCP-Toolsets` or `X-MCP-Readonly` to the `headers` object — see [Server Configuration Guide](../server-configuration.md).
26
+
27
+
> **Important:** The transport type must be `"streamableHttp"` (camelCase, no hyphen). Using `"streamable-http"` or omitting the type will cause Cline to fall back to SSE, resulting in a `405` error.
28
+
29
+
## Local Server (Docker)
30
+
31
+
1. Click the Cline icon in your editor's sidebar (or open the command palette and search for "Cline"), then click the **MCP Servers** icon (server stack icon at the top of the Cline panel), and click **"Configure MCP Servers"** to open `cline_mcp_settings.json`.
32
+
2. Add the configuration below, replacing `YOUR_GITHUB_PAT` with your [GitHub Personal Access Token](https://github.com/settings/tokens).
33
+
34
+
```json
35
+
{
36
+
"mcpServers": {
37
+
"github": {
38
+
"command": "docker",
39
+
"args": [
40
+
"run", "-i", "--rm",
41
+
"-e", "GITHUB_PERSONAL_ACCESS_TOKEN",
42
+
"ghcr.io/github/github-mcp-server"
43
+
],
44
+
"env": {
45
+
"GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_GITHUB_PAT"
46
+
}
47
+
}
48
+
}
49
+
}
50
+
```
51
+
52
+
## Troubleshooting
53
+
54
+
-**SSE error 405 with remote server**: Ensure `"type"` is set to `"streamableHttp"` (camelCase, no hyphen) in `cline_mcp_settings.json`. Using `"streamable-http"` or omitting `"type"` causes Cline to fall back to SSE, which this server does not support.
55
+
-**Authentication failures**: Verify your PAT has the required scopes
56
+
-**Docker issues**: Ensure Docker Desktop is installed and running
[Roo Code](https://github.com/RooCodeInc/Roo-Code) is an AI coding assistant that runs in VS Code-compatible editors (VS Code, Cursor, Windsurf, etc.). For general setup information (prerequisites, Docker installation, security best practices), see the [Installation Guides README](./README.md).
4
+
5
+
## Remote Server
6
+
7
+
### Step-by-step setup
8
+
9
+
1. Click the **Roo Code icon** in your editor's sidebar to open the Roo Code pane
10
+
2. Click the **gear icon** (⚙️) in the top navigation of the Roo Code pane, then click on **"MCP Servers"** icon on the left.
11
+
3. Scroll to the bottom and click **"Edit Global MCP"** (for all projects) or **"Edit Project MCP"** (for the current project only)
12
+
4. Add the configuration below to the opened file (`mcp_settings.json` or `.roo/mcp.json`)
13
+
5. Replace `YOUR_GITHUB_PAT` with your [GitHub Personal Access Token](https://github.com/settings/tokens)
14
+
6. Save the file — the server should connect automatically
15
+
16
+
```json
17
+
{
18
+
"mcpServers": {
19
+
"github": {
20
+
"type": "streamable-http",
21
+
"url": "https://api.githubcopilot.com/mcp/",
22
+
"headers": {
23
+
"Authorization": "Bearer YOUR_GITHUB_PAT"
24
+
}
25
+
}
26
+
}
27
+
}
28
+
```
29
+
30
+
> **Important:** The `type` must be `"streamable-http"` (with hyphen). Using `"http"` or omitting the type will fail.
31
+
32
+
To customize toolsets, add server-side headers like `X-MCP-Toolsets` or `X-MCP-Readonly` to the `headers` object — see [Server Configuration Guide](../server-configuration.md).
33
+
34
+
## Local Server (Docker)
35
+
36
+
```json
37
+
{
38
+
"mcpServers": {
39
+
"github": {
40
+
"command": "docker",
41
+
"args": [
42
+
"run", "-i", "--rm",
43
+
"-e", "GITHUB_PERSONAL_ACCESS_TOKEN",
44
+
"ghcr.io/github/github-mcp-server"
45
+
],
46
+
"env": {
47
+
"GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_GITHUB_PAT"
48
+
}
49
+
}
50
+
}
51
+
}
52
+
```
53
+
54
+
## Troubleshooting
55
+
56
+
-**Connection failures**: Ensure `type` is `streamable-http`, not `http`
57
+
-**Authentication failures**: Verify PAT is prefixed with `Bearer ` in the `Authorization` header
58
+
-**Docker issues**: Ensure Docker Desktop is running
returnutils.NewToolResultError("issue_number is required for update method"), nil, nil
1090
+
}
1091
+
returnutils.NewToolResultText(fmt.Sprintf("Ready to update issue #%d in %s/%s. IMPORTANT: The issue has NOT been updated yet. Do NOT tell the user the issue was updated. The user MUST click Submit in the form to update it.", issueNumber, owner, repo)), nil, nil
1086
1092
}
1087
-
returnutils.NewToolResultText(fmt.Sprintf("Ready to update issue #%d in %s/%s. IMPORTANT: The issue has NOT been updated yet. Do NOT tell the user the issue was updated. The user MUST click Submit in the form to update it.", issueNumber, owner, repo)), nil, nil
1093
+
} else {
1094
+
returnutils.NewToolResultText(fmt.Sprintf("Ready to create an issue in %s/%s. IMPORTANT: The issue has NOT been created yet. Do NOT tell the user the issue was created. The user MUST click Submit in the form to create it.", owner, repo)), nil, nil
1088
1095
}
1089
-
returnutils.NewToolResultText(fmt.Sprintf("Ready to create an issue in %s/%s. IMPORTANT: The issue has NOT been created yet. Do NOT tell the user the issue was created. The user MUST click Submit in the form to create it.", owner, repo)), nil, nil
0 commit comments