Skip to main content
Glama

Link this client to an existing account

link_account
Idempotent

Point this MCP client at an account you already have, so header-less calls from it stop spending the keyless trial.

This is for clients that cannot set HTTP headers — Claude.ai custom connectors and ChatGPT apps. If your client can set a header, prefer that: it is per-connection, it is not tied to a network address, and it needs no tool call at all.

Only a client with an identity of its own can be linked. A connector added with the shared URL and no client id is recognised by its IP address and User-Agent, and every user of a hosted connector shares those: they call from their vendor's servers. Linking that would link all of them, so it is refused. Add this server with a personal URL instead — https://mcp.galleyrender.com/mcp/c/<id>, with a random <id> of your own (https://galleyrender.com/docs/connect makes one) — or send X-Galley-Client-Id with at least 128 random bits, then link.

Two ways to prove the account is yours. api_key, if you have the key to hand. Or link_code, the one-time code mailed to the account's own address — call create_account with that address to have one sent, and nobody has to paste a key into a chat window.

Either way the credential is used once, checked, and dropped: what is stored is the account id and a key minted for this client, which unlink_account revokes.

Whoever has the client id acts as the account. A personal connector URL or a client id header is a credential once linked: keep it like a key, and unlink_account when you are done on a machine that is not yours. Free.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
api_keyNoA Galley API key, starting `glr_sk_`. It is checked against the API and then discarded — the binding that is stored is by account id, and this server keeps no copy of the key. Give either this or `link_code`.
link_codeNoThe one-time code mailed to the account's address, like `GLR-4F7K-9QX2`. Ten minutes, one use. Ask for one by calling `create_account` with the address: if it already has an account, a code is what comes back. Use this when the person would rather not paste a key into a chat. Case, spaces and dashes do not matter.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description discloses that the credential is checked once and dropped, that only an account id and a minted client key are stored, that unlink_account revokes the binding, and that possession of the client id becomes a credential. This is exactly the behavioral context an agent needs for a linking operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average but front-loaded and well-structured with bold lead-ins that make it scannable. Nearly every sentence carries setup, security, or eligibility guidance; only the stray trailing 'Free.' feels extraneous.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating, auth-related tool with no output schema, the description covers prerequisites, eligibility, both proof methods, credential lifecycle, revocation, and security warnings. An agent has everything needed to decide whether and how to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already covers both parameters with examples, constraints, and lifecycle details, so the baseline is 3. The description adds selection guidance—api_key when the key is on hand, link_code when the user prefers not to paste a key—and connects link_code to create_account, which raises it above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a precise statement of what the tool does: 'Point this MCP client at an account you already have' and ties it to a concrete effect (stopping header-less calls from spending the keyless trial). The title and body also clearly separate it from create_account and unlink_account.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says when to use this tool (clients that cannot set HTTP headers), tells the agent to prefer a header-based approach when possible, and states the eligibility requirement that the client have an identity of its own. It also gives two concrete ways to authenticate and when to choose each.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources