File 0004-Update-CONTRIBUTING.md-with-mcphost-installation.patch of Package mcp-server-uyuni
From 2735def5c15b40458b6285ef7757c41f075d4b4c Mon Sep 17 00:00:00 2001
From: Jordi Massaguer Pla <jmassaguerpla@suse.com>
Date: Wed, 20 Aug 2025 19:28:38 +0200
Subject: [PATCH 4/7] Update CONTRIBUTING.md with mcphost installation
Signed-off-by: Jordi Massaguer Pla <jmassaguerpla@suse.com>
---
CONTRIBUTING.md | 30 +++++++++++++++++++++++++++++-
1 file changed, 29 insertions(+), 1 deletion(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index d3af135..f8390e5 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -10,6 +10,35 @@ We welcome contributions in various forms, including:
- Suggesting enhancements
- Submitting pull requests for new features or bug fixes
+## Development Setup
+
+### Running Automated Tests
+
+This project includes a suite of automated acceptance tests. Before submitting a contribution, it's important to run these tests to ensure that your changes don't break existing functionality.
+
+**Prerequisite: Install `mcphost`**
+
+The test runner script (`test/acceptance_tests.py`) depends on the `mcphost` command-line tool. You must install it and ensure it is available in your system's `PATH`.
+
+There are two primary ways to install `mcphost`:
+
+**1. From Source (via GitHub)**
+
+This method requires Go to be installed on your system.
+
+```bash
+git clone https://github.com/mark3labs/mcphost.git
+cd mcphost
+go install
+```
+For more details, refer to the official `mcphost` installation guide.
+
+**2. Using Linux Distribution Packages**
+
+Pre-built packages for various Linux distributions are available from the openSUSE Build Service. Find the appropriate package for your system here: [mcphost on openSUSE Build Service](https://build.opensuse.org/package/show/science:machinelearning:mcp/mcphost).
+
+Once `mcphost` is installed, please see the "Running Automated Acceptance Tests" section in `TEST_CASES.md` for detailed instructions on how to execute the test suite.
+
## Commit Message Guidelines
To ensure a consistent and readable commit history, which helps in generating changelogs and understanding project evolution, we follow the **Conventional Commits** specification.
@@ -216,4 +245,3 @@ Avoid Raising Exceptions: LLMs do not handle exceptions well. A tool that raises
### Design Simple and Unambiguous Tool Signatures
Avoid too many required parameters: If a tool has multiple required parameters (e.g., add_system) the LLM won't execute it if the user's prompt is simple (e.g., "add system 10.10.10.10"). The LLM might not ask for the missing activation_key and will simply fail to use it. Instead, make the required parameters optional, by setting some default value, and then check if the parameters have been provided. If not, return a message to the user asking for them. This way, the LLM will execute the tool even if you have not provided with the parameters.
-
--
2.43.0