How to Access, Add, and Manage MCP Servers in Obot

Part 2: Accessing, Adding, and Managing MCP Servers in Obot tutorial series title with Obot logo and abstract background.

Obot with Docker: Deploy, Connect, and Query MCP Servers

In Part 1 of this series, we explored Obot’s architecture and core components. Now we move from theory to practice: This guide provides step-by-step instructions for deploying Obot with Docker, connecting to an existing MCP Server from the registry, and successfully querying the MCP Server.

Managing MCP servers in Obot starts with understanding the four server types the platform supports, each designed for specific deployment scenarios. We will walk through deploying Obot, adding your first MCP server, configuring runtime environments, and setting up registries for access control.

If you’re still deciding where MCP should run, pair this setup guide with Hosted MCP vs Self-Hosted MCP vs Local MCP. For a broader overview, our MCP Gateway overview explains where Obot fits in an enterprise architecture.

Quick Deployment Walkthrough

Let’s get hands-on. In this section, we will deploy Obot using Docker and walk through some of the main functionality of the Obot Gateway. NOTE:  Docker platform would be a great option for individual developers or for quick evaluation of the Obot MCP Gateway.  For production use cases,  Kubernetes is the recommended platform.

Step 1: Deploy Obot with Docker

First, ensure Docker is installed and running on your machine. Then execute the following command to start Obot:

docker run -d --name obot -p 8080:8080 \

  -v /var/run/docker.sock:/var/run/docker.sock \

  -e OPENAI_API_KEY=<YOUR_OPENAI_KEY> \

  ghcr.io/obot-platform/obot:latest

Replace <YOUR_OPENAI_KEY> with your OpenAI API key. You can also set ANTHROPIC_API_KEY or configure model providers later through the Admin UI.

The -v /var/run/docker.sock mount allows Obot to manage Docker containers for hosting MCP servers locally.

Step 2: Access the Obot UI

Open your browser and navigate to:

http://localhost:8080

You will see the Obot interface with access to both the Chat Interface and the Admin panel. Out of the box, Obot includes a curated catalog of popular MCP servers such as GitHub, Slack, Outlook, Notion, and many others.

Step 3: Connect to DuckDuckGo MCP Server

  1. On the Obot UI, select MCP Servers from the left sidebar
Obot user interface displaying MCP Management, Chat Management, and User Management sections for managing MCP servers and chat configurations.
  1. Select the DuckDuckGo MCP Server and click on the “…” menu
MCP Servers interface displaying various server options including DuckDuckGo, with a focus on connecting to remote and single-user servers.
  1. Click on Connect to Server
  2. Click on the Chat button
DuckDuckGo MCP server connection interface displaying connection URL and JSON configuration for integration with the Obot platform.

Step 4: Use the DuckDuckGo MCP Server

  1. The Chat Interface will appear
Obot chat interface displaying DuckDuckGo search project with options for chats, tasks, and connectors, featuring a welcome message prompt.
  1. Enter the following query in the Chat window: “Get me all the scores from all the sporting events that took place yesterday”
Obot Chat Interface displaying query results from DuckDuckGo MCP server for sports scores, featuring links to various sports score sources like ESPN, FOX Sports, and Yahoo Sports.
  1. The Obot Gateway is successfully communicating with the DuckDuckGo MCP server and the results of the query are displayed in the Chat interface.

Step 5: Add a GitHub MCP Server

Let’s add the GitHub MCP server to enable AI interactions with GitHub repositories, issues, and pull requests. We will add this as a Remote MCP server type and specify the required parameters to access the Remote MCP Server.

NOTE: We will be adding the GitHub Server manually even though there is an existing GitHub MCP Server in the catalog. This is for  demonstration purposes to highlight the steps involved in adding a new MCP Server.

  1. Navigate to Admin > MCP Servers in the sidebar
  2. Click Add MCP Server
MCP Servers interface displaying server entries with options to add a new MCP server and manage deployments, relevant to configuring GitHub MCP server.
  1. Select Remote MCP as the server type
MCP Servers interface displaying options to select server types, including Single User, Multi-User, Remote, and Composite Servers, relevant for adding a GitHub MCP server in the Obot platform tutorial.
  1. Click on Advanced Configuration
Create Remote Server form interface for adding a GitHub MCP server, featuring fields for Name, Description, Icon URL, and URL, with Save and Cancel buttons, in a clean, minimalist design.
  1. Fill in the Remote server details:
  • Name: Manual GH MCP
  • Description: Access GitHub repositories, issues, and pull requests
  • Restrict Connections to: Hostname (dropdown entry)
  • Hostname: api.githubcopilot.com
  1. Add a Header parameter for authentication:
  • Key: Authorization
  • Value: User-Supplied
  • Name: GitHub Personal Access Token
  • Description: GitHub PAT Token
  • Sensitive: Yes
  1. Click Save to add the server to your catalog
Manual GH MCP server configuration interface with fields for name, description, hostname, and authentication header for GitHub Personal Access Token.

Step 6: Connect and Test

Now let’s test the Manual GitHub MCP server:

  1. Go to Chat in the main navigation
  2. Click the + button next to MCP Servers in the sidebar
  3. Select Manual GitHub MCP from the catalog
  4. Enter your GitHub Personal Access Token and for the URL enter https://api.githubcopilot.com/mcp
Manual GH MCP interface for entering GitHub Personal Access Token and URL for API connection, facilitating access to GitHub repositories and issues.
  1. Once connected, try a prompt like: “Count the number of repos I have”. Obot should communicate with the GitHub MCP Server and provide you with the count of all your repos.
Chat interface showing interaction with Manual GitHub MCP server, displaying response about total private repositories in GitHub account.

Understanding MCP Server Types

Before adding more servers, let’s look into the various MCP Server types that are supported by Obot. Obot supports four distinct server types, each optimized for specific deployment patterns.

Server TypeDescriptionBest For
Single-UserOne server instance per user; each user provides their own credentialsPersonal accounts (GitHub tokens), maximum isolation, stdio servers
Multi-UserShared instance with centralized credentials or self-authenticating OAuthShared API keys, HTTP streaming servers, vendor-provided servers
RemoteExternal server deployed outside Obot; gateway proxies requestsThird-party vendors, existing CI/CD pipelines, external hosting
CompositeCombines multiple servers into a single virtual MCP server

Provide access to a specific subset of tools without exposing the full functionality of the MCP Server.
Curated toolsets, controlling tool exposure, unified experiences.

Configuring Runtime Environments

For servers that Obot will host (single-user and multi-user types), you need to configure the runtime environment. Obot supports Node.js, Python, and container-based runtimes.

Node.js and Python Servers

For TypeScript or Python MCP servers, provide the package name and entry command. Obot handles dependency installation and process management automatically.

Container-Based Servers

For non-TypeScript or Python servers, or when you need complete control over the runtime environment, use container deployment. Container based MCP Servers are the recommended option when publishing servers for the organization. Packaging as a container freezes the dependencies making it easier to know what is running in your environment.

Configure the server to run as Streaming HTTP or SSE and provide:

  1. Image: The OCI image URI (e.g., docker.elastic.co/mcp/elasticsearch)
  2. Port: The port the MCP server listens on inside the container
  3. Path: The URI path (typically /mcp or /sse)
  4. Arguments: Optional arguments to pass to the command

GitOps Workflow for MCP Server Management

For production environments, many teams prefer GitOps workflows that keep server definitions and policies in version control. This approach enables configuration drift detection, change auditing, and CI/CD integration.

Server Entry YAML Format

Obot uses YAML files to define MCP server entries. Here is an example for a remote HTTP server:

name: Weather API

description: |

  Real-time weather data and forecasts.

  ## Features

  - Current weather conditions

  - 7-day forecasts

metadata:

  categories: utilities, data

env:

  - key: API_KEY

    name: API Key

    required: true

    sensitive: true

runtime: remote

remoteConfig:

  fixedURL: https://api.weather.example/v1/mcp

Look at the mcp-catalog repository for the list of all MCP servers that come preconfigured in Obot MCP Gateway.

Managing MCP Registries

MCP Registries control which servers are visible to which users. Administrators use registries to map server entries to specific users and groups, ensuring each team has access only to the tools they need.

Creating a Registry

To create a new registry, navigate to MCP Management > MCP Registries and follow these steps:

  1. Click the Add New Registry button
  2. Give your registry a descriptive name (e.g., “Engineering Team”)
  3. Assign users and groups to the registry
  4. Add the MCP servers this registry should include (e.g., GitHub, Jira, Datadog)

By default, Obot includes an “everyone” group. If you need tighter controls, remove this group and assign specific teams to specific registries.

Summary

In this guide, we deployed Obot with Docker, connected to a DuckDuckGo MCP server, added a GitHub MCP server manually, and explored the platform’s server types and registry system. The key takeaways:

  • Obot can be deployed in minutes with a single Docker command
  • Adding MCP servers is straightforward through the Admin UI
  • Four server types address different deployment scenarios
  • Registries provide fine-grained access control per team

In Part 3, we will dive deep into access control, security, and proxying. We will explore how Obot’s authorization model maps identity groups to MCP servers, how the gateway proxies calls with policy enforcement, and best practices for credential management.

Once you’ve connected your first servers, you can expand into curated tool catalogs and reusable workflows. For inspiration, see our roundup of 15 MCP servers I use most right now.

Further Reading

Get Started with Obot

And make sure to join our Discord community!

Related Articles