Skip to main content
Glama

search

Search graph nodes by case-insensitive substring match in selected fields. Returns up to 1000 results sorted by ID, with clear rejection of unsupported fields.

Instructions

노드 부분 일치 검색 — query 를 in_fields 각 필드에서 substring 매치 ([5-B]).

대소문자 무시 substring 매치(정규식 아님 — ReDoS 없음, [11]). in_fields 는 filter DSL 이 아니라 단순 필드명 목록이고, 검색 대상은 화이트리스트로 제한된다: {id, label, type, layer, created_by, parent_id, tags} 와 'properties.' (비예약 키만). 예약('_' 접두) 속성이나 미지 필드는 명확한 에러로 거부한다 — bare 필드명이 시스템 소유 키([23-B])를 읽는 구멍이 되지 않게 한다.

결과는 id 오름차순(결정적)으로 정렬해 limit(상한 1000)까지 준다. total 은 limit 이전 전체 매치 수라, 더 있으면 AI 가 안다. READ 무변형(dirty·이벤트 없음).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo최대 반환 노드 수 (기본 50, 상한 1000).
queryYes찾을 문자열. 대소문자 무시 부분 일치(빈 문자열은 모든 필드값의 부분열이므로 값이 있는 노드를 매치한다).
in_fieldsNo검색할 노드 필드 (기본 ["label", "id"]).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.0.0

TDQS

A4.4/5.0
Behavior5/5

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

No annotations are provided, so the description carries the full behavioral burden. It does so comprehensively: case-insensitive substring matching, 'not regex/no ReDoS', deterministic id-ascending ordering, limit and total semantics, READ-only status with no dirty/events, and clear errors for reserved or unknown fields. This fully discloses side effects, ordering, and error behavior.

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 purpose and then logically organized into matching semantics, field restrictions, result behavior, and read safety. Each sentence serves a functional role, though cryptic bracketed references like [5-B], [11], and [23-B] add noise without helping an AI agent.

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?

Given that an output schema exists, the description does not need to restate return values. It covers query matching rules, the field whitelist, error behavior, deterministic ordering, limit/total semantics, and the read-only guarantee. No critical parameter or side-effect information is missing for correct invocation.

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?

The schema already documents all three parameters with 100% coverage, establishing a baseline of 3. The description adds meaningful semantic clarity beyond the schema: in_fields is a plain field-name list rather than a filter DSL, only whitelisted fields and non-reserved properties are allowed, and invalid fields are rejected with clear errors. This lifts the score above baseline, though some additions like sorting and total are result behavior rather than parameter semantics.

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 first sentence, '노드 부분 일치 검색', plus the detailed 'query 를 in_fields 각 필드에서 substring 매치' clearly identifies the tool as a node substring search. This distinguishes it from sibling tools like get_node (exact node retrieval) and list_nodes (generic listing) by specifying the search semantics and target fields.

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 thoroughly explains how the tool behaves and what constraints apply, such as the whitelist fields and no-regex rule, but it never explicitly says when to prefer this tool over alternatives or when not to use it. Usage context is only implied by the search-focused semantics.

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