X Tutup
Skip to content

Implement a Model Context Protocol (MCP) Server #588

@andrasfuchs

Description

@andrasfuchs

This sub-issue covers the implementation of a Model Context Protocol (MCP) server for Freerouting. Standardizing interaction through MCP will allow AI applications to connect more efficiently to Freerouting as an external tool, enabling stateful actions like "upload board," "start autorouting," and "retrieve results" without exhausting the AI's context window with raw API documentation.

Goals

  • Provide a standardized gateway for AI agents to interact with Freerouting.
  • Convert existing REST API endpoints into discoverable MCP tools.
  • Enable stateful session management within the AI agent's toolset.

Proposed Tools to Expose

  1. create_session: Initializes a new routing session.
  2. upload_design: Uploads a .dsn file to a session.
  3. start_autorouting: Triggers the routing process with specific parameters.
  4. get_routing_status: Polls for progress and logs.
  5. download_result: Retrieves the final .ses or DRC report.

Task List

  • Architecture Design: Decide on the implementation language (Node.js/TypeScript is officially supported for MCP, but a Java-based implementation or bridge may be preferred for the Freerouting ecosystem).
  • MCP Server Setup: Initialize the MCP server with standard protocol support (stdio or SSE).
  • Tool Implementation: Map current API functionality to MCP tool definitions with clear natural language descriptions.
  • Testing: Verify tool discovery and execution using an MCP-compatible client (e.g., Claude Desktop, Gemini).
  • Documentation: Update the docs directory with instructions on how to start and use the MCP server.

References

Metadata

Metadata

Assignees

No one assigned

    Projects

    Status

    To do

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      X Tutup