# Combining MCP Server Tool Calls

> Source: <https://www.dotnetperls.com/2026_8_19_combining-mcp-server-tool-calls>
> Published: 2026-08-19 07:00:00+00:00

Should **tool calls** be **combined** in a **MCP** (Model Context Protocol) server? It is sometimes possible to have 10 functions, or 1 function that receives a separate argument like `command`

. I wanted to test both approaches in my Rust code.

After getting an LLM to do some of the initial work, I changed 7 functions into 1 function that receives a `command`

argument. Then I **tested** the new approach.

I found:

• Small models like LFM and Ling Tiny seem to work just as well with 1 function and an argument, as with 7 functions.

• Some models like Gemma 4 E4B work better: Gemma "reviews" all the available tool calls when it thinks, and it is much faster to only review 4 tools instead of 10.

• It is easier to use code to "repair" arguments in a single function in the MCP server.

I feel **combining** many **related tool calls** into one is a **superior approach**. It is faster in some models, and also simplifies the code base and makes it easier to add convenience features like argument fix ups as needed (for when arguments are incorrect from the agent).
