Skip to content

Connect Channels to VS Code desktop

View as Markdown

Connect VS Code desktop to Channels using a public OAuth client in your Cloud Project. You need permission to manage OAuth clients and a VS Code version with HTTP MCP and static OAuth client support. This guide uses a local desktop window; remote windows, vscode.dev and GitHub Copilot CLI have separate requirements.

If Channels is already connected, preserve that connection. For a separate setup, choose a distinct server name and use it throughout the configuration and verification.

1. Select your Project and enable Channels

Open Cloud Projects and choose your Account. Use Manage Cloud Projects → Switch Projects to find and select the Project. Confirm it in Switch Cloud Project.

Create a Project if needed. From inspection details, use Back to list → Switch Projects, or close the manager when the intended Project is already active.

Open Enabled services. Continue if Channels is listed; otherwise choose Enable service → Channels and confirm it appears. Keep this Project selected. Service enablement does not establish host authorization.

2. Register a public client

Open OAuth → Overview. If needed, choose Set up OAuth, enter Channels for VS Code, complete the consent information and save. Preserve an existing configuration.

Open OAuth → Clients → Create client. Name it Channels for VS Code desktop, choose Native, leave JavaScript origins empty, and register:

URL
http://127.0.0.1:33418/

Include the callback’s final slash. The VS Code desktop loopback source prefers port 33418 but falls back to another port if occupied. For this exact registered callback, ensure your local session can use 33418. If a different port appears, cancel that attempt and resolve the port conflict with the owner before trying again. Preserve working applications and connectors. Do not substitute the hosted vscode.dev callback into this desktop setup.

Create the public client and copy its client ID. This client does not need a client secret. If access is denied, use Copy access request with your Account and membership identity; ask the Project owner to resolve it, then choose Check access again.

3. Add the remote server

In the Command Palette, choose MCP: Open User Configuration for your user profile, or MCP: Open Workspace Folder MCP Configuration for the workspace’s .vscode/mcp.json. Merge this entry into the existing servers object and replace YOUR_CLIENT_ID:

JSON
{
  "servers": {
    "socraChannels": {
      "type": "http",
      "url": "https://channels.socra.cloud/mcp",
      "oauth": {
        "clientId": "YOUR_CLIENT_ID"
      }
    }
  }
}

Preserve other server entries. If you chose a distinct server name, replace socraChannels here and use that same name when enabling and verifying the connection. The VS Code MCP reference documents oauth.clientId for a registered client. No fixed authorization header or client secret is needed for this public client.

4. Authorize your Account

Before authorizing, review the access you are granting. Channels tools can read and modify data that your selected Account permits. The single read-only verification below does not restrict the connection’s overall authority. Review later tool calls and approve only the actions you intend.

Run MCP: List Servers, select your configured server and start it. Follow any trust prompt for the configuration you added. On first connection, VS Code opens the browser for OAuth authorization. Sign into Socra, choose the Account you use in Channels and approve access. Return to the same VS Code window.

If interrupted, return to the same connection. Check the client ID, exact desktop callback, enabled service and Account before retrying an error. If your VS Code version or organization policy prevents the setup, ask its owner or support to resolve that prerequisite. Keep working configurations intact.

5. Verify a real read

In a VS Code agent chat, enable the configured Channels server’s tools. Ask it to use that server:

Text
Use Socra Channels to make exactly one channels_list tool call with limit 1. Do not read messages or send, create, update or delete anything. Report whether the call succeeded. An empty list is valid.

Review the tool approval and arguments. channels_list must execute with limit: 1 and return a result; an answer without execution does not verify the connection.

If no tool runs, check the server and tool controls. For a failed call, retain the error and check the authorized Account and enabled Channels service in the client's Project. Ask the Account or Project owner to resolve denied access before retrying.

Stop or remove this connection

Run MCP: List Servers, select only your Channels server and choose Stop. To remove its configuration, open the same user or workspace MCP configuration used above and remove only the socraChannels entry from servers. Use your distinct name if you chose one; preserve the other entries. Check the server list afterward. Stopping a server can be temporary; remove its configuration if you do not want it started again.

For optional cleanup of a client registration dedicated to this connection, ask its Project owner to select the same Project in Platform, open OAuth → Clients, select that exact client and choose Delete, then review the confirmation that its secrets are also removed. Preserve clients shared by other working connections. Removing a host entry or deleting a registration is not proof that every previously issued token has been revoked; ask the Account authorization owner for server-side revocation when that is required.

See also