Skip to content

Commit 8a44b4e

Browse files
committed
Corrections to mcp/execution environments
Testathon changes to MCP servers and execution environments. https://redhat.atlassian.net/browse/AAP-72785
1 parent 20e02e9 commit 8a44b4e

6 files changed

Lines changed: 18 additions & 23 deletions

downstream/assemblies/builder/assembly-MCP-servers-and-EE.adoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@ A _Model Context Protocol_ (MCP) Server is an external service that acts as a ga
99

1010
An MCP eliminates the need for custom integrations by providing a universal "language" for AI models to access and interact with real-world systems, data, and tools.
1111

12-
The MCP operates using a client-server architecture:
12+
The MCP operates using a client/server architecture:
1313

1414
[cols="a,a,a", options="header"]
1515
|===
1616
| Component | Role | Description
17-
| MCP Host | The application environment | This is where the user interacts with the AI, such as an AI-powered IDE like VS Code or a chatbot interface.
17+
| MCP Host | The application environment | This is where the user interacts with the AI, such as an AI-powered IDE like Visual Studio Code or a chatbot interface.
1818
| MCP Client | Connection manager | A component within the Host that translates LLM requests into the MCP format.
19-
| MCP Server | Resource provider | An external service that connects to underlying systems like databases or APIs.
19+
| MCP Server | Resource provider | An external service that connects to underlying systems such as databases or APIs.
2020
|===
2121

2222
By using this standardized protocol, any LLM that implements the MCP Client can use any MCP Server.

downstream/modules/builder/proc-build-ee-with-mcp-server.adoc

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,4 @@ A successful build produces output ending with:
9595
----
9696
Successfully tagged localhost/my-cfn-mcp-ee:latest
9797
Complete! The build context can be found at: /path/to/ee-build/context
98-
----
99-
100-
101-
98+
----

downstream/modules/builder/proc-create-custom-mcp-server-role.adoc

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@ This procedure uses the AWS CloudFormation MCP Server (`awslabs.cfn-mcp-server`)
1212
.Procedure
1313
. Create the collection directory structure and a new Ansible collection to hold your custom MCP role:
1414
+
15-
`mkdir -p collections/ansible_collections/myorg/mcp_cfn/roles/cfn_mcp/
16-
{defaults,tasks,meta}`
15+
`mkdir -p collections/ansible_collections/myorg/mcp_cfn/[defaults,tasks,meta]`
1716
+
1817
`mkdir -p collections/ansible_collections/myorg/mcp_cfn/playbooks`
1918
+
@@ -42,7 +41,7 @@ collections/ansible_collections/myorg/mcp_cfn/
4241
---
4342
namespace: myorg
4443
name: mcp_cfn
45-
version: 0.7.2
44+
version: 1.0.1.9
4645
readme: README.md
4746
authors:
4847
- Your Name
@@ -53,7 +52,7 @@ tags:
5352
- aws
5453
- cloudformation
5554
dependencies:
56-
ansible.mcp_builder: ">=0.7.2"
55+
ansible.mcp_builder: ">=1.0.1.9"
5756
----
5857
The dependencies field ensures that the `ansible.mcp_builder` collection is installed alongside your collection.
5958
+
@@ -70,7 +69,7 @@ cfn_mcp_registry:
7069
description: "AWS CloudFormation MCP Server - manage AWS resources via
7170
Cloud Control API"
7271
73-
cfn_mcp_version: "0.7.2"
72+
cfn_mcp_version: "1.0.1.9"
7473
----
7574
+
7675
The registry variable must follow the naming convention `<role_name>_registry`. The fields are:
@@ -132,7 +131,7 @@ myrole_build_path: "example/build"
132131
- cfn_mcp_verify_result.rc != 0
133132
----
134133
+
135-
The two `include_role` tasks are the minimum required. The `install_manager`` task reads your registry metadata and installs the MCP server using the appropriate method. The `generate_manifest` task adds the server to the `mcpservers.json` manifest.
134+
The two `include_role` tasks are the minimum required. The `install_manager`` task reads your registry metadata and installs the MCP server by using the appropriate method. The `generate_manifest` task adds the server to the `mcpservers.json` manifest.
136135
+
137136
The verification step is optional but recommended. It confirms the installed server is callable.
138137

@@ -192,17 +191,17 @@ collections:
192191
[IMPORTANT]
193192
====
194193
195-
The first task must include `ansible.mcp_builder.common` with `public: true`. This initializes the framework and makes shared variables (such as `common_mcp_base_path`) available to subsequent tasks. The ownership fix at the end ensures the MCP server files are accessible by the non-root runtime user inside the execution environment.
194+
The first task must include `ansible.mcp_builder.common` with `public: true`. This initializes the framework and makes shared variables (such as `common_mcp_base_path`) available to later tasks. The ownership fix at the end ensures the MCP server files are accessible by the non-root runtime user inside the execution environment.
196195
====
197196
+
198197
[NOTE]
199198
====
200199
The built-in `ansible.mcp_builder.install_mcp` playbook only supports roles within the `ansible.mcp_builder` namespace. Custom roles in your own collection namespace require their own playbook, as shown above.
201200
====
202201

203-
. Build your collection into a distributable tarball:
202+
. Build your collection into a distributable tar file:
204203
+
205204
`cd collections/ansible_collections/myorg/mcp_cfn`
206205
`ansible-galaxy collection build --output-path /path/to/output/`
207206
+
208-
This produces a file like `myorg-mcp_cfn-0.7.2.tar.gz`.
207+
This produces a file like `myorg-mcp_cfn-1.0.0.tar.gz`.

downstream/modules/builder/ref-evaluate-mcp-servers.adoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@
55
= Evaluate MCP servers before installation
66

77
[role="_abstract"]
8-
To protect your execution environment from vulnerabilities, evaluate MCP servers before installation by auditing code, pinning versions, enforcing read-only modes, and verifying permissions.
8+
To protect your execution environment from vulnerabilities, evaluate _Model Context Protocol_ (MCP) servers before installation by auditing code, pinning versions, enforcing read-only modes, and verifying permissions.
99

1010
Before including an MCP server in your execution environment:
1111

12-
* *Review the source code*: MCP servers can execute arbitrary operations on your infrastructure. Audit the server code before installing, especially for servers from community or third-party sources.
12+
* *Review the source code*: MCP servers can run arbitrary operations on your infrastructure. Audit the server code before installing, especially for servers from community or third-party sources.
1313
* *Pin to specific versions*: Use explicit version numbers in your registry metadata rather than latest:
1414
+
15-
`cfn_mcp_version: "0.7.2"`
15+
`cfn_mcp_version: "1.0.1.9"`
1616
+
1717
This ensures reproducible builds and prevents unexpected behavior from upstream changes.
1818

@@ -22,7 +22,7 @@ This ensures reproducible builds and prevents unexpected behavior from upstream
2222
cfn_mcp_registry:
2323
- name: "awslabs.cfn-mcp-server"
2424
type: "stdio"
25-
lang: "pypi"
25+
lang: "pyoi"
2626
args: ["--readonly"]
2727
description: "AWS CloudFormation MCP Server (read-only)"
2828
----

downstream/modules/builder/ref-mcp-builder-collection.adoc

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ The framework consists of three main components:
1717

1818
** Installs the appropriate language runtime (Go, Node.js, or Python/uv) if not already present.
1919
** Downloads and installs the MCP server package from the correct source (PyPI, npm, or Git).
20-
** Generates a unified manifest file (`/opt/mcp/mcpservers.json/opt/mcp/
21-
mcpservers.json`) listing all available MCP servers.
20+
** Generates a unified manifest file (`/opt/mcp/mcpservers.json/opt/mcp/mcpservers.json`) listing all available MCP servers.
2221
** Creates the `mcp_manage` utility for listing, querying, and running installed MCP servers
2322
* Your custom role defines metadata about the MCP server you want to install. At minimum, it includes:
2423

downstream/modules/builder/ref-track-configurations-mcp-manifest.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
[role="_abstract"]
88
Understand how the MCP servers manifest registers and automatically merges multiple server installations into the `/opt/mcp/mcpservers.json` file so that you can effectively track and verify your {ExecEnvShort} configurations.
99

10-
All installed MCP servers are registered in `/opt/mcp/mcpservers.json`. This file follows the `mcp.json` format established by VS Code, with each server entry containing:
10+
All installed MCP servers are registered in `/opt/mcp/mcpservers.json`. This file follows the `mcp.json` format established by Visual Studio Code, with each server entry containing:
1111

1212
----
1313
{

0 commit comments

Comments
 (0)