HomeTool CallingSelecting tools

Use specific tools

Applies to:

When you use a language model with Arcade, you can specify what tool(s) it can use:

response = client.chat.completions.create(
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {
            "role": "user",
            "content": "Star the ArcadeAI/arcade-ai repo on GitHub",
        },
    ],
    model="gpt-4o",
    user=user_id,
    tools=[
        "GitHub.SetStarred",
        "GitHub.CountStargazers",
    ],
    tool_choice="generate",
)

The tools parameter accepts:

  • An array of one or more tool names, like GitHub.SetStarred. The model will only have access to the specified tools.
  • An empty array (or nothing) to include all tools. The model will have access to all tools available to the Arcade Engine.

To see the list of available tools, see the Tool Catalog.

Even the best AI models struggle to choose between too many tools. For most use cases, specifying a list of tools will maximize accuracy and reliability.

Coming soon: The ability to specify custom groups of tools. Stay tuned!

To control how the model selects from the available tools, see Control tool choice.