# Improving Tool Use with Small LLMs

> Source: <https://www.dotnetperls.com/2026_8_7_improving-tool-use-small-llms>
> Published: 2026-08-07 07:00:00+00:00

I have been trying to develop an agentic AI system with a **local MCP server**. I am using `llama-cpp`

with the **LFM 2.5 2.6B** model—this LLM is only 1.7 GB and is very fast. However I found the model used a parameter in one of the tool calls correctly about 0% of the time.

Other models, including Gemma 4, **used the parameter correctly** nearly 100% of the time. So I tried to figure out what the problem was. I determined that parameters in the **JSON schema** need to have a detailed **description**—describing the params in the tool call descriptions was not enough.

Here are my discoveries:

• With descriptions on the parameters specifically, tool calling was correct nearly 100% of the time in LFM 2.5 2.6B.

• It is best not to be shy about explaining how to use a parameter—a 6-line explanation is perfectly fine, and will help smaller models understand better.

It is kind of **boring** to write a 6-line paragraph about a tool call parameter, but it seems to really **help smaller models**. I went from 0% compliance on a parameter to 100% compliance—and this means I can use a small 1.7 GB model which even runs fast without a GPU for my MCP server.
