Skip to main content
Glama

get_category_page_content

Retrieve full page content including HTML/text and formatting from Document360 knowledge base categories using specific category and page IDs.

Instructions

Get category page content by ID from Document360

Args: category_id: The Document360 category ID (e.g., 'rtt2a758-82a7-4dd0-a7c7-0a9ad04881d0') page_id: The Document360 page ID (e.g., 'rtt2a758-82a7-4dd0-a7c7-0a9ad04881d0')

Returns: Full page content including HTML/text content and formatting

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
category_idYes
page_idYes

Implementation Reference

  • Core handler function implementing the tool logic: logging, error handling, and delegation to Document360 client.
    async def get_category_page_content(category_id: str, page_id: str, ctx: Context) -> Dict[str, Any]: """Get category page content by ID from Document360 Args: category_id: Document360 category ID (UUID string) page_id: Document360 page ID (UUID string) ctx: MCP context for logging and error handling Returns: Page content data from Document360 API """ try: await ctx.info(f"Fetching content for page {page_id} from category {category_id}") result = await client.get_category_page_content(category_id, page_id) await ctx.info("Successfully retrieved page content") return result except Document360APIError as e: await ctx.error(f"Document360 API error: {e.message}") if e.status_code == 404: await ctx.warning(f"Page content {page_id} in category {category_id} not found") elif e.status_code == 401: await ctx.error("Invalid API key - check configuration") raise e except Exception as e: await ctx.error(f"Unexpected error fetching page content: {str(e)}") raise e
  • server.py:40-56 (registration)
    FastMCP tool registration with input schema via Annotated Fields and docstring; delegates to tools module.
    @mcp.tool async def get_category_page_content( category_id: Annotated[str, Field(description="Document360 category ID (UUID string)")], page_id: Annotated[str, Field(description="Document360 page ID (UUID string)")], ctx: Context ) -> dict: """Get category page content by ID from Document360 Args: category_id: Document360 category ID (UUID string) page_id: Document360 page ID (UUID string) ctx: MCP context for logging and error handling Returns: Full page content including HTML/text content and formatting """ return await tools.get_category_page_content(category_id, page_id, ctx)
  • Document360Client helper method that performs the actual HTTP API request to fetch page content.
    async def get_category_page_content(self, category_id: str, page_id: str) -> Dict[str, Any]: """Get category page content by ID""" return await self._request("GET", f"/categories/{category_id}/pages/{page_id}/content")
  • Input schema defined via Pydantic Annotated Fields and docstring in the registered tool function.
    async def get_category_page_content( category_id: Annotated[str, Field(description="Document360 category ID (UUID string)")], page_id: Annotated[str, Field(description="Document360 page ID (UUID string)")], ctx: Context ) -> dict: """Get category page content by ID from Document360 Args: category_id: Document360 category ID (UUID string) page_id: Document360 page ID (UUID string) ctx: MCP context for logging and error handling Returns: Full page content including HTML/text content and formatting """ return await tools.get_category_page_content(category_id, page_id, ctx)

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/druellan/document360-mcp'

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