Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BABEL_URLNoThe base URL of the running Babel's Hoard application. Defaults to http://127.0.0.1:8811.http://127.0.0.1:8811

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
docs_librariesA

List indexed libraries, exact versions and project environments (libraries, librerías, versión, entornos)

What Babel has indexed (exact versions), the registered environments (project interpreters / node_modules folders; default_for says which one answers Python or TypeScript when env is omitted) and recent background jobs. Use it to find an env id, or to follow a docset install / dependency indexing job. Installed packages that are not listed yet are indexed automatically the first time api_lookup or api_check_code needs them.

Args: ecosystem: "python", "js", "docset" or "markdown". env: environment id or project path; limits libraries to that environment. limit: libraries per page (default 15, max 200). offset: for the next page.

Returns: {libraries: [{id, ecosystem, name, version, env, status, entries}], total, has_more, next_offset, environments: [{id, label, python, default, ...}], jobs: [{id, kind, status, progress, message}]}. Keywords: list libraries, what is installed, which version, environments, job progress, listar librerias, que hay instalado, que version tengo, entornos, progreso

docs_searchA

Search installed APIs and docs by words (search docs, buscar función, cómo se hace, documentación)

Ranked full-text search over indexed APIs, offline docsets and markdown docs. Use it when you know roughly what you need but not the exact name ("read a csv", "retry on timeout"); then call api_lookup on the qualname you pick, or docs_read on a section id. Only searches what is already indexed.

Args: query: words or an identifier; camelCase/snake_case/dotted names match by parts. library: one library name, e.g. "pandas" or a docset name. ecosystem: "python", "js", "docset" or "markdown". kind: "module", "class", "function", "method", "attribute", "property" or "section". env: environment id or project path. limit: default 8, max 50.

Returns: {results: [{id, qualname, kind, library, signature, summary, score}], count, truncated, did_you_mean?}. Signatures and summaries are cut at 200 characters. Keywords: search docs, find function, how do I, which function, buscar documentacion, como se hace, que funcion, encontrar funcion

api_lookupA

Exact signature of an installed API (signature, firma, parámetros, documentación, versión instalada)

Parameters (with defaults and which are required), return type, docstring and source location of one dotted symbol, from the version installed in the environment - e.g. "pandas.DataFrame.merge", "httpx.Client", "json.dumps", or "react.useState" for a node_modules package. Use it before calling any API you are not sure about. Indexes the package on first use (local, no network; can take seconds).

Args: symbol: fully dotted path starting with the import name. env: environment id, project folder path, or omitted for the default environment. library: optional library name to disambiguate.

Returns: found=true -> {id, qualname, kind, signature, params: [{name, kind, annotation, default, required, description}], returns, summary, doc (first 1500 chars), doc_truncated, members (for modules/classes), library, source}. Use docs_read(id) for the rest of a long doc. found=false -> {certain, suggestions: [real names], message}; certain=false means the name may still exist at runtime. Keywords: signature, parameters, arguments, api lookup, what does it take, return type, firma, parametros, argumentos, que recibe, que devuelve, existe esta funcion

api_check_codeA

Check code for hallucinated or misused APIs of installed versions (check code, comprobar código, validar)

Statically checks a snippet against the libraries installed in the environment: unknown modules/attributes (hallucinated or removed APIs), unexpected keyword arguments, too many positional arguments, missing required arguments, deprecated calls. Never runs the code. Run it on code you wrote before showing it; fix errors, re-check.

Args: code: the source (a whole file or a snippet; imports must be included). env: environment id, project folder path, or omitted for the default environment. language: "python" (full checks) or "typescript" (v1: named imports only).

Returns: {ok, findings: [{line, col, severity, code, symbol, message, suggestion}], checked, unchecked, libraries}. ok is false only for errors. severity "warning" = not a declared member but the class/module creates names dynamically, or deprecated. Babel stays silent on anything it cannot prove (dynamic code, unknown types, try/except ImportError, hasattr guards); those count in 'unchecked'. Keywords: check code, validate code, hallucinated api, does this exist, wrong arguments, verify snippet, comprobar codigo, revisar codigo, validar, existe, alucinacion

docs_readA

Read the full text of one doc entry by id, in chunks (read docs, leer documentación, seguir leyendo)

One entry is a docset page section, a markdown section or a long docstring. Ids come from docs_search results and from api_lookup (field id).

Args: id: the entry id, passed back exactly. offset: character offset to continue from (use next_offset). max_chars: chunk size, default 4000, max 20000.

Returns: {found, qualname, library, text, offset, total_chars, has_more, next_offset}. Keywords: read doc, full documentation, read more, continue, leer documentacion, seguir leyendo, documentacion completa

docs_add_environmentA

Register a project folder or venv so its packages can be checked (register project, registrar proyecto)

Accepts a project folder (its .venv/venv/env and node_modules, also in frontend/, web/, client/ or ui/, are detected), a python/python.exe interpreter, or a node_modules folder. The most recently registered project becomes the default env (per language: Python checks never default to a node_modules-only env). Registering again is harmless and makes it the default again.

Args: path: absolute path to the project folder, interpreter or node_modules. index_dependencies: also index the project's direct dependencies (from pyproject.toml / requirements*.txt) in a background job.

Returns: {environment: {id, label, python, ...}, dependency_job_id, dependencies, message}. Keywords: register project, add environment, use this project, index project, registrar proyecto, anadir entorno, indexar proyecto, usar este proyecto

docs_catalogA

List downloadable offline docsets; uses internet (docset catalogue, catálogo, documentación offline)

Language references and frameworks: python, javascript, react, css, rust... Reaches the internet (the public DevDocs catalogue). Use before docs_install_docset to get the exact slug.

Args: query: filter by name or slug, e.g. "python" or "react". limit: default 10, max 50.

Returns: {results: [{slug, name, version, db_size_kb}], count, total, truncated}. Keywords: docset catalogue, offline docs, available documentation, download docs, catalogo de documentacion, documentacion sin conexion, que documentacion hay

docs_install_docsetA

Download and index one offline docset in background (install docs, instalar documentación, descargar)

Takes a slug from docs_catalog (e.g. "python~3.13"). Reaches the internet. Runs as a background job and returns at once; follow it with docs_libraries (jobs) and search it with docs_search when done.

Args: slug: the exact slug from docs_catalog.

Returns: {job_id, status, slug, message}. Keywords: install docset, download documentation, offline docs, instalar documentacion, descargar documentacion

docs_index_folderA

Index a folder of Markdown docs for search (index folder, indexar carpeta, documentación del proyecto)

Indexes .md/.mdx/.rst/.txt files (a project's docs/ folder, a cloned docs repository) by heading, so docs_search and docs_read can use it. Dependency, VCS and build folders are skipped; at most 2000 files.

Args: path: absolute path to the folder. name: library name to show and filter by; defaults to the folder name.

Returns: {id, name, status, entry_count, note, hint}. Keywords: index folder, index markdown, project docs, indexar carpeta, indexar documentacion, documentacion del proyecto

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.3/5.0

Scored across 9 tools

Disambiguation5/5

Each tool has a clearly distinct role in the doc/API lifecycle: catalog vs. indexed libraries, fuzzy search vs. exact lookup, snippet check vs. full read, and environment registration vs. docset install/index. Descriptions explicitly chain tools (e.g., search → lookup → read), leaving little chance of misselection.

Naming Consistency4/5

All names use snake_case and a domain prefix (docs_ for doc/environment management, api_ for API inspection), but the prefix pattern mixes noun phrases (docs_libraries, docs_catalog) with verb phrases (docs_add_environment, docs_install_docset). This is readable and mostly predictable, yet not fully uniform.

Tool Count5/5

9 tools cover the server's scope without obvious redundancy or missing core operations; each tool earns its place in the lifecycle.

Completeness4/5

Core workflows—discovering, installing, indexing, searching, reading, and validating against docs/APIs—are covered. Minor gaps exist for cleanup/removal of docsets or environments and for updating stale indexes, but agents can work around these.

Maintenance

ActivityMaintained
ResponsivenessNo issues