#!/usr/bin/env python3 # -*- coding: utf-8 -*- # Timestamp: 2026-01-27 # File: src/scitex_writer/_mcp/tools/project.py """Project management MCP tools.""" from __future__ import annotations from typing import Literal, Optional from fastmcp import FastMCP from ..handlers import ( clone_project as _clone_project, ) from ..handlers import ( get_pdf as _get_pdf, ) from ..handlers import ( get_project_info as _get_project_info, ) from ..handlers import ( list_document_types as _list_document_types, ) def register_tools(mcp: FastMCP) -> None: """Register project management tools.""" @mcp.tool() def writer_clone_project( project_dir: str, git_strategy: Literal["child", "parent", "origin", "none"] = "child", branch: Optional[str] = None, tag: Optional[str] = None, ) -> dict: """[writer] Create a new LaTeX manuscript project from template.""" return _clone_project(project_dir, git_strategy, branch, tag) @mcp.tool() def writer_get_project_info(project_dir: str) -> dict: """[writer] Get writer project structure and status information.""" return _get_project_info(project_dir) @mcp.tool() def writer_get_pdf( project_dir: str, doc_type: Literal["manuscript", "supplementary", "revision"] = "manuscript", ) -> dict: """[writer] Get path to compiled PDF for a document type.""" return _get_pdf(project_dir, doc_type) @mcp.tool() def writer_list_document_types() -> dict: """[writer] List available document types in a writer project.""" return _list_document_types() # EOF