Skip to main content
Glama
si-essence

linkding-mcp

by si-essence

linkding_create_bookmark

Saves a URL as a bookmark with tags, notes, and archive flags. Existing URLs update in place; omit confirm for a dry-run, and writes require LINKDING_ALLOW_WRITES.

Instructions

Create a bookmark. POST /api/bookmarks/. Linkding silently updates an existing bookmark when the URL already exists, and it merges auto-tagging rules into tag_names. Omit confirm for a dry-run. confirm true sends the write only when LINKDING_ALLOW_WRITES is true.

Input Schema

NameRequiredDescriptionDefault
urlYesBookmark URL. An existing URL is updated instead of inserted.
notesNo
titleNo
sharedNo
unreadNo
confirmNoSet to the boolean true to execute the write. Omit this field for a dry-run preview. false and the string true are rejected.
tag_namesNoTag names. Linkding creates missing tags.
descriptionNo
is_archivedNoSave directly into the archive when true.
disable_scrapingNoWhen true, do not scrape a missing title or description.
disable_html_snapshotNoWhen true, do not queue an HTML snapshot.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior5/5

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

The description discloses behavior beyond the annotations: existing URLs are silently updated, auto-tagging rules are merged into tag_names, omitting confirm produces a dry-run, and actual writes require LINKDING_ALLOW_WRITES. These are exactly the sort of write-safety and side-effect details an agent needs before invoking the tool.

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

Conciseness5/5

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

The description is four tight sentences with the main purpose and key behavioral caveats front-loaded. Every sentence contributes useful information, with no filler.

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 write tool with no output schema, the description covers the critical operational details: upsert behavior, dry-run semantics, and the write-permission environment gate. It does not describe the return value or all parameter effects, but it is complete enough for correct invocation.

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?

The description adds useful semantics for confirm and tag_names, and reinforces the URL upsert behavior. But with 11 parameters and only moderate schema description coverage, several parameters such as shared, unread, notes, and title receive little or no additional explanation in the description.

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 and resource ('Create a bookmark') and clarifies the important upsert behavior when the URL already exists. It is clear what the tool does, but it does not explicitly differentiate this create/upsert tool from the sibling update_bookmark tool.

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

Usage Guidelines4/5

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

It gives concrete usage guidance: omit confirm for a dry-run, and confirm true sends the write only when LINKDING_ALLOW_WRITES is true. However, it does not state when to use this tool instead of update_bookmark or other sibling tools.

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