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/listandprompts/listreturn empty lists. - Authenticate with
Authorization: Bearer YOUR_TOKENorX-API-KEY: YOUR_TOKEN. - Owners and admins generate the token under Integrations → MCP. Regenerating it disconnects every MCP client at once.
Connect Claude
- In Claude, open Settings → Connectors → Add custom connector.
- URL:
https://letl.ink/mcp. - Authentication header:
Authorization: Bearerplus your token. - Once connected, ask Claude to summarise the workspace, list links, or create a tracked short URL.
Connect ChatGPT
- In ChatGPT, open Settings → Connectors → MCP.
- Use the same URL and Bearer token.
- 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 |
{
"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.