---
title: "Kilobat in Claude Desktop: desktop extension or claude_desktop_config.json | Kilobat"
url: "https://kilobat.app/agents/claude-desktop.html"
description: "Connect Kilobat to the Claude desktop app on Mac with the .mcpb extension or claude_desktop_config.json, add the skills, and ask Claude why your Wi-Fi is slow."
---

Agent setup

# Set up Kilobat in Claude Desktop

Ask Claude why the Wi-Fi is slow, what used your hotspot data or whether your VPN carries everything, and it reads the answer from your Mac.

Free CLI and MCP server · macOS 14 or later · Checked: 30 October 2026

## Install the CLI

The Kilobat CLI is free and open source, and it includes the MCP server. Install it with Homebrew:

```
brew install seifip/kilobat/kilobat
```

Check it with `kilobat --version`. `kilobat doctor` says whether the Kilobat app is running, its network filter is on and Pro is active; the tools work without the app, which adds Wi-Fi names, history and rule enforcement. The CLI needs macOS 14 or later.

## Connect the MCP server

1. Easiest, once a release includes it: download `kilobat-mcp-<version>.mcpb` from the [latest CLI release](https://github.com/seifip/kilobat-cli/releases/latest) and double-click it. Claude Desktop shows an install dialog. The extension carries its own copy of the CLI, so it needs no Homebrew.
2. Otherwise, install the CLI with Homebrew as above, then open Claude › Settings › Developer › Edit Config. It opens `~/Library/Application Support/Claude/claude_desktop_config.json`.
3. Add Kilobat with the full path to the CLI, which `command -v kilobat` prints. On an Intel Mac it is `/usr/local/bin/kilobat`.

   ```
   {
     "mcpServers": {
       "kilobat": {
         "command": "/opt/homebrew/bin/kilobat",
         "args": [
           "mcp"
         ]
       }
     }
   }
   ```
4. Quit Claude Desktop completely and open it again. Kilobat appears under Connectors in the + menu of the message box.

If it doesn't connect, read `~/Library/Logs/Claude/mcp-server-kilobat.log`.

## Add the skills

Claude Desktop doesn't read skills from a folder on disk. Download a skill folder from [github.com/seifip/kilobat-skills](https://github.com/seifip/kilobat-skills), starting with `skills/kilobat`, zip it, and upload it in Customize › Skills with the + button. Skills need code execution, which is under Settings › Capabilities.

The `kilobat` skill is the entry point: it holds the setup and safety rules and sends the agent to the skill that fits, such as `mac-network-troubleshooting` or `mac-agent-runs`. See [all nine skills](https://kilobat.app/docs.html#network-troubleshooting-skill).

## Try these prompts

Ask in plain words. The agent picks the tools; these are the ones each request usually needs.

| Ask | MCP tools |
|---|---|
| The internet feels slow. Find out why and tell me what to fix first. | `diagnose_network`, `get_status` |
| The Wi-Fi is weak in this room. Is the channel crowded, and which one should the router use? | `get_wifi`, `scan_wifi`, `suggest_wifi_channel` |
| My video calls stutter even though speed tests look fine. Check for latency spikes. | `run_stutter_test`, `get_nearby_radios` |
| What used my hotspot data today, app by app? | `get_usage_report`, `get_status` |
| My carrier says I used 40 GB last month. Compare that with what Kilobat recorded. | `compare_usage` |
| Does my VPN carry all my traffic, or only some of it? | `get_exit_path` |
| Which apps are waiting for approval to connect, and who signed them? | `list_approvals` |

## What Claude Desktop can and can't change

Kilobat's MCP server marks every tool as read-only or as a change, and each change tool's description tells the agent to get your confirmation first. The [kilobat skill](https://github.com/seifip/kilobat-skills/tree/main/skills/kilobat) holds the same rule: read freely, ask before changing.

### Runs without asking

- Measure Wi-Fi, router, internet and DNS latency, and per-app traffic: `diagnose_network`, `get_status`, `get_wifi`, `scan_wifi`.
- Find the layer that stops one host, trace a route and compare resolvers: `diagnose_connection`, `trace_route`, `benchmark_dns`.
- Read history, sessions, rules and approvals: `get_usage_report`, `list_sessions`, `list_rules`, `list_approvals`.
- Ping for latency spikes with `run_stutter_test`, which sends pings only.

### Asks you first

- A speed test, which uses up to 80 MB (`run_speedtest`; on a metered network, 10 MB or less), and a five-second LAN test (`run_lan_test`).
- Looking up your public IP with Cloudflare (`get_exit_path` with `public_ip`).
- Profiles, app rules, blocked hosts, the new-app mode, budgets, quotas, a network's data cost and pausing updaters (`set_profile`, `set_app_rule`, `block_destination`, `set_new_app_mode`, `set_budget`, `set_app_quota`, `set_network_cost`, `set_updater_pause`).
- DNS, which macOS also guards with an administrator password prompt (`set_dns`).
- Keeping the Mac running with the lid closed, every time (`keep_awake` with `lid_closed`). A plain `keep_awake` changes no settings and ends when it expires.

### Can't do

- Let a waiting app connect on its own: `decide_approval` can block at once, but allowing opens Kilobat's approval window for you to confirm.
- Change AirDrop visibility: `set_airdrop_visibility` opens System Settings for you.
- Change sleep settings, another app's settings, or anything outside Kilobat. It never reads prompts or replies.
- Enforce rules without the Kilobat app and its network filter (Pro). Without them, rules are saved, not applied, and the agent should say so.

Claude Desktop asks before it uses a connector's tool. Approve Kilobat's change tools one at a time.

If the agent can also run shell commands, the `kilobat` CLI can do what the MCP tools do. The skills tell it which commands to run freely and which to ask about.

## Track agent runs

Claude Desktop isn't a coding agent, so there are no runs for Kilobat to track. Ask Claude to keep the Mac awake for a while with `keep_awake`; Claude Code has [hooks](https://kilobat.app/agents/claude-code.html#hooks) for agent runs.

## Sources

- [Model Context Protocol docs: Connect to local MCP servers](https://modelcontextprotocol.io/docs/develop/connect-local-servers)
- [Claude Help Center: Using skills in Claude](https://support.claude.com/en/articles/12512180-using-skills-in-claude)
- [Kilobat CLI releases](https://github.com/seifip/kilobat-cli/releases/latest)
- [Kilobat docs: AI agents and MCP](https://kilobat.app/docs.html#agents)
- [skills.sh: supported agents and their skill folders](https://github.com/vercel-labs/skills/blob/main/docs/agents.md)

Checked on 30 October 2026. Agents change their settings often; if a step no longer matches, tell us at the support address.

## Other agents

- [Claude Code](https://kilobat.app/agents/claude-code.html): Give Claude Code your Mac's network as tools: per-app traffic, Wi-Fi, DNS, why a host fails and keep-awake.
- [Codex CLI](https://kilobat.app/agents/codex.html): Codex can check the network before a big download, find why its own request hangs and keep the Mac awake for a long task.
- [Cursor](https://kilobat.app/agents/cursor.html): Let Cursor's agent see why a package download hangs, which app is using the connection and whether the network is metered before a big pull.
- [Gemini CLI](https://kilobat.app/agents/gemini-cli.html): Gemini CLI can diagnose the Mac's network, scan Wi-Fi and keep the Mac awake while it works.
- [Windsurf](https://kilobat.app/agents/windsurf.html): Cascade can find why a dependency won't download, check DNS and trace a route from your Mac, with Kilobat's MCP server.
- [Cline](https://kilobat.app/agents/cline.html): Cline can check the Mac's network and keep it awake while it works.
- [Zed](https://kilobat.app/agents/zed.html): Zed's agent can measure the Mac's network, trace a route and compare DNS resolvers through Kilobat's MCP server.
- [Any MCP client](https://kilobat.app/agents/mcp-client.html): Kilobat's MCP server is a local stdio command, kilobat mcp.
