Skip to main content
Glama

RelayLink

Run a saved routine

notebook_run_routine
Read-onlyIdempotent

Fetch one of the user's saved RelayLink routines — "review my week", "challenge this idea", "help me choose what to work on" — with the material it asks for already gathered and the preferences that apply. Call it when the user asks for that routine by name or describes it. It returns the user's own notes and the context to work through with them: it runs nothing, sends nothing and grants nothing. Anything in a routine that would send a message or change something still needs the user to ask for it and still goes through the ordinary approval step. Reads only. This is the user's RelayLink notebook, for material they are keeping: use it when they name RelayLink or their notebook, when they are continuing work already kept here, or when they pick a RelayLink entry. A durable fact ABOUT them — how they like to be worked with, what they are working on — is memory_add's instead, and a project-scoped preference or one with an end date is this notebook's. A bare "add a task" or "save this note" may be meant for another connected app, and a destination they name outright is always the destination. If more than one place is plausible and nothing settles it, ask once, then stay with the answer for the rest of the task.

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": {
      "routine": "<routine>"
    },
    "name": "notebook_run_routine"
  }
}

Input Schema

NameRequiredDescriptionDefault
aboutNoWhat the user is working on, which narrows the lessons and decisions pulled in.
projectNoA project to scope the gathered context to. Optional.
routineYesThe routine's title, a unique part of it, or its entry_id. A name matching two is refused with both named.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Adds real context beyond the annotations: it runs nothing, sends nothing, grants nothing, and any send or change inside a routine still requires the user's explicit ask plus ordinary approval. That approval-path disclosure is not derivable from readOnlyHint alone. 'Reads only' merely restates the annotations, which keeps this from a 5.

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

Conciseness3/5

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

Purpose and the no-side-effects guarantee are front-loaded, which is good. But the trigger condition is restated across the second and fifth sentences ('asks for that routine by name or describes it' vs. 'use it when they name RelayLink or their notebook...'), so several clauses do not fully earn their space in an otherwise lookup-shaped tool.

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

Completeness4/5

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

For a three-parameter read-only tool with no output schema, it covers what comes back (the user's own notes plus gathered context) and resolves the main routing hazards. It is close to complete; minor remaining ambiguity is what the 'preferences that apply' consist of, which the schema does not cover either.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents routine, project, and about, including the ambiguous-name refusal. The description implies that a routine can be matched by description rather than exact title, which is a small addition, but it does not explain what 'about' or 'project' do beyond the schema text.

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?

States a specific verb and resource — fetch a saved RelayLink routine, with the material pre-gathered and preferences applied — and illustrates it with three concrete routine names. It is clearly distinguishable from siblings like notebook_open, notebook_find, and memory_add.

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?

Gives explicit positive triggers (user names or describes the routine, names RelayLink, continues kept work, picks a RelayLink entry) and explicit exclusions with named alternatives (durable facts go to memory_add; bare 'add a task' may belong to another app; a named destination wins). It even prescribes behavior under ambiguity: ask once, then stay with the answer.

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