Skip to main content
Glama
README.md
# linode-mcp

MCP server that wraps the Linode API v4 for use in Claude Desktop.

## Auth

Reads the API token from a local file at `~/.config/linode-mcp/token`
(falls back to the `LINODE_API_TOKEN` environment variable if set, but note
that on macOS, GUI apps like Claude Desktop don't reliably inherit env vars
set via `launchctl setenv` — the file is the reliable path).

The token is never hardcoded in this repo. If you're sharing this folder
with someone else, they need to create their own token file — nothing here
grants access to your Linode account.

## Setup

1. Install dependencies:
   ```
   cd ~/Desktop/mcp-servers/linode-mcp
   npm install
   ```

2. Create a Linode Personal Access Token: Linode Cloud Manager → profile
   icon → API Tokens → Create a Personal Access Token. Grant it access to
   whichever scopes you want this MCP to manage (Read/Write on Linodes,
   Volumes, Domains, etc., or broader if you want the full API surface to
   work).

3. Save the token to the local file:
   ```
   mkdir -p ~/.config/linode-mcp
   echo -n "your-token-here" > ~/.config/linode-mcp/token
   chmod 600 ~/.config/linode-mcp/token
   ```

4. Register the server in
   `~/Library/Application Support/Claude-3p/claude_desktop_config.json`
   under `mcpServers`. Note: Claude Desktop does not honor the `cwd` field,
   so a bare relative path or `cwd` alone won't work. Using a shell wrapper
   with `$HOME` keeps this portable (no hardcoded username) if the project
   lives at `~/Desktop/linode-mcp` for whoever runs it:
   ```json
   "linode": {
     "command": "/bin/sh",
     "args": ["-c", "exec node \"$HOME/Desktop/mcp-servers/linode-mcp/mcp-index.js\""]
   }
   ```
   If your copy lives somewhere other than `~/Desktop/mcp-servers/linode-mcp`,
   adjust the path inside the quotes accordingly.

5. Fully quit (Cmd+Q) and relaunch Claude Desktop. Check
   Developer → Local MCP servers to confirm `linode` connects. The logs
   there will show which token source was used (masked, plus a SHA-256
   fingerprint for verification — never the raw token).

## Tools

Covers Linode instances (create/list/reboot/resize/rebuild/clone/delete),
types/regions/images, Block Storage volumes, DNS domains & records,
networking (IPs/firewalls), NodeBalancers, LKE clusters, StackScripts,
and account/billing info — plus a generic `linode_api_request` pass-through
tool for any endpoint not explicitly wrapped.

## Sharing this folder

Safe to share as-is — no secrets live in this directory. The recipient
just needs to follow steps 1-5 above with their own Linode token.

Maintenance

ActivitySlowing
ResponsivenessNo issues