What you'll set up
- An Elido API key scoped to the permissions your client needs.
- The local Elido MCP server (
@elido/mcp-server, beta) connected to Claude Desktop, Cursor or Claude Code over stdio. - Five tools: create links, list links, query analytics, generate QR codes and list workspaces.
Elido ships a Model Context Protocol (MCP) server as a local program. It runs on your machine, talks to the Elido REST API with your API key, and speaks MCP to your client over stdio. There is no hosted MCP URL and no OAuth connector: you cannot paste a server URL into the Claude Connectors screen.
What MCP gives you
- Ask "How many clicks did
spring-2026get this week?" and the client calls the analytics tool and answers with the real number. - Say "Shorten
https://example.com/very-long-pathwith tag newsletter" and the client creates the link and shows you the short URL.
Step 1 — Build the server
From a checkout of the Elido repository:
pnpm install
pnpm --filter @elido/mcp-server build
This produces packages/mcp-server/dist/index.js. Note the absolute path.
Step 2 — Create an API key
- Go to Dashboard → API Keys → New key.
- Pick the scopes you need (
links:readandanalytics:readfor read-only use, pluslinks:writeto create links). - Copy the key. It is sent to the Elido API as
Authorization: Bearer ….
Connect in Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"elido": {
"command": "node",
"args": ["/absolute/path/to/packages/mcp-server/dist/index.js"],
"env": {
"ELIDO_API_KEY": "your_api_key",
"ELIDO_WORKSPACE_ID": "42"
}
}
}
}
Restart Claude Desktop fully. The Elido tools appear in the tool list.
Connect in Cursor
Put the same mcpServers block into .cursor/mcp.json in your project (or ~/.cursor/mcp.json for all projects) and restart Cursor.
Connect in Claude Code
claude mcp add elido --env ELIDO_API_KEY=your_api_key -- \
node /absolute/path/to/packages/mcp-server/dist/index.js
Run claude mcp list to confirm it is connected.
Configuration
| Variable | Required | Description |
|---|---|---|
ELIDO_API_KEY | yes | Your Elido API key. |
ELIDO_WORKSPACE_ID | no | Numeric workspace id. Set it when the key can see more than one workspace. |
ELIDO_API_BASE | no | API host. Defaults to https://api.elido.app; override it for self-hosting. |
Available tools
| Tool | What it does |
|---|---|
create_link | Shorten a URL with optional slug, domain, title and tags |
list_links | List recent links in the workspace (paginated) |
query_analytics | Click-count timeseries for the workspace or one link, timezone-aware |
generate_qr | Generate a QR code (SVG or PNG) for an existing link |
list_workspaces | List the workspaces the API key can access |
Scope of access
The server only sees the workspace the API key belongs to (or the one set in ELIDO_WORKSPACE_ID). With several workspaces, add one server entry per workspace with distinct names.
Troubleshooting
The client shows the server as failed or disconnected — Check that the path in args is absolute and that dist/index.js exists (rerun the build). Run ELIDO_API_KEY=test node /absolute/path/to/packages/mcp-server/dist/index.js in a terminal to see startup errors.
"Unauthorized" when calling a tool — The API key is missing, mistyped or revoked. Create a new one under Dashboard → API Keys and update ELIDO_API_KEY.
Creating a link returns "forbidden" — The key lacks links:write. Create a key with that scope.
Claude Desktop does not show Elido after a config edit — Quit Claude Desktop completely and start it again; closing the window is not enough.