Skip to main content
Glama

open_notebook_add_source

Add a web link or local file as a source in one notebook. Use preview and explicit confirmation to approve processing, then check source progress separately.

Instructions

Add a web link or a local file as a source in one notebook. Give exactly one of url or file_path. Without confirm=true it only returns a preview. With confirm=true you are asked to approve it; the assistant cannot approve for you. A local file is always approved by you, with its full path and size shown, and is never pre-approved in settings. Open Notebook processes the source in the background: check progress with open_notebook_source_get.

Input Schema

NameRequiredDescriptionDefault
urlNo
titleNo
confirmNo
file_pathNo
notebook_idYes

Output Schema

NameRequiredDescriptionDefault
kindYes
noteNo
pathNoFull path of the local file. Set only in a preview.
statusNoProcessing status when the source was created, usually 'new'.
targetYesThe link without its query string, or the file name.
createdYesTrue only when the source was sent to Open Notebook.
source_idNo
command_idNoBackground job that processes the source.
size_bytesNoSize of the local file, when kind is file.
approved_byNo"person", "allowlist" or "settings".
notebook_idYes
notebook_nameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare the coarse profile (not read-only, open-world, non-idempotent, non-destructive). The description adds the behaviour an agent actually needs: non-confirm calls are previews only, confirm requires human approval it cannot supply itself, local files are always human-approved and never pre-approved in settings, and processing is asynchronous. None of that is derivable from the annotations.

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 core action and the url/file_path rule lead, followed by the confirm semantics and then the async follow-up – a sensible ordering. It runs five sentences, which is justified by the safety-critical approval flow, though the local-file sentence could be tightened.

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 non-idempotent, open-world write tool with an output schema and an approval gate, the description supplies the gating rules, the human-in-the-loop constraint, the async processing model, and the progress-check sibling. Return values are covered by the output schema, so nothing essential is missing.

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?

Schema coverage is 0%, so the description must compensate, and it does for url, file_path, confirm, and implicitly notebook_id ('one notebook'). The 'title' parameter is never mentioned and no format is given for file_path (absolute vs relative), leaving one real gap.

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?

'Add a web link or a local file as a source in one notebook' states a specific verb, an explicit resource, and the scope boundary (one notebook). The two accepted source kinds are named up front, so an agent knows exactly what this creates without consulting siblings.

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 gives the mutual-exclusion rule ('exactly one of url or file_path'), the preview-vs-commit condition for confirm, and an explicit next step ('check progress with open_notebook_source_get'). That last clause routes the agent to the correct sibling for follow-up, which is what a usage guideline should do.

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