Tools
AI
Natural Language Processing

Generate tool inputs from natural language

Uses AI to translate a natural language description into structured arguments for a specific tool. This endpoint is useful when you want to let users describe what they want to do in plain language instead of providing structured parameters.

post/api/v3/tools/execute/{tool_slug}/input

Path parameters

tool_slugstring required

The tool slug to generate inputs for

Request body

textstring required

Natural language description of what you want to accomplish with this tool

custom_descriptionstring

Custom description of the tool to help guide the LLM in generating more accurate inputs

system_promptstring

System prompt to control and guide the behavior of the LLM when generating inputs

versionstring

Tool version to use when generating inputs. Defaults to the pinned version ("00000000_00") when omitted.

Example request

{
  "text": "I need to trigger the main workflow in the octocat/Hello-World repository to deploy to production",
  "custom_description": "This tool triggers GitHub Actions workflows in a repository. It requires the repository name, workflow ID, and optional input parameters.",
  "system_prompt": "You are an expert assistant that generates precise GitHub Actions workflow parameters. Extract exact repository names, workflow IDs, and input values from user descriptions.",
  "version": "latest"
}

Response

Successfully generated structured inputs for the action based on natural language description

argumentsobject

Key-value pairs of arguments required by the tool to accomplish the described task

errorstring

Error message if the arguments could not be generated (null if successful)

Example response

{
  "arguments": {
    "repository": "octocat/Hello-World",
    "workflow_id": "main.yml",
    "ref": "main",
    "inputs": {
      "environment": "production"
    }
  },
  "error": "Unable to determine the repository name from the provided description"
}

Changes