Skip to main content
Glama

Add Knowledge Document

add_knowledge_document

Add a document to a notebook: plain text, or a file (PDF, Word, a spreadsheet, an image or audio) as base64. It is processed in the background (audio is transcribed); list_knowledge_documents shows when it is ready. The same file twice is recognised.

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": {
      "notebook_id": "<notebook_id>",
      "filename": "<filename>"
    },
    "name": "add_knowledge_document"
  }
}

Input Schema

NameRequiredDescriptionDefault
textNo
app_idNoOptional app whose notebooks to use. Omitted: the owner's own Business Brain.
filenameYes
notebook_idYesThe notebook id, from list_knowledge_notebooks.
content_typeNo
content_base64No

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.6/5.0
Behavior4/5

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

Beyond the annotations, the description discloses genuinely behavioral facts: processing happens asynchronously in the background, audio gets transcribed, and duplicate files are recognised rather than silently duplicated. These are things the agent could not learn from readOnlyHint/destructiveHint/idempotentHint alone. Note a mild tension: "the same file twice is recognised" reads as deduplication while idempotentHint is false — this is not a hard contradiction, but the agent cannot tell whether a repeat call dedupes, errors, or creates a new version.

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?

Three tight sentences, front-loaded with the action and payload types before the async caveat and the follow-up pointer. No filler. The final sentence ("The same file twice is recognised") is compressed to the point of ambiguity, which costs it the top score.

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

Completeness3/5

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

For a 6-parameter mutation tool with no output schema, the description covers the important conceptual points (async processing, transcription, readiness check) but leaves the agent guessing on payload exclusivity, content_type semantics, size ceilings, and what is returned on submission (an id? a job handle?). Adequate but not complete enough to call it blind.

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 description coverage is 33%: only notebook_id and app_id are documented in the schema, while text, filename, content_type and content_base64 are not. The description partially compensates by explaining the text-versus-base64-file split, but it never states that text and content_base64 are mutually exclusive, whether content_type is mandatory alongside base64, or what size limits apply (2MB text / 14MB base64).

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 gives a specific verb and resource ("Add a document to a notebook") and immediately enumerates the two accepted input modes (plain text, or a file such as PDF/Word/spreadsheet/image/audio as base64). It does not explicitly distinguish itself from the close sibling add_knowledge_note, so an agent must infer that notes are a different artifact, but the resource and accepted payloads are unambiguous.

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

Usage Guidelines3/5

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

The description routes the agent forward ("list_knowledge_documents shows when it is ready"), which is useful follow-up guidance, but it never states when this tool should be chosen over alternatives like add_knowledge_note or import_knowledge_audio_url. Usage is implied by the payload types rather than stated as selection criteria.

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