Hi everyone,
I’m currently working on integrating Mistral Small 3.1 (running locally via Ollama) with Agno, and I’m using the MultiMCPTools
functionality to interact with multiple MCP servers. My goal is to make tool calls to two different MCP servers within a single request to the model—specifically:
- Call to the playwright server: Retrieve some data.
- Call to the filesystem server: Write the retrieved data to the filesystem.
What I’ve Observed
- The model can successfully make multiple, different tool calls to a single MCP server (e.g., multiple calls to the playwright server).
- However, when I attempt to make a second tool call to a different MCP server (e.g., server-filesystem), the model doesn’t initiate the second call at all.
My Setup
- Model: Mistral Small 3.1 (running via Ollama)
- Tooling: Agno agent configured with
MultiMCPTools
- Servers: Two MCP servers (playwright and server-filesystem)
My Questions
-
Is this behavior expected given my current tooling and setup?
- Should Mistral Small 3.1, when running via Ollama, be capable of making tool calls to multiple MCP servers within a single request?
- Or is this functionality unsupported in this configuration?
-
If this behavior is not expected, what might be causing the issue?
- Could it be related to how Agno interfaces with Ollama or how tools are presented/namespaced?
-
Are there any specific prompt engineering techniques or configuration changes I should try to enable cross-server tool calling?
Additional Context
The documentation for Mistral Small 3.1 on Ollama is quite sparse, and I haven’t been able to find clear guidance on whether cross-server tool calling is supported. I’ve reviewed Agno’s documentation (docs.agno.com) and examples like multiple_servers.py
, but I’m still unsure if my expectations align with the model’s capabilities.
Any insights, suggestions, or confirmations would be greatly appreciated! Thanks in advance for your help.