Skip to main content
Glama
burgessadrien

text-image-mcp

README.md
# Text-Image MCP Server

A lightweight Model Context Protocol (MCP) server built with Python to allow agentic AI applications to quickly generate stylized imagery from text and code.

## Features

- **Pygments Code Highlighting**: Automatically formats programming languages (JSON, Python, HTML, bash, etc.) using intelligent token mapping and syntax-coloring right out of the box. 
- **Agent-Driven Markdown (English Processor)**: Native lightweight parser detects unstructured text and allows agents to explicitly define importance by parsing `**bold**` strings and `` `inline code blocks` `` independently.
- **Embedded Typography**: Includes bundled instances of **Fira Sans** and **Fira Mono** to produce stunning desktop-grade visual representation.

## Usage

This project wraps into the default MCP communication streams gracefully. Agents interacting with the API via the `generate_text_image` tool can inject the following parameters:

```json
{
  "text": "Your markdown or code here",
  "language": "markdown", 
  "bg_color": [20, 24, 30],
  "text_color": [220, 230, 240],
  "font_size": 24
}
```
*Note: If `language` is omitted, the server will intelligently attempt to guess the incoming programming language.*

## Installation

```bash
# Clone the project and instantiate a virtual environment
python -m venv venv

# Windows
.\venv\Scripts\activate

# Linux/macOS
source venv/bin/activate

# Install the dependencies
pip install mcp Pillow Pygments
```

## Running the Server

If you are using **Claude Desktop**, **Cline**, or **Antigravity**, you simply register the server utilizing the following configurations within your host's MCP environment:

```json
{
  "mcpServers": {
    "text-image": {
      "command": "C:/path/to/project/venv/Scripts/python.exe", // Use /path/to/project/venv/bin/python on Linux/macOS
      "args": ["-m", "text_image_mcp"],
      "env": {
         "PYTHONPATH": "C:/path/to/project/src" // Use /path/to/project/src on Linux/macOS
      }
    }
  }
}
```

### GitHub Copilot

For GitHub Copilot within VS Code, you can add the server by navigating to the command palette and typing `MCP: Open User Configuration`. This will open your user `mcp.json` file. Provide the identical configuration block shown above (ensuring you adjust paths for your specific OS). Alternatively, you can drop `.vscode/mcp.json` inside your project root directory.

## Testing Protocol

100% of the image rendering boundary mapping logic is covered seamlessly through `pytest` suites mirroring actual Agentic constraints.
Run tests using:
```bash
python -m pytest tests/
```

## License
MIT License. See [LICENSE](LICENSE) for details.