Skip to content

Commit 8221586

Browse files
authored
Merge pull request #117 from IBM/add-toc-in-readme
Add table of contents
2 parents 14439a8 + dd3baf1 commit 8221586

File tree

1 file changed

+78
-8
lines changed

1 file changed

+78
-8
lines changed

README.md

Lines changed: 78 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,82 @@ ContextForge MCP Gateway is a feature-rich gateway, proxy and MCP Registry that
2222
![MCP Gateway](https://ibm.github.io/mcp-context-forge/images/mcpgateway.gif)
2323
---
2424

25+
## Table of Contents
26+
- [Overview & Goals](#-overview--goals)
27+
- [Quick Start — PyPI](#quick-start--pypi)
28+
- [1 · Install & run (copy‑paste friendly)](#1--install--run-copypaste-friendly)
29+
- [Quick Start — Containers](#quick-start--containers)
30+
- [Docker](#-docker)
31+
- [1 · Minimum viable run](#1--minimum-viable-run)
32+
- [2 · Persist the SQLite database](#2--persist-the-sqlite-database)
33+
- [3 · Local tool discovery (host network)](#3--local-tool-discovery-host-network)
34+
- [Podman (rootless-friendly)](#-podman-rootless-friendly)
35+
- [1 · Basic run](#1--basic-run)
36+
- [2 · Persist SQLite](#2--persist-sqlite)
37+
- [3 · Host networking (rootless)](#3--host-networking-rootless)
38+
- [Testing `mcpgateway.wrapper` by hand:](#testing-mcpgatewaywrapper-by-hand)
39+
- [Running from an MCP Client (`mcpgateway.wrapper`)](#-running-from-an-mcp-client-mcpgatewaywrapper)
40+
- [1 · Install <code>uv</code> (<code>uvenv</code> is an alias it provides)](#1--install-uv--uvenv-is-an-alias-it-provides)
41+
- [2 · Create an on-the-spot venv & run the wrapper](#2--create-an-on-the-spot-venv--run-the-wrapper)
42+
- [Claude Desktop JSON (runs through **uvenv run**)](#claude-desktop-json-runs-through-uvenv-run)
43+
- [Using with Claude Desktop (or any GUI MCP client)](#-using-with-claude-desktop-or-any-gui-mcp-client)
44+
- [Quick Start: VS Code Dev Container](#-quick-start-vs-code-dev-container)
45+
- [1 · Clone & Open](#1--clone--open)
46+
- [2 · First-Time Build (Automatic)](#2--first-time-build-automatic)
47+
- [Quick Start (manual install)](#quick-start-manual-install)
48+
- [Prerequisites](#prerequisites)
49+
- [One-liner (dev)](#one-liner-dev)
50+
- [Containerised (self-signed TLS)](#containerised-self-signed-tls)
51+
- [Smoke-test the API](#smoke-test-the-api)
52+
- [Installation](#installation)
53+
- [Via Make](#via-make)
54+
- [UV (alternative)](#uv-alternative)
55+
- [pip (alternative)](#pip-alternative)
56+
- [Optional (PostgreSQL adapter)](#optional-postgresql-adapter)
57+
- [Quick Postgres container](#quick-postgres-container)
58+
- [Configuration (`.env` or env vars)](#configuration-env-or-env-vars)
59+
- [Basic](#basic)
60+
- [Authentication](#authentication)
61+
- [UI Features](#ui-features)
62+
- [Security](#security)
63+
- [Logging](#logging)
64+
- [Transport](#transport)
65+
- [Federation](#federation)
66+
- [Resources](#resources)
67+
- [Tools](#tools)
68+
- [Prompts](#prompts)
69+
- [Health Checks](#health-checks)
70+
- [Database](#database)
71+
- [Cache Backend](#cache-backend)
72+
- [Development](#development)
73+
- [Running](#running)
74+
- [Makefile](#makefile)
75+
- [Script helper](#script-helper)
76+
- [Manual (Uvicorn)](#manual-uvicorn)
77+
- [Authentication examples](#authentication-examples)
78+
- [AWS / Azure / OpenShift](#️-aws--azure--openshift)
79+
- [IBM Cloud Code Engine Deployment](#️-ibm-cloud-code-engine-deployment)
80+
- [Prerequisites](#-prerequisites)
81+
- [Environment Variables](#-environment-variables)
82+
- [Make Targets](#-make-targets)
83+
- [Example Workflow](#-example-workflow)
84+
- [API Endpoints](#api-endpoints)
85+
- [Testing](#testing)
86+
- [Project Structure](#project-structure)
87+
- [API Documentation](#api-documentation)
88+
- [Makefile targets](#makefile-targets)
89+
- [Troubleshooting](#-troubleshooting)
90+
- [Diagnose the listener](#diagnose-the-listener)
91+
- [Why localhost fails on Windows](#why-localhost-fails-on-windows)
92+
- [Fix (Podman rootless)](#fix-podman-rootless)
93+
- [Fix (Docker Desktop > 4.19)](#fix-docker-desktop--419)
94+
- [Contributing](#contributing)
95+
- [Changelog](#changelog)
96+
- [License](#license)
97+
- [Core Authors and Maintainers](#core-authors-and-maintainers)
98+
- [Star History and Project Activity](#star-history-and-project-activity)
99+
100+
25101
## 🚀 Overview & Goals
26102

27103
**ContextForge MCP Gateway** is a production-grade gateway, registry, and proxy that sits in front of any [Model Context Protocol](https://modelcontextprotocol.io) (MCP) server or REST API—exposing a unified endpoint for all your AI clients.
@@ -222,8 +298,7 @@ Use the official OCI image from GHCR with **Docker** *or* **Podman**.
222298

223299
---
224300

225-
<details>
226-
<summary><strong>🐳 Docker</strong></summary>
301+
### 🐳 Docker
227302

228303
#### 1 · Minimum viable run
229304

@@ -277,12 +352,9 @@ docker run -d --name mcpgateway \
277352

278353
Using `--network=host` allows Docker to access the local network, allowing you to add MCP servers running on your host. See [Docker Host network driver documentation](https://docs.docker.com/engine/network/drivers/host/) for more details.
279354

280-
</details>
281-
282355
---
283356

284-
<details>
285-
<summary><strong>🦭 Podman (rootless-friendly)</strong></summary>
357+
### 🦭 Podman (rootless-friendly)
286358

287359
#### 1 · Basic run
288360

@@ -317,8 +389,6 @@ podman run -d --name mcpgateway \
317389
ghcr.io/ibm/mcp-context-forge:0.1.1
318390
```
319391

320-
</details>
321-
322392
---
323393

324394
<details>

0 commit comments

Comments
 (0)