Dial CrewAI Tools

Official Dial tools for CrewAI — give a multi-agent crew the ability to send SMS, receive OTP codes, and place AI voice calls through Dial.

This site documents the dial-crewai package. The full API Reference below is generated directly from the source docstrings. See the other SDK docs from the docs home, and the product docs at docs.getdial.ai.

Install

pip install dial-crewai

This pulls in dial-sdk and crewai.

Quickstart

Build one DialClient, pass it to dial_tools, and hand the list to an agent. Every tool shares that one client — a single connection pool for the whole crew:

from crewai import Agent
from dial_sdk import DialClient, DialConfig
from dial_crewai import dial_tools

dial = DialClient(DialConfig(api_key="sk_live_..."))

phone_agent = Agent(
    role="Phone identity agent",
    goal="Send and receive SMS so the crew can complete phone-verified signups",
    backstory="You operate the crew's Dial phone number.",
    tools=dial_tools(dial),
)

Each tool is a crewai.tools.BaseTool subclass wrapping the underlying dial-sdk call. The tools are sync-first (_run) with an async→sync bridge, and also expose _arun for async crews. WaitForMessageTool blocks until the next inbound SMS arrives — the basis of the OTP flow (send a code, read the reply).