Platform

What is tool calling, and how is it different from function calling?

Tool calling lets a model request an action from software; function calling names this same process or its schema-defined function tools, depending on the provider.

An agent that needs an order status must obtain it from the system holding the order. A tool definition describes the lookup it can request.

Do the two names mean different things?

Some providers use the names interchangeably. The provider's tool definition determines the interface you implement.

OpenAI's function-calling guide uses function calling and tool calling for the same process. Within its tool types, a function uses a JSON schema to describe its inputs. Its custom tools accept free-form text instead.

Google's function-calling guide also calls the process tool use. The model returns the requested function and its arguments for the application to execute.

Who executes the requested action?

Your application executes an application-defined function after receiving the model's request.

In OpenAI's tool-calling flow, the application supplies tool definitions and receives a call. It runs the corresponding code and returns the result to the model. The model can then respond or request another tool.

A hypothetical order lookup follows this exchange:

Model: request lookup_order with an order ID
  -> Application: authorize and run the lookup
  -> Order service: return the recorded status
  -> Application: supply the tool result to the model
  -> Model: answer using that result

Google's guide similarly describes the application mapping the returned function name to executable code. A model response containing arguments has not, by itself, performed the lookup.

Where does MCP fit?

MCP gives a client a protocol for discovering and invoking tools exposed by a server.

The MCP architecture guide separates that client-server exchange from the host application's model interaction. The host can make a discovered server tool available to the model, then route a requested call through its MCP client.

You can implement a model's function handler without MCP. You can also implement that handler by invoking an MCP server. These choices concern the connection behind the action.

How do I check the result when sending with Bird?

You can use Bird's MCP tools to send a message and retrieve its recorded status.

For email, email_send submits the send. Retain the returned message identifier and use email_get to inspect its aggregate delivery status. Recipient details carry the individual recipient outcomes.

A correctly formed tool request does not establish delivery. The accepted-versus-delivered answer explains what the later status establishes.

Costruisci sulla stessa rete.

Una chiave API di test è subito tua. L'accesso alla produzione si sblocca quando aggiungi un metodo di pagamento e verifichi un mittente.

Inizia con un canale.
Aggiungi gli altri quando sei pronto.

Una chiave API di test è subito tua. La produzione si sblocca quando aggiungi un metodo di pagamento e verifichi un mittente.

Usi Claude Code, Cursor o Codex? Copia un prompt di configurazione e il tuo agente installerà la CLI e le skill di Bird per te. Scegli il tuo:

Cursor