Skip to content

Commit 927749e

Browse files
committed
Add consolidated actions tools
Add four new consolidated actions tools that group related functionality: - actions_list: List workflows, workflow runs, jobs, and artifacts - actions_get: Get details of workflows, runs, jobs, artifacts, usage, logs URL - actions_run_trigger: Run, rerun, cancel workflows and delete logs - get_job_logs: Get job logs with failed_only and return_content options These tools consolidate multiple individual tools into unified interfaces with method-based routing, reducing the number of tools while maintaining full functionality.
1 parent 5da71e3 commit 927749e

File tree

3 files changed

+962
-0
lines changed

3 files changed

+962
-0
lines changed

README.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -490,6 +490,40 @@ The following sets of tools are available:
490490

491491
<summary>Actions</summary>
492492

493+
- **actions_get** - Get details of GitHub Actions resources (workflows, workflow runs, jobs, and artifacts)
494+
- `method`: The method to execute (string, required)
495+
- `owner`: Repository owner (string, required)
496+
- `repo`: Repository name (string, required)
497+
- `resource_id`: The unique identifier of the resource. This will vary based on the "method" provided, so ensure you provide the correct ID:
498+
- Provide a workflow ID or workflow file name (e.g. ci.yaml) for 'get_workflow' method.
499+
- Provide a workflow run ID for 'get_workflow_run', 'get_workflow_run_usage', and 'get_workflow_run_logs_url' methods.
500+
- Provide an artifact ID for 'download_workflow_run_artifact' method.
501+
- Provide a job ID for 'get_workflow_job' method.
502+
(string, required)
503+
504+
- **actions_list** - List GitHub Actions workflows in a repository
505+
- `method`: The action to perform (string, required)
506+
- `owner`: Repository owner (string, required)
507+
- `page`: Page number for pagination (default: 1) (number, optional)
508+
- `per_page`: Results per page for pagination (default: 30, max: 100) (number, optional)
509+
- `repo`: Repository name (string, required)
510+
- `resource_id`: The unique identifier of the resource. This will vary based on the "method" provided, so ensure you provide the correct ID:
511+
- Do not provide any resource ID for 'list_workflows' method.
512+
- Provide a workflow ID or workflow file name (e.g. ci.yaml) for 'list_workflow_runs' method.
513+
- Provide a workflow run ID for 'list_workflow_jobs' and 'list_workflow_run_artifacts' methods.
514+
(string, optional)
515+
- `workflow_jobs_filter`: Filters for workflow jobs. **ONLY** used when method is 'list_workflow_jobs' (object, optional)
516+
- `workflow_runs_filter`: Filters for workflow runs. **ONLY** used when method is 'list_workflow_runs' (object, optional)
517+
518+
- **actions_run_trigger** - Trigger GitHub Actions workflow actions
519+
- `inputs`: Inputs the workflow accepts. Only used for 'run_workflow' method. (object, optional)
520+
- `method`: The method to execute (string, required)
521+
- `owner`: Repository owner (string, required)
522+
- `ref`: The git reference for the workflow. The reference can be a branch or tag name. Required for 'run_workflow' method. (string, optional)
523+
- `repo`: Repository name (string, required)
524+
- `run_id`: The ID of the workflow run. Required for all methods except 'run_workflow'. (number, optional)
525+
- `workflow_id`: The workflow ID (numeric) or workflow file name (e.g., main.yml, ci.yaml). Required for 'run_workflow' method. (string, optional)
526+
493527
- **cancel_workflow_run** - Cancel workflow run
494528
- `owner`: Repository owner (string, required)
495529
- `repo`: Repository name (string, required)
@@ -505,6 +539,15 @@ The following sets of tools are available:
505539
- `owner`: Repository owner (string, required)
506540
- `repo`: Repository name (string, required)
507541

542+
- **get_job_logs** - Get GitHub Actions workflow job logs
543+
- `failed_only`: When true, gets logs for all failed jobs in the workflow run specified by run_id. Requires run_id to be provided. (boolean, optional)
544+
- `job_id`: The unique identifier of the workflow job. Required when getting logs for a single job. (number, optional)
545+
- `owner`: Repository owner (string, required)
546+
- `repo`: Repository name (string, required)
547+
- `return_content`: When true, returns actual log content instead of URLs. Default is false (returns URLs). (boolean, optional)
548+
- `run_id`: The unique identifier of the workflow run. Required when failed_only is true to get logs for all failed jobs in the run. (number, optional)
549+
- `tail_lines`: Number of lines to return from the end of the log. Only used when return_content is true. (number, optional)
550+
508551
- **get_job_logs** - Get job logs
509552
- `failed_only`: When true, gets logs for all failed jobs in run_id (boolean, optional)
510553
- `job_id`: The unique identifier of the workflow job (required for single job logs) (number, optional)

0 commit comments

Comments
 (0)