mcp-d3-server


Namemcp-d3-server JSON
Version 1.0.2 PyPI version JSON
download
home_pageNone
SummaryA Python MCP server for D3.js visualization information and chart generation
upload_time2025-07-14 09:15:39
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseMIT
keywords d3 dataviz mcp python visualization
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # MCP D3 Server (Python)

A Python-based MCP (Model Context Protocol) server that provides D3.js visualization information, chart generation, and documentation resources. This is a Python port of the original Node.js MCP D3 server with STDIO support for use with `uv` and other Python package managers.

## Features

- **D3.js Documentation Resources**: Access to curated D3.js documentation and examples
- **Chart Generation Tools**: Generate D3.js chart code for various chart types (bar, line, etc.)
- **AI-Powered Chart Creation**: Use AI to generate custom D3 visualizations based on descriptions
- **Data Analysis**: Analyze data and get visualization recommendations
- **STDIO Transport**: Compatible with MCP clients using stdio transport

## Installation

### Using uv (recommended)

```bash
cd mcp-d3-server-python
uv sync
```

### Using pip

```bash
cd mcp-d3-server-python
pip install -e .
```

## Usage

### Running as STDIO MCP Server

```bash
# Using uv
uv run mcp-d3-server

# Using pip-installed package
mcp-d3-server
```

### Configuration for MCP Clients

Add to your MCP client configuration:

```json
{
  "mcpServers": {
    "d3-visualization": {
      "command": "uv",
      "args": ["run", "mcp-d3-server"],
      "cwd": "/path/to/mcp-d3-server-python"
    }
  }
}
```

## Available Resources

- `d3-docs://d3-gallery` - D3.js gallery and examples
- `d3-docs://d3-indepth` - In-depth D3.js guide and documentation  
- `d3-docs://d3-org` - Official D3.js documentation
- `d3-search://query` - Search across all D3 documentation
- `d3-topic://topic[/section]` - Get information about specific D3 topics

## Available Tools

### generate-d3-chart
Generate D3.js chart code based on chart type and data format.

**Parameters:**
- `chartType` (string): Type of chart (bar, line, pie, etc.)
- `dataFormat` (string): Description of your data format
- `features` (array, optional): Additional features to include

### recommend-chart  
Get chart type recommendations based on your data and visualization goals.

**Parameters:**
- `dataDescription` (string): Description of your data
- `purpose` (string): What insights you want to gain

### ai-generate-d3
Use AI to generate custom D3.js visualizations.

**Parameters:**
- `description` (string): Describe the chart you want
- `dataExample` (string): Example of your data structure

### analyze-data
Analyze data and get visualization suggestions.

**Parameters:**
- `data` (string): Your data in JSON or CSV format
- `goal` (string): What you want to learn from the data

## Development

### Setup Development Environment

```bash
cd mcp-d3-server-python
uv sync --extra dev
```

### Running Tests

```bash
uv run pytest
```

### Code Formatting

```bash
uv run black src/
uv run ruff check src/
```

### Type Checking

```bash  
uv run mypy src/
```

## Project Structure

```
mcp-d3-server-python/
├── src/
│   └── mcp_d3_server/
│       ├── __init__.py
│       ├── server.py          # Main MCP server with STDIO support
│       ├── services.py        # Service implementations
│       └── types.py           # Type definitions
├── assets/
│   └── llm-full/             # D3 documentation files
├── pyproject.toml            # Python package configuration
└── README.md
```

## License

MIT
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mcp-d3-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "d3, dataviz, mcp, python, visualization",
    "author": null,
    "author_email": "MCP D3 Server <noreply@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/5a/e1/113c1c0ca33789bb700ea953653ac19d425bb0b3ca10e611e405384d500b/mcp_d3_server-1.0.2.tar.gz",
    "platform": null,
    "description": "# MCP D3 Server (Python)\n\nA Python-based MCP (Model Context Protocol) server that provides D3.js visualization information, chart generation, and documentation resources. This is a Python port of the original Node.js MCP D3 server with STDIO support for use with `uv` and other Python package managers.\n\n## Features\n\n- **D3.js Documentation Resources**: Access to curated D3.js documentation and examples\n- **Chart Generation Tools**: Generate D3.js chart code for various chart types (bar, line, etc.)\n- **AI-Powered Chart Creation**: Use AI to generate custom D3 visualizations based on descriptions\n- **Data Analysis**: Analyze data and get visualization recommendations\n- **STDIO Transport**: Compatible with MCP clients using stdio transport\n\n## Installation\n\n### Using uv (recommended)\n\n```bash\ncd mcp-d3-server-python\nuv sync\n```\n\n### Using pip\n\n```bash\ncd mcp-d3-server-python\npip install -e .\n```\n\n## Usage\n\n### Running as STDIO MCP Server\n\n```bash\n# Using uv\nuv run mcp-d3-server\n\n# Using pip-installed package\nmcp-d3-server\n```\n\n### Configuration for MCP Clients\n\nAdd to your MCP client configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"d3-visualization\": {\n      \"command\": \"uv\",\n      \"args\": [\"run\", \"mcp-d3-server\"],\n      \"cwd\": \"/path/to/mcp-d3-server-python\"\n    }\n  }\n}\n```\n\n## Available Resources\n\n- `d3-docs://d3-gallery` - D3.js gallery and examples\n- `d3-docs://d3-indepth` - In-depth D3.js guide and documentation  \n- `d3-docs://d3-org` - Official D3.js documentation\n- `d3-search://query` - Search across all D3 documentation\n- `d3-topic://topic[/section]` - Get information about specific D3 topics\n\n## Available Tools\n\n### generate-d3-chart\nGenerate D3.js chart code based on chart type and data format.\n\n**Parameters:**\n- `chartType` (string): Type of chart (bar, line, pie, etc.)\n- `dataFormat` (string): Description of your data format\n- `features` (array, optional): Additional features to include\n\n### recommend-chart  \nGet chart type recommendations based on your data and visualization goals.\n\n**Parameters:**\n- `dataDescription` (string): Description of your data\n- `purpose` (string): What insights you want to gain\n\n### ai-generate-d3\nUse AI to generate custom D3.js visualizations.\n\n**Parameters:**\n- `description` (string): Describe the chart you want\n- `dataExample` (string): Example of your data structure\n\n### analyze-data\nAnalyze data and get visualization suggestions.\n\n**Parameters:**\n- `data` (string): Your data in JSON or CSV format\n- `goal` (string): What you want to learn from the data\n\n## Development\n\n### Setup Development Environment\n\n```bash\ncd mcp-d3-server-python\nuv sync --extra dev\n```\n\n### Running Tests\n\n```bash\nuv run pytest\n```\n\n### Code Formatting\n\n```bash\nuv run black src/\nuv run ruff check src/\n```\n\n### Type Checking\n\n```bash  \nuv run mypy src/\n```\n\n## Project Structure\n\n```\nmcp-d3-server-python/\n\u251c\u2500\u2500 src/\n\u2502   \u2514\u2500\u2500 mcp_d3_server/\n\u2502       \u251c\u2500\u2500 __init__.py\n\u2502       \u251c\u2500\u2500 server.py          # Main MCP server with STDIO support\n\u2502       \u251c\u2500\u2500 services.py        # Service implementations\n\u2502       \u2514\u2500\u2500 types.py           # Type definitions\n\u251c\u2500\u2500 assets/\n\u2502   \u2514\u2500\u2500 llm-full/             # D3 documentation files\n\u251c\u2500\u2500 pyproject.toml            # Python package configuration\n\u2514\u2500\u2500 README.md\n```\n\n## License\n\nMIT",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Python MCP server for D3.js visualization information and chart generation",
    "version": "1.0.2",
    "project_urls": null,
    "split_keywords": [
        "d3",
        " dataviz",
        " mcp",
        " python",
        " visualization"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bf8bd7baeaa3c65cf8fa639563e3834b0449ae003628682183eec9c3d9533726",
                "md5": "d0f08179583409260543f0be7c75d85a",
                "sha256": "d199e338be917a6288ad20e5aa860cbbf3a04bf78d0bb4e438241bb62411598c"
            },
            "downloads": -1,
            "filename": "mcp_d3_server-1.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d0f08179583409260543f0be7c75d85a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 11746,
            "upload_time": "2025-07-14T09:15:37",
            "upload_time_iso_8601": "2025-07-14T09:15:37.982206Z",
            "url": "https://files.pythonhosted.org/packages/bf/8b/d7baeaa3c65cf8fa639563e3834b0449ae003628682183eec9c3d9533726/mcp_d3_server-1.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5ae1113c1c0ca33789bb700ea953653ac19d425bb0b3ca10e611e405384d500b",
                "md5": "ff316d2756ebe506b9f50ed8a22c4576",
                "sha256": "f9681cc95bd2c574bca77307c34d348757ea5d82053464d8bd66453365ae3232"
            },
            "downloads": -1,
            "filename": "mcp_d3_server-1.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "ff316d2756ebe506b9f50ed8a22c4576",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 563802,
            "upload_time": "2025-07-14T09:15:39",
            "upload_time_iso_8601": "2025-07-14T09:15:39.538951Z",
            "url": "https://files.pythonhosted.org/packages/5a/e1/113c1c0ca33789bb700ea953653ac19d425bb0b3ca10e611e405384d500b/mcp_d3_server-1.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-14 09:15:39",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "mcp-d3-server"
}
        
Elapsed time: 1.16512s