Introduction
Running a local LLM is the easy part. The moment you want it to do something — check your Notion, add a calendar event, post to Slack, hit your Facebook ads API — the chatbot stops being useful. What turns a local model from a chatbot into an agent is tool calling, and Ollama doesn’t natively support MCP for that.
This guide shows how to bridge a local Ollama model to over 8,000 SaaS integrations through
Zapier’s MCP server, using the ol-mcp
Python bridge. End result: a fully local, fully private agent that runs on your machine but reaches
into Google Calendar, Notion, Slack, ads platforms, and anything else Zapier connects to. Free for
most usage. Setup is a single afternoon.
📚 Table of contents
- LLM vs agent — what changes with tool calling
- Installing Ollama
- Picking a tool-calling model (Qwen 3.5, Gemma 4)
- Hardware sizing reminder
- Setting up the Zapier MCP server
- The ol-mcp bridge
- Running an agent that calls Notion and Google Calendar
- Doing the same from Python with LangChain
- Performance realities of local models
- Best practices
- Common mistakes
- Frequently asked questions
🤖 LLM vs agent
An LLM is a brain that predicts text. An agent is an LLM connected to tools it can call to act on the world. The local-model conversation usually focuses on the brain; the value lives in connecting the brain to tools.
LLM alone
Chat. Predict text. Generate code. Nothing else.
LLM + tools = agent
Read your inbox. Create a calendar event. Post to Slack. Update an ad campaign. Real work.
⬇️ Installing Ollama
- Download from ollama.com or run the platform-specific install command.
- If you already have Ollama, update it — tool-calling support in newer models requires recent versions.
- Open a terminal, type
ollama, confirm help text appears. - Optionally launch the Ollama desktop app so the service runs in the background.
🧠 Picking a tool-calling model
Not all local models support tool calling. Open ollama.com/library and look for the tools capability badge on the model card.
- Qwen 3.5 — reliable tool calling, multiple sizes
- Gemma 4 — same league, strong on instructions
- Qwen 3 Coder Next — lighter, fast, code-focused
- Llama 3.3 Instruct — safe default
Pull a size that fits your hardware: ollama
pull qwen3.5:27b for a 32GB Mac, smaller variants for less.
💻 Hardware sizing reminder
- Mac (M-series): your total unified memory is the ceiling
- Windows / Linux with Nvidia: your GPU’s VRAM is the ceiling
- Aim for a model whose on-disk size is comfortably below available memory
- Bigger = better quality but slower; pick the largest size that still feels responsive
⚡ Setting up Zapier MCP
One MCP server, thousands of integrations. Zapier exposes their automation library through MCP and charges your existing Zap quota per tool call — free tier covers most personal workloads.
- Sign up at Zapier and open the MCP section.
- Click New MCP server; pick Other (Ollama isn’t in the dropdown).
- Add tools per integration: Notion, Google Calendar, Slack, etc. Authenticate each via OAuth.
- Toggle which tools the MCP exposes — less is more for context.
- Open the Connect tab, generate a token, copy the full URL with the token embedded.
🌉 The ol-mcp bridge
Ollama doesn’t speak MCP natively. ol-mcp
is an open-source Python bridge that connects to an MCP server, exposes its tools to Ollama, and
proxies tool calls back and forth.
- Install:
pip install --upgrade ol-mcp(or useuvx ol-mcp). - Run with your Zapier URL and chosen model:
ol-mcp --mcp-server-url "<zapier_url>" --model qwen3.5:27b
- Once connected, type
toolsto list available integrations. - Start chatting in natural language; the agent calls tools as needed.
🎬 Running the agent
Example 1 — read Notion
“Can you tell me where I was traveling in the last year based on my Notion documents?” The agent calls Notion search, pulls relevant pages, summarizes. Approve the tool call when prompted (or auto-approve known-safe tools).
Example 2 — write to Calendar
“Create a calendar event today from 4–5 PM titled ‘eat lunch’.” The agent calls Google Calendar’s create-event tool through Zapier. Watch for time-zone quirks — local models sometimes ignore your zone.
🐍 The same thing in Python (LangChain)
If you’re embedding this in an app, skip the CLI and wire it up programmatically.
- Packages:
langchain-mcp-adapters,langchain-ollama,langgraph - Connect to the Zapier MCP URL through the LangChain MCP adapter
- Build a LangGraph React agent pointing at your Ollama model
- Pass the MCP tools to the agent
- Run prompts in code instead of the CLI
Same agent, embeddable in any backend. The CLI bridge is just for quick interactive use.
⏱️ Performance realities
Local agents are noticeably slower than cloud agents. Two reasons: model inference on consumer hardware is bound by memory bandwidth, and tool-calling round-trips through the bridge add latency.
- Expect 5–30 seconds per response on a 27B model
- Multi-tool tasks compound that — budget 1–3 minutes
- Smaller models (9B) are 3–5× faster, with quality trade-offs
- An upgraded machine (M3 Max, RTX 5090) closes most of the gap
✅ Best practices
- Pick a tool-calling model explicitly — check the capability badge
- Enable only the Zapier tools you actually use — cuts context
- Test individual tools first (read-only) before granting write-access
- Treat Zapier as the integration hub; don’t self-host every connector
- Use the CLI for ad-hoc work, Python+LangChain for embedded use
- Cache your Zapier URL securely — it contains your token
- For repeatable workflows, wrap them in skills/cron rather than re-prompting
❌ Common mistakes
- Picking a chat-only model and wondering why tool calls fail
- Pulling a model larger than your RAM and watching tokens crawl
- Enabling 200 Zapier tools at once and confusing the agent
- Forgetting time-zone hints when asking for calendar events
- Sharing your Zapier MCP URL publicly — that’s your auth token
- Skipping ol-mcp and trying to call MCP directly from Ollama (not supported)
- Comparing local speed to Claude API — different tools for different jobs
Conclusion
Local LLMs were stuck in chatbot territory until tool calling became reliable on consumer hardware and someone bridged MCP into Ollama. With Qwen 3.5 or Gemma 4, the ol-mcp bridge, and Zapier’s 8,000-integration MCP server, you can run a genuinely useful private agent that touches Notion, Calendar, Slack, ads platforms, and almost anything else — on your own machine, for free.
Spend an evening on the setup. Pick three integrations you use daily. The next time you ask your agent to summarize last month’s travel or book a meeting, no token from your data leaves the house.
Related reading: MCP explained: build your own server — Claude Code advanced MCP and skills setup — n8n review
Explore More on DevShelf
-
MCP Explained: Build Your Own Server
The protocol powering the Zapier MCP connection — how to build custom MCP servers when you need integrations beyond Zapier's 8,000.
-
Build a Private AI Assistant with OpenClaw and Ollama
Another local Ollama setup — pair it with OpenClaw instead of Zapier for a richer agent runtime with skills and channels.