Tool Call Parsing (Dynamo)
Tool Call Parsing (Dynamo)
Connect Dynamo to external tools and services using Dynamo’s built-in tool call parsers
You can connect Dynamo to external tools and services using tool calling. By providing a list of available functions, Dynamo can choose to output function arguments for the relevant function(s) which you can execute to augment the prompt with relevant external information.
Tool calling is controlled using the tool_choice and tools request
parameters.
This page covers parser names for the default Dynamo-native path. If Dynamo does not list a parser for your model, see Tool Call Parsing (Engine Fallback).
Prerequisites
To enable this feature, you should set the following flag while launching the backend worker
--dyn-tool-call-parser: select the tool call parser from the supported list below
If no tool call parser is provided by the user, Dynamo will try to use default tool call parsing based on <TOOLCALL> and <|python_tag|> tool tags.
If your model’s default chat template doesn’t support tool calling, but the model itself does, you can specify a custom chat template per worker
with python -m dynamo.<backend> --custom-jinja-template </path/to/template.jinja>.
If your model also emits reasoning content that should be separated from normal output, see Reasoning Parsing (Dynamo) for the supported --dyn-reasoning-parser values.
Supported Tool Call Parsers
The table below lists the currently supported tool call parsers in Dynamo’s registry. The
Upstream name column shows where the vLLM or SGLang parser name differs
from Dynamo’s — relevant when using --dyn-chat-processor vllm or sglang
(see Tool Call Parsing (Engine Fallback)). A blank upstream
column means the same name works everywhere. Dynamo-only means no upstream
parser exists for this format.
For Kimi K2.5 thinking models, pair --dyn-tool-call-parser kimi_k2 with
--dyn-reasoning-parser kimi_k25 from Reasoning Parsing (Dynamo) so that both <think> blocks and tool calls
are parsed correctly from the same response.