[Sprint 1] feat: Implement page tools (3 tools) #176

Closed
opened 2026-01-26 16:21:11 +00:00 by lmiranda · 1 comment
Owner

Description

Implement multi-page app structure tools for building complete Dash applications.

Acceptance Criteria

  • Create mcp_server/page_tools.py
  • Implement page_create tool:
    • Input: name: string, path: string, layout_ref?: string
    • Create page definition with routing
    • Output: Page reference
  • Implement page_add_navbar tool:
    • Input: pages: array, options: object
    • Generate navigation component linking pages
    • Options: position (top/side), style
  • Implement page_set_auth tool:
    • Input: page_ref: string, auth_config: object
    • Configure authentication wrapper for page
    • Auth types: none, basic, oauth (config only, not implementation)
  • All tools registered in server.py

Technical Notes

These tools generate Dash multi-page app structures. They create configuration, not running apps.

# Example multi-page setup
page_create(name="Dashboard", path="/")
page_create(name="Settings", path="/settings")
page_add_navbar(pages=["Dashboard", "Settings"], options={"position": "top"})

Dependencies

  • Depends on #170 (MCP server foundation)
  • Depends on #174 (Layout tools)
## Description Implement multi-page app structure tools for building complete Dash applications. ## Acceptance Criteria - [ ] Create `mcp_server/page_tools.py` - [ ] Implement `page_create` tool: - Input: `name: string, path: string, layout_ref?: string` - Create page definition with routing - Output: Page reference - [ ] Implement `page_add_navbar` tool: - Input: `pages: array, options: object` - Generate navigation component linking pages - Options: position (top/side), style - [ ] Implement `page_set_auth` tool: - Input: `page_ref: string, auth_config: object` - Configure authentication wrapper for page - Auth types: none, basic, oauth (config only, not implementation) - [ ] All tools registered in server.py ## Technical Notes These tools generate Dash multi-page app structures. They create configuration, not running apps. ```python # Example multi-page setup page_create(name="Dashboard", path="/") page_create(name="Settings", path="/settings") page_add_navbar(pages=["Dashboard", "Settings"], options={"position": "top"}) ``` ## Dependencies - Depends on #170 (MCP server foundation) - Depends on #174 (Layout tools)
Author
Owner

Completed: Page tools implemented.

Tools Added:

  1. page_create - Create pages with routing and layout references
  2. page_add_navbar - Generate top/side navigation with DMC AppShell
  3. page_set_auth - Configure authentication (basic, oauth, custom)

Features:

  • Path validation (must start with /)
  • Collision detection for names and paths
  • DMC AppShell component structure for navigation
  • Auth roles and redirect configuration

Commit: 12133f6

Completed: Page tools implemented. **Tools Added:** 1. `page_create` - Create pages with routing and layout references 2. `page_add_navbar` - Generate top/side navigation with DMC AppShell 3. `page_set_auth` - Configure authentication (basic, oauth, custom) **Features:** - Path validation (must start with /) - Collision detection for names and paths - DMC AppShell component structure for navigation - Auth roles and redirect configuration **Commit:** 12133f6
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: personal-projects/leo-claude-mktplace#176