diff options
Diffstat (limited to 'src/mcp_sd15/tools')
| -rw-r--r-- | src/mcp_sd15/tools/__init__.py | 1 | ||||
| -rw-r--r-- | src/mcp_sd15/tools/generate_guided_image.py | 23 | ||||
| -rw-r--r-- | src/mcp_sd15/tools/generate_image.py | 19 | ||||
| -rw-r--r-- | src/mcp_sd15/tools/inpaint_image.py | 23 |
4 files changed, 66 insertions, 0 deletions
diff --git a/src/mcp_sd15/tools/__init__.py b/src/mcp_sd15/tools/__init__.py new file mode 100644 index 0000000..0c664f1 --- /dev/null +++ b/src/mcp_sd15/tools/__init__.py @@ -0,0 +1 @@ +"""Thin MCP-independent tool adapters.""" diff --git a/src/mcp_sd15/tools/generate_guided_image.py b/src/mcp_sd15/tools/generate_guided_image.py new file mode 100644 index 0000000..c69286c --- /dev/null +++ b/src/mcp_sd15/tools/generate_guided_image.py @@ -0,0 +1,23 @@ +from __future__ import annotations + +from ..schema import GenerationResult, GuidedImageRequest +from ..service import ImageGenerationService + + +async def generate_guided_image( + service: ImageGenerationService, + positive_prompt: str, + control_mode: str, + input_image: str, + negative_prompt: str | None = None, + size: str | None = None, +) -> GenerationResult: + request = GuidedImageRequest.create( + positive_prompt, + control_mode, + input_image, + negative_prompt, + size, + default_size=service.config.generation.default_size, + ) + return await service.generate_guided_image(request) diff --git a/src/mcp_sd15/tools/generate_image.py b/src/mcp_sd15/tools/generate_image.py new file mode 100644 index 0000000..bae30c8 --- /dev/null +++ b/src/mcp_sd15/tools/generate_image.py @@ -0,0 +1,19 @@ +from __future__ import annotations + +from ..schema import GenerationResult, TextToImageRequest +from ..service import ImageGenerationService + + +async def generate_image( + service: ImageGenerationService, + positive_prompt: str, + negative_prompt: str | None = None, + size: str | None = None, +) -> GenerationResult: + request = TextToImageRequest.create( + positive_prompt, + negative_prompt, + size, + default_size=service.config.generation.default_size, + ) + return await service.generate_image(request) diff --git a/src/mcp_sd15/tools/inpaint_image.py b/src/mcp_sd15/tools/inpaint_image.py new file mode 100644 index 0000000..be1dbda --- /dev/null +++ b/src/mcp_sd15/tools/inpaint_image.py @@ -0,0 +1,23 @@ +from __future__ import annotations + +from ..schema import GenerationResult, InpaintImageRequest +from ..service import ImageGenerationService + + +async def inpaint_image( + service: ImageGenerationService, + positive_prompt: str, + input_image: str, + mask_image: str, + negative_prompt: str | None = None, + size: str | None = None, +) -> GenerationResult: + request = InpaintImageRequest.create( + positive_prompt, + input_image, + mask_image, + negative_prompt, + size, + default_size=service.config.generation.default_size, + ) + return await service.inpaint_image(request) |
