arcade-mcp/toolkits/github_api/arcade_github_api/wrapper_tools/CreateGithubRelease.json
jottakka de742ff4f1
[MOAR][Asana][Github] Adding GitHub and Asana starter toolkits (#663)
Co-authored-by: Francisco Liberal <francisco@arcade.dev>
2025-10-30 18:21:34 -03:00

422 lines
18 KiB
JSON

{
"name": "CreateGithubRelease",
"fully_qualified_name": "GithubApi.CreateGithubRelease@0.1.0",
"description": "Creates a new release in a specified GitHub repository.\n\nThis tool allows users with push access to create a release in a specified GitHub repository. It triggers notifications and may be subject to rate limiting. Use this tool when you need to publish a new version or release of your software on GitHub.",
"toolkit": {
"name": "ArcadeGithubApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "repository_owner",
"required": true,
"description": "The account owner of the repository. The name is not case sensitive.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The account owner of the repository. The name is not case sensitive."
},
"inferrable": true,
"http_endpoint_parameter_name": "owner"
},
{
"name": "repository_name",
"required": true,
"description": "The name of the repository on GitHub. This name is not case sensitive.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the repository. The name is not case sensitive."
},
"inferrable": true,
"http_endpoint_parameter_name": "repo"
},
{
"name": "tag_name_for_release",
"required": true,
"description": "The name of the tag for the release. This is used to label the GitHub release.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the tag."
},
"inferrable": true,
"http_endpoint_parameter_name": "tag_name"
},
{
"name": "release_body_text",
"required": false,
"description": "Text describing the contents of the tag. This is the message or notes for the release, providing context or details about changes.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Text describing the contents of the tag."
},
"inferrable": true,
"http_endpoint_parameter_name": "body"
},
{
"name": "set_latest_release",
"required": false,
"description": "Set whether this release should be the latest. Use 'true', 'false', or 'legacy'. Drafts and prereleases cannot be set as latest.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": [
"true",
"false",
"legacy"
],
"properties": null,
"inner_properties": null,
"description": "Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version."
},
"inferrable": true,
"http_endpoint_parameter_name": "make_latest"
},
{
"name": "release_name",
"required": false,
"description": "The name of the release. This identifies the release and can be a version or descriptive text.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the release."
},
"inferrable": true,
"http_endpoint_parameter_name": "name"
},
{
"name": "commit_reference",
"required": false,
"description": "The branch or commit SHA from which the Git tag is created. Defaults to the repo's default branch.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch (usually `master`)."
},
"inferrable": true,
"http_endpoint_parameter_name": "target_commitish"
},
{
"name": "draft",
"required": false,
"description": "Set to `true` for a draft (unpublished) release, or `false` for a published one.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "`true` to create a draft (unpublished) release, `false` to create a published one."
},
"inferrable": true,
"http_endpoint_parameter_name": "draft"
},
{
"name": "auto_generate_release_notes",
"required": false,
"description": "Automatically generate the name and body for the release. If 'name' is provided, it is used; otherwise, a name is auto-generated. 'Body' is prepended to generated notes if specified.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to automatically generate the name and body for this release. If `name` is specified, the specified name will be used; otherwise, a name will be automatically generated. If `body` is specified, the body will be pre-pended to the automatically generated notes."
},
"inferrable": true,
"http_endpoint_parameter_name": "generate_release_notes"
},
{
"name": "mark_as_prerelease",
"required": false,
"description": "Set to `true` for a prerelease, `false` for a full release.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "`true` to identify the release as a prerelease. `false` to identify the release as a full release."
},
"inferrable": true,
"http_endpoint_parameter_name": "prerelease"
}
]
},
"output": {
"description": "Response from the API endpoint 'repos/create-release'.",
"available_modes": [
"value",
"error",
"null"
],
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"requirements": {
"authorization": {
"provider_id": "arcade-github",
"provider_type": "oauth2",
"id": null,
"oauth2": null
},
"secrets": [
{
"key": "GIT_SERVER_URL"
}
],
"metadata": null
},
"deprecation_message": null,
"metadata": {
"object_type": "api_wrapper_tool",
"version": "1.1.0",
"description": "Tools that enable LLMs to interact directly with the GitHub API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "{git_server_url}/api/v3/repos/{owner}/{repo}/releases",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "owner",
"tool_parameter_name": "repository_owner",
"description": "The account owner of the repository. The name is not case sensitive.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The account owner of the repository. The name is not case sensitive."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "repo",
"tool_parameter_name": "repository_name",
"description": "The name of the repository. The name is not case sensitive.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the repository. The name is not case sensitive."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "body",
"tool_parameter_name": "release_body_text",
"description": "Text describing the contents of the tag.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Text describing the contents of the tag."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "draft",
"tool_parameter_name": "draft",
"description": "`true` to create a draft (unpublished) release, `false` to create a published one.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "`true` to create a draft (unpublished) release, `false` to create a published one."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": false,
"documentation_urls": []
},
{
"name": "generate_release_notes",
"tool_parameter_name": "auto_generate_release_notes",
"description": "Whether to automatically generate the name and body for this release. If `name` is specified, the specified name will be used; otherwise, a name will be automatically generated. If `body` is specified, the body will be pre-pended to the automatically generated notes.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to automatically generate the name and body for this release. If `name` is specified, the specified name will be used; otherwise, a name will be automatically generated. If `body` is specified, the body will be pre-pended to the automatically generated notes."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": false,
"documentation_urls": []
},
{
"name": "make_latest",
"tool_parameter_name": "set_latest_release",
"description": "Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": [
"true",
"false",
"legacy"
],
"properties": null,
"inner_properties": null,
"description": "Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": true,
"documentation_urls": []
},
{
"name": "name",
"tool_parameter_name": "release_name",
"description": "The name of the release.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the release."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "prerelease",
"tool_parameter_name": "mark_as_prerelease",
"description": "`true` to identify the release as a prerelease. `false` to identify the release as a full release.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "`true` to identify the release as a prerelease. `false` to identify the release as a full release."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": false,
"documentation_urls": []
},
{
"name": "tag_name",
"tool_parameter_name": "tag_name_for_release",
"description": "The name of the tag.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the tag."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "target_commitish",
"tool_parameter_name": "commit_reference",
"description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch (usually `master`).",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch (usually `master`)."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "GIT_SERVER_URL",
"parameter_name": "git_server_url",
"accepted_as": "path",
"formatted_value": null,
"description": "",
"is_auth_token": false
},
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"examples\": {\n \"default\": {\n \"value\": {\n \"body\": \"Description of the release\",\n \"draft\": false,\n \"generate_release_notes\": false,\n \"name\": \"v1.0.0\",\n \"prerelease\": false,\n \"tag_name\": \"v1.0.0\",\n \"target_commitish\": \"master\"\n }\n }\n },\n \"schema\": {\n \"properties\": {\n \"body\": {\n \"description\": \"Text describing the contents of the tag.\",\n \"type\": \"string\"\n },\n \"draft\": {\n \"default\": false,\n \"description\": \"`true` to create a draft (unpublished) release, `false` to create a published one.\",\n \"type\": \"boolean\"\n },\n \"generate_release_notes\": {\n \"default\": false,\n \"description\": \"Whether to automatically generate the name and body for this release. If `name` is specified, the specified name will be used; otherwise, a name will be automatically generated. If `body` is specified, the body will be pre-pended to the automatically generated notes.\",\n \"type\": \"boolean\"\n },\n \"make_latest\": {\n \"default\": true,\n \"description\": \"Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version.\",\n \"enum\": [\n \"true\",\n \"false\",\n \"legacy\"\n ],\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"The name of the release.\",\n \"type\": \"string\"\n },\n \"prerelease\": {\n \"default\": false,\n \"description\": \"`true` to identify the release as a prerelease. `false` to identify the release as a full release.\",\n \"type\": \"boolean\"\n },\n \"tag_name\": {\n \"description\": \"The name of the tag.\",\n \"type\": \"string\"\n },\n \"target_commitish\": {\n \"description\": \"Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch (usually `master`).\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"tag_name\"\n ],\n \"type\": \"object\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}