Hyeonseo's picture
Convert MCP server submodules to regular directories
e596ab5
from __future__ import annotations
from typing import Dict
from services import (
prepare_translation_context,
review_and_emit_payload,
submit_review_to_github,
run_end_to_end,
)
def tool_prepare(
github_token: str,
pr_url: str,
original_path: str,
translated_path: str,
) -> Dict[str, object]:
"""
Tool 1: Fetch Files + Build Prompts
"""
return prepare_translation_context(
github_token=github_token,
pr_url=pr_url,
original_path=original_path,
translated_path=translated_path,
)
def tool_review_and_emit(
provider: str,
provider_token: str,
model_name: str,
pr_url: str,
translated_path: str,
original: str,
translated: str,
) -> Dict[str, object]:
"""
Tool 2: LLM Review + Emit Payload
"""
return review_and_emit_payload(
provider=provider,
provider_token=provider_token,
model_name=model_name,
pr_url=pr_url,
translated_path=translated_path,
original=original,
translated=translated,
)
def tool_submit_review(
github_token: str,
pr_url: str,
translated_path: str,
payload_or_review: Dict[str, object],
allow_self_request_changes: bool = True,
) -> Dict[str, object]:
"""
Tool 3: Submit Review
"""
return submit_review_to_github(
github_token=github_token,
pr_url=pr_url,
translated_path=translated_path,
payload_or_review=payload_or_review,
allow_self_request_changes=allow_self_request_changes,
)
def tool_end_to_end(
provider: str,
provider_token: str,
model_name: str,
github_token: str,
pr_url: str,
original_path: str,
translated_path: str,
save_review: bool = False,
save_path: str = "review.json",
submit_review_flag: bool = False,
) -> Dict[str, object]:
"""
Tool 4: End-to-End
"""
return run_end_to_end(
provider=provider,
provider_token=provider_token,
model_name=model_name,
github_token=github_token,
pr_url=pr_url,
original_path=original_path,
translated_path=translated_path,
save_review=save_review,
save_path=save_path,
submit_review_flag=submit_review_flag,
)