Skip to main content
Glama
iit-mcp-hudu

iit-mcp-hudu

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
HUDU_API_KEYYesYour Hudu API key. Required under the stdio transport and optional under http, where a request's X-Hudu-Api-Key header wins and this default fills in whatever it omits.
HUDU_BASE_URLYesThe Hudu origin to dial, e.g. https://your.hudu.host. Required under the stdio transport and optional under http, where a request's X-Hudu-Base-Url header wins and this default fills in whatever it omits.
HUDU_COOLDOWNNoThe 429 cooldown gate: on (default) arms a local deadline whose refusals answer with notSent: true; off retries a 429 per the agent profile instead.on
MCP_TRANSPORTNoSelects the transport: stdio (default) for Claude Code, Claude Desktop and VS Code, or http for remote MCP clients.stdio
HUDU_READ_ONLYNoWhen "true" (default) both mutation tools are omitted entirely. Set to "false" to enable mutations (requires also configuring HUDU_WRITE_POLICY).true
HUDU_TIMEOUT_MSNoThe whole-call deadline in positive integer milliseconds. Always sent to the SDK explicitly so it stays above the agent profile's 20 s.30000
HUDU_WRITE_ALLOWNoComma-separated canonical operation keys permitted when HUDU_WRITE_POLICY=allow_list. An empty or invalid allow-list fails startup.
HUDU_CACHE_PRESETNoToggles the read-through cache: on (default) selects the SDK's recommended per-entity TTL preset; off disables it so repeated reads re-dial Hudu.on
HUDU_SECRET_READSNoGoverns reads that return a plaintext credential (asset_passwords and password_folders resources). deny (default) refuses every such operation before any request; allow permits the credential-resource operations but never enables plaintext results.deny
HUDU_WRITE_POLICYNoDeployment-wide mutation policy: deny (default) rejects all mutations, allow_list permits only the canonical keys in HUDU_WRITE_ALLOW, and all permits the SDK's mutation surface.deny
HUDU_SEARCH_RESOURCESNoNarrows which resources the cross-resource reads (hudu_search and hudu_resolve_any, plus the same operations reached through hudu_read) may offer and query. Unset means the full set of the SDK's eight searchable resources.
HUDU_ALLOWED_BASE_HOSTSNohttp only. Comma-separated list of exact hostnames or *.example.com subdomain suffixes (no scheme, port or path; internationalised names in punycode) that a caller may name in X-Hudu-Base-Url. Required unless HUDU_ALLOW_ANY_BASE_HOST=true; when unset and HUDU_BASE_URL is set, only that default origin is accepted.
HUDU_ALLOW_ANY_BASE_HOSTNohttp only. Set to "true" to allow any caller-named origin when HUDU_ALLOWED_BASE_HOSTS is unset; without this opt-in the server refuses to boot when both HUDU_ALLOWED_BASE_HOSTS and HUDU_BASE_URL are unset.false

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": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
hudu_list_operationsA

List SDK operations with the tool exposing each, its effect, dry-run/confirm need and required arguments. This server is a curated SUBSET: hudu_describe_operation gives one operation's contract, hudu_read/hudu_write/hudu_delete run it. Bounded 1-100 rows (default 40), offset pages; the catalog is large, so filter or page.

hudu_describe_operationA

Full input contract, effect, dry-run support, errors and usage for ONE operation, by exact catalog key (never a tool name); an unknown key is CONFIG_ERROR naming the nearest.

hudu_readA

Execute READ operations only, by registry key (hudu_list_operations, hudu_describe_operation). input is closed: unknown fields are CONFIG_ERROR naming valid ones. Results mask credentials, custom fields. Article bodies: single-article reads are Markdown, list rows HTML; lossy reads set markdown_lossy. Text-channel tolerance: an integer, number or boolean field also accepts the exact string literal of its value ("61" for an id, "true" for a flag); any other string is refused.

hudu_searchA

Search Hudu; help mode="search": ranked fuzzy search over article TITLE and BODY, asset names, fields, identifiers. defaults to tier "index": body-complete. Empty: read meta.degraded; unhonoured field is CONFIG_ERROR

hudu_resolve_anyA

Resolve an identifier across resources when the type is unknown; else use hudu_get_. Unreadable resources are listed in unauthorized; fails only if all are refused. Narrow resources to skip asset_passwords/password_folders.

hudu_get_api_infoA

Return the API information document. Prefer api_info.get. Omit identifier for the tenant-wide document; expand:true returns the full record.

hudu_get_company_contextA

Fetch a company with its bounded context (CompanyContext). Required: numeric id, never a name or slug. Without password_access it 401s unless opts.skip omits asset_passwords; a refused sub-list answers UNAUTHORIZED.

hudu_get_article_contextA

Fetch an article with its company and folder context (ArticleContext). Pass the numeric id, not a slug. Bodies here are Markdown; a refused sub-list answers UNAUTHORIZED.

hudu_get_asset_contextB

Fetch an asset with its context (AssetContext). Pass identifier: id, name, slug or serial. A refused sub-list answers UNAUTHORIZED.

hudu_get_asset_layoutA

Resolve an asset layout from an id, name or slug; asset_layouts.get is cheaper for a known id. expand:true returns the full AssetLayout, not the summary.

hudu_find_asset_passwords_by_slugA

Find one password record by its URL slug, instead of a full scan. At most one exact match; to enumerate use hudu_search. Credential-shaped fields are masked by default; expand:true returns the full record.

hudu_find_websites_by_slugA

Find one website by its URL slug, not a full scan. At most one exact match; to enumerate use hudu_search or hudu_get_website. expand:true returns the full record.

hudu_get_folderB

Resolve a folder from an id or name, optionally company-scoped; folders.get is cheaper for a known id. expand:true returns the full Folder.

hudu_get_password_folderA

Resolve a password folder from an id or name, optionally company-scoped; password_folders.get is cheaper for a known id. Credential-shaped fields are masked by default.

hudu_get_groupA

Resolve a user group from an id, name or slug; groups.get is cheaper for a known id. expand:true returns the full Group, members included.

hudu_listA

List ONE bounded page of companies, articles, assets (all companies) or asset_layouts. It takes no operation argument: it cannot become a write and never pages the tenant. Each collection accepts only its own filters; another is refused naming them. asset_layouts takes no page_size (the vendor ignores it): has_more is conservative (true for any non-empty page) — stop when a page comes back empty. Article bodies: compact rows carry none; expand:true returns stored HTML.

hudu_fetch_manyA

Fetch up to 20 single records across MIXED resources in ONE call: each item is EXACTLY { resource, id, fields? }. All items are validated first (a CONFIG_ERROR names every problem, zero wire); one failed item never aborts the rest. Article bodies: rows here are stored HTML.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 17 tools

Disambiguation3/5

The generic hudu_read, hudu_list, hudu_search, hudu_resolve_any, and hudu_fetch_many all retrieve overlapping data, and the specialized get_* tools are essentially shortcuts over hudu_read. The descriptions explain when to prefer each shortcut, but the boundaries still require careful reading.

Naming Consistency4/5

All tools use a consistent hudu_ prefix and snake_case, with predictable verb_noun shapes such as hudu_list_operations, hudu_get_company_context, and hudu_find_websites_by_slug. The verbs vary across list/get/find/resolve/fetch, but that variation is readable and mostly semantic.

Tool Count4/5

17 tools is slightly above the typical 3-15 range, but Hudu is a broad IT-documentation domain and the set is still curated rather than exhaustive. Several specialized getters could be folded into the generic read path, but the count is reasonable for the scope.

Completeness2/5

The tool descriptions reference hudu_write and hudu_delete as operation runners, but no write, update, or delete tools are actually exposed. The surface is read-heavy and covers many resources through hudu_read, but lifecycle operations and several resource-specific actions are missing.

Maintenance

ActivityMaintained
ResponsivenessSyncing