Skip to main content

Hub Bridge Setup

What is Hub Bridge?

Hub Bridge is a local proxy that connects clients (like Cursor, VS Code, JetBrains) to Civic. Your client thinks it's talking to a local MCP server, but the bridge handles authentication and forwards requests to your selected Civic servers.

npm package: @civic/hub-bridge

info

Use Hub Bridge when: Your client only supports local/stdio MCP servers and doesn't have remote URL options.

Check Client Compatibility First

Before setting up Hub Bridge, check if your client supports Remote URL connections instead:

Client Compatibility Guide

See which clients support Remote URL vs Hub Bridge - Remote URL is simpler if your client supports it

Use Hub Bridge for: Cursor, VS Code, JetBrains IDEs, Windsurf, Claude Code, and other clients that only support local/stdio MCP servers.

Setup: Edit Your Client's Configuration

Most clients that require Hub Bridge use a JSON configuration file. Here's how to set it up:

Prerequisites

warning

Make sure you have these before starting:

  • Node.js 18 or higher - Check with node --version
  • Terminal access - macOS/Linux Terminal, Windows PowerShell, or Command Prompt
  • Internet connection - For initial download and authentication
  • Default browser - Bridge opens browser for one-time authentication

Install Node.js (if needed)

# Using Homebrew (recommended)
brew install node

# Or download from nodejs.org

Configuration by Client

Each client has its own configuration format and file location. Choose your client below:

File Location: .cursor/mcp.json in your project root

Configuration:

{
"mcpServers": {
"civic": {
"command": "npx",
"args": ["-y", "@civic/hub-bridge@latest"]
}
}
}

Alternative: Use Cursor Settings → Features → MCP → Add New MCP Server

note

All these configurations use the Hub Bridge - your client runs npx -y @civic/hub-bridge locally, and the bridge handles connecting to Civic servers.

Step 2: First Run Authentication

When you first use an MCP command, the bridge will automatically:

  1. 1
    Create Account & Select Servers
    1. Create your Civic account (Google, GitHub, etc.)
    2. During account creation, select which MCP servers you want to connect (GitHub, Slack, etc.)
  2. 2
    Download & Install

    Bridge downloads itself (happens once, ~30 seconds)

  3. 3
    Open Browser

    Your default browser opens to app.civic.com for authentication

  4. 4
    Ready for Use

    Bridge is now configured and your client can access your selected tools

  5. 5
    App Authorization (As Needed)

    When you first use each specific tool, you'll authorize access to that app (e.g., GitHub OAuth, Slack workspace permission)

Managing Your Server Selection

You can modify which servers you have access to in two ways:

Option 1: In Chat

"Connect me to GitHub"
"Add Slack to my available tools"
"Show me what tools are available to connect"
"Remove Dropbox from my tools"

Option 2: On app.civic.com
Visit the website to add or remove servers from your account selection.

Step 3: Test Connection

Try these commands in your AI client:

"What MCP servers are available?"
"List my GitHub repositories"
"Show me recent Slack messages"

Troubleshooting

Common Issues

Bridge command not found

Problem: npx: command not found or 'npx' is not recognized

Solution:

  • Install Node.js 18+ from nodejs.org
  • Restart your terminal/IDE after installation
  • Verify with node --version and npm --version
Browser doesn't open for auth

Problem: Authentication browser window doesn't appear

Solution:

  • Corporate firewall may be blocking - try from personal network
  • Manually visit the auth URL shown in terminal output
  • Check if default browser is set correctly
  • Try running from regular terminal instead of IDE terminal
Client shows no tools/servers

Problem: Bridge connects but client doesn't see any MCP tools

Solution:

  • Restart your client completely after bridge setup
  • Check that you selected servers during authentication
  • Try using the bridge again to see if it works
  • Some clients need manual restart of MCP features
Authentication keeps failing

Problem: Repeated auth prompts or 401 errors

Solution:

  • Try reinstalling: remove the MCP server from your client and add it back
  • Check system time is accurate (OAuth is time-sensitive)
  • Disable VPN temporarily during initial setup
  • Join our developer community if issue persists
Slow or timing out

Problem: Bridge responses are slow or timeout

Solution:

  • Check internet connection stability
  • Corporate proxy may be interfering - try personal network
  • Some MCP operations are inherently slower (large file operations)
  • Bridge caches auth tokens to minimize delays

Corporate Network Considerations

If you're on a corporate network:

  • Proxy servers may interfere with authentication - whitelist app.civic.com and *.civic.com
  • Firewall rules might block npm/npx - work with IT to allow Node.js tools
  • Certificate issues - corporate TLS inspection can cause SSL errors
  • Alternative: Try initial setup from personal network, then bridge should work on corporate network

Getting More Help

  1. 1
    Check Error Messages

    Note any error messages you see when trying to use MCP commands

  2. 2
    Gather Info

    Note your OS, Node version (node --version), and client type

  3. 3
    Contact Support

    Include the above info when contacting support for faster resolution

Still Need Help?

Contact our support team with your specific setup details

How Hub Bridge Works

The Hub Bridge follows a modular architecture with clear separation of concerns:

Core Components

  • Bridge Core: Connects stdio and HTTP/SSE transports, forwards messages between client and server
  • Auth Provider: Handles OAuth client interface for Civic authentication with PKCE flow
  • Callback Server: Creates local HTTP server for OAuth redirects with dynamic port selection
  • Token Store: Manages secure storage of authentication tokens with file system persistence
  • OIDC Configuration: Fetches OpenID Connect configuration from discovery endpoints

Authentication Flow

  1. Civic Authentication: Automatically initiated when bridge starts using PKCE for security
  2. Service-Specific Authentication: Intercepts auth URL errors, opens browser for user authorization
  3. Token Management: Stores tokens locally for subsequent uses, handles refresh automatically

Environment Variables

The Hub Bridge may support environment variables for configuration, but refer to the official package documentation for the most current and accurate list of supported options.