Major refactoring of projman plugin architecture: Skills Extraction (17 new files): - Extracted reusable knowledge from commands and agents into skills/ - branch-security, dependency-management, git-workflow, input-detection - issue-conventions, lessons-learned, mcp-tools-reference, planning-workflow - progress-tracking, repo-validation, review-checklist, runaway-detection - setup-workflows, sprint-approval, task-sizing, test-standards, wiki-conventions Command Consolidation (17 → 12 commands): - /setup: consolidates initial-setup, project-init, project-sync (--full/--quick/--sync) - /debug: consolidates debug-report, debug-review (report/review modes) - /test: consolidates test-check, test-gen (run/gen modes) - /sprint-status: absorbs sprint-diagram via --diagram flag Architecture Cleanup: - Remove plugin-level mcp-servers/ symlinks (6 plugins) - Remove plugin README.md files (12 files, ~2000 lines) - Update all documentation to reflect new command structure - Fix documentation drift in CONFIGURATION.md, COMMANDS-CHEATSHEET.md Commands are now thin dispatchers (~20-50 lines) that reference skills. Agents reference skills for domain knowledge instead of inline content. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3.4 KiB
3.4 KiB
viz-platform MCP Server
Model Context Protocol (MCP) server for Dash Mantine Components validation and visualization tools.
Overview
This MCP server provides 21 tools for:
- DMC Validation: Version-locked component registry prevents Claude from hallucinating invalid props
- Chart Creation: Plotly-based visualization with theme integration
- Layout Composition: Dashboard layouts with responsive grids
- Theme Management: Design token-based theming system
- Page Structure: Multi-page Dash app generation
Tools
DMC Tools (3)
| Tool | Description |
|---|---|
list_components |
List available DMC components by category |
get_component_props |
Get valid props, types, and defaults for a component |
validate_component |
Validate component definition before use |
Chart Tools (2)
| Tool | Description |
|---|---|
chart_create |
Create Plotly chart (line, bar, scatter, pie, histogram, area, heatmap) |
chart_configure_interaction |
Configure chart interactions (zoom, pan, hover) |
Layout Tools (5)
| Tool | Description |
|---|---|
layout_create |
Create dashboard layout structure |
layout_add_filter |
Add filter components to layout |
layout_set_grid |
Configure responsive grid settings |
layout_get |
Retrieve layout configuration |
layout_add_section |
Add sections to layout |
Theme Tools (6)
| Tool | Description |
|---|---|
theme_create |
Create new theme with design tokens |
theme_extend |
Extend existing theme with overrides |
theme_validate |
Validate theme completeness |
theme_export_css |
Export theme as CSS custom properties |
theme_list |
List available themes |
theme_activate |
Set active theme for visualizations |
Page Tools (5)
| Tool | Description |
|---|---|
page_create |
Create new page structure |
page_add_navbar |
Add navigation bar to page |
page_set_auth |
Configure page authentication |
page_list |
List available pages |
page_get_app_config |
Get full app configuration |
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
DMC_VERSION |
No | Dash Mantine Components version (auto-detected if installed) |
VIZ_DEFAULT_THEME |
No | Default theme name |
CLAUDE_PROJECT_DIR |
No | Project directory for theme storage |
Theme Storage
Themes can be stored at two levels:
- User-level:
~/.config/claude/themes/ - Project-level:
{project}/.viz-platform/themes/
Project-level themes take precedence.
Component Registry
The server uses a static JSON registry for DMC component validation:
- Pre-generated from DMC source code
- Version-tagged (e.g.,
dmc_2_5.json) - Prevents hallucination of non-existent props
- Fast, deterministic validation
Registry files are stored in registry/ directory.
Tests
94 tests with coverage:
test_config.py: 82% coveragetest_component_registry.py: 92% coveragetest_dmc_tools.py: 88% coveragetest_chart_tools.py: 68% coveragetest_theme_tools.py: 99% coverage
Run tests:
cd mcp-servers/viz-platform
source .venv/bin/activate
pytest tests/ -v
Dependencies
- Python 3.10+
- FastMCP
- plotly
- dash-mantine-components (optional, for version detection)
Usage
This MCP server is used by the viz-platform plugin. See the plugin's commands in plugins/viz-platform/commands/ for usage.