Skip to main content
Glama

gluecron_semantic_search

Read-only

Query the per-repo vector index (Voyage embeddings when configured, hash fallback otherwise). Reads the live per-push index (code_embeddings) first, falling back to the manually-reindexed chunk index (code_chunks). Returns {hits, source, indexed, indexedFiles} — indexed: false means the repo has never been indexed (empty hits are NOT 'no match'); indexedFiles is the live-index row count.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
repoYes
limitNo
ownerYes
queryYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

The description goes well beyond the readOnlyHint/destructiveHint annotations. It discloses the fallback behavior (live index first, then chunk index), the return shape ({hits, source, indexed, indexedFiles}), and critically explains the semantic trap: `indexed: false` means the repo was never indexed, so empty hits are NOT 'no match'. This is exactly the kind of behavioral nuance an agent needs to interpret results correctly.

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?

Three dense sentences with no filler. The most important behavioral caveat (indexed: false vs empty hits) is front-loaded in the return-shape explanation. Every clause earns its place, and the description packs a lot of critical information into a compact space.

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?

For a read-only search tool with no output schema, the description covers the return shape, the fallback behavior, and the critical interpretation of `indexed: false`. It doesn't explain pagination or how `limit` interacts with the index, and it doesn't describe what a typical hit looks like, but the core calling contract is well covered. The absence of an output schema makes the return-shape disclosure especially valuable.

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 0%, so the description carries the burden. It explains the query semantics (semantic search over code embeddings) and the meaning of the return fields, but it doesn't add detail about the `limit` parameter or the format of `owner`/`repo`. The description gives enough context for the core query parameter but leaves `limit` and identifier formats to the schema's basic types.

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 clearly states the tool queries a per-repo vector index for semantic search, specifies the embedding mechanism (Voyage embeddings with hash fallback), and explains the read path (live per-push index first, then manually-reindexed chunk index). This distinguishes it from sibling tools like gluecron_repo_search and gluecron_find_symbol by focusing on semantic/vector search over code embeddings.

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

Usage Guidelines4/5

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

The description implies when to use this tool: when you need semantic search over a repo's code embeddings. It doesn't explicitly name alternatives or state when NOT to use it, but the semantic-search framing and the mention of the fallback index provide clear context. It could be improved by explicitly contrasting with gluecron_repo_search or gluecron_find_symbol.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources