Skip to content

datarobot_genai.drmcp.core.dynamic_prompts.utils

utils

get_prompt_name_no_duplicate async

get_prompt_name_no_duplicate(mcp: FastMCP, prompt_name: str) -> str

Handle prompt name duplicate.

We're working optimistic here -- we're keeping default names unless there's collision

Source code in datarobot_genai/drmcp/core/dynamic_prompts/utils.py
async def get_prompt_name_no_duplicate(mcp: FastMCP, prompt_name: str) -> str:
    """Handle prompt name duplicate.

    We're working optimistic here -- we're keeping default names unless there's collision
    """
    try:
        prompt = await mcp.get_prompt(prompt_name)
    except NotFoundError:
        return prompt_name

    if prompt is None:  # fastmcp 3.x returns None instead of raising NotFoundError
        return prompt_name

    prompt_name_suffix = str(uuid4())[:_SUFFIX_LENGTH]
    return f"{prompt.name} ({prompt_name_suffix})"