Skip to main content
Glama

Supabase: Generate link

supabase_generate_link
Destructive

Generate magic, recovery, or invite links for Supabase users from site and email, with an optional redirect URL.

Instructions

[UNIFIED] Generate a magic link, recovery link, or invite link for a user.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "site": "<site>",
      "email": "<email>"
    },
    "name": "supabase_generate_link"
  }
}

Input Schema

NameRequiredDescriptionDefault
siteYes
emailYes
link_typeNomagiclink
redirect_toNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv3.14.0
  2. Removedv3.13.1
  3. First observedv3.4.0

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, and idempotentHint=false, so the safety profile is partly covered. The description adds nothing beyond that: it never says whether the link is emailed or merely returned, how long links live, whether calling twice invalidates the prior link (non-idempotent), or what failure looks like for an unknown email. For a destructive-classified auth mutation this is a meaningful gap.

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?

A single front-loaded sentence with zero filler; the core action and variants come first. It is efficient but sits at the edge of under-specification rather than being genuinely concise-with-substance.

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

Completeness2/5

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

With no output schema, no annotation elaboration, and 0% parameter documentation, the description is too thin for a destructive, non-idempotent auth tool with four parameters. An agent cannot tell what the return value contains, whether a link is dispatched, or how to set site and redirect_to correctly.

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

Parameters2/5

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

Schema description coverage is 0%, so the description carries the full burden, yet it only indirectly hints at link_type by naming the three link kinds. The 'site' and 'redirect_to' parameters get no explanation at all — no format for site, no note on where redirect_to sends the user after the link is consumed.

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

Purpose4/5

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

The description states a specific verb ('Generate') and resource ('link') and enumerates the three link flavors (magic, recovery, invite), so an agent knows exactly what the tool produces. It does not explicitly contrast with neighboring auth tools such as supabase_create_user or supabase_ban_user, so sibling differentiation is only implicit.

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

Usage Guidelines2/5

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

There is no guidance on when to pick this tool versus alternatives, no mention of prerequisites (e.g. that the target user must already exist, or that this generates rather than sends the link), and no exclusions. The agent must infer the operating context entirely.

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

Deploy Server

Other Tools