Integrations

MCP server for Claude, ChatGPT, and n8n

A remote Model Context Protocol endpoint so assistants can list links, read visits, and create tracked URLs.

Ultimate workspaces expose a remote Model Context Protocol server at https://letl.ink/mcp. Claude, ChatGPT, and n8n's MCP Client speak JSON-RPC over Streamable HTTP. The token is the same API token as the REST API. Workspaces on Free, Solo or Growth receive 403 on /mcp even if they already have a token for other reasons.

Protocol and auth

  • Protocol version 2025-03-26.
  • Methods: initialize, ping, tools/list, tools/call. resources/list and prompts/list return empty lists.
  • Authenticate with Authorization: Bearer YOUR_TOKEN or X-API-KEY: YOUR_TOKEN.
  • Owners and admins generate the token under Integrations → MCP. Regenerating it disconnects every MCP client at once.

Connect Claude

  1. In Claude, open Settings → Connectors → Add custom connector.
  2. URL: https://letl.ink/mcp.
  3. Authentication header: Authorization: Bearer plus your token.
  4. Once connected, ask Claude to summarise the workspace, list links, or create a tracked short URL.

Connect ChatGPT

  1. In ChatGPT, open Settings → Connectors → MCP.
  2. Use the same URL and Bearer token.
  3. Some ChatGPT workspaces require developer mode before custom MCP servers appear. If the connector is missing, check that toggle first.

Connect n8n

MCP Client node → transport Streamable HTTP → URL https://letl.ink/mcp → header Authorization: Bearer YOUR_TOKEN. Details and the other two n8n paths are in the n8n article.

Tools

Tool What it returns / does
workspace_summary Workspace name, plan, links used/max, clicks this calendar month, domains, QR codes, retention days, whether geo and API are on, and whether Block bots is on
list_links Active links (optional limit, default 50, max 200)
get_link One link by numeric id or short_code
get_recent_visits Latest recorded clicks (optional limit, default 25, max 100), including country
create_link Creates a tracked link. type may be direct, utm, appstore, instagram, mobile, or device. Smart types follow the plan; destination, UTM, and store URLs match the REST create body
Minimal initialize (after HTTPS + Bearer)
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "initialize",
  "params": {
    "protocolVersion": "2025-03-26",
    "capabilities": {},
    "clientInfo": { "name": "docs", "version": "1" }
  }
}

What the model is told

On initialize, the server advertises itself as letlink and instructs clients to query and create tracked short links for this workspace, including geographic fields. Tools return JSON both as text content and as structuredContent so clients that understand structured results can skip parsing.

Safety

Treat a connected assistant as a teammate with API access: it can read visit rows (including IP on some visit payloads) and create links that count toward caps. Do not paste the Bearer token into a chat. Disable the connector and rotate the token if a client is no longer needed.

Still have questions?

We're here to help. Reach out and we'll get back to you as soon as we can.