{
  "$schema": "../../src/testing/test-schema.ts",
  "profile_name": "gitlab-default",
  "variables": {
    "projectId": "12345",
    "groupId": "36173",
    "awardId": 7,
    "issueIid": 1,
    "mergeRequestIid": 2,
    "noteId": 10,
    "discussionId": "discussion-1",
    "pipelineId": 1001,
    "jobId": 2002,
    "hookId": 9001,
    "variableKey": "DEPLOY_ENV",
    "filePath": "README.md",
    "ref": "main",
    "fromRef": "main",
    "toRef": "feature-branch"
  },
  "scenarios": [
    {
      "name": "Groups - List",
      "tool": "manage_groups",
      "arguments": {
        "action": "list"
      },
      "mocks": [
        {
          "operationId": "getApiV4Groups",
          "response": {
            "body": [
              {
                "id": 36173,
                "name": "AI Adoption",
                "full_path": "davidruzicka"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 36173
          }
        ]
      }
    },
    {
      "name": "Groups - Get Projects",
      "tool": "manage_groups",
      "arguments": {
        "action": "list_projects",
        "group_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsIdProjects",
          "response": {
            "body": [
              {
                "id": 12345,
                "name": "mcp4openapi"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 12345
          }
        ]
      }
    },
    {
      "name": "Projects - List",
      "tool": "manage_projects",
      "arguments": {
        "action": "list",
        "membership": true
      },
      "mocks": [
        {
          "operationId": "getApiV4Projects",
          "response": {
            "body": [
              {
                "id": 12345,
                "name": "mcp4openapi"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 12345
          }
        ]
      }
    },
    {
      "name": "Projects - Get",
      "tool": "manage_projects",
      "arguments": {
        "action": "get",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsId",
          "response": {
            "body": {
              "id": 12345,
              "name": "mcp4openapi",
              "description": "MCP Server"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 12345,
          "description": "MCP Server"
        }
      }
    },
    {
      "name": "Merge Requests - List",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list",
        "project_id": "{{projectId}}",
        "state": "opened",
        "reviewer_id": 123,
        "created_after": "2024-01-02T00:00:00Z"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequests",
          "response": {
            "body": [
              {
                "id": 1,
                "iid": 1,
                "title": "Test MR"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "iid": 1
          }
        ],
        "request": {
          "method": "GET",
          "path": "/projects/{{projectId}}/merge_requests",
          "query": {
            "state": "opened",
            "reviewer_id": 123,
            "created_after": "2024-01-02T00:00:00Z"
          }
        }
      }
    },
    {
      "name": "Merge Requests - Get",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "get",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIid",
          "response": {
            "body": {
              "id": 1,
              "iid": 1,
              "title": "Test MR",
              "state": "opened"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "iid": 1,
          "state": "opened"
        }
      }
    },
    {
      "name": "Merge Requests - Missing IID",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "get",
        "project_id": "{{projectId}}"
      },
      "mocks": [],
      "expect": {
        "success": false,
        "error_message_regex": "merge_request_iid"
      }
    },
    {
      "name": "Merge Requests - Create",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "create",
        "project_id": "{{projectId}}",
        "source_branch": "feature/a",
        "target_branch": "main",
        "title": "New Feature"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequests",
          "response": {
            "status": 201,
            "body": {
              "id": 2,
              "iid": 2,
              "title": "New Feature",
              "state": "opened"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "iid": 2,
          "title": "New Feature"
        }
      }
    },
    {
      "name": "Merge Requests - Update",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "update",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "title": "Updated"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdMergeRequestsMergeRequestIid",
          "response": {
            "body": {
              "id": 1,
              "iid": 1,
              "title": "Updated"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "title": "Updated"
        }
      }
    },
    {
      "name": "Merge Requests - Delete",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "delete",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdMergeRequestsMergeRequestIid",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true,
        "request": {
          "method": "DELETE",
          "path": "/projects/{{projectId}}/merge_requests/1"
        }
      }
    },
    {
      "name": "Merge Requests - List Notes",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_notes",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidNotes",
          "response": {
            "body": [
              {
                "id": 101,
                "body": "Note"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 101
          }
        ]
      }
    },
    {
      "name": "Merge Requests - Create Note",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "create_note",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "body": "New Note"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequestsMergeRequestIidNotes",
          "response": {
            "status": 201,
            "body": {
              "id": 102,
              "body": "New Note"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 102
        }
      }
    },
    {
      "name": "Merge Requests - Download Note Attachment",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "download_note_attachment",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "note_id": 2
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidNotesNoteId",
          "response": {
            "body": {
              "id": 2,
              "attachment": "https://mock-api-gitlab-default.com/uploads/note.txt"
            }
          }
        },
        {
          "path": "/uploads/note.txt",
          "method": "GET",
          "response": {
            "status": 200,
            "body": "Note Content",
            "headers": {
              "content-type": "text/plain"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "content": "Tm90ZSBDb250ZW50"
        }
      }
    },
    {
      "name": "Merge Requests - Composite Get With Details",
      "tool": "get_merge_request_with_details",
      "arguments": {
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIid",
          "response": {
            "body": {
              "id": 1,
              "iid": 1,
              "title": "Composite MR"
            }
          }
        },
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussions",
          "response": {
            "body": [
              {
                "id": "disc-1"
              }
            ]
          }
        },
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidAwardEmoji",
          "response": {
            "body": [
              {
                "id": 201,
                "name": "thumbsup"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "data": {
            "merge_request": {
              "id": 1,
              "discussions": [
                {
                  "id": "disc-1"
                }
              ],
              "award_emoji": [
                {
                  "id": 201,
                  "name": "thumbsup"
                }
              ]
            }
          },
          "success": true
        },
        "request": {
          "method": "GET",
          "path": "/projects/{{projectId}}/merge_requests/1/discussions",
          "query": {
            "per_page": 50
          }
        }
      }
    },
    {
      "name": "Merge Requests - Composite With Partial Failure",
      "tool": "get_merge_request_with_details",
      "arguments": {
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIid",
          "response": {
            "body": {
              "id": 1,
              "iid": 1,
              "title": "Composite MR"
            }
          }
        },
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussions",
          "response": {
            "status": 500,
            "body": {
              "message": "discussions down"
            }
          }
        },
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidAwardEmoji",
          "response": {
            "body": [
              {
                "id": 201,
                "name": "thumbsup"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "data": {
            "merge_request": {
              "id": 1,
              "iid": 1,
              "title": "Composite MR",
              "discussions_error": {
                "step_index": 1,
                "step_call": "GET /projects/{id}/merge_requests/{merge_request_iid}/discussions",
                "error": "discussions down"
              },
              "award_emoji": [
                {
                  "id": 201,
                  "name": "thumbsup"
                }
              ]
            }
          },
          "completed_steps": 2,
          "errors": [
            {
              "step_index": 1,
              "step_call": "GET /projects/{id}/merge_requests/{merge_request_iid}/discussions",
              "error": "discussions down"
            }
          ],
          "success": false,
          "total_steps": 3
        },
        "requests": [
          {
            "method": "GET",
            "path": "/projects/12345/merge_requests/1"
          }
        ],
        "allow_additional_requests": true
      }
    },
    {
      "name": "Deploy Keys - List",
      "tool": "manage_deploy_keys",
      "arguments": {
        "action": "list"
      },
      "mocks": [
        {
          "operationId": "getApiV4DeployKeys",
          "response": {
            "body": [
              {
                "id": 1,
                "title": "CI key",
                "key": "ssh-rsa AAA",
                "created_at": "2024-01-01T00:00:00Z"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 1,
            "title": "CI key"
          }
        ]
      }
    },
    {
      "name": "Deploy Tokens - List",
      "tool": "manage_deploy_tokens",
      "arguments": {
        "action": "list"
      },
      "mocks": [
        {
          "operationId": "getApiV4DeployTokens",
          "response": {
            "body": [
              {
                "id": 2,
                "name": "deploy-token",
                "username": "gitlab+deploy-token-2",
                "expires_at": "2025-01-01"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 2,
            "name": "deploy-token"
          }
        ]
      }
    },
    {
      "name": "Group Deploy Tokens - List",
      "tool": "manage_group_deploy_tokens",
      "arguments": {
        "action": "list",
        "group_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsIdDeployTokens",
          "response": {
            "body": [
              {
                "id": 3,
                "name": "group-token",
                "username": "gitlab+deploy-token-3",
                "expires_at": "2025-06-01"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 3,
            "name": "group-token"
          }
        ]
      }
    },
    {
      "name": "Group Deploy Tokens - Create",
      "tool": "manage_group_deploy_tokens",
      "arguments": {
        "action": "create",
        "group_id": "{{groupId}}",
        "name": "ci-token",
        "scopes": ["read_repository"],
        "expires_at": "2025-12-31"
      },
      "mocks": [
        {
          "operationId": "postApiV4GroupsIdDeployTokens",
          "response": {
            "status": 201,
            "body": {
              "id": 4,
              "name": "ci-token",
              "username": "gitlab+deploy-token-4",
              "expires_at": "2025-12-31"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 4,
          "name": "ci-token"
        }
      }
    },
    {
      "name": "Events - List",
      "tool": "manage_events",
      "arguments": {
        "action": "list"
      },
      "mocks": [
        {
          "operationId": "getApiV4Events",
          "response": {
            "body": [
              {
                "id": 1,
                "action_name": "pushed",
                "target_type": "project",
                "target_id": 12345,
                "created_at": "2024-01-01T00:00:00Z"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 1,
            "action_name": "pushed"
          }
        ]
      }
    },
    {
      "name": "Feature Flags - List",
      "tool": "manage_feature_flags",
      "arguments": {
        "action": "list"
      },
      "mocks": [
        {
          "operationId": "getApiV4Features",
          "response": {
            "body": [
              {
                "name": "new_navigation",
                "state": "on",
                "gates": []
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "name": "new_navigation",
            "state": "on"
          }
        ]
      }
    },
    {
      "name": "Feature Flags - List Definitions",
      "tool": "manage_feature_flags",
      "arguments": {
        "action": "list_definitions"
      },
      "mocks": [
        {
          "operationId": "getApiV4FeaturesDefinitions",
          "response": {
            "body": [
              {
                "name": "new_navigation",
                "description": "New UI"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "name": "new_navigation",
            "description": "New UI"
          }
        ]
      }
    },
    {
      "name": "Feature Flags - Set",
      "tool": "manage_feature_flags",
      "arguments": {
        "action": "set",
        "name": "new_navigation",
        "state": "on"
      },
      "mocks": [
        {
          "operationId": "postApiV4Features",
          "response": {
            "status": 201,
            "body": {
              "name": "new_navigation",
              "state": "on"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "name": "new_navigation",
          "state": "on"
        }
      }
    },
    {
      "name": "Feature Flags - Get",
      "tool": "manage_feature_flags",
      "arguments": {
        "action": "get",
        "name": "new_navigation"
      },
      "mocks": [
        {
          "operationId": "getApiV4FeaturesName",
          "response": {
            "body": {
              "name": "new_navigation",
              "state": "on",
              "gates": []
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "name": "new_navigation",
          "state": "on"
        }
      }
    },
    {
      "name": "Feature Flags - Update",
      "tool": "manage_feature_flags",
      "arguments": {
        "action": "update",
        "name": "new_navigation",
        "state": "off"
      },
      "mocks": [
        {
          "operationId": "postApiV4FeaturesName",
          "response": {
            "body": {
              "name": "new_navigation",
              "state": "off"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "name": "new_navigation",
          "state": "off"
        }
      }
    },
    {
      "name": "Feature Flags - Delete",
      "tool": "manage_feature_flags",
      "arguments": {
        "action": "delete",
        "name": "new_navigation"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4FeaturesName",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Unleash Feature Flags - Get Config",
      "tool": "manage_unleash_feature_flags",
      "arguments": {
        "action": "get_config",
        "project_id": 12345
      },
      "mocks": [
        {
          "operationId": "getApiV4FeatureFlagsUnleashProjectId",
          "response": {
            "body": {
              "version": "1.0",
              "project": "mcp4openapi"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "version": "1.0",
          "project": "mcp4openapi"
        }
      }
    },
    {
      "name": "Unleash Feature Flags - List Features",
      "tool": "manage_unleash_feature_flags",
      "arguments": {
        "action": "list_features",
        "project_id": 12345
      },
      "mocks": [
        {
          "operationId": "getApiV4FeatureFlagsUnleashProjectIdFeatures",
          "response": {
            "body": {
              "features": []
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "features": []
        }
      }
    },
    {
      "name": "Unleash Feature Flags - List Client Features",
      "tool": "manage_unleash_feature_flags",
      "arguments": {
        "action": "list_client_features",
        "project_id": 12345
      },
      "mocks": [
        {
          "operationId": "getApiV4FeatureFlagsUnleashProjectIdClientFeatures",
          "response": {
            "body": {
              "features": []
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "features": []
        }
      }
    },
    {
      "name": "Unleash Feature Flags - Report Client Metrics",
      "tool": "manage_unleash_feature_flags",
      "arguments": {
        "action": "report_client_metrics",
        "project_id": 12345,
        "metrics": {
          "bucket": {
            "start": "2024-01-01T00:00:00Z",
            "stop": "2024-01-01T01:00:00Z"
          },
          "applications": []
        }
      },
      "mocks": [
        {
          "operationId": "postApiV4FeatureFlagsUnleashProjectIdClientMetrics",
          "response": {
            "status": 202,
            "body": {
              "status": "accepted"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "status": "accepted"
        }
      }
    },
    {
      "name": "Unleash Feature Flags - Register Client",
      "tool": "manage_unleash_feature_flags",
      "arguments": {
        "action": "register_client",
        "project_id": 12345,
        "client": {
          "appName": "web",
          "instanceId": "web-1"
        }
      },
      "mocks": [
        {
          "operationId": "postApiV4FeatureFlagsUnleashProjectIdClientRegister",
          "response": {
            "status": 202,
            "body": {
              "status": "ok"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "status": "ok"
        }
      }
    },
    {
      "name": "Dependency Proxy Cache - Purge",
      "tool": "manage_dependency_proxy_cache",
      "arguments": {
        "action": "purge",
        "group_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4GroupsIdDependencyProxyCache",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Group Custom Attributes - List",
      "tool": "manage_group_custom_attributes",
      "arguments": {
        "action": "list",
        "group_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsIdCustomAttributes",
          "response": {
            "body": [
              {
                "key": "team",
                "value": "core"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "key": "team",
            "value": "core"
          }
        ]
      }
    },
    {
      "name": "Group Custom Attributes - Get",
      "tool": "manage_group_custom_attributes",
      "arguments": {
        "action": "get",
        "group_id": "{{groupId}}",
        "key": "team"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsIdCustomAttributesKey",
          "response": {
            "body": {
              "key": "team",
              "value": "core"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "key": "team",
          "value": "core"
        }
      }
    },
    {
      "name": "Group Custom Attributes - Set",
      "tool": "manage_group_custom_attributes",
      "arguments": {
        "action": "set",
        "group_id": "{{groupId}}",
        "key": "team",
        "value": "core"
      },
      "mocks": [
        {
          "operationId": "putApiV4GroupsIdCustomAttributesKey",
          "response": {
            "body": {
              "key": "team",
              "value": "core"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "key": "team",
          "value": "core"
        }
      }
    },
    {
      "name": "Group Custom Attributes - Delete",
      "tool": "manage_group_custom_attributes",
      "arguments": {
        "action": "delete",
        "group_id": "{{groupId}}",
        "key": "team"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4GroupsIdCustomAttributesKey",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "GLQL - Query",
      "tool": "run_glql",
      "arguments": {
        "action": "query",
        "glql_yaml": "{ projects { nodes { id name } } }"
      },
      "mocks": [
        {
          "operationId": "postApiV4Glql",
          "response": {
            "body": {
              "data": {
                "projects": {
                  "nodes": []
                }
              }
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "data": {
            "projects": {
              "nodes": []
            }
          }
        }
      }
    },
    {
      "name": "Issues - List",
      "tool": "manage_issues",
      "arguments": {
        "action": "list",
        "project_id": "{{projectId}}",
        "state": ["opened", "closed"],
        "labels": "bug",
        "updated_after": "2024-01-01T00:00:00Z"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdIssues",
          "response": {
            "body": [
              {
                "id": 10,
                "iid": 1,
                "title": "Bug"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "title": "Bug"
          }
        ],
        "request": {
          "method": "GET",
          "path": "/projects/{{projectId}}/issues",
          "query": {
            "state[]": ["opened", "closed"],
            "labels": "bug",
            "updated_after": "2024-01-01T00:00:00Z"
          }
        }
      }
    },
    {
      "name": "Issues - List Global",
      "tool": "manage_issues",
      "arguments": {
        "action": "list_global",
        "state": "opened",
        "scope": "all",
        "search": "security"
      },
      "mocks": [
        {
          "operationId": "getApiV4Issues",
          "response": {
            "body": [
              {
                "id": 11,
                "iid": 2,
                "title": "Global Bug"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "title": "Global Bug"
          }
        ],
        "request": {
          "method": "GET",
          "path": "/issues",
          "query": {
            "state": "opened",
            "scope": "all",
            "search": "security"
          }
        }
      }
    },
    {
      "name": "Issues - Get",
      "tool": "manage_issues",
      "arguments": {
        "action": "get",
        "project_id": "{{projectId}}",
        "issue_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdIssuesIssueIid",
          "response": {
            "body": {
              "id": 1,
              "title": "Bug"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "title": "Bug"
        }
      }
    },
    {
      "name": "Issues - List Notes",
      "tool": "manage_issues",
      "arguments": {
        "action": "list_notes",
        "project_id": "{{projectId}}",
        "issue_iid": 1,
        "activity_filter": "only_comments",
        "sort": "asc"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdIssuesIssueIidNotes",
          "response": {
            "body": [
              {
                "id": 201,
                "body": "Note"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 201
          }
        ],
        "request": {
          "method": "GET",
          "path": "/projects/{{projectId}}/issues/1/notes",
          "query": {
            "activity_filter": "only_comments",
            "sort": "asc"
          }
        }
      }
    },
    {
      "name": "Issues - Create Note",
      "tool": "manage_issues",
      "arguments": {
        "action": "create_note",
        "project_id": "{{projectId}}",
        "issue_iid": 1,
        "body": "New Note"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdIssuesIssueIidNotes",
          "response": {
            "status": 201,
            "body": {
              "id": 202,
              "body": "New Note"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 202
        }
      }
    },
    {
      "name": "Issues - Get Note",
      "tool": "manage_issues",
      "arguments": {
        "action": "get_note",
        "project_id": "{{projectId}}",
        "issue_iid": 1,
        "note_id": 202
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdIssuesIssueIidNotesNoteId",
          "response": {
            "body": {
              "id": 202,
              "body": "New Note"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 202
        }
      }
    },
    {
      "name": "Issues - Update Note",
      "tool": "manage_issues",
      "arguments": {
        "action": "update_note",
        "project_id": "{{projectId}}",
        "issue_iid": 1,
        "note_id": 202,
        "body": "Updated Note"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdIssuesIssueIidNotesNoteId",
          "response": {
            "body": {
              "id": 202,
              "body": "Updated Note"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 202
        }
      }
    },
    {
      "name": "Issues - Delete Note",
      "tool": "manage_issues",
      "arguments": {
        "action": "delete_note",
        "project_id": "{{projectId}}",
        "issue_iid": 1,
        "note_id": 202
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdIssuesIssueIidNotesNoteId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Issues - Create",
      "tool": "manage_issues",
      "arguments": {
        "action": "create",
        "project_id": "{{projectId}}",
        "title": "New Bug"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdIssues",
          "response": {
            "status": 201,
            "body": {
              "id": 2,
              "title": "New Bug"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "title": "New Bug"
        }
      }
    },
    {
      "name": "Issues - Update",
      "tool": "manage_issues",
      "arguments": {
        "action": "update",
        "project_id": "{{projectId}}",
        "issue_iid": 1,
        "title": "Updated Bug"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdIssuesIssueIid",
          "response": {
            "body": {
              "id": 1,
              "iid": 1,
              "title": "Updated Bug"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "title": "Updated Bug"
        }
      }
    },
    {
      "name": "Issues - Delete",
      "tool": "manage_issues",
      "arguments": {
        "action": "delete",
        "project_id": "{{projectId}}",
        "issue_iid": 1
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdIssuesIssueIid",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Issues - Delete Forbidden",
      "tool": "manage_issues",
      "arguments": {
        "action": "delete",
        "project_id": "forbidden",
        "issue_iid": 1
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdIssuesIssueIid",
          "response": {
            "status": 403,
            "body": {
              "message": "Forbidden"
            }
          }
        }
      ],
      "expect": {
        "success": false,
        "error_code": "-32002",
        "error_message_regex": "Forbidden"
      }
    },
    {
      "name": "Badges - List",
      "tool": "manage_project_badges",
      "arguments": {
        "action": "list",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdBadges",
          "response": {
            "body": [
              {
                "id": 1,
                "name": "Coverage"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "name": "Coverage"
          }
        ]
      }
    },
    {
      "name": "Badges - Get",
      "tool": "manage_project_badges",
      "arguments": {
        "action": "get",
        "project_id": "{{projectId}}",
        "badge_id": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdBadgesBadgeId",
          "response": {
            "body": {
              "id": 1,
              "name": "Coverage"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "name": "Coverage"
        }
      }
    },
    {
      "name": "Badges - Create",
      "tool": "manage_project_badges",
      "arguments": {
        "action": "create",
        "project_id": "{{projectId}}",
        "link_url": "http://link",
        "image_url": "http://img",
        "name": "New"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdBadges",
          "response": {
            "status": 201,
            "body": {
              "id": 3,
              "name": "New"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "name": "New"
        }
      }
    },
    {
      "name": "Badges - Update",
      "tool": "manage_project_badges",
      "arguments": {
        "action": "update",
        "project_id": "{{projectId}}",
        "badge_id": 1,
        "name": "Updated"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdBadgesBadgeId",
          "response": {
            "body": {
              "id": 1,
              "name": "Updated"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "name": "Updated"
        }
      }
    },
    {
      "name": "Badges - Delete",
      "tool": "manage_project_badges",
      "arguments": {
        "action": "delete",
        "project_id": "{{projectId}}",
        "badge_id": 1
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdBadgesBadgeId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Pipelines - Run",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "run_pipeline",
        "project_id": "{{projectId}}",
        "ref": "main"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdPipeline",
          "response": {
            "status": 201,
            "body": {
              "id": 501,
              "status": "pending"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 501
        }
      }
    },
    {
      "name": "Pipelines - Get",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "get_pipeline",
        "project_id": "{{projectId}}",
        "pipeline_id": 501
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdPipelinesPipelineId",
          "response": {
            "body": {
              "id": 501,
              "status": "success"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "status": "success"
        }
      }
    },
    {
      "name": "Jobs - Play",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "play_job",
        "project_id": "{{projectId}}",
        "job_id": 1234
      },
      "mocks": [
        {
          "operationId": "triggerManualJob",
          "response": {
            "body": {
              "id": 1234,
              "status": "pending"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "status": "pending"
        }
      }
    },
    {
      "name": "Jobs - Download Artifacts",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "download_job_artifacts",
        "project_id": "{{projectId}}",
        "job_id": 1234
      },
      "mocks": [
        {
          "operationId": "getSingleJob",
          "response": {
            "body": {
              "id": 1234,
              "artifacts_file": {
                "filename": "artifacts.zip"
              }
            }
          }
        },
        {
          "operationId": "getApiV4ProjectsIdJobsJobIdArtifacts",
          "response": {
            "status": 200,
            "body": "PK...",
            "headers": {
              "content-type": "application/zip"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "fileName": "artifacts.zip"
        }
      }
    },
    {
      "name": "Labels - List",
      "tool": "manage_labels_milestones",
      "arguments": {
        "action": "list_labels",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdLabels",
          "response": {
            "body": [
              {
                "id": 1,
                "name": "bug",
                "color": "#f00"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "name": "bug"
          }
        ]
      }
    },
    {
      "name": "Releases - List",
      "tool": "manage_releases_tags",
      "arguments": {
        "action": "list_releases",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdReleases",
          "response": {
            "body": [
              {
                "name": "v1.0",
                "tag_name": "v1.0"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "tag_name": "v1.0"
          }
        ]
      }
    },
    {
      "name": "Members - List",
      "tool": "manage_project_members",
      "arguments": {
        "action": "list_members",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMembers",
          "response": {
            "body": [
              {
                "id": 5,
                "username": "user1",
                "access_level": 30
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "username": "user1"
          }
        ]
      }
    },
    {
      "name": "Hooks - List",
      "tool": "manage_project_hooks",
      "arguments": {
        "action": "list_hooks",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdHooks",
          "response": {
            "body": [
              {
                "id": 1,
                "url": "https://example.com"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "url": "https://example.com"
          }
        ]
      }
    },
    {
      "name": "Snippets - List",
      "tool": "manage_snippets",
      "arguments": {
        "action": "list_snippets",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdSnippets",
          "response": {
            "body": [
              {
                "id": 1,
                "title": "Snippet 1"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "title": "Snippet 1"
          }
        ]
      }
    },
    {
      "name": "Snippets - Download",
      "tool": "manage_snippets",
      "arguments": {
        "action": "download_snippet",
        "project_id": "{{projectId}}",
        "snippet_id": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdSnippetsSnippetId",
          "response": {
            "body": {
              "id": 1
            }
          }
        },
        {
          "operationId": "getApiV4ProjectsIdSnippetsSnippetIdRaw",
          "response": {
            "body": "Snippet Content",
            "headers": {
              "content-type": "text/plain"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "content": "U25pcHBldCBDb250ZW50"
        },
        "requests": [
          {
            "method": "GET",
            "path": "/projects/12345/snippets/1",
            "origin": "https://mock-api-gitlab-default.com",
            "headers": {
              "authorization": "Bearer test-token"
            }
          },
          {
            "method": "GET",
            "path": "/projects/12345/snippets/1/raw",
            "origin": "https://mock-api-gitlab-default.com",
            "headers": {
              "authorization": "Bearer test-token"
            }
          }
        ],
        "allow_additional_requests": false
      }
    },
    {
      "name": "Branches - List",
      "tool": "manage_branches",
      "arguments": {
        "action": "list",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryBranches",
          "response": {
            "body": [
              {
                "name": "main",
                "default": true
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "name": "main"
          }
        ]
      }
    },
    {
      "name": "Branches - Get",
      "tool": "manage_branches",
      "arguments": {
        "action": "get",
        "project_id": "{{projectId}}",
        "branch": "main"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryBranchesBranch",
          "response": {
            "body": {
              "name": "main",
              "protected": true
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "protected": true
        }
      }
    },
    {
      "name": "Branches - Create",
      "tool": "manage_branches",
      "arguments": {
        "action": "create",
        "project_id": "{{projectId}}",
        "branch": "feature/b",
        "ref": "main"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdRepositoryBranches",
          "response": {
            "status": 201,
            "body": {
              "name": "feature/b"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "name": "feature/b"
        }
      }
    },
    {
      "name": "Branches - Protect",
      "tool": "manage_branches",
      "arguments": {
        "action": "protect",
        "project_id": "{{projectId}}",
        "branch": "main",
        "developers_can_push": true
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdRepositoryBranchesBranchProtect",
          "response": {
            "body": {
              "name": "main",
              "protected": true
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "protected": true
        }
      }
    },
    {
      "name": "Branches - Delete",
      "tool": "manage_branches",
      "arguments": {
        "action": "delete",
        "project_id": "{{projectId}}",
        "branch": "feature/old"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdRepositoryBranchesBranch",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Access Requests - List",
      "tool": "manage_access_requests",
      "arguments": {
        "action": "list",
        "resource_type": "project",
        "resource_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdAccessRequests",
          "response": {
            "body": [
              {
                "id": 1,
                "username": "requester"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "username": "requester"
          }
        ]
      }
    },
    {
      "name": "Access Requests - Approve",
      "tool": "manage_access_requests",
      "arguments": {
        "action": "approve",
        "resource_type": "project",
        "resource_id": "{{projectId}}",
        "user_id": 1,
        "access_level": 30
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdAccessRequestsUserIdApprove",
          "response": {
            "body": {
              "id": 1,
              "access_level": 30
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "access_level": 30
        }
      }
    },
    {
      "name": "Jobs List - List",
      "tool": "list_project_jobs",
      "arguments": {
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "listProjectJobs",
          "response": {
            "body": [
              {
                "id": 999,
                "status": "success",
                "name": "build"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "status": "success"
          }
        ]
      }
    },
    {
      "name": "Repository Commits - List",
      "tool": "repository_commits",
      "arguments": {
        "action": "list",
        "project_id": "{{projectId}}",
        "path": "src%2Findex.js",
        "ref_name": "main"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryCommits",
          "response": {
            "body": [
              {
                "id": "abc123",
                "short_id": "abc123",
                "title": "Initial commit",
                "author_name": "Dev",
                "committed_date": "2025-01-01T00:00:00Z",
                "web_url": "https://gitlab.example.com/commit/abc123"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "short_id": "abc123",
            "title": "Initial commit"
          }
        ]
      }
    },
    {
      "name": "Repository Files - Get File",
      "tool": "repository_files",
      "arguments": {
        "action": "get_file",
        "project_id": "{{projectId}}",
        "file_path": "README.md",
        "ref": "main"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryFilesFilePath",
          "response": {
            "body": {
              "file_name": "README.md",
              "content": "SGVsbG8=",
              "encoding": "base64"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "file_name": "README.md"
        }
      }
    },
    {
      "name": "Repository Files - Get Raw",
      "tool": "repository_files",
      "arguments": {
        "action": "get_raw",
        "project_id": "{{projectId}}",
        "file_path": "README.md",
        "ref": "main"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryFilesFilePathRaw",
          "response": {
            "status": 200,
            "body": "Hello World",
            "headers": {
              "content-type": "text/plain"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": "Hello World"
      }
    },
    {
      "name": "Groups - Get",
      "tool": "manage_groups",
      "arguments": {
        "action": "get",
        "group_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Groups - List Subgroups",
      "tool": "manage_groups",
      "arguments": {
        "action": "list_subgroups",
        "group_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsIdSubgroups",
          "response": {
            "status": 200,
            "body": []
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Get Note",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "get_note",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "note_id": 2
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidNotesNoteId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Update Note",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "update_note",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "note_id": 2,
        "body": "Test body"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdMergeRequestsMergeRequestIidNotesNoteId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Delete Note",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "delete_note",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "note_id": 2
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdMergeRequestsMergeRequestIidNotesNoteId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - List Award Emoji",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_award_emoji",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidAwardEmoji",
          "response": {
            "status": 200,
            "body": [
              {
                "id": 1,
                "name": "thumbsup",
                "user": {
                  "id": 101,
                  "username": "reviewer"
                },
                "awardable_id": 1,
                "awardable_type": "MergeRequest",
                "created_at": "2025-01-01T10:00:00Z",
                "updated_at": "2025-01-01T10:00:00Z"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 1,
            "name": "thumbsup"
          }
        ]
      }
    },
    {
      "name": "Merge Requests - Create Award Emoji",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "create_award_emoji",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "name": "thumbsup"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequestsMergeRequestIidAwardEmoji",
          "response": {
            "status": 201,
            "body": {
              "id": 2,
              "name": "thumbsup",
              "user": {
                "id": 102,
                "username": "author"
              },
              "awardable_id": 1,
              "awardable_type": "MergeRequest",
              "created_at": "2025-01-01T10:01:00Z",
              "updated_at": "2025-01-01T10:01:00Z"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 2,
          "name": "thumbsup"
        }
      }
    },
    {
      "name": "Merge Requests - Get Award Emoji",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "get_award_emoji",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "award_id": "{{awardId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidAwardEmojiAwardId",
          "response": {
            "status": 200,
            "body": {
              "id": 7,
              "name": "eyes",
              "user": {
                "id": 103,
                "username": "observer"
              },
              "awardable_id": 1,
              "awardable_type": "MergeRequest",
              "created_at": "2025-01-01T10:02:00Z",
              "updated_at": "2025-01-01T10:02:00Z"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 7,
          "name": "eyes"
        }
      }
    },
    {
      "name": "Merge Requests - Delete Award Emoji",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "delete_award_emoji",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "award_id": "{{awardId}}"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdMergeRequestsMergeRequestIidAwardEmojiAwardId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - List Note Award Emoji",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_note_award_emoji",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "note_id": 2
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidNotesNoteIdAwardEmoji",
          "response": {
            "status": 200,
            "body": [
              {
                "id": 8,
                "name": "rocket",
                "user": {
                  "id": 104,
                  "username": "dev"
                },
                "awardable_id": 2,
                "awardable_type": "Note",
                "created_at": "2025-01-01T10:03:00Z",
                "updated_at": "2025-01-01T10:03:00Z"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 8,
            "name": "rocket"
          }
        ]
      }
    },
    {
      "name": "Merge Requests - Create Note Award Emoji",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "create_note_award_emoji",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "note_id": 2,
        "name": "rocket"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequestsMergeRequestIidNotesNoteIdAwardEmoji",
          "response": {
            "status": 201,
            "body": {
              "id": 9,
              "name": "rocket",
              "user": {
                "id": 105,
                "username": "dev"
              },
              "awardable_id": 2,
              "awardable_type": "Note",
              "created_at": "2025-01-01T10:04:00Z",
              "updated_at": "2025-01-01T10:04:00Z"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 9,
          "name": "rocket"
        }
      }
    },
    {
      "name": "Merge Requests - Get Note Award Emoji",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "get_note_award_emoji",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "note_id": 2,
        "award_id": "{{awardId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidNotesNoteIdAwardEmojiAwardId",
          "response": {
            "status": 200,
            "body": {
              "id": 7,
              "name": "eyes",
              "user": {
                "id": 106,
                "username": "qa"
              },
              "awardable_id": 2,
              "awardable_type": "Note",
              "created_at": "2025-01-01T10:05:00Z",
              "updated_at": "2025-01-01T10:05:00Z"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 7,
          "name": "eyes"
        }
      }
    },
    {
      "name": "Merge Requests - Delete Note Award Emoji",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "delete_note_award_emoji",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "note_id": 2,
        "award_id": "{{awardId}}"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdMergeRequestsMergeRequestIidNotesNoteIdAwardEmojiAwardId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - List Discussions",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_discussions",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussions",
          "response": {
            "status": 200,
            "body": []
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Create Discussion",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "create_discussion",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "body": "Test body"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussions",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Reply Discussion",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "reply_discussion",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "discussion_id": "disc-1",
        "body": "Reply body"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussionsDiscussionIdNotes",
          "response": {
            "status": 201,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Get Discussion",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "get_discussion",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "discussion_id": "disc-1"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussionsDiscussionId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Delete Discussion",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "delete_discussion",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "discussion_id": "disc-1"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussionsDiscussionId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Set Discussion Resolved (true)",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "set_discussion_resolved",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "discussion_id": "disc-1",
        "resolved": true
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussionsDiscussionId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Set Discussion Resolved (false)",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "set_discussion_resolved",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "discussion_id": "disc-1",
        "resolved": false
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdMergeRequestsMergeRequestIidDiscussionsDiscussionId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Get Approvals",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "get_approvals",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidApprovals",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Approve",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "approve",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequestsMergeRequestIidApprove",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Unapprove",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "unapprove",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequestsMergeRequestIidUnapprove",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Merge",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "merge",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdMergeRequestsMergeRequestIidMerge",
          "response": {
            "status": 200,
            "body": {
              "id": 1,
              "iid": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - List Commits",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_commits",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidCommits",
          "response": {
            "status": 200,
            "body": [
              {
                "id": "abc123",
                "title": "Commit"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - List Raw Diffs",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_raw_diffs",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidRawDiffs",
          "response": {
            "status": 200,
            "body": "diff --git a/file.txt b/file.txt"
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - List Pipelines",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_pipelines",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidPipelines",
          "response": {
            "status": 200,
            "body": [
              {
                "id": 100,
                "status": "success"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Create Pipeline",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "create_pipeline",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMergeRequestsMergeRequestIidPipelines",
          "response": {
            "status": 201,
            "body": {
              "id": 101,
              "status": "running"
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - List Diffs",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_diffs",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidDiffs",
          "response": {
            "status": 200,
            "body": []
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - List Versions",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "list_versions",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidVersions",
          "response": {
            "status": 200,
            "body": []
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Merge Requests - Get Version",
      "tool": "manage_merge_requests",
      "arguments": {
        "action": "get_version",
        "project_id": "{{projectId}}",
        "merge_request_iid": 1,
        "version_id": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMergeRequestsMergeRequestIidVersionsVersionId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Jobs - Get Job",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "get_job",
        "project_id": "{{projectId}}",
        "job_id": 1234
      },
      "mocks": [
        {
          "operationId": "getSingleJob",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Jobs - Retry Job",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "retry_job",
        "project_id": "{{projectId}}",
        "job_id": 1234
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdJobsJobIdRetry",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Jobs - Cancel Job",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "cancel_job",
        "project_id": "{{projectId}}",
        "job_id": 1234
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdJobsJobIdCancel",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Labels - Create Label",
      "tool": "manage_labels_milestones",
      "arguments": {
        "action": "create_label",
        "project_id": "{{projectId}}",
        "name": "New",
        "color": "#FF0000"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdLabels",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Labels - Delete Label",
      "tool": "manage_labels_milestones",
      "arguments": {
        "action": "delete_label",
        "project_id": "{{projectId}}",
        "name": "New"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdLabels",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Milestones - List Milestones",
      "tool": "manage_labels_milestones",
      "arguments": {
        "action": "list_milestones",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMilestones",
          "response": {
            "status": 200,
            "body": []
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Milestones - Create Milestone",
      "tool": "manage_labels_milestones",
      "arguments": {
        "action": "create_milestone",
        "project_id": "{{projectId}}",
        "title": "New Title"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMilestones",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Milestones - Update Milestone",
      "tool": "manage_labels_milestones",
      "arguments": {
        "action": "update_milestone",
        "project_id": "{{projectId}}",
        "title": "New Title",
        "milestone_id": 1
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdMilestonesMilestoneId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Releases - Create Release",
      "tool": "manage_releases_tags",
      "arguments": {
        "action": "create_release",
        "project_id": "{{projectId}}",
        "tag_name": "v1.0",
        "name": "New"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdReleases",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "request": {
          "method": "POST",
          "path": "/projects/{{projectId}}/releases",
          "body_exact": {
            "tag_name": "v1.0",
            "name": "New"
          }
        }
      }
    },
    {
      "name": "Tags - List Tags",
      "tool": "manage_releases_tags",
      "arguments": {
        "action": "list_tags",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryTags",
          "response": {
            "status": 200,
            "body": []
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Tags - Create Tag",
      "tool": "manage_releases_tags",
      "arguments": {
        "action": "create_tag",
        "project_id": "{{projectId}}",
        "tag_name": "v1.0",
        "ref": "main"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdRepositoryTags",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "request": {
          "method": "POST",
          "path": "/projects/{{projectId}}/repository/tags",
          "body": {
            "tag_name": "v1.0",
            "ref": "main"
          }
        }
      }
    },
    {
      "name": "Tags - Delete Tag",
      "tool": "manage_releases_tags",
      "arguments": {
        "action": "delete_tag",
        "project_id": "{{projectId}}",
        "tag_name": "v1.0"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdRepositoryTagsTagName",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Members - Add Member",
      "tool": "manage_project_members",
      "arguments": {
        "action": "add_member",
        "project_id": "{{projectId}}",
        "user_id": 1,
        "access_level": 30
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdMembers",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "request": {
          "method": "POST",
          "path": "/projects/{{projectId}}/members",
          "body": {
            "user_id": 1,
            "access_level": 30
          }
        }
      }
    },
    {
      "name": "Members - Remove Member",
      "tool": "manage_project_members",
      "arguments": {
        "action": "remove_member",
        "project_id": "{{projectId}}",
        "user_id": 1
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdMembersUserId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Hooks - Create Hook",
      "tool": "manage_project_hooks",
      "arguments": {
        "action": "create_hook",
        "project_id": "{{projectId}}",
        "url": "https://example.com/hook"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdHooks",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Hooks - Delete Hook",
      "tool": "manage_project_hooks",
      "arguments": {
        "action": "delete_hook",
        "project_id": "{{projectId}}",
        "hook_id": 1
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdHooksHookId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Snippets - Get Snippet",
      "tool": "manage_snippets",
      "arguments": {
        "action": "get_snippet",
        "project_id": "{{projectId}}",
        "snippet_id": 1
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdSnippetsSnippetId",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Branches - Unprotect",
      "tool": "manage_branches",
      "arguments": {
        "action": "unprotect",
        "project_id": "{{projectId}}",
        "branch": "main"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdRepositoryBranchesBranchUnprotect",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Branches - Exists",
      "tool": "manage_branches",
      "arguments": {
        "action": "exists",
        "project_id": "{{projectId}}",
        "branch": "main"
      },
      "mocks": [
        {
          "operationId": "headApiV4ProjectsIdRepositoryBranchesBranch",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Access Requests - List Group",
      "tool": "manage_access_requests",
      "arguments": {
        "action": "list",
        "resource_type": "group",
        "resource_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsIdAccessRequests",
          "response": {
            "status": 200,
            "body": []
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Access Requests - Approve Group",
      "tool": "manage_access_requests",
      "arguments": {
        "action": "approve",
        "resource_type": "group",
        "resource_id": "{{groupId}}",
        "user_id": 1
      },
      "mocks": [
        {
          "operationId": "putApiV4GroupsIdAccessRequestsUserIdApprove",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Access Requests - Deny Project",
      "tool": "manage_access_requests",
      "arguments": {
        "action": "deny",
        "resource_type": "project",
        "resource_id": "{{projectId}}",
        "user_id": 1
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdAccessRequestsUserId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Access Requests - Deny Group",
      "tool": "manage_access_requests",
      "arguments": {
        "action": "deny",
        "resource_type": "group",
        "resource_id": "{{groupId}}",
        "user_id": 1
      },
      "mocks": [
        {
          "operationId": "deleteApiV4GroupsIdAccessRequestsUserId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Access Requests - Request Project",
      "tool": "manage_access_requests",
      "arguments": {
        "action": "request",
        "resource_type": "project",
        "resource_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdAccessRequests",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Projects - List Members",
      "tool": "manage_projects",
      "arguments": {
        "action": "list_members",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdMembers",
          "response": {
            "body": [
              {
                "id": 101,
                "name": "Member"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 101
          }
        ]
      }
    },
    {
      "name": "Project Hooks - Get",
      "tool": "manage_project_hooks",
      "arguments": {
        "action": "get_hook",
        "project_id": "{{projectId}}",
        "hook_id": "{{hookId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdHooksHookId",
          "response": {
            "body": {
              "id": 9001,
              "url": "https://example.com/hook"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 9001
        }
      }
    },
    {
      "name": "Project Hooks - Update",
      "tool": "manage_project_hooks",
      "arguments": {
        "action": "update_hook",
        "project_id": "{{projectId}}",
        "hook_id": "{{hookId}}",
        "url": "https://example.com/hook-updated"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdHooksHookId",
          "response": {
            "body": {
              "id": 9001,
              "url": "https://example.com/hook-updated"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 9001
        }
      }
    },
    {
      "name": "Project Variables - List",
      "tool": "manage_project_variables",
      "arguments": {
        "action": "list",
        "project_id": "{{projectId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdVariables",
          "response": {
            "body": [
              {
                "key": "DEPLOY_ENV",
                "value": "staging"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "key": "DEPLOY_ENV"
          }
        ]
      }
    },
    {
      "name": "Project Variables - Get",
      "tool": "manage_project_variables",
      "arguments": {
        "action": "get",
        "project_id": "{{projectId}}",
        "key": "{{variableKey}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdVariablesKey",
          "response": {
            "body": {
              "key": "DEPLOY_ENV",
              "value": "staging"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "key": "DEPLOY_ENV"
        }
      }
    },
    {
      "name": "Project Variables - Create",
      "tool": "manage_project_variables",
      "arguments": {
        "action": "create",
        "project_id": "{{projectId}}",
        "key": "{{variableKey}}",
        "value": "staging"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdVariables",
          "response": {
            "status": 201,
            "body": {
              "key": "DEPLOY_ENV",
              "value": "staging"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "key": "DEPLOY_ENV"
        }
      }
    },
    {
      "name": "Project Variables - Update",
      "tool": "manage_project_variables",
      "arguments": {
        "action": "update",
        "project_id": "{{projectId}}",
        "key": "{{variableKey}}",
        "value": "production"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdVariablesKey",
          "response": {
            "body": {
              "key": "DEPLOY_ENV",
              "value": "production"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "key": "DEPLOY_ENV"
        }
      }
    },
    {
      "name": "Project Variables - Delete",
      "tool": "manage_project_variables",
      "arguments": {
        "action": "delete",
        "project_id": "{{projectId}}",
        "key": "{{variableKey}}"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdVariablesKey",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Labels - List Group Labels",
      "tool": "manage_labels_milestones",
      "arguments": {
        "action": "list_group_labels",
        "group_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsIdLabels",
          "response": {
            "body": [
              {
                "id": 1,
                "name": "team"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "name": "team"
          }
        ]
      }
    },
    {
      "name": "Milestones - List Group Milestones",
      "tool": "manage_labels_milestones",
      "arguments": {
        "action": "list_group_milestones",
        "group_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4GroupsIdMilestones",
          "response": {
            "body": [
              {
                "id": 2,
                "iid": 2,
                "title": "v2"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "title": "v2"
          }
        ]
      }
    },
    {
      "name": "Pipelines - List",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "list_pipelines",
        "project_id": "{{projectId}}",
        "ref": "{{ref}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdPipelines",
          "response": {
            "body": [
              {
                "id": 1001,
                "status": "success"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 1001
          }
        ]
      }
    },
    {
      "name": "Pipelines - List Jobs",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "list_pipeline_jobs",
        "project_id": "{{projectId}}",
        "pipeline_id": "{{pipelineId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdPipelinesPipelineIdJobs",
          "response": {
            "body": [
              {
                "id": 2002,
                "status": "success"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 2002
          }
        ]
      }
    },
    {
      "name": "Jobs - Download Artifact File",
      "tool": "manage_pipelines_jobs",
      "arguments": {
        "action": "download_job_artifact",
        "project_id": "{{projectId}}",
        "job_id": "{{jobId}}",
        "artifact_path": "reports/coverage.xml"
      },
      "mocks": [
        {
          "operationId": "getSingleJob",
          "response": {
            "body": {
              "id": 2002,
              "artifacts_file": {
                "filename": "artifacts.zip"
              }
            }
          }
        },
        {
          "operationId": "getApiV4ProjectsIdJobsJobIdArtifactsArtifactPath",
          "response": {
            "status": 200,
            "body": "<xml/>",
            "headers": {
              "content-type": "application/xml"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "fileName": "artifacts.zip"
        }
      }
    },
    {
      "name": "Issues - List Discussions",
      "tool": "manage_issues",
      "arguments": {
        "action": "list_discussions",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdIssuesIssueIidDiscussions",
          "response": {
            "body": [
              {
                "id": "discussion-1",
                "resolved": false
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": "discussion-1"
          }
        ]
      }
    },
    {
      "name": "Issues - Get Discussion",
      "tool": "manage_issues",
      "arguments": {
        "action": "get_discussion",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "discussion_id": "{{discussionId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdIssuesIssueIidDiscussionsDiscussionId",
          "response": {
            "body": {
              "id": "discussion-1",
              "resolved": false
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": "discussion-1"
        }
      }
    },
    {
      "name": "Issues - Create Discussion",
      "tool": "manage_issues",
      "arguments": {
        "action": "create_discussion",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "body": "Discussion"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdIssuesIssueIidDiscussions",
          "response": {
            "status": 201,
            "body": {
              "id": "discussion-1",
              "resolved": false
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": "discussion-1"
        }
      }
    },
    {
      "name": "Issues - Reply Discussion",
      "tool": "manage_issues",
      "arguments": {
        "action": "reply_discussion",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "discussion_id": "{{discussionId}}",
        "body": "Reply"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdIssuesIssueIidDiscussionsDiscussionIdNotes",
          "response": {
            "status": 201,
            "body": {
              "id": "discussion-1",
              "notes": []
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": "discussion-1"
        }
      }
    },
    {
      "name": "Issues - Delete Discussion",
      "tool": "manage_issues",
      "arguments": {
        "action": "delete_discussion",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "discussion_id": "{{discussionId}}"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdIssuesIssueIidDiscussionsDiscussionId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Issues - Resolve Discussion",
      "tool": "manage_issues",
      "arguments": {
        "action": "set_discussion_resolved",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "discussion_id": "{{discussionId}}",
        "resolved": true
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdIssuesIssueIidDiscussionsDiscussionId",
          "response": {
            "body": {
              "id": "discussion-1",
              "resolved": true
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "resolved": true
        }
      }
    },
    {
      "name": "Issues - List Note Award Emoji",
      "tool": "manage_issues",
      "arguments": {
        "action": "list_note_award_emoji",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "note_id": "{{noteId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdIssuesIssueIidNotesNoteIdAwardEmoji",
          "response": {
            "body": [
              {
                "id": 7,
                "name": "thumbsup"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "id": 7
          }
        ]
      }
    },
    {
      "name": "Issues - Get Note Award Emoji",
      "tool": "manage_issues",
      "arguments": {
        "action": "get_note_award_emoji",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "note_id": "{{noteId}}",
        "award_id": "{{awardId}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdIssuesIssueIidNotesNoteIdAwardEmojiAwardId",
          "response": {
            "body": {
              "id": 7,
              "name": "thumbsup"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 7
        }
      }
    },
    {
      "name": "Issues - Create Note Award Emoji",
      "tool": "manage_issues",
      "arguments": {
        "action": "create_note_award_emoji",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "note_id": "{{noteId}}",
        "name": "thumbsup"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdIssuesIssueIidNotesNoteIdAwardEmoji",
          "response": {
            "status": 201,
            "body": {
              "id": 7,
              "name": "thumbsup"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": 7
        }
      }
    },
    {
      "name": "Issues - Delete Note Award Emoji",
      "tool": "manage_issues",
      "arguments": {
        "action": "delete_note_award_emoji",
        "project_id": "{{projectId}}",
        "issue_iid": "{{issueIid}}",
        "note_id": "{{noteId}}",
        "award_id": "{{awardId}}"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdIssuesIssueIidNotesNoteIdAwardEmojiAwardId",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Repository Commits - Compare",
      "tool": "repository_commits",
      "arguments": {
        "action": "compare",
        "project_id": "{{projectId}}",
        "from": "{{fromRef}}",
        "to": "{{toRef}}"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryCompare",
          "response": {
            "body": {
              "compare_timeout": false,
              "commits": []
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "compare_timeout": false
        }
      }
    },
    {
      "name": "Repository Commits - Get Commit",
      "tool": "repository_commits",
      "arguments": {
        "action": "get_commit",
        "project_id": "{{projectId}}",
        "sha": "abc123"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryCommitsSha",
          "response": {
            "body": {
              "id": "abc123",
              "title": "Commit"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "id": "abc123"
        }
      }
    },
    {
      "name": "Repository Files - List Tree",
      "tool": "repository_files",
      "arguments": {
        "action": "list_tree",
        "project_id": "{{projectId}}",
        "path": "src"
      },
      "mocks": [
        {
          "operationId": "getApiV4ProjectsIdRepositoryTree",
          "response": {
            "body": [
              {
                "id": "abc",
                "name": "index.js",
                "type": "blob"
              }
            ]
          }
        }
      ],
      "expect": {
        "success": true,
        "result": [
          {
            "name": "index.js"
          }
        ]
      }
    },
    {
      "name": "Repository Files - Create",
      "tool": "repository_files",
      "arguments": {
        "action": "create_file",
        "project_id": "{{projectId}}",
        "file_path": "{{filePath}}",
        "branch": "{{ref}}",
        "content": "Hello",
        "commit_message": "Add file"
      },
      "mocks": [
        {
          "operationId": "postApiV4ProjectsIdRepositoryFilesFilePath",
          "response": {
            "status": 201,
            "body": {
              "file_name": "README.md",
              "file_path": "README.md"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "file_name": "README.md"
        }
      }
    },
    {
      "name": "Repository Files - Update",
      "tool": "repository_files",
      "arguments": {
        "action": "update_file",
        "project_id": "{{projectId}}",
        "file_path": "{{filePath}}",
        "branch": "{{ref}}",
        "content": "Updated",
        "commit_message": "Update file"
      },
      "mocks": [
        {
          "operationId": "putApiV4ProjectsIdRepositoryFilesFilePath",
          "response": {
            "body": {
              "file_name": "README.md",
              "file_path": "README.md"
            }
          }
        }
      ],
      "expect": {
        "success": true,
        "result": {
          "file_name": "README.md"
        }
      }
    },
    {
      "name": "Repository Files - Delete",
      "tool": "repository_files",
      "arguments": {
        "action": "delete_file",
        "project_id": "{{projectId}}",
        "file_path": "{{filePath}}",
        "branch": "{{ref}}",
        "commit_message": "Remove file"
      },
      "mocks": [
        {
          "operationId": "deleteApiV4ProjectsIdRepositoryFilesFilePath",
          "response": {
            "status": 204
          }
        }
      ],
      "expect": {
        "success": true
      }
    },
    {
      "name": "Access Requests - Request Group",
      "tool": "manage_access_requests",
      "arguments": {
        "action": "request",
        "resource_type": "group",
        "resource_id": "{{groupId}}"
      },
      "mocks": [
        {
          "operationId": "postApiV4GroupsIdAccessRequests",
          "response": {
            "status": 200,
            "body": {
              "id": 1
            }
          }
        }
      ],
      "expect": {
        "success": true
      }
    }
  ],
  "coverage": {
    "require_all_actions": true,
    "skip_actions": {}
  }
}
