Skip to main content
Glama
baleen37

private-journal-mcp

by baleen37

search_journal

Search private journal entries by meaning to retrieve relevant markdown snippets with source paths, sections, and similarity scores.

Instructions

Search private journal entries semantically and return LLM-readable markdown snippets with source paths, sections, projects, scores, and excerpts.

Use section to narrow recall when the intent is known; omit section for broad discovery.

Scores are cosine similarities from a multilingual-e5 model and cluster in a narrow band (~0.80-0.89), so a high score alone does not mean an entry is relevant. Always judge relevance from the excerpt text, and treat small score gaps as noise. Results are ordered with an automatic created_at date decay (90-day half-life, 50% floor); score and minScore remain semantic similarity values.

Omit project to search across all projects. Use project only when an explicit repository filter is needed; the current runtime project is never applied automatically.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes
projectNo
sectionNo
minScoreNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.7.0
    • addedInput schema / properties / project
      Added value: +{
      +  "anyOf": [
      +    {
      +      "minLength": 1,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ]
      +}
  2. Changed4 schema fields changedv1.4.4
    • addedInput schema / properties / limit / exclusiveMinimum
      Added value: +0
    • addedInput schema / properties / limit / maximum
      Added value: +50
    • changedInput schema / properties / limit / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / minScore
      Added value: +{
      +  "maximum": 1,
      +  "minimum": 0,
      +  "type": "number"
      +}
  3. First observedv1.3.0

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries full responsibility for behavioral disclosure, and it excels: it reveals the scoring model (multilingual-e5 cosine similarity), the narrow score band, the unreliability of high scores, the need to judge relevance from excerpts, and the created_at date decay with 90-day half-life and 50% floor. This is far beyond what the schema alone conveys.

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 description is front-loaded with the core purpose and return format, then layers scoring caveats and parameter guidance in a natural order. It is somewhat long, but nearly every sentence adds operational value, and the separation into paragraphs makes the three key ideas easy to scan.

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 semantic search tool with five parameters and no output schema or annotations, the description covers everything needed to call it correctly: what results look like, how to interpret scores, how ordering works, and how to use section and project. No critical operational gap remains.

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 the non-obvious parameters: section's recall role, project's exact filtering semantics, and minScore's relationship to semantic similarity rather than raw relevance. Limit and query are not explicitly explained, but their meanings are nearly self-evident from the schema and context.

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?

The description states a specific verb and resource: search private journal entries semantically and return LLM-readable markdown snippets. It also enumerates the returned fields (source paths, sections, projects, scores, excerpts), making the tool's function explicit and distinct from static read/list operations.

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?

The description gives concrete when-to-use guidance for parameters: narrow with section when intent is known, omit section for broad discovery, omit project to search across all projects, and use project only when an explicit repository filter is needed. It also clarifies that the runtime project is never applied automatically, preventing a likely misuse.

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