Detected country: US
logo
Sign InGet Early Access
GuideRecipesDeveloper
‌
‌
‌
logo

Powered by

  • Home
  • Developer Docs
  • How do I use Ballet playbooks in an agent framework?

How do I use Ballet playbooks in an agent framework?

1min read

Share

TL;DR: Expose your Ballet playbooks as tools inside any agent framework two ways. The MCP path points the framework's MCP client at https://app.ballet.dev/mcp and auto-imports tools like run_playbook and get_run. The REST path defines a single custom tool that calls POST /api/playbooks/:id/execute. Both authenticate with a workspace API token.

Who this is for

Developers building agents that should be able to run Ballet playbooks as part of their reasoning loop.

What are the two integration patterns?

PatternHow it worksBest when
MCPPoint the framework's MCP client at https://app.ballet.dev/mcp; Ballet's tools (list_playbooks, run_playbook, get_run, …) are imported automaticallyYou want the agent to discover and manage playbooks, or you're already using MCP
REST custom toolDefine one tool in your framework that POSTs to the execute endpointYou want to expose exactly one playbook with a tight schema

Both use the same auth: send a workspace API token as Authorization: Bearer mt_live_…. See authentication. The MCP endpoint also supports browser-based OAuth for interactive clients — see the MCP endpoint.

Which framework are you using?

  • Vercel AI SDK — TypeScript, createMCPClient or a tool() definition.
  • LangChain / LangGraph — Python, MultiServerMCPClient or a @tool.
  • Mastra — TypeScript, MCPClient or createTool.
  • Google ADK — Python, McpToolset or a FunctionTool.
  • Pydantic AI — Python, MCPServerStreamableHTTP toolset or a function tool.

Tips that apply everywhere

  • Start with the MCP path to let the agent see all playbooks, then narrow with a tool filter once you know which it needs.
  • For the REST path, give the tool a clear name and description so the model knows when to run the playbook.
  • Treat the playbook's run_stop.output as the tool result; surface success so the agent can handle failures.

Related articles

  • The MCP endpoint
  • Run playbooks over the REST API
  • How do I authenticate with the Ballet API?
Nested Articles

How do I call Ballet playbooks from Google ADK?

How do I call Ballet playbooks from LangChain?

How do I call Ballet playbooks from Mastra?

How do I call Ballet playbooks from Pydantic AI?

How do I call Ballet playbooks from the Vercel AI SDK?

Share