Skip to main content
Glama

get_all_nexuses

Retrieve all available themes, motifs, and forms from the poetry registry to discover tagging options for poems. Returns organized categories for thematic classification.

Instructions

Get all nexuses (themes/motifs/forms) from the registry.

Returns complete registry with all nexus entries, organized by category. Use this to discover available themes, motifs, and forms for tagging poems.

Returns: NexusRegistry with themes, motifs, and forms

Example: Get all available themes: registry = await get_all_nexuses() for theme in registry.themes: print(f"{theme.name} → #{theme.canonical_tag}")

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Core handler function that returns the global _nexus_registry after checking initialization. This contains the actual tool logic.
    async def get_all_nexuses() -> NexusRegistry: """Get all nexuses (themes/motifs/forms) from the registry. Returns complete registry with all nexus entries, organized by category. Use this to discover available themes, motifs, and forms for tagging poems. Returns: NexusRegistry with themes, motifs, and forms Example: >>> registry = await get_all_nexuses() >>> registry.total_count 25 >>> [t.name for t in registry.themes[:3]] ['Water-Liquid', 'Body-Bones', 'Childhood'] >>> registry.themes[0].canonical_tag 'water-liquid' """ if _nexus_registry is None: raise RuntimeError("Enrichment tools not initialized. Call initialize_enrichment_tools() first.") return _nexus_registry
  • MCP tool registration using @mcp.tool() decorator. Delegates to the core handler in enrichment_tools.py.
    @mcp.tool() async def get_all_nexuses() -> NexusRegistry: """ Get all nexuses (themes/motifs/forms) from the registry. Returns complete registry with all nexus entries, organized by category. Use this to discover available themes, motifs, and forms for tagging poems. Returns: NexusRegistry with themes, motifs, and forms Example: Get all available themes: ``` registry = await get_all_nexuses() for theme in registry.themes: print(f"{theme.name} → #{theme.canonical_tag}") ``` """ return await _get_all_nexuses()
  • Pydantic model defining the return type NexusRegistry, including fields for themes, motifs, forms, and total_count.
    class NexusRegistry(BaseModel): """ Complete nexus registry organized by category. Returned by get_all_nexuses() tool. """ themes: list[Nexus] = Field( default_factory=list, description="Thematic nexuses (imagery systems, subjects)" ) motifs: list[Nexus] = Field( default_factory=list, description="Motif nexuses (compositional patterns)" ) forms: list[Nexus] = Field( default_factory=list, description="Form nexuses (structural patterns)" ) total_count: int = Field( ..., description="Total number of nexuses across all categories" )
  • Helper function that initializes the global _nexus_registry by loading from config.vault.path, required before calling get_all_nexuses.
    def initialize_enrichment_tools(catalog: Catalog) -> None: """Initialize global state for enrichment tools. Args: catalog: Catalog instance to use for lookups """ global _catalog, _nexus_registry _catalog = catalog # Load nexus registry on initialization config = load_config() _nexus_registry = load_nexus_registry(config.vault.path)
  • Import and alias of get_all_nexuses from enrichment_tools.py for use in server tool wrappers.
    from .tools.enrichment_tools import ( initialize_enrichment_tools, get_all_nexuses as _get_all_nexuses, link_poem_to_nexus as _link_poem_to_nexus, find_nexuses_for_poem as _find_nexuses_for_poem, get_poems_for_enrichment as _get_poems_for_enrichment, sync_nexus_tags as _sync_nexus_tags, move_poem_to_state as _move_poem_to_state, grade_poem_quality as _grade_poem_quality, )

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/james-livefront/poetry-mcp'

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