Pular para o conteúdo

Referência da API MCP

Explore as 11 ferramentas MCP do Maguyva, seus parâmetros e quando usar cada uma. Consulte a resposta tools/list do cliente conectado para saber quais argumentos estão disponíveis.

Visão Geral da API

#

As ferramentas estão organizadas em 4 categorias:

  • Ferramentas de Busca Principais - Capacidades avançadas de busca no seu codebase
  • Ferramentas Estruturais e de Grafo - Consultas AST, busca de símbolos e análise de dependências
  • Ferramentas de Análise de Código - Análise profunda de código e mapeamento de relações
  • Ferramentas de Sistema e Utilitários - Contexto do repositório, orientação sobre ferramentas e comentários

Para ferramentas que aceitam um repositório, use este formato do identificador de repositório: "owner/repo:branch". Sem especificação, a branch padrão é main.

Omita repository quando o cliente MCP fornecer um padrão para a solicitação ou quando a chave puder acessar exatamente um repositório; caso contrário, informe-o explicitamente. Use repository_context(action="info", repository="owner/repo") para verificar como um repositório é resolvido.

Formato do Parâmetro de Repositório

#

Use estes formatos ao especificar um repositório:

  • Com branch: "owner/repo:branch" - ex.: "owner/repository:develop"
  • Branch padrão: "owner/repo" - usa a branch main quando nenhuma branch é especificada "owner/repository"
  • Padrão da solicitação ou do único repositório: Omita o repositório quando o cliente MCP fornecer um padrão para a solicitação ou quando a chave puder acessar exatamente um repositório; caso contrário, informe-o explicitamente

Exemplos de prompts:

Pergunte sobre um repositório específico:       "Busque middleware de autenticação em owner/my-repo"
Liste os repositórios acessíveis:               "Quais repositórios esta chave do Maguyva pode acessar?"
Substitua o repositório em uma única consulta:  "Busque padrões de autenticação em owner/other-repo:develop"

Filtro de Linguagem

#

Use language_filter nos modos de busca compatíveis. Para text_pattern_search, escolha search_scope="content"; para get_task_context, use scope="semantic" sem sementes ou contexto relacionado.

  • language_filter="python" - Filtra apenas arquivos Python
  • language_filter="typescript" - Filtra apenas arquivos TypeScript
  • Sensível a maiúsculas/minúsculas: Use nomes de linguagem em minúsculas
  • Padrão: String vazia (sem filtro) - retorna resultados de todas as linguagens
  • Cobertura suportada: Os filtros de linguagem funcionam em toda a cobertura de 285+ linguagens e tecnologias baseadas em texto suportados. Veja compatibilidade para a lista completa.
"Encontre middleware de autenticação só em arquivos Python"
"Busque conexões de banco de dados em TypeScript"

Referência de API gerada a partir do código-fonte em 21 de outubro de 2026.

Ferramentas de Busca Principais

#

Comece aqui para qualquer pergunta sobre a base de código. Por padrão, auto/balanced direciona perguntas sobre definições cuja intenção identifica com confiança para a busca estrutural, perguntas sobre referências ou impacto para o grafo e perguntas de correspondência exata para o texto. As demais perguntas usam o significado semântico e o texto indexado. Use mode=hybrid ou auto com quality=thorough para solicitar as quatro modalidades de busca. Um mode explícito tem prioridade sobre quality. language_filter exclui o grafo de auto/hybrid e é rejeitado com mode=graph explícito. Prefira esta ferramenta a Grep/Glob quando ainda não souber o caminho.

Parâmetros:

query Obrigatório
Tipo
str minLength=1
Descrição
Consulta de busca
repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
mode Opcional
Tipo
Literal[auto, hybrid, semantic, text, structural, ast, graph]
Padrão
auto
Descrição
Modo de busca
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
10
Descrição
Máximo de resultados nesta janela top-K ordenada por relevância
language_filter Opcional
Tipo
str
Descrição
Filtro de linguagem
path_filter Opcional
Tipo
str
Descrição
Filtra os candidatos de busca pelo prefixo do caminho do arquivo. Os vizinhos no grafo e o contexto de comunidade anexado podem incluir arquivos fora desse prefixo.
boost_by_importance Opcional
Tipo
bool
Padrão
false
Descrição
Opcional: reordena por centralidade usando métricas de grafo por símbolo (is_articulation_point, bridge_count, k_core, centrality etc.). Desativado por padrão para uma classificação segura para agentes (hubs globais podem afogar os resultados de implementação); ative para tours de arquitetura. Aplica-se às 4 modalidades quando cada resultado carrega um vínculo de símbolo.
branch Opcional
Tipo
str
Descrição
Substituição de branch
quality Opcional
Tipo
Literal[quick, balanced, thorough]
Padrão
balanced
Descrição
Predefinição de qualidade da busca
include_content Opcional
Tipo
bool
Padrão
true
Descrição
Incluir conteúdo nos resultados
explain_routing Opcional
Tipo
bool
Padrão
false
Descrição
Incluir a explicação da decisão de roteamento
importance_weight Opcional
Tipo
float minimum=0, maximum=1
Padrão
0.3
Descrição
Peso do reforço por importância (0=nenhum, 1=total)
orphans Opcional
Tipo
bool
Padrão
false
Descrição
Incluir símbolos órfãos (sem referências de entrada)
include_community_context Opcional
Tipo
bool
Padrão
false
Descrição
Incluir símbolos relacionados da mesma comunidade de código
community_depth Opcional
Tipo
int minimum=1, maximum=3
Padrão
1
Descrição
Profundidade de expansão do contexto da comunidade
graph_view Opcional
Tipo
Literal[dependency, type, data_flow, control_flow]
Padrão
dependency
Descrição
Visualização do grafo para métricas
seed_symbol_ids Opcional
Tipo
list[str] maxItems=20
Descrição
Sementes de tarefa de nível 1: IDs de símbolos centrais para a tarefa atual. Quando fornecidas, reordenam os resultados combinados pela proximidade segundo Approach A, com peso que diminui com a profundidade (correspondência exata com a semente + saltos pelas arestas do grafo). É um ajuste adicional — omita para manter a ordenação global.
seed_file_paths Opcional
Tipo
list[str] maxItems=10
Descrição
Sementes de tarefa de nível 1: caminhos de arquivos indexados que o agente mantém abertos ou acabou de editar. Quando fornecidas, reordenam os resultados combinados pela proximidade dos caminhos, com peso que diminui com a profundidade segundo 1/(1+d) (mesmo arquivo → mesmo diretório → pacotes próximos). É um ajuste adicional — omita para manter a ordenação global.

Melhor Para:

  • Exploração em todo o índice ou em partida a frio quando a ferramenta certa não é clara
  • Ordenação multimodal combinada entre busca semântica, textual, estrutural e de grafo

Não Recomendado Para:

  • Um nome de símbolo conhecido — use find_symbol diretamente
  • Um caminho conhecido em disco — use primeiro Read/Grep local

Encontre código pelo significado, não por texto exato. Use para consultas conceituais como 'lógica de novas tentativas' ou 'fluxo de integração do usuário' quando não souber a palavra-chave nem o símbolo. Retorna trechos relevantes com diversidade de arquivos limitada; a reclassificação por importância no grafo é ativada via boost_by_importance. Prefira ao Grep em buscas conceituais.

Parâmetros:

query Obrigatório
Tipo
str minLength=1
Descrição
Consulta de busca (conceitual, baseada em significado)
repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
5
Descrição
Máximo de resultados nesta janela top-K ordenada por relevância
similarity_threshold Opcional
Tipo
float minimum=0, maximum=1
Padrão
0.6
Descrição
Pontuação mínima de similaridade
language_filter Opcional
Tipo
str
Descrição
Filtro de linguagem (python, typescript etc.)
path_filter Opcional
Tipo
str
Descrição
Filtrar por prefixo do caminho do arquivo
boost_by_importance Opcional
Tipo
bool
Padrão
false
Descrição
Ativação opcional: reclassifica pela importância normalizada de cada símbolo no grafo (desativado por padrão; limitado a 1,5 vez a similaridade).
branch Opcional
Tipo
str
Descrição
Substituição de branch (padrão: parâmetro repository ou main)
include_content Opcional
Tipo
bool
Padrão
true
Descrição
Incluir o conteúdo dos trechos nos resultados
graph_view Opcional
Tipo
Literal[dependency, type, data_flow, control_flow]
Padrão
dependency
Descrição
Visualização do grafo para métricas

Melhor Para:

  • Consultas conceituais (“como funciona a autenticação?”, “estratégia de cache”)
  • Busca de similaridade entre pacotes

Não Recomendado Para:

  • Um nome de símbolo conhecido — use find_symbol em vez disso
  • Strings exatas ou mensagens de erro — use text_pattern_search

Busca conteúdo indexado. exact e regex aplicam grep ao corpus completo de arquivos/blobs; fuzzy content busca no corpus limitado de trechos semânticos. Os escopos file e symbol aceitam apenas trigramas — o padrão mode=exact é convertido em fuzzy. Controles de idioma, maiúsculas/minúsculas e limiar personalizado exigem o escopo content. O filtro de caminhos usa uma janela limitada de candidatos e informa cobertura incompleta. Use Grep local para um diretório restrito já no disco.

Parâmetros:

query Obrigatório
Tipo
str minLength=1
Descrição
Padrão de texto
repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
mode Opcional
Tipo
Literal[fuzzy, exact, regex]
Padrão
exact
Descrição
Modo de busca. Regex executa a sintaxe avançada/POSIX do PostgreSQL; use \y para limites de palavra (\b significa backspace). Os padrões também passam por um validador de segurança JavaScript, então construções exclusivas do PostgreSQL, como flags (?i) inline, são rejeitadas; use case_sensitive em vez disso.
search_scope Opcional
Tipo
Literal[content, symbols, files]
Padrão
content
Descrição
O que buscar
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
5
Descrição
Máximo de resultados por página sem cursor. A continuação usa o tamanho de página armazenado em cursor; omita cursor para começar com um limit diferente.
offset Opcional
Tipo
int minimum=0
Descrição
Deslocamento de compatibilidade obsoleto. Prefira cursor de pagination.next_cursor.
cursor Opcional
Tipo
str
Descrição
Cursor opaco vindo de pagination.next_cursor. Repasse-o sem alterações e mantenha query e os filtros inalterados. Sua posição e tamanho de página têm prioridade sobre offset e limit.
language_filter Opcional
Tipo
str
Descrição
Filtro de linguagem
path_filter Opcional
Tipo
str
Descrição
Filtrar por prefixo do caminho do arquivo
case_sensitive Opcional
Tipo
bool
Padrão
false
Descrição
Diferencia maiúsculas de minúsculas
branch Opcional
Tipo
str
Descrição
Substituição de branch
fuzzy_algorithm Opcional
Tipo
Literal[hybrid, trigram, levenshtein]
Padrão
hybrid
Descrição
Algoritmo de correspondência aproximada
threshold Opcional
Tipo
float minimum=0, maximum=1
Padrão
0.05
Descrição
Limite mínimo de similaridade para a busca aproximada
semantic_fallback Opcional
Tipo
bool
Padrão
false
Descrição
Tenta uma busca semântica quando a primeira página léxica está vazia; metadata.fallback_status distingue os estados de fallback used, empty e unavailable.

Melhor Para:

  • Strings exatas, mensagens de erro e regex
  • Correspondência fuzzy por trigramas para texto quase correspondente

Não Recomendado Para:

  • Um caminho conhecido em disco — prefira Grep local
  • Consultas conceituais — use semantic_search

Ferramentas Estruturais e de Grafo

#

Prefira preset=functions|classes|methods|imports|variables ou um pattern= livre. Encontre código pela forma AST, não pelo texto. Filtros intermediários: name_pattern, node_type, decorator, parent_child. Filtros de caminho, ltree e chamadas são avançados: defina advanced=true ao usá-los deliberadamente. Sem isso, os filtros também são aplicados, mas com um aviso nos metadados. Forneça pelo menos um seletor estrutural.

Parâmetros:

repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
preset Opcional
Tipo
Literal[functions, classes, methods, imports, variables]
Descrição
Seletor estrutural preferido. Expande-se para tipos de nó AST entre linguagens — functions (definições de função/arrow/método conforme a linguagem); classes (declarações de class/struct/interface, corpos de tipo e implementações); methods (definições de método, e function_definition para linguagens sem nó de método); imports (instruções import/use/include); variables (declarações variable/let/const/static). Prefira em vez de pattern/node_type livre para consultas de navegação.
pattern Opcional
Tipo
str
Descrição
Um pattern de forma livre preenche seletores ausentes (detecção automática: 'def foo(' → node_type + name_pattern). Pode ser combinado com preset; seletores explícitos têm prioridade. Prefira preset= para consultas de navegação.
name_pattern Opcional
Tipo
str maxLength=256
Descrição
Padrão do nome do símbolo (curinga de shell, expressão regular POSIX limitada ou texto aproximado; máximo de 256 caracteres)
node_type Opcional
Tipo
str
Descrição
Tipo de nó AST (function_definition, class_definition etc.) — prefira preset= para formatos comuns
decorator Opcional
Tipo
str
Descrição
Filtro por nome de decorador
base_class Opcional
Tipo
str
Descrição
Filtro por nome de classe base (encontra classes que herdam dela)
language_filter Opcional
Tipo
str
Descrição
Filtro de linguagem (python, typescript etc.)
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
20
Descrição
Máximo de resultados por página sem cursor. A continuação usa o tamanho de página armazenado em cursor; omita cursor para começar com um limit diferente.
offset Opcional
Tipo
int minimum=0
Descrição
Deslocamento de compatibilidade obsoleto. Prefira cursor de pagination.next_cursor.
cursor Opcional
Tipo
str
Descrição
Cursor opaco vindo de pagination.next_cursor. Repasse-o sem alterações e mantenha query e os filtros inalterados. Sua posição e tamanho de página têm prioridade sobre offset e limit.
path_filter Opcional
Tipo
str
Descrição
Filtrar por prefixo do caminho do arquivo
branch Opcional
Tipo
str
Descrição
Substituição de branch
query_type Opcional
Tipo
Literal[node_type, name_pattern, parent_child]
Descrição
Tipo de consulta explícito
parent_type Opcional
Tipo
str
Descrição
Filtro de tipo do nó AST pai
relationship Opcional
Tipo
Literal[parent, ancestor]
Padrão
parent
Descrição
Para consultas parent_child: apenas o pai direto ou qualquer ancestral (use ancestor para métodos de classe aninhados no corpo/bloco de uma classe)
has_modifier Opcional
Tipo
str
Descrição
Filtrar por modificador (export, async, static etc.)
advanced Opcional
Tipo
bool
Padrão
false
Descrição
Defina true ao usar deliberadamente filtros avançados de caminho, ltree ou chamadas (ltree_ancestor, ltree_descendant, min_depth, max_depth, field_role, definition_name, callee_text, callee_name). Com false, os filtros avançados fornecidos são aplicados com um aviso nos metadados. Prefira preset= para consultas estruturais comuns.
callee_text Opcional
Tipo
str
Descrição
Avançado — prefira preset=functions|classes|methods|imports|variables. Filtro de texto do callee em uma expressão de chamada. Defina advanced=true ao usar intencionalmente filtros de caminho/ltree/chamada.
callee_name Opcional
Tipo
str
Descrição
Avançado — prefira preset=functions|classes|methods|imports|variables. Filtro de nome do callee em uma expressão de chamada. Defina advanced=true ao usar intencionalmente filtros de caminho/ltree/chamada.
field_role Opcional
Tipo
str
Descrição
Avançado — prefira preset=functions|classes|methods|imports|variables. Filtro de papel de campo AST. Defina advanced=true ao usar intencionalmente filtros de caminho/ltree/chamada.
ltree_ancestor Opcional
Tipo
str
Descrição
Avançado — prefira preset=functions|classes|methods|imports|variables. Filtro de caminho ancestral AST ltree. Defina advanced=true ao usar intencionalmente filtros de caminho/ltree/chamada.
ltree_descendant Opcional
Tipo
str
Descrição
Avançado — prefira preset=functions|classes|methods|imports|variables. Filtro de caminho descendente AST ltree. Defina advanced=true ao usar intencionalmente filtros de caminho/ltree/chamada.
definition_name Opcional
Tipo
str
Descrição
Avançado — prefira preset=functions|classes|methods|imports|variables. Filtro de nome de definição. Defina advanced=true ao usar intencionalmente filtros de caminho/ltree/chamada.
min_depth Opcional
Tipo
int
Descrição
Avançado — prefira preset=functions|classes|methods|imports|variables. Profundidade AST mínima. Defina advanced=true ao usar intencionalmente filtros de caminho/ltree/chamada.
max_depth Opcional
Tipo
int
Descrição
Avançado — prefira preset=functions|classes|methods|imports|variables. Profundidade AST máxima. Defina advanced=true ao usar intencionalmente filtros de caminho/ltree/chamada.

Melhor Para:

  • Estrutura em nível de AST: classes, decorators, presets de function/method
  • Encontrar código pela forma, não pelo texto

Não Recomendado Para:

  • Consultas de texto livre ou conceituais — use semantic_search ou intelligent_search

Superfície principal de raio de impacto / grafo. Responde a “o que chama isto?” / “o que isto usa?” por meio do grafo real de chamadas/importações. Para impacto antes de editar: analysis_type="dependents" ou analysis_type="impact" (entrada, profundidade superficial padrão para impact), include_metrics=false por padrão (ative para centralidade + refactor_risk). Impacto PR/diff: passe changed_paths e/ou patch (diff unificado) — resolve símbolos por caminho e retorna um payload compacto de dependentes de entrada superficiais sem exigir um nome de símbolo. Após uma edição, defina verify_after_edit=true com targets e/ou changed_paths para uma nova consulta compacta multi-raiz dos símbolos impactados. Também aceita dependencies, centrality e orphans. analyze_dependencies usa a mesma travessia para analisar o impacto em vários saltos. dependents/impact incluem production_callers por padrão: pontos de uso únicos em produção por categoria (call, instantiate, value_reference para funções passadas como valores), além dos pontos IMPORT, sem testes e com confiança EXTRACTED/INFERRED — não um simples despejo de métricas.

Parâmetros:

repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
query Opcional
Tipo
str
Descrição
Nome do símbolo ou termo de busca
target Opcional
Tipo
str
Descrição
Nome do símbolo (alias de query)
symbol_id Opcional
Tipo
UUID
Descrição
Selecione por UUID uma ocorrência específica entre os candidatos do nome indicado em query/target, após filtrar por namespace, caminho e linguagem. Use um ID retornado por find_symbol ou pelos resultados alternativos do grafo. Apenas para percursos com um nome indicado; um ID fora da janela limitada de candidatos gera um erro.
changed_paths Opcional
Tipo
list[str] maxItems=50
Descrição
Caminhos de arquivo exatos relativos ao repositório para análise de impacto PR/diff (padrão) ou, com verify_after_edit=true, pontos de partida da verificação pós-edição. Caminhos não resolvidos podem retornar sugestões rotuladas; os arquivos sugeridos nunca se tornam raízes de impacto. PR/diff: sem informação de linha, percorre as definições de nível superior de cada caminho (exportadas primeiro, na ordem do arquivo) e informa changed_lines_unknown; passe patch= para obter os símbolos alterados por linha. Verificação: até 5 definições de nível superior por caminho como pontos de partida (com um limite máximo menor no modo de verificação). Não requer query/target para impacto PR/diff.
patch Opcional
Tipo
str maxLength=500000
Descrição
Impacto PR/diff: texto de um diff unificado ou patch do git. Os caminhos vêm dos cabeçalhos diff --git / --- / +++; as linhas de cada hunk (lado antigo = o commit indexado) são mapeadas para as funções, métodos ou classes que as contêm, que são percorridos para obter os dependentes exatos, public_api_changed e os chamadores que o diff não toca.
head_commit Opcional
Tipo
str pattern=^[0-9a-fA-F]{7,64}$
Descrição
SHA do commit do código sobre o qual você está perguntando (git rev-parse HEAD, ou o commit base do patch). complete:true exige que o índice esteja nesse commit e tenha sido gerado pelo resolver atual; caso contrário, fica complete:false com index_stale / index_freshness_unverified / index_built_by_older_resolver, e index_basis.statement diz em que escopo a resposta é completa. A linha 'base-commit:' de um patch (git format-patch --base) também fornece esse valor.
analysis_type Opcional
Tipo
Literal[centrality, dependencies, dependents, impact, orphans]
Padrão
dependencies
Descrição
Modo de análise. impact = raio de impacto (dependentes de entrada; profundidade superficial quando depth é omitido). dependents também responde a impact. Quando changed_paths ou patch é definido, a análise é forçada para o impacto PR/diff. centrality/orphans não exigem target. Os orphans são candidatos a código não utilizado, não uma prova de que a remoção é segura; verifique as referências no código-fonte.
depth Opcional
Tipo
Literal[shallow, balanced, deep]
Descrição
Profundidade de travessia. O padrão é balanced; impact e PR/diff impact usam shallow por padrão. Um depth explícito substitui esses padrões. O modo de verificação sempre usa shallow.
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
20
Descrição
Máximo de resultados por página sem cursor. A continuação usa o tamanho de página armazenado em cursor; omita cursor para começar com um limit diferente.
offset Opcional
Tipo
int minimum=0
Descrição
Deslocamento de compatibilidade obsoleto. Prefira cursor de pagination.next_cursor.
cursor Opcional
Tipo
str
Descrição
Cursor opaco vindo de pagination.next_cursor. Repasse-o sem alterações e mantenha query e os filtros inalterados. Sua posição e tamanho de página têm prioridade sobre offset e limit.
path_filter Opcional
Tipo
str
Descrição
Restringe a resolução do símbolo de destino pelo prefixo do caminho do arquivo; os relacionamentos de grafo retornados podem ultrapassar esse caminho.
language_filter Opcional
Tipo
str
Descrição
Filtra a resolução do alvo e os resultados de navegação por linguagem
direction Opcional
Tipo
Literal[outgoing, incoming, both]
Descrição
Direção da travessia (substitui a inferência de analysis_type)
relationship_types Opcional
Tipo
list[str]
Descrição
Filtra os tipos de aresta (CALL, IMPORT, INHERITS_FROM etc.). Uma lista não vazia substitui os padrões de graph_view.
exclude_test_paths Opcional
Tipo
bool
Padrão
true
Descrição
Padrão true: exclui caminhos de testes, fixtures, código de terceiros e exemplos dos resultados de travessia e centralidade. Defina false para incluí-los. A análise de símbolos órfãos só respeita isso onde o backend implantado oferece suporte; caso contrário, mantém suas próprias exclusões de ruído mais rígidas e informa o ajuste.
exclude_generated_paths Opcional
Tipo
bool
Padrão
false
Descrição
Excluir dos resultados de travessia as declarações geradas e os caminhos de artefatos de build, cobertura, cache, mapas de código-fonte e arquivos minificados
include_module_symbols Opcional
Tipo
bool
Padrão
false
Descrição
Padrão false: exclui arestas cujo from_name ou to_name seja o símbolo sintético __module__ (ruído no nível do módulo). Defina true para incluir arestas no nível do módulo nos resultados de dependents/dependencies.
include_isolated Opcional
Tipo
bool
Descrição
Somente para símbolos órfãos. Padrão false. Defina true para retornar também símbolos sem linha de métricas de grafo (nenhuma aresta no grafo). Enquanto exclude_test_paths for true, símbolos de folhas de estilo, marcação e dados (CSS, HTML, ...), declarações .d.ts e caminhos test/fixture/vendor/example continuam excluídos onde o backend oferece suporte, a menos que language_filter indique essa linguagem; propriedades de literais de objeto TypeScript ainda podem aparecer como funções isoladas.
exclude_exported Opcional
Tipo
bool
Padrão
false
Descrição
Somente para símbolos órfãos. Padrão false: símbolos exportados (API pública) sem uso no repositório são retornados com is_exported=true. Defina true para obter apenas candidatos internos.
branch Opcional
Tipo
str
Descrição
Substituição de branch
per_hop_limit Opcional
Tipo
int minimum=1, maximum=300
Descrição
Máximo de relações por salto (1-300)
include_metrics Opcional
Tipo
bool
Padrão
false
Descrição
Métricas de grafo opcionais nas linhas de resultado (compactadas com refactor_risk). As métricas também são obtidas internamente quando min_centrality>0, mas só são retornadas se isto for true.
metrics_detail Opcional
Tipo
Literal[summary, full]
Padrão
summary
Descrição
Quando include_metrics=true: summary (padrão) retorna sinais de decisão + refactor_risk; full retorna o maior conjunto de métricas selecionadas
include_edge_metadata Opcional
Tipo
bool
Padrão
false
Descrição
Incluir metadados brutos e pesos das arestas (volume grande). Respostas compactas de impacto mantêm esta opção desativada.
symbol_types Opcional
Tipo
list[str]
Descrição
Filtra os símbolos retornados por tipo (function, class, method etc.). Não suportado na análise orphan; use path_filter ou language_filter nesse caso. Uma lista vazia não aplica nenhum filtro por tipo.
exact_match Opcional
Tipo
bool
Padrão
false
Descrição
Exigir correspondência exata do nome do símbolo
find_similar_patterns Opcional
Tipo
bool
Padrão
false
Descrição
Encontrar padrões de uso semelhantes
min_centrality Opcional
Tipo
float minimum=0
Padrão
0
Descrição
Pontuação mínima de PageRank para o percurso de símbolos nomeados e para a análise de impacto de PR/diff. Limiares positivos não são suportados nos modos de navegação centrality/orphans. As métricas são obtidas internamente para filtragem; graph_metrics só é retornado quando include_metrics=true. É ignorado por verify_after_edit, que usa controles compactos fixos.
graph_view Opcional
Tipo
Literal[dependency, type, data_flow, control_flow]
Padrão
dependency
Descrição
Visualização do grafo usada para os padrões de relacionamento de travessia, métricas e classificação de centralidade; a análise de órfãos é calculada em todas as visualizações
verify_after_edit Opcional
Tipo
bool
Padrão
false
Descrição
Reconsulta o grafo de impacto indexado para símbolos editados em uma única resposta compacta com múltiplas raízes. Requer targets e/ou changed_paths (ou target/query). Usa uma travessia shallow fixa e orçamentos compactos; os controles depth/limit/cursor/metrics não se aplicam. Por padrão, retorna incoming dependents; os resultados refletem o grafo indexado (pode estar atrasado em relação a edições ao vivo). Quando true, tem prioridade sobre PR/diff impact para os mesmos changed_paths.
targets Opcional
Tipo
list[str] maxItems=15
Descrição
Quando verify_after_edit=true: nomes de símbolos a verificar novamente (chamadores/dependentes). São combinados com target/query quando ambos são fornecidos.

Melhor Para:

  • Análise de raio de impacto antes de editar um símbolo compartilhado
  • Impacto PR/diff via changed_paths e/ou patch
  • Verificação após a edição via verify_after_edit

Não Recomendado Para:

  • Buscas simples de texto ou símbolo — prefira text_pattern_search ou find_symbol

Ferramentas de Análise de Código

#

find_symbol Estável

Vá para a definição e os usos de uma função, classe ou variável. Use quando souber o nome (por exemplo, “getCurrentUser”): é mais rápido e preciso que Grep e cobre todo o repositório indexado. Também pode retornar referências e métricas de importância.

Parâmetros:

symbol_name Opcional
Tipo
str
Descrição
Nome do símbolo a pesquisar (opcional — omita para explorar por métricas)
repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
scope Opcional
Tipo
Literal[definitions, references, both]
Padrão
both
Descrição
Escopo da busca; references requer um symbol_name não vazio.
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
15
Descrição
Máximo de resultados por página sem cursor. A continuação usa o tamanho de página armazenado em cursor; omita cursor para começar com um limit diferente.
offset Opcional
Tipo
int minimum=0
Descrição
Deslocamento de compatibilidade obsoleto. Prefira cursor de pagination.next_cursor.
cursor Opcional
Tipo
str
Descrição
Cursor opaco vindo de pagination.next_cursor. Repasse-o sem alterações e mantenha query e os filtros inalterados. Sua posição e tamanho de página têm prioridade sobre offset e limit.
find_similar Opcional
Tipo
bool
Padrão
false
Descrição
Incluir nomes de símbolos semelhantes
include_metrics Opcional
Tipo
bool
Padrão
false
Descrição
Incluir métricas de centralidade
metrics_detail Opcional
Tipo
Literal[summary, full]
Padrão
summary
Descrição
Quando include_metrics=true: summary (padrão) retorna sinais de decisão + refactor_risk; full retorna o maior conjunto de métricas selecionadas
path_filter Opcional
Tipo
str
Descrição
Filtrar por prefixo do caminho do arquivo
branch Opcional
Tipo
str
Descrição
Substituição de branch
symbol_type Opcional
Tipo
str minLength=1
Descrição
Filtrar pelo tipo de símbolo indexado, por ex. function, class, struct, enum ou trait. Use o tipo retornado por um resultado de símbolo; o tipo varia conforme a linguagem.
high_impact Opcional
Tipo
bool
Padrão
false
Descrição
Navega pelos símbolos arquiteturalmente importantes (omita symbol_name). O modo padrão é popularity (decil superior de PageRank menos os mega-hubs utilitários). Defina high_impact_mode=risk para vértices de corte ou pontos de articulação que atuam como pontes.
high_impact_mode Opcional
Tipo
Literal[popularity, risk]
Padrão
popularity
Descrição
Quando high_impact=true: popularity = decil superior de PageRank, excluindo mega-hubs e módulos utilitários; risk = pontos de articulação ordenados por SMV bridge_count e depois por k_core (risco estrutural de refatoração, não popularidade do hub)
in_cycle Opcional
Tipo
bool
Padrão
false
Descrição
Filtra símbolos com participação registrada em um ciclo de dependências.
exclude_test_paths Opcional
Tipo
bool
Padrão
true
Descrição
Ao navegar pelas métricas do grafo, exclua testes, fixtures, código de terceiros e exemplos antes da classificação. A busca de símbolos por nome permanece inalterada.
reference_views Opcional
Tipo
list[Literal[dependency, type, data_flow, control_flow, all]] minItems=1, maxItems=5
Descrição
Visões do grafo cujas arestas de entrada preenchem references/reference_count (scope references/both). Padrão ["dependency", "type"]: chamadas, importações, exportações, referências, instanciações, herança, sobrescritas, decoradores e uso de tipos. Sem selecionar data_flow, os usos de data_flow resolvidos exatamente (callbacks, manipuladores, chaves de ordenação) são retornados separadamente como value_references/value_reference_count, sem correspondências inferidas apenas pelo nome. Adicione data_flow ou control_flow, ou passe ["all"] para todos os tipos e níveis de aresta. As mesmas famílias de visões de graph_view em dependency_search.
relationship_types Opcional
Tipo
list[str]
Descrição
Tipos explícitos de arestas de referência (CALL, IMPORT, READS etc.). Uma lista não vazia substitui reference_views.

Melhor Para:

  • Localizar a definição, as referências e as métricas de grafo de um símbolo conhecido
  • Navegar por centrality, high_impact ou in_cycle quando symbol_name é omitido

Não Recomendado Para:

  • Consultas conceituais ou áreas desconhecidas — use intelligent_search ou semantic_search

analyze_dependencies Estável

Analisa o raio de impacto com a mesma travessia de dependency_search (dependents/incoming). Prefira dependency_search com analysis_type="dependents" ou "impact" para análise de impacto. Retorna uma resposta de impacto em vários saltos com graph, connection_summary e métricas opcionais com refactor_risk. Use graph_view para delimitar a família de relações: dependency (padrão), type, data_flow, control_flow. connection_summary conta, para a raiz escolhida, as arestas restritas à família de relações, antes de qualquer filtragem por testes ou caminhos. Os campos legados incoming_production/outgoing_production designam arestas fora de módulos, testes incluídos; não são contagens de chamadores de produção.

Parâmetros:

repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
target Obrigatório
Tipo
str minLength=1
Descrição
Nome do símbolo a analisar
symbol_id Opcional
Tipo
UUID
Descrição
Selecione por UUID uma ocorrência específica entre os candidatos de target, após filtrar por namespace, caminho e linguagem; IDs fora da janela limitada de candidatos geram um erro.
depth Opcional
Tipo
Literal[shallow, balanced, deep]
Padrão
balanced
Descrição
Profundidade da análise
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
10
Descrição
Máximo de resultados por página sem cursor. A continuação usa o tamanho de página armazenado em cursor; omita cursor para começar com um limit diferente.
offset Opcional
Tipo
int minimum=0
Descrição
Deslocamento de compatibilidade obsoleto. Prefira cursor de pagination.next_cursor.
cursor Opcional
Tipo
str
Descrição
Cursor opaco vindo de pagination.next_cursor. Repasse-o sem alterações e mantenha query e os filtros inalterados. Sua posição e tamanho de página têm prioridade sobre offset e limit.
direction Opcional
Tipo
Literal[incoming, outgoing, both]
Padrão
incoming
Descrição
Direção da travessia
relationship_types Opcional
Tipo
list[str]
Descrição
Filtra tipos de aresta (CALL, IMPORT, INHERITS_FROM etc.). Uma lista não vazia substitui os padrões de graph_view; uma lista vazia usa esses padrões.
graph_view Opcional
Tipo
Literal[dependency, type, data_flow, control_flow]
Padrão
dependency
Descrição
Visão do grafo: determina tanto os tipos de aresta percorridos por padrão quanto as métricas de qual visão são usadas quando include_metrics=true. dependency=[CALL,IMPORT,EXPORTS,REFERENCE,INSTANTIATES] (padrão), type=[INHERITS_FROM,IMPLEMENTS,OVERRIDE,DECORATES,OF_TYPE], data_flow=[READS,WRITES,ASSIGNS_TO], control_flow=[CONTROL_FLOW,THROWS,CATCHES]. Aplicado como padrão de relationship_types quando relationship_types é omitido ou está vazio. Corresponde ao nome do parâmetro graph_view já existente em dependency_search, por consistência entre as ferramentas.
path_filter Opcional
Tipo
str
Descrição
Restringe a resolução do símbolo de destino pelo prefixo do caminho do arquivo; os relacionamentos de grafo retornados podem ultrapassar esse caminho.
language_filter Opcional
Tipo
str
Descrição
Restringe resultados a uma linguagem
branch Opcional
Tipo
str
Descrição
Substituição de branch
per_hop_limit Opcional
Tipo
int minimum=1, maximum=300
Descrição
Máximo de relações por salto (1-300)
include_metrics Opcional
Tipo
bool
Padrão
false
Descrição
Incluir métricas do grafo nos resultados, cada uma enriquecida com um bloco refactor_risk derivado ({risk: "low"|"medium"|"high", is_articulation_point, bridge_count, k_core, graph_view, reasons}). O risco é "low" quando não é um ponto de articulação na visualização selecionada, "medium" quando é um ponto de articulação que conecta poucas arestas e "high" quando conecta muitas (limiar heurístico, não validado empiricamente). As métricas são omitidas para cada símbolo que não tenha uma linha de métricas na visualização selecionada.
metrics_detail Opcional
Tipo
Literal[summary, full]
Padrão
summary
Descrição
Quando include_metrics=true: summary (padrão) retorna sinais de decisão + refactor_risk; full retorna o maior conjunto de métricas selecionadas
include_edge_metadata Opcional
Tipo
bool
Padrão
false
Descrição
Incluir metadados brutos e pesos das arestas. Desativado por padrão porque os metadados do extrator podem ser grandes; a cobertura de enriquecimento é informada quando a opção está ativada.
exclude_test_paths Opcional
Tipo
bool
Padrão
true
Descrição
Padrão true: exclui caminhos de testes, fixtures, código de terceiros e exemplos das arestas retornadas do grafo. Defina false para incluí-los.
include_module_symbols Opcional
Tipo
bool
Padrão
false
Descrição
Padrão false: exclui arestas do grafo quando from_name ou to_name é o símbolo sintético __module__. Defina true para incluir arestas no nível do módulo.
head_commit Opcional
Tipo
str pattern=^[0-9a-fA-F]{7,64}$
Descrição
SHA do commit do código sobre o qual você está perguntando (git rev-parse HEAD, ou o commit base do patch). complete:true exige que o índice esteja nesse commit e tenha sido gerado pelo resolver atual; caso contrário, fica complete:false com index_stale / index_freshness_unverified / index_built_by_older_resolver, e index_basis.statement diz em que escopo a resposta é completa. A linha 'base-commit:' de um patch (git format-patch --base) também fornece esse valor.

Melhor Para:

  • Análise de impacto em vários saltos quando você precisa dos campos de resposta graph e connection_summary

Não Recomendado Para:

  • Análise geral de impacto — prefira dependency_search para travessias flexíveis e verificações com vários pontos de partida

get_task_context Estável

Vai começar a trabalhar em uma área desconhecida? Descreva a tarefa (por exemplo, "adicionar suporte a SSO", "corrigir o webhook de cobrança") e obtenha, em uma única chamada, um pacote limitado de arquivos, código, símbolos e dependências relevantes. Arquivos fornecidos como seed contribuem com conteúdo diretamente indexado mesmo quando não definem símbolos. Camadas que falham são sinalizadas; uma falha total de recuperação retorna um erro de ferramenta. Para mais resultados, continue com a ferramenta de busca especializada dessa camada.

Parâmetros:

task_description Obrigatório
Tipo
str minLength=1
Descrição
Descrição da tarefa
repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
15
Descrição
Máximo de resultados por camada
scope Opcional
Tipo
Literal[semantic, symbols, dependencies, all]
Padrão
all
Descrição
Quais camadas de contexto incluir
language_filter Opcional
Tipo
str
Descrição
Filtro de linguagem: exige scope=semantic sem sementes explícitas nem contexto relacionado; os índices das outras camadas não conseguem aplicar o filtro de linguagem
path_filter Opcional
Tipo
str
Descrição
Prefixo do caminho de arquivo para as raízes de recuperação semântica e por palavras-chave. As sementes explícitas podem estar fora desse prefixo; o contexto do grafo pode atravessar limites de diretório.
branch Opcional
Tipo
str
Descrição
Substituição de branch
include_related_context Opcional
Tipo
bool
Padrão
false
Descrição
Incluir contexto relacionado de símbolos adjacentes
seed_symbol_ids Opcional
Tipo
list[str] maxItems=20
Descrição
Sementes explícitas da tarefa: aparecem primeiro na camada de símbolos e são mantidas dentro da janela limitada dependencies/related_context. As camadas do grafo classificam as sementes explícitas e a vizinhança mais próxima delas antes de recorrer às palavras-chave; a importância só desempata quando a relevância é igual. A expansão do grafo exige scope=all|dependencies (scope=symbols|semantic nunca executa a travessia de dependências). Omita para uma classificação baseada apenas em palavras-chave, por importância decrescente com a profundidade.
seed_file_paths Opcional
Tipo
list[str] maxItems=10
Descrição
Sementes explícitas: caminhos exatos de arquivos indexados que o agente mantém abertos ou acabou de editar. Retorna uma quantidade limitada de evidências diretas do conteúdo dos arquivos e até 5 sementes de grafo por arquivo, priorizando as correspondências exatas com o nome da tarefa vindas de uma busca de símbolos limitada, antes das definições e dos símbolos incidentais. Arquivos sem símbolos também fornecem evidências. Arquivos ausentes podem retornar sugestões rotuladas que não são sementes. A expansão do grafo exige scope=all|dependencies.

Melhor Para:

  • Contexto ciente da tarefa que combina arquivos semente com camadas semânticas, de símbolos e de dependências

Não Recomendado Para:

  • Buscas com uma única ferramenta quando uma ferramenta mais específica já responde à pergunta

get_file Estável

Lê um arquivo do repositório indexado pelo caminho. Prefira ferramentas de arquivo locais para arquivos em disco; use isto para snapshots indexados remotos. Continue respostas limitadas com metadata.next_line_start e next_character_start. Remova a quebra de linha final e o marcador [truncated] somente quando metadata.truncated=true; caso contrário, pode ser texto-fonte literal.

Parâmetros:

file_path Obrigatório
Tipo
str
Descrição
Caminho do arquivo relativo à raiz do repositório
repository Opcional
Tipo
str
Descrição
Repositório no formato owner/repo[:branch]. Opcional — omita para usar o padrão do cliente no escopo da solicitação (quando fornecido) ou o único repositório acessível; informe explicitamente apenas para selecionar outro repositório indexado. Ramificações indexadas exatas são preferidas; uma ramificação indisponível pode recorrer à main ou à única ramificação acessível. Os metadados da resposta mostram a identidade solicitada e a resolvida, com aviso quando há esse recuo.
line_start Opcional
Tipo
int minimum=1
Descrição
Linha inicial (indexada a partir de 1)
line_end Opcional
Tipo
int minimum=1
Descrição
Linha final (indexada a partir de 1, inclusive; deve ser igual ou posterior a line_start)
character_start Opcional
Tipo
int minimum=0
Padrão
0
Descrição
Deslocamento em unidades de código UTF-16 apenas dentro da linha inicial (índice a partir de 0). Use metadata.next_character_start para continuar uma linha parcialmente lida.
branch Opcional
Tipo
str
Descrição
Substituição de branch
max_tokens Opcional
Tipo
int minimum=1, maximum=50000
Padrão
5000
Descrição
Orçamento aproximado de conteúdo (4 unidades de código UTF-16 por token; não é um limite exato do tokenizador).
include_metadata Opcional
Tipo
bool
Padrão
true
Descrição
Inclui metadados descritivos do arquivo. Metadados de truncamento e continuação são sempre retornados.

Melhor Para:

  • Snapshots de arquivos remotos ou indexados (intervalos de linhas, limites de tokens)

Não Recomendado Para:

  • Um caminho já presente no disco local — use a ferramenta Read local

Ferramentas de Sistema e Utilitários

#

repository_context Estável

Lista os repositórios que você pode pesquisar, ou obtém informações de identidade de um deles (namespace/branch, indexed_commit_sha / atualidade do índice). Use action:"list" quando o slug do repositório for desconhecido; as ferramentas de busca aceitam um slug conhecido diretamente ou usam por padrão o único repositório da sua chave. list usa pattern e paginação; info requer repository e suporta branch e include_statistics=true como opção.

Parâmetros:

action Obrigatório
Tipo
Literal[list, info]
Descrição
Ação: listar repositórios disponíveis ou obter informações de um repositório
repository Opcional
Tipo
str
Descrição
Somente para info: repositório no formato owner/repo ou owner/repo:branch (obrigatório para info)
branch Opcional
Tipo
str
Descrição
Somente para info: substituição de branch
pattern Opcional
Tipo
str
Descrição
Somente para list: substring do nome do repositório, sem diferenciar maiúsculas de minúsculas
include_statistics Opcional
Tipo
bool
Padrão
false
Descrição
Somente informativo: inclui contagens limitadas de dados indexados. As contagens de file/blob são exatas; contagens de índice maiores são estimativas. Consulte count_accuracy e estimate_analyzed_at. Padrão false.
limit Opcional
Tipo
int minimum=1, maximum=50
Padrão
20
Descrição
Máximo de resultados por página sem cursor. A continuação usa o tamanho de página armazenado em cursor; omita cursor para começar com um limit diferente.
offset Opcional
Tipo
int minimum=0
Descrição
Deslocamento de compatibilidade obsoleto. Prefira cursor de pagination.next_cursor.
cursor Opcional
Tipo
str
Descrição
Cursor opaco vindo de pagination.next_cursor. Repasse-o sem alterações e mantenha query e os filtros inalterados. Sua posição e tamanho de página têm prioridade sobre offset e limit.

Melhor Para:

  • Listar os repositórios acessíveis
  • Resolver a identidade do repositório, o branch e a atualidade de HEAD em relação ao índice

Não Recomendado Para:

  • Estatísticas de todo o namespace por padrão — passe include_statistics=true explicitamente, já que pode ser mais lento que a resolução

ask_maguyva Estável

Obtenha orientações sobre as ferramentas do Maguyva ou envie um relato de bug ou pedido de recurso que ficará armazenado para os responsáveis pela manutenção do Maguyva. Nunca inclua segredos ou dados pessoais sensíveis nos comentários. evaluate aceita expressões determinísticas; prefira o cálculo local ou ferramentas do ambiente para matemática, hashes e strings.

Parâmetros:

operation Obrigatório
Tipo
Literal[guidance, report_bug, request_feature, evaluate]
Descrição
Use guidance para ajuda com ferramentas, report_bug para bugs ou request_feature para sugestões. evaluate executa expressões determinísticas; prefira cálculos locais.
query Opcional
Tipo
str maxLength=500
Descrição
Tópico de orientação (por exemplo, tool_selection, semantic_search) ou string de expressão para evaluate.
description Opcional
Tipo
str minLength=1, maxLength=4000
Descrição
Obrigatório para report_bug e request_feature. Feedback de formato livre para os mantenedores do Maguyva. Nunca inclua segredos ou dados pessoais sensíveis.
related_tool Opcional
Tipo
Literal[ask_maguyva, get_file, repository_context, find_symbol, structural_search, dependency_search, analyze_dependencies, semantic_search, text_pattern_search, intelligent_search, get_task_context]
Descrição
Ferramenta opcional do Maguyva mais diretamente relacionada ao feedback

Melhor Para:

  • Orientação sobre ferramentas (operation="guidance")
  • Relatórios de bugs duradouros e solicitações de recursos para os mantenedores do Maguyva

Não Recomendado Para:

  • Cálculos matemáticos, hashes e strings — prefira cálculo local ou ferramentas do ambiente

Boas Práticas

#
  1. Use substituições explícitas de forma consciente: Omita o repositório quando o cliente MCP fornecer um padrão para a solicitação ou quando a chave puder acessar exatamente um repositório; caso contrário, informe-o explicitamente.
  2. Escolha o Modo de Busca Certo: Use intelligent_search com mode="auto" na maioria dos casos. Especifique um modo quando você souber exatamente o que precisa.
  3. Aproveite os Filtros de Linguagem: Use language_filter para restringir resultados e melhorar a performance.
  4. GraphRAG Boosting: O boosting de importância do GraphRAG vem desativado por padrão para a busca semântica (boost_by_importance=false), para manter uma ordenação segura para os agentes. Passe boost_by_importance=true para ativar a reordenação baseada em centralidade em tours de arquitetura.
  5. Correspondência de repositório ignora maiúsculas/minúsculas, mas não é aproximada: repository_context compara nomes de repositório sem diferenciar maiúsculas de minúsculas — mas não corrige erros de digitação. Quando a identidade entregue difere da solicitada, metadata.resolution_reason informa "defaulted" (nenhum branch foi solicitado) ou "fallback" (o branch ou repositório solicitado está indisponível). O campo é omitido quando a solicitação corresponde exatamente.
  6. Combine Ferramentas: Use vários métodos de API juntos para uma análise abrangente.
  7. Lide com Resultados Grandes: Use limit e controles de paginação específicos de cada ferramenta (por exemplo, line_start/line_end em get_file).
  8. Use o ask_maguyva para Orientação sobre Ferramentas: Chame ask_maguyva com operation="guidance" e query="tool_selection" para orientações e exemplos de seleção de ferramentas. Use ferramentas locais para cálculos e transformações de strings.
  9. Verifique o Impacto Antes e Depois de Editar: Antes de editar um símbolo compartilhado, chame dependency_search com analysis_type="impact" (ou passe changed_paths para o impacto de um PR/diff) para ver seu raio de impacto. Depois de editar, defina verify_after_edit=true com targets e/ou changed_paths para uma nova verificação compacta do grafo indexado. Essa verificação lê o grafo indexado, não alterações locais ainda não commitadas, e não substitui os testes locais. Confira indexed_commit_sha e a atualização do índice antes de tratar os resultados como evidência de uma nova revisão.

Características de Performance

#
Operação Notas de performance
Busca semântica Inclui a geração do vetor da consulta e a recuperação vetorial. A latência depende das duas operações.
Busca de texto Na busca aproximada de conteúdo, páginas mais profundas buscam mais candidatos. Restrinja a consulta com path_filter e language_filter.
Busca estrutural Consulta nós AST indexados. Use uma predefinição ou padrão específico e limite a quantidade de resultados.
Busca de dependências O custo escala com a profundidade — prefira depth="shallow", a menos que precise de contexto multi-hop; per_hop_limit limita a expansão
Recuperação de arquivo Leia o intervalo necessário com line_start/line_end ou max_tokens e use os metadados de continuação retornados para conteúdos truncados.
Contexto de repositório A resolução do repositório ocorre em cada chamada de ferramenta. Passe repository explicitamente quando precisar de um repositório específico.
ask_maguyva (guidance / evaluate) Executa no servidor MCP sem consultar o índice do repositório.

Tratamento de Erros

#

As respostas contêm campos de status comuns e campos de conteúdo específicos de cada ferramenta no nível superior. Buscas retornam results; get_file retorna content. Os campos comuns incluem:

  • status: String — "success" ou "error". Sinais de correspondência degradada e de atualidade ficam em campos próprios: metadata.resolution_reason dentro de metadata e index_freshness.status no nível superior da ação info do repository_context.
  • timing_ms: Tempo de execução da ferramenta em milissegundos
  • applied_filters: Parâmetros efetivos da solicitação registrados para a operação
  • error: String da mensagem de erro quando status é "error"; pode incluir orientações de recuperação.
  • metadata: Informações adicionais sobre a operação (roteamento, cache, ajustes de parâmetro)
  • pagination: Presente em respostas de coleções paginadas por cursor — inclui has_more e next_cursor. As janelas de busca ordenadas por relevância são resultados top-K limitados, não coleções completas paginadas.

Verifique o campo status antes de processar o payload de uma ferramenta — seus valores são "success" ou "error". Trate também erros de transporte MCP/JSON-RPC e de validação da requisição, que podem ocorrer antes de qualquer payload ser produzido. Para sinais de correspondência degradada ou de atualidade, leia o campo dedicado: metadata.resolution_reason dentro de metadata, ou index_freshness.status no nível superior da ação info do repository_context (known/partial/unknown/unavailable).

Primeiros Passos

#
  1. Configure o Cliente MCP: Aponte seu cliente MCP para o endpoint do servidor Maguyva
  2. Confirme o Acesso ao Repositório: Use repository_context com list ou info para verificar os repositórios disponíveis para a chave de API
  3. Comece a Buscar: Comece com intelligent_search e explore ferramentas especializadas conforme necessário
  4. Combine Ferramentas: Use várias ferramentas juntas para uma análise de código abrangente

Para instruções de integração detalhadas, veja o guia de instalação.