Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions _topic_maps/_topic_map.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,11 @@ Topics:
- Name: Installing Connectivity Link in a disconnected environment
File: rhcl-install-disconnected
---
Name: Installing the MCP gateway
Name: Install the MCP gateway
Dir: mcp_gateway_install
Distros: rhcl
Topics:
- Name: Installing MCP gateway
- Name: Install MCP gateway
File: mcp-gateway-install
---
Name: Deploying Red Hat Connectivity Link
Expand Down
4 changes: 2 additions & 2 deletions mcp_gateway_install/mcp-gateway-install.adoc
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
:_mod-docs-content-type: ASSEMBLY
include::_attributes/attributes.adoc[]
[id="mcp-gateway-install"]
= Installing and configuring {mcpg}
= Install and configure {mcpg}
:context: mcp-gateway-get-install

toc::[]

[role="_abstract"]
You can get started with the MCP gateway by installing the Operator by using Operator Lifecycle Manager (OLM), and then continuing to set up connections by applying the custom resources that you require.
You can get started with the MCP gateway by using Operator Lifecycle Manager (OLM). After you install the Operator, set up connections by applying the custom resources that you require.

:FeatureName: {mcpg}

Expand Down
4 changes: 2 additions & 2 deletions modules/con-mcp-gateway-install-olm-ext-cr.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

:_mod-docs-content-type: CONCEPT
[id="con-mcp-gateway-install-olm-ext-cr_{context}"]
= Understanding the MCPGatewayExtension custom resource
= Understand the MCPGatewayExtension custom resource

[role="_abstract"]
You can deploy multiple MCP gateway instances within a single cluster by using more than one `Gateway` object, and an `MCPGatewayExtension` custom resource (CR) for each defined gateway. Each deployment of the MCP gateway manages its associated MCP servers by using the `MCPGatewayExtension` controller in the following ways:
You can deploy more than one MCP gateway instance within a single cluster by using more than one `Gateway` custom resource (CR). You muse use an `MCPGatewayExtension` CR for each `Gateway` CR. Each deployment of the MCP gateway manages its associated MCP servers by using the `MCPGatewayExtension` controller in the following ways:

* Defines which `Gateway` object the MCP gateway instance is responsible for.
* Determines where configuration `Secret` objects are created.
Expand Down
12 changes: 6 additions & 6 deletions modules/proc-config-mcp-gateway-gateway.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@

:_mod-docs-content-type: PROCEDURE
[id="proc-config-mcp-gateway-gateway_{context}"]
= Creating a Gateway object for your MCP gateway
= Create a Gateway object for your MCP gateway

[role="_abstract"]
You must create a `Gateway` object and configure listeners to create pods to handle your traffic, assign IP addresses, and give HTTP routes a place to connect.
You must make a `Gateway` object and configure listeners to create pods that handle your traffic, assign IP addresses, and give HTTP routes a place to connect.

[TIP]
====
You can attach your {prodnamefull} `DNSPolicy` CR to your `Gateway` object to automatically map your hostnames to your Gateway object's IP address. Point your `DNSPolicy` CR to your Gateway object by `name` in the `targetRef:` section. The `DNSPolicy` CR must reside in the same namespace as the `Gateway` object.
You can attach your {prodnamefull} `DNSPolicy` CR to your `Gateway` object to automatically map your hostnames to your Gateway object's IP address. Point your `DNSPolicy` CR to your `Gateway` object by `name` in the `targetRef:` section. The `DNSPolicy` CR must reside in the same namespace as the `Gateway` object.
====

.Prerequisites
Expand All @@ -22,7 +22,7 @@ You can attach your {prodnamefull} `DNSPolicy` CR to your `Gateway` object to au

.Procedure

* Create a `Gateway` object by using the following example as a template:
. Create a `Gateway` object by using the following example as a template:
+
.Example Gateway CR with listeners
[source,yaml]
Expand Down Expand Up @@ -63,8 +63,8 @@ spec:
mode: Terminate
----
+
* The custom resource (CR) is a `Gateway` named `mcp-gateway` that exists in the `gateway-namespace` namespace and has three listeners configured.
* On {ocp}, the `spec.listeners.tls.certificateRefs:` value can specify the `Secret` CR containing the default wildcard certificate for the OpenShift Ingress controller.
** The custom resource (CR) is a `Gateway` named `mcp-gateway` that exists in the `gateway-namespace` namespace and has three listeners configured.
** On {ocp}, the `spec.listeners.tls.certificateRefs:` value can specify the `Secret` CR containing the default wildcard certificate for the OpenShift Ingress controller.
+
[IMPORTANT]
====
Expand Down
10 changes: 5 additions & 5 deletions modules/proc-config-mcp-gateway-listener.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

:_mod-docs-content-type: PROCEDURE
[id="proc-config-mcp-gateway-listener_{context}"]
= Configuring MCP gateway listeners
= Configure MCP gateway listeners

[role="_abstract"]
Connect your MCP gateway to your agentic AI systems by appending your `Gateway` custom resource (CR) with your MCP listener information. The MCP listener handles the transport protocol, opens an MCP session on the port, and establishes a security perimeter. You can also add listeners for unencrypted web traffic and secured traffic.
Expand Down Expand Up @@ -137,15 +137,15 @@ $ oc get gateway _<mcp_gateway>_ -n _<gateway_namespace>_ -o jsonpath='{.status.

.Verification

. Check the status your listeners and related objects by running the following command:
* Check the status your listeners and related objects by running the following command:
+
[source,terminal,subs="+quotes"]
----
$ oc describe gateway _<mcp_gateway>_ -n _<gateway_namespace>_
----
+
* Replace `_<mcp_gateway>_` with the name of your MCP gateway deployment.
* Replace `_<gateway_namespace>_` with the namespace where your `Gateway` object is applied.
** Replace `_<mcp_gateway>_` with the name of your MCP gateway deployment.
** Replace `_<gateway_namespace>_` with the namespace where your `Gateway` object is applied.
+
.Example output
[source,yaml]
Expand Down Expand Up @@ -178,4 +178,4 @@ Events:
# ...
----
+
* The `Events` section of the output can also show port conflicts, problems with your `gatewayClassName:` value, missing routes, and a lack of permissions to read secrets.
The `Events` section of the output can also show port conflicts, problems with your `gatewayClassName:` value, missing routes, and a lack of permissions to read secrets.
12 changes: 4 additions & 8 deletions modules/proc-mcp-gateway-install-olm-ext-cr.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

:_mod-docs-content-type: PROCEDURE
[id="proc-mcp-gateway-install-olm-ext-cr_{context}"]
= Applying the MCPGatewayExtension custom resource
= Apply the MCPGatewayExtension custom resource

[role="_abstract"]
To finish your installation of the MCP gateway deployment Operator by using Operator Lifecycle Manager (OLM), create a `MCPGatewayExtension` custom resources (CR) manually and apply it to complete your initial setup. After the extension is ready, both an `HTTPRoute` object and an Envoy filter are automatically created.
Expand Down Expand Up @@ -51,14 +51,8 @@ spec:
* The value of the `sectionName:` parameter must match the listener `name:` value defined on your `Gateway` object in the `_<gateway_system>_` namespace. In this example, `mcp` is used.
* The default setting of `spec.httpRouteManagement: Enabled` means automatically maintained `HTTPRoute` objects to ensure that traffic for discovered MCP tools is correctly routed through the `Gateway` object.
* If you require a customized `HTTPRoute` CR, set the `spec.httpRouteManagement:` field value to `Disabled`.
+
[IMPORTANT]
====
In the MCP gateway Technology Preview version, `0.6.0`, you must set the `spec.httpRouteManagement:` field value to `Disabled` and create a customized managed `HTTPRoute` CR if you are using OAuth. This is a workaround for a Known Issue. See the {prodname} 1.3.3 release notes for details.
====
//re: https://github.com/Kuadrant/mcp-gateway/issues/776

. Apply the CR by running the following command:
. Apply the `MCPGatewayExtension` CR by running the following command:
+
[source,terminal,subs="+quotes"]
----
Expand Down Expand Up @@ -89,6 +83,8 @@ mcpgatewayextension.mcp.kuadrant.io/mcp-gateway-one condition met
error: timed out waiting for the condition on mcpgatewayextensions/mcp-gateway-one
----

.Verification

. Verify that the automatic `HTTProute` object is created by running the following command:
+
[source,terminal,subs="+quotes"]
Expand Down
20 changes: 14 additions & 6 deletions modules/proc-mcp-gateway-install-olm.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

:_mod-docs-content-type: PROCEDURE
[id="proc-mcp-gateway-install-olm_{context}"]
= Installing the MCP gateway with OLM
= Install the MCP gateway with OLM

[role="_abstract"]
You can install the MCP gateway deployment Operator by using Operator Lifecycle Manager (OLM) with the CLI. When choosing this path, you must create a `MCPGatewayExtension` custom resources (CR) manually and apply it to complete your initial setup.
Expand All @@ -25,11 +25,10 @@ $ oc create ns _<mcp_system>_
+
Replace the default `_<mcp_system>_` with the namespace you want to use.

. Create and apply the {mcpg} `Subscription` and `OperatorGroup` custom resources (CRs) by running the following command:
. Create and the {mcpg} `Subscription` and `OperatorGroup` custom resources (CRs) by using the following example:
+
[source,terminal,subs="+quotes"]
[source,yaml,subs="+quotes"]
----
$ oc apply -n _<mcp_system>_ -f - <<EOF
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
Expand All @@ -47,11 +46,20 @@ metadata:
spec:
targetNamespaces:
- _<mcp_system>_
EOF
----
+
Replace `_<mcp_system>_` with the namespace you used in the earlier step.

. Apply the resources by running the following command:
+
[source,terminal,subs="+quotes"]
----
$ oc apply -n _<mcp_system>_ -f _<mcp_gateway.yaml>_
----
+
* Replace `_<mcp_system>_` with the namespace you used in the earlier step.
* Replace `_<mcp_gateway.yaml>_` with the name you used for your configuration file.

. Confirm that the {mcpg} installation has finished by running the following commands:
+
[source,terminal,subs="+quotes"]
Expand All @@ -72,7 +80,7 @@ $ oc wait --for=condition=Installed installplan -n _<mcp_system>_ ${ip} --timeou

.Verification

. Wait for the controller to be ready by running the following command:
* Wait for the controller to be ready by running the following command:
+
[source,terminal,subs="+quotes"]
----
Expand Down