Skip to main content
Glama
ragflow-kb-mcp
by feci

ragflow_get_file_versions

Read-only

Lists commits that changed a specific RAGFlow file, returning each commit’s operation, hash, and message. Use it to review a file’s revision history by file ID.

Instructions

List the commits that changed one file, with operation, hash and message.

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": {
      "file_id": "<file_id>"
    },
    "name": "ragflow_get_file_versions"
  }
}

Input Schema

NameRequiredDescriptionDefault
file_idYesFile or folder ID in the RAGFlow file manager

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered and the description only adds the returned fields (operation, hash, message). It says nothing about ordering (newest first?), pagination, or whether a folder ID yields aggregate history, and the phrase "one file" sits oddly against a schema that allows a folder ID. The read-only nature is not contradicted, so no flag.

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?

One compact sentence, front-loaded with the verb and scope. The trailing attribute list partially duplicates the output schema, but it costs little.

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?

Low-complexity tool with full annotation and schema coverage plus an output schema, so most of the burden is carried elsewhere. Still, an agent cannot tell from the description whether results are ordered, paginated, or folder-aware for a version-history listing.

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?

Single parameter with 100% schema description coverage, so the baseline is 3. The description adds no meaning beyond the schema — it never mentions that file_id accepts a folder ID even though the schema advertises that capability.

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?

Specific verb ("List") plus a precisely scoped resource ("the commits that changed one file"), which implicitly separates it from ragflow_list_commits (all commits) and ragflow_list_commit_files (files in a commit). It also names the returned attributes, so an agent can identify it without opening the schema, though no sibling is called out by name.

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 file-scoped phrasing implies when to reach for this over the repo-wide commit tools, but there is no explicit "use this when…" statement, no prerequisites, and no named alternative. Usage must be inferred from the purpose sentence.

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