Skip to main content
Glama
bmorphism

Penrose MCP Server

by bmorphism
README.md
# Penrose MCP Server

A Model Context Protocol (MCP) server for [Penrose](https://penrose.cs.cmu.edu/) - Create beautiful mathematical diagrams through natural language.

## Overview

This MCP server provides tools and resources for creating mathematical diagrams using Penrose's domain-specific languages:

- **Domain (DSL)**: Define mathematical types and relationships
- **Substance**: Describe mathematical objects and their relationships
- **Style**: Specify visual representation rules

## Project Structure

- `.topos/`: Research materials and documentation (gitignored)
  - `penrose-research/`: Design documents and specifications
  - `mcp-examples/`: Reference MCP server implementations
  - `mcp-spec/`: Official MCP protocol documentation

## Development

Use the justfile to access documentation and reference materials:

```bash
# List all available commands
just --list

# View the server architecture
just architecture

# Access MCP specifications
just mcp-spec
```

## License

MIT License - See LICENSE file for details

TDQS

B3/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: create_domain defines DSLs, create_style handles visual rules, create_substance manages mathematical objects, and generate_diagram produces the final output. The descriptions clearly separate these stages in the diagram creation workflow.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with 'create_' for three tools and 'generate_' for the final step, maintaining readability and predictability. The naming convention perfectly reflects the logical flow from creation to generation.

Tool Count5/5

Four tools is well-scoped for a diagram generation server, covering the essential components (domain, style, substance) and the final generation step. Each tool earns its place without redundancy or missing functionality for the apparent workflow.

Completeness4/5

The tool set covers the core Penrose diagram creation workflow comprehensively, with no dead ends. A minor gap exists in lacking update/delete operations for existing definitions, but agents can work around this by recreating components as needed.

Maintenance

ActivityInactive
ResponsivenessNo issues