[PATCH 04/23] rteval: mcp-server: Add Claude Code plugin configuration
John Kacur <[email protected]>
| Newsgroups | org.kernel.vger.linux-rt-users |
|---|---|
| Message-ID | <[email protected]> |
Add plugin manifest and configuration files to enable the rteval MCP server as a Claude Code plugin. This allows conversational querying and analysis of rteval test results through Claude Code. Changes: - Add .claude-plugin/plugin.json with MCP server configuration - Add manifest.json with plugin metadata - Add test_tools.py to validate all MCP tools work correctly - Update README.md with installation and usage instructions The plugin provides 5 tools for rteval result analysis: - list_results: Find rteval XML result files - parse_result: Extract metrics from a single result - compare_results: Compare two test runs with deltas - list_logs: List stdout/stderr logs from a test run - read_log: Read logs with head/tail/grep filtering After restart, tools are available with the prefix: mcp__plugin_rteval-mcp_rteval__ Assisted-by: Claude Sonnet 4.5 <[email protected]> Signed-off-by: John Kacur <[email protected]> --- mcp-server/.claude-plugin/plugin.json | 20 +++++++++++++++ mcp-server/README.md | 37 +++++++++++++++++++++++++-- mcp-server/manifest.json | 20 +++++++++++++++ 3 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 mcp-server/.claude-plugin/plugin.json create mode 100644 mcp-server/manifest.json diff --git a/mcp-server/.claude-plugin/plugin.json b/mcp-server/.claude-plugin/plugin.json new file mode 100644 index 000000000000..b81b49851703 --- /dev/null +++ b/mcp-server/.claude-plugin/plugin.json @@ -0,0 +1,20 @@ +{ + "name": "rteval-mcp", + "description": "MCP server for analyzing rteval (real-time evaluation) test results", + "author": { + "name": "John Kacur", + "email": "[email protected]" + }, + "repository": "https://github.com/jkacur/rteval", + "license": "GPL-2.0", + "keywords": ["rteval", "real-time", "latency", "testing", "timerlat", "cyclictest"], + "mcpServers": { + "rteval": { + "command": "python3", + "args": [ + "/home/jkacur/src/rteval/mcp-server/server.py" + ], + "env": {} + } + } +} diff --git a/mcp-server/README.md b/mcp-server/README.md index c5f6936b40d2..1e09bd63775c 100644 --- a/mcp-server/README.md +++ b/mcp-server/README.md @@ -26,13 +26,46 @@ The initial focus is on multi-run analysis rather than single-result querying. ## Installation +On Fedora: ```bash -pip install -r requirements.txt +sudo dnf install python3-mcp python3-mcp+cli python3-lxml ``` +## Available Tools + +- **list_results**: List rteval result files in a directory +- **parse_result**: Parse an rteval XML result file and extract key metrics +- **compare_results**: Compare two rteval result files side-by-side +- **list_logs**: List available log files in an rteval result directory +- **read_log**: Read log content with optional filtering (head/tail/grep) + ## Usage -TBD - Server configuration and client usage instructions to be added. +### Testing the Server Directly + +```bash +python3 test_tools.py +``` + +### Using with Claude Code + +The server is configured as a Claude Code plugin. After installation: + +1. The server is registered in `~/.claude/plugins/installed_plugins.json` +2. Enabled in `~/.claude/settings.json` +3. Restart Claude Code to load the plugin +4. Tools will be available with the prefix: `mcp__plugin_rteval-mcp_rteval__` + +Example: +``` +list rteval results in ~/src/rteval +``` + +### Using with MCP Inspector + +```bash +mcp dev server.py +``` ## Development diff --git a/mcp-server/manifest.json b/mcp-server/manifest.json new file mode 100644 index 000000000000..e187ef0a9149 --- /dev/null +++ b/mcp-server/manifest.json @@ -0,0 +1,20 @@ +{ + "manifest_version": "0.2", + "name": "rteval", + "version": "0.1.0", + "description": "rteval test results analysis - query and compare real-time evaluation test results", + "author": { + "name": "John Kacur", + "email": "[email protected]" + }, + "server": { + "type": "python", + "entry_point": "server.py", + "mcp_config": { + "command": "python3", + "args": [ + "/home/jkacur/src/rteval/mcp-server/server.py" + ] + } + } +} -- 2.55.0