I’m working with Vertex AI Agent Builder and trying to implement function tools. The problem is that I get different responses depending on how I test the agent.
When testing in Agent Builder playbook:
I ask “what’s the temperature today” and the network request shows a proper toolCall response:
{
"queryResult": {
"text": "what's the temperature in Berlin?",
"languageCode": "en",
"responseMessages": [
{
"source": "VIRTUAL_AGENT",
"toolCall": {
"tool": "projects/myproject/locations/us/agents/abc123-def4-5678-90gh-ijklmnop1234/tools/xyz789-abc1-2345-6789-defghijk0123",
"action": "fetchTemperature",
"inputParameters": {
"city": "Berlin, Germany",
"scale": "fahrenheit"
}
}
}
]
}
}
When using Dialogflow Messenger integration:
The same question returns an empty response without the toolCall data:
{
"queryResult": {
"text": "what's the temperature in Berlin?",
"languageCode": "en",
"responseMessages": [
{}
]
}
}
This causes issues because my client code never receives the function call details, and subsequent requests fail with “Session is waiting for tool call result of tool and action fetchTemperature”.
Why does the playbook testing environment return toolCall data while Dialogflow Messenger doesn’t? How can I get the function calling information in the messenger integration?