Home · Setup · Cline

MCP Mileage Log in Cline

Mileage log for deductible driving: trips, effective-dated rates, summaries and CSV export. You log each drive the moment it happens - the date, where from and to, the distance in miles or km, the purpose and the category (business, medical, moving, charitable, personal) - and it comes back with a TR-YYYY-NNNN id, a future date refused because the trip cannot have been driven yet. rate_set records what one mile or km is worth for one category in one jurisdiction from a date forward, an effective-dated series rather than one global number, and each trip earns the rate in force on the day it was driven, rounded half-up to the cent, with totals summed from the rounded per-trip amounts so the CSV reconciles line by line with the summary. Distances in miles and in km are kept apart and never added together; a trip whose unit differs from the rate's is converted first, 1 mile = 1.609344 km exactly. Trips with no applicable rate are listed with the reason, never silently dropped, and the export refuses while any non-personal trip in the window is unpriced, so an accountant never receives a log with silent gaps. No rate ships with the server and none of it is tax advice: the rates you set are your own figures to verify.

trip_list, rate_list and mileage_summary are reads and safe to auto-approve. Keep rate_set behind a click, because the rate book is the figures the deduction stands on, and trip_remove behind one, because the TR number is never reissued: a gap in the series is the record that a trip was removed. No rate ships with the server, and none of it is tax advice.

What you get in Cline

You sayTool
Set the US federal business rate at 0.70 a mile from 2026-01-01.rate_set
Log yesterday: home office to the client site at 2 Mill Lane, 12.5 miles, the Kowalski site visit.trip_add
Summarize this year's deductible mileage.mileage_summary

The contract suite asserts the arithmetic over real stdio: 12.5 miles at 0.70 USD is 875 cents in the list and in the summary total, the twenty-first trip in one calendar month is refused with nothing written while a trip dated in another month logs, the second effective-dated rate is the Pro series while overwriting stays free, and the only files written are trips.json, rates.json and counter.json.

Install it in Cline

The file is mcp.json, and the key inside it is mcpServers.

ScopePath
Cline CLI~/.cline/mcp.json
The editor extensionopened from the Cline panel, not by path; the documentation deliberately calls it the MCP settings JSON used by the extension

If you also run Claude Desktop, the shortest path there is one click: mileage-log.mcpb from the latest release opens as an extension, with no JSON and no terminal. Cline reads its own config, so here it is:

The config block:

{
  "mcpServers": {
    "mileage-log": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-servers/servers/mileage-log/dist/index.js"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

The node command above wants a built file. From a clone, once:

git clone https://github.com/theluckystrike/mcp-servers.git
cd mcp-servers && npm install
npm run build -w packages/mcp-license -w servers/mileage-log

That writes servers/mileage-log/dist/index.js, and its absolute path is the one argument the config needs.

The npm packages are not published yet, so the form below returns a 404 today. It is here because it is what the entry becomes the day the publish lands, with nothing else changed:

{
  "mcpServers": {
    "mileage-log": {
      "command": "npx",
      "args": ["-y", "@theluckystrike/mcp-mileage-log"]
    }
  }
}

No full-app restart. The MCP settings actions include restarting an unresponsive server if its tools do not appear.

Nothing is published to npm yet, so the working install paths are the ones above: the .mcpb bundle from the latest release, a clone and build, or the hosted URL.

No install: the hosted endpoint

The same server runs at https://mcp.zovo.one/mcp/mileage-log over MCP streamable HTTP, no install. Mint a free token with curl https://mcp.zovo.one/mcp/token, or use a Pro key. It has no filesystem, so a file comes back as a one-hour download link.

Write the transport in. Omitting type falls back to the legacy sse transport, which will not talk to this endpoint:

{
  "mcpServers": {
    "mileage-log": {
      "type": "streamableHttp",
      "url": "https://mcp.zovo.one/mcp/mileage-log",
      "headers": { "Authorization": "Bearer <token>" }
    }
  }
}

Cline notes worth knowing first

Cline is the one client here with an unsafe transport default. `type` selects it, and omitting `type` falls back to the legacy sse transport, so a streamable HTTP endpoint needs it written in or you will debug a server that is fine. Local entries carry "disabled" and an "autoApprove" array.

Free: Twenty trips per calendar month, counted on the month of the trip date, so reconstructing last year's log at tax time does not consume this month's allowance. The trip list and the summary are never metered, and one rate per jurisdiction and category is free, overwriting it included. Pro is $19 once, verified offline.

Questions

Where does the config live?

The CLI reads ~/.cline/mcp.json. For the extension, do not hunt for a path: MCP Servers icon, Configure tab, Configure MCP Servers. cline mcp opens a wizard, and cline config mcp --json is the non-interactive form.

The hosted endpoint will not connect.

Set the transport explicitly. Omitting type falls back to the legacy sse transport, so streamable HTTP needs "type": "streamableHttp" written in. It is the one default here that sends you debugging a server that works.

Should I auto-approve MCP Mileage Log's tools?

Approve the read-only ones and leave the writing ones behind a click: each entry carries an autoApprove array and a disabled flag.

Related

MCP Mileage Log in detail · The same server in Windsurf and Claude.ai and Claude Desktop connectors · Every server in Cline · Guides · Cline docs · Buy Pro