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

ragflow_get_memory_message

Read-only

Retrieves a single memory message by memory ID and message ID, returning its full content while excluding the embedding vector.

Instructions

Get one memory message with its full content (without the embedding vector).

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": {
      "memory_id": "<memory_id>",
      "message_id": "<message_id>"
    },
    "name": "ragflow_get_memory_message"
  }
}

Input Schema

NameRequiredDescriptionDefault
memory_idYesMemory ID
message_idYesMessage ID (an integer within its memory)

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description still adds meaningful payload context — full content is returned but the embedding vector is omitted — which tells the agent what it will and won't get back.

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?

A single clause with zero filler; the key qualifier about the embedding vector is in a parenthetical right where it matters. Nothing to trim.

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?

An output schema exists so return shape needn't be described, and the description still flags the one payload detail an agent would care about (no embedding vector). Only the absence of routing guidance against the many sibling memory tools keeps it from a 5.

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 100%, so both parameters are already documented in structured fields. The description adds nothing about the distinction between the memory ID and the integer message ID scope, leaving the baseline of 3 appropriate.

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?

States a specific verb and resource: 'Get one memory message with its full content.' The word 'one' plus the two required IDs distinguishes it from the list/search memory-message siblings, though no sibling is named explicitly.

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

Usage Guidelines2/5

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

The description offers no when-to-use guidance and no comparison to ragflow_list_memory_messages, ragflow_search_memory_messages, or ragflow_recent_memory_messages. The agent must infer from the required memory_id + message_id pair that this is a direct single-record fetch.

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