Skip to content

mcp.server

tissue_simulator.mcp.server

Model Context Protocol (MCP) server for Tissue Simulator.

This module exposes tissue simulation functionality as MCP tools that can be called by Large Language Models (LLMs) through the MCP protocol.

TissueSimulatorMCPServer

TissueSimulatorMCPServer()

MCP Server for Tissue Simulator.

Exposes tissue generation, slicing, and analysis capabilities as MCP tools.

Initialize the MCP server.

Source code in tissue_simulator/mcp/server.py
def __init__(self):
    """Initialize the MCP server."""
    if not MCP_AVAILABLE:
        raise ImportError("MCP library not installed. Install with: pip install mcp")

    self.server = Server("tissue-simulator")
    self.current_tissue: Optional[TissueSection] = None
    self.current_slicer: Optional[TissueSlicer] = None
    self.replicate_generator: Optional[ReplicateGenerator] = None
    self.generated_replicates: List[Tuple[TissueSection, Any]] = []
    # Tissue the loaded target statistics came from (for density_layout).
    self.target_source_tissue: Optional[TissueSection] = None
    self.temp_dir = tempfile.mkdtemp(prefix="tissue_sim_")

    # Register tools
    self._register_tools()

    # Register tool handlers
    self._register_handlers()

run async

run()

Run the MCP server.

Source code in tissue_simulator/mcp/server.py
async def run(self):
    """Run the MCP server."""
    async with stdio_server() as (read_stream, write_stream):
        await self.server.run(
            read_stream,
            write_stream,
            self.server.create_initialization_options()
        )

main async

main()

Main entry point for the MCP server.

Source code in tissue_simulator/mcp/server.py
async def main():
    """Main entry point for the MCP server."""
    server = TissueSimulatorMCPServer()
    await server.run()