mcp-server-code-assist

by abhishekbhakat
Verified
"""Git prompts for advanced git operations.""" import platform from mcp.types import GetPromptResult, Prompt, PromptArgument, PromptMessage, TextContent from mcp_server_code_assist.tools.git_tools import GitTools git_prompts = { "git-advanced": Prompt( name="git-advanced", description="Handle advanced git operations with verification", arguments=[ PromptArgument( name="operation", description="Git operation to perform", required=True, ), PromptArgument( name="repo_path", description="Repository path", required=True, ), ], ), } def handle_git_prompt(name: str, arguments: dict[str, str] | None = None) -> GetPromptResult: """Handle git prompts. Args: name: Name of the prompt arguments: Dictionary of prompt arguments Returns: GetPromptResult with messages Raises: ValueError: If prompt not found or required arguments missing """ if name not in git_prompts: raise ValueError(f"Prompt not found: {name}") if not arguments: raise ValueError("Arguments required") operation = arguments.get("operation") repo_path = arguments.get("repo_path") if not operation or not repo_path: raise ValueError("Operation and repo_path are required") git_tools = GitTools([repo_path]) system_info = f"{platform.system()} {platform.machine()}" before_status = git_tools.status(repo_path) user_prompt = ( f"Please help with the following git operation in {repo_path}:\n{operation}\n\n" f"Current status:\n{before_status}\n\n" f"System info:\n{system_info}\n\n" "After you provide the commands and I execute them, I'll respond with 'done'. Then use git_tools to verify the changes." ) return GetPromptResult(messages=[PromptMessage(role="user", content=TextContent(text=user_prompt))])