Skip to main content
Glama

Analyze local sources

orangepro_analyze_sources
Idempotent

Build or refresh a local evidence graph from a source checkout and optional CSV/Markdown enrichers; metadata-only by default, with optional AI-suggested candidate flows.

Instructions

Build or refresh the local OrangePro evidence graph from a local checkout/path plus optional CSV/Markdown enrichers. Metadata-only by default — reads source in-process but never stores or uploads code. Optionally stages/applies AI candidate flows and refreshes the report when ai_flows=true.

Input Schema

NameRequiredDescriptionDefault
modeNoPersistence privacy mode. Only metadata_only is supported.
modelNoModel name override for ai_flows.
pathsNoExtra template/doc files (.csv/.md) to enrich the graph.
ai_flowsNoGenerate and apply AI-suggested candidate flows after analyze, then refresh the behavior report. Requires a BYOK provider; skips without failing analyze if none is configured.
providerNoBYOK provider override for ai_flows.
workspaceNoLocal workspace root. Defaults to the current directory.
include_markdownNoEnrich requirements-like Markdown docs. Default true.
include_source_snippetsNoDeferred: source snippets are never persisted in the first slice.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / additionalProperties
      Removed value: -false
  2. Addedv0.2.59

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already disclose non-readOnly, idempotent, non-destructive. The description adds genuinely new context: it reads source in-process, never stores or uploads code, and ai_flows skips without failing when no BYOK provider is configured — useful operational behavior beyond the annotations.

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 front-loaded sentences: purpose first, then the privacy guarantee, then the optional AI behavior. No filler and nothing buried.

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?

With no required params and no output schema, the description covers the key behavioral concerns: privacy mode, in-process reading, and the conditional ai_flows path. It stops short of saying what the built/refreshed graph result looks like or how long a scan may take, which would help an agent set expectations.

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 the schema already documents all 8 parameters including the mode enum and BYOK provider list. The description only restates the purpose of paths and ai_flows in prose, adding little syntax or format detail the schema lacks.

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?

The description states a specific verb+resource ('build or refresh the local OrangePro evidence graph') and names the inputs (local checkout/path, CSV/Markdown enrichers). It does not explicitly distinguish itself from close siblings like orangepro_update_graph or orangepro_ai_flows, so an agent must infer the boundary.

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?

Usage is implied by 'build or refresh' and the ai_flows clause, which explains that AI flows are only generated when ai_flows=true. There is no explicit statement of when to call this versus orangepro_update_graph or orangepro_ai_flows, nor any prerequisites.

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