Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_jurisdictionsA

Per-country reference. Pass EXACTLY ONE of: • jurisdiction='GB' — registry name + URL, data license, company-ID format with examples, native-to-unified status enum mapping, and the list of tools supported. • supports_tool='get_officers' — which jurisdictions implement a given tool.

search_companiesA

Search a national company registry by name or keyword. Pass EXACTLY ONE of: • jurisdiction='GB' - single country, direct. • jurisdictions=['GB','NO','FR'] - multi-country when you're unsure; the server asks the user to confirm (clients with MCP elicitation) or errors back asking you to ask in chat. Per-tier cap on distinct countries per call: anonymous=3, pro=10, max=30, enterprise=unlimited.

Returns candidates with unified fields (company_id, company_name, status, incorporation_date, registered_address) plus raw upstream jurisdiction_data. For country-specific filters (FR ca_min, CZ czNace, CH canton, etc.) pass the filters object — call list_jurisdictions for the per-country schema.

search_officersA

Find people holding or who held officer positions (director, secretary, member, partner) in a jurisdiction's registry by name. Returns candidates with officer_id, name, and (where exposed) appointment count. Entry point for person-centric investigations.

get_company_profileA

Fetch the structured profile of a company by its registry-specific ID. Returns unified top-level fields (company_id, company_name, status, status_detail, incorporation_date, registered_address) plus raw upstream fields under jurisdiction_data. status is a coarse active/inactive/dissolved/unknown enum; status_detail keeps the registry's native string. registered_address is a flat string; the upstream nested form (when present) stays in jurisdiction_data.

Does not bundle officers / shareholders / filings / charges — call those tools separately. ID format varies per registry; pull company_id from search_companies rather than guessing. For per-country ID format and the full jurisdiction_data field catalogue call list_jurisdictions({jurisdiction:'<CC>'}).

list_filingsA

Return a company's filing history, newest first. Each filing has filing_id, filing_date, category, description, and (when upstream exposes one) a document_id that round-trips to get_document_metadata / fetch_document. Raw upstream fields preserved under jurisdiction_data.

Filter via the optional category. Common normalized values: 'accounts', 'annual-return', 'capital', 'charges', 'confirmation-statement', 'incorporation', 'insolvency', 'liquidation', 'mortgage', 'officers', 'resolution'. Native upstream form codes also accepted.

This tool returns metadata only — call fetch_document on document_id for the actual filing bytes. has_document=false means the body is paywalled or unavailable upstream. Pagination uses limit (default 25, max 1000) plus cursor (GB) or offset (IE). Unsupported jurisdictions return 501; call list_jurisdictions for per-country category values and pagination style.

get_shareholdersA

Return the shareholders / members / quota-holders — the legal-statutory equity roster published by the registry, no ownership-threshold filter. Use this for any shareholder / member / quota-holder question.

Shareholders are a DIFFERENT concept from beneficial owners (PSC / UBO), who appear on a separate register only when above a statutory control threshold (typically >25%). The two can disagree (a 10% shareholder is on the members register but not the PSC register; a corporate trustee can be a PSC without appearing on the members register).

Disclosure is legal-form-conditional: private-limited / LLC forms typically expose quota-holders in the public register; joint-stock / public-limited forms keep shareholders in a private book, so this tool may return an empty list, a pointer to the relevant filing (use fetch_document on the returned document_id), or a statutory explanation. Every response includes a disclosure flag and/or note. Raw upstream fields preserved in jurisdiction_data. Unsupported jurisdictions return 501.

get_officersA

Return a company's officers — current directors, secretaries, members, partners, board members, procurists, liquidators, plus historical resignations by default. Each officer has a unified shape (officer_id, name, role, appointed_on, resigned_on, is_active) plus raw upstream fields in jurisdiction_data. Role labels pass through in the registry's native language (e.g. Styremedlem, Předseda představenstva, Président); translate client-side. Birth-date precision varies by registry.

Officer-ID stability varies: corporate officers usually carry the corporate's own company_id; natural persons may carry a synthetic index. Some registries mask names under GDPR — that masking is upstream. Jurisdictions without an officer feed return 501.

get_document_metadataA

Retrieve metadata for a filing document by document_id (from list_filings). Returns available content formats with byte sizes, page count, source URL, creation date. Raw upstream fields preserved under jurisdiction_data. Call this before fetch_document when a document may be large or its format is unknown.

Do NOT construct or guess document_id — some registries use composite IDs that must come from list_filings. Synthesized IDs will 404. Empty available_formats means the body is paywalled or unavailable upstream. Unsupported jurisdictions return 501.

fetch_documentA

Read a filing's content by document_id (from list_filings). Filing metadata alone doesn't answer most questions — the numbers and text live inside the document.

RESPONSE SHAPES: • kind='embedded' (under max_bytes ≈ 20 MB) — returns full bytes_base64, source_url_official (evergreen registry URL), and source_url_direct (short-TTL signed proxy URL). PDFs render as a document block you can read natively. • kind='resource_link' (oversized) — NO bytes_base64. Returns reason, next_steps, both source URLs, and index_preview {page_count, text_layer, outline_present}. Use get_document_navigation to locate pages, then re-call this tool with pages='N-M' and format='pdf'|'text'|'png' for the content.

CRITICAL: if this tool fails (rate limit, 5xx, timeout), do NOT fill in names / numbers / dates from memory — tell the user what failed and offer retry or source_url_official. Outline titles, previews, and snippets from navigation tools are for LOCATING pages, never for quoting.

source_url_official is auto-resolved from the most recent list_filings call; the optional company_id / transaction_id / filing_type / filing_description inputs are overrides for the rare case where document_id didn't come through list_filings.

get_document_navigationA

Return a navigation index for a cached document: PDF outline / bookmarks, per-page text previews (~200 chars each), keyword-matched landmarks (balance sheet / directors report / auditor report), text-layer classification, and source URLs.

Call this FIRST for PDFs too large to fit in a single document block (fetch_document returned kind='resource_link'). Use the outline / previews / landmarks to pick a page range, then re-call fetch_document with pages='N-M' for the authoritative content.

Navigation aids only: page previews, outline titles, landmark matches, and snippets may be truncated or contain OCR errors. NEVER cite them as source material for figures, quotes, dates, or names — always quote from a subsequent fetch_document page-range fetch. Requires the document bytes to already be cached via fetch_document.

Prompts

Interactive templates invoked by user choice

NameDescription
company_profileProfile, directors, shareholders, charges for one company. Live direct-to-registry; every field source-linked.
read_filingPull a specific filing (accounts, annual return, charge, etc.) and extract its contents. iXBRL / PDF / XML supported.
industry_scanFind companies in an industry across one or more national registries. Returns live registry candidates, optionally enriched.
director_searchFind a person across one or more national officer registers. Returns current officer matches with disambiguation.
filing_monitorScan recent filings for a company and surface material events (officers, charges, capital, insolvency).

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sophymarine/openregistry'

If you have feedback or need assistance with the MCP directory API, please join our Discord server