Skip to main content
Glama

Erinys Search

erinys_search

Run hybrid keyword and vector search over stored memory, then filter results by project, scope, metadata, and access permissions to return permitted context.

Instructions

RRF hybrid search (FTS5 keyword + vector similarity).

P0-7 (opt-in): allowed_projects / allowed_scopes は取得許可の access gate。 明示引数 > env(ERINYS_ALLOWED_PROJECTS / ERINYS_ALLOWED_SCOPES)> 無効 (None)。設定時は、許可外の project/scope の行を結果から除外する(global scope は常に可視)。どれも設定されなければ従来どおり全件返す。

Input Schema

NameRequiredDescriptionDefault
limitNo
queryYes
projectNo
principalNo
intended_useNocontext
allowed_scopesNo
metadata_filterNo
allowed_projectsNo
include_distilledNo
include_anti_patternsNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden. It does disclose useful gate semantics (precedence of explicit args over env vars, out-of-allowlist rows excluded, global scope always visible, default returns everything when unset), which is genuinely non-obvious. But it says nothing about ranking/score fusion behavior, pagination, or the meaning of the remaining eight parameters, leaving the mutation-free but complex search behavior largely opaque.

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

Conciseness3/5

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

The lead sentence is well front-loaded and wastes nothing. The following block is dense, run-on, and switches abruptly into Japanese mid-definition, which harms scannability and consistency with the rest of the toolset's naming conventions.

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

Completeness2/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-value explanation is not required, but for a 10-parameter tool with zero schema description coverage and no annotations, the description is far too thin on parameter meaning and result-shaping behavior (limit, metadata_filter, include_distilled, include_anti_patterns) to let an agent invoke it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 10 parameters, so the description must compensate and it only does so for two (allowed_projects, allowed_scopes). Nothing explains query, limit, project, principal, intended_use, metadata_filter, include_distilled, or include_anti_patterns, all of which are non-obvious and undocumented anywhere else.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence names a concrete technique (RRF hybrid search over FTS5 keyword plus vector similarity), so the verb is specific. However, it never says what is being searched (memories? session records? documents?) and gives no differentiation from siblings like erinys_recall, erinys_context, or erinys_get, which plausibly also retrieve stored content.

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?

There is no statement of when to prefer this over erinys_recall, erinys_context, or erinys_get, and no conditions or exclusions. The only situational guidance is about the access gate, not about tool selection, so an agent must guess which retrieval sibling to call.

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