Skip to main content
Glama

gemini-image-mcp

Gemini API를 활용한 이미지 생성/편집 도구. MCP 서버와 JS 모듈 두 가지 방식으로 사용 가능.

설치

cd gemini-image-mcp
npm install

Related MCP server: Nano-Banana MCP Server

API 키 설정

cp .env.example .env
# .env 파일에 실제 API 키 입력

사용법 1: MCP 서버 (Claude Code)

claude mcp add --transport stdio gemini-image -- node server.js

등록 후 Claude Code에서 자연어로 사용:

  • "고양이 이미지 하나 생성해서 cat.png로 저장해줘"

  • "cat.png에서 배경을 우주로 바꿔서 cat-space.png로 저장해줘"

  • "이미지 편집 세션 시작해서 산 풍경 그려줘" → "호수 추가해줘"

MCP 도구 목록

도구

설명

generate_image

텍스트 → 이미지 생성

edit_image

기존 이미지 + 프롬프트 → 편집

start_image_session

멀티턴 편집 세션 시작

continue_image_session

세션 이어서 편집

get_image_config_info

설정 옵션 정보 확인

사용법 2: JS 모듈

import { generateImage, editImage, createSession } from './gemini-image.js';

// 이미지 생성
await generateImage('고양이', { output: './cat.png' });

// 이미지 편집
await editImage('./cat.png', '배경을 우주로', { output: './cat-space.png' });

// 멀티턴 세션
const session = createSession();
await session.send('산 풍경', { output: './v1.png' });
await session.send('호수 추가', { output: './v2.png' });
await session.sendWithImage('./photo.png', '스타일 변경', { output: './v3.png' });

설정 옵션

Available Tools

5 tools
continue_image_sessionB

기존 멀티턴 세션을 이어서 이미지를 편집합니다. 이전 대화 맥락이 유지됩니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
sessionIdYesstart_image_session에서 받은 세션 ID
promptYes추가 편집 지시사항
outputPathYes결과 이미지를 저장할 파일 경로
imagePathNo추가로 참조할 이미지 경로 (선택사항)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions that 'previous conversation context is maintained', which is useful behavioral context about session state persistence. However, it lacks critical details like whether this is a read-only or mutation operation, what permissions are needed, how errors are handled, or if there are rate limits. For a tool with 4 parameters and no annotations, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences in Korean that efficiently convey the core purpose and key behavioral trait. Every word earns its place with no redundancy or fluff. It's appropriately sized for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., success confirmation, error details, or image metadata), doesn't cover error conditions, and provides minimal behavioral context beyond session continuity. For a session-based image editing tool, this leaves significant gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 4 parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema (e.g., it doesn't explain format constraints or provide examples). With high schema coverage, the baseline is 3 even without additional param details in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('continue') and resource ('multi-turn session') with the specific action 'edit images'. It distinguishes from siblings like 'start_image_session' by focusing on continuation rather than initiation. However, it doesn't explicitly differentiate from 'edit_image' which might also edit images but without session context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by mentioning 'previous conversation context is maintained', suggesting it should be used when there's an existing session. However, it doesn't explicitly state when NOT to use it or name alternatives like 'start_image_session' for new sessions or 'edit_image' for single edits without session continuity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

edit_imageC

기존 이미지를 프롬프트에 따라 편집합니다

ParametersJSON Schema
NameRequiredDescriptionDefault
imagePathYes편집할 원본 이미지 파일 경로
promptYes이미지 편집 지시사항
outputPathYes편집된 이미지를 저장할 파일 경로
aspectRatioNo출력 이미지 비율
imageSizeNo출력 이미지 크기 (기본: 1K)
modelNo사용할 모델

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the basic function. It doesn't disclose behavioral traits such as whether this is a destructive operation (overwrites original?), authentication needs, rate limits, error conditions, or what the output looks like (e.g., file saved confirmation). This is inadequate for a mutation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Korean that directly states the tool's function without waste. It's appropriately sized and front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (6 parameters, mutation operation) and lack of annotations or output schema, the description is insufficient. It doesn't explain return values, error handling, or important behavioral context like file system interactions, leaving significant gaps for an AI agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 6 parameters thoroughly. The description adds no additional meaning beyond implying 'prompt' guides the edit, which is already clear from parameter descriptions. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('edit') and resource ('existing image') with the mechanism ('according to prompt'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'generate_image' or 'continue_image_session', which likely involve image creation or modification in different contexts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'generate_image' (for new images) or 'continue_image_session' (for ongoing edits). The description implies usage for editing existing images with a prompt, but lacks explicit comparisons or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_imageC

텍스트 프롬프트로 이미지를 생성합니다

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes이미지 생성을 위한 텍스트 프롬프트
outputPathYes생성된 이미지를 저장할 파일 경로
aspectRatioNo이미지 비율 (기본: 1:1)
imageSizeNo이미지 크기 (기본: 1K). 4K는 pro 모델만 지원
modelNo사용할 모델 (기본: gemini-3-pro-image-preview)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates images from text prompts but lacks critical details: it doesn't mention whether this is a read-only or destructive operation, potential rate limits, authentication needs, or what happens on failure (e.g., error handling). For a generative tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Korean: '텍스트 프롬프트로 이미지를 생성합니다' (Generates an image from a text prompt). It's front-loaded with the core purpose, has zero wasted words, and is appropriately sized for a straightforward tool. Every part of the sentence earns its place by clearly stating the action and input.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (generative with 5 parameters) and lack of annotations and output schema, the description is incomplete. It doesn't address behavioral aspects like side effects (e.g., file creation at 'outputPath'), error conditions, or return values. For a tool that creates outputs and has multiple configuration options, more context is needed to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly (e.g., 'prompt' for text input, 'outputPath' for file storage, enums for 'aspectRatio' and 'imageSize'). The description adds no additional meaning beyond what's in the schema, such as explaining parameter interactions or constraints. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '텍스트 프롬프트로 이미지를 생성합니다' (Generates an image from a text prompt). It specifies the verb ('생성합니다' - generates) and resource ('이미지' - image), making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'edit_image' or 'continue_image_session', which would require more specific language about generation versus modification or continuation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'edit_image' for modifications or 'start_image_session' for session-based workflows, nor does it specify prerequisites or exclusions. Usage is implied only by the name and description, with no explicit context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_image_config_infoB

이미지 생성/편집에 사용 가능한 설정 옵션 정보를 반환합니다

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states the tool returns information, implying a read-only operation, but doesn't disclose behavioral traits like authentication requirements, rate limits, error conditions, or response format. For a tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Korean that directly states the tool's purpose without any fluff or redundancy. It's appropriately sized and front-loaded, with every word earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters, no annotations, and no output schema, the description is minimally adequate. It explains what the tool does but lacks details on behavioral context, output format, or usage scenarios. For a simple info-retrieval tool, it meets the bare minimum but could be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter semantics, but that's acceptable given the lack of parameters. A baseline of 4 is appropriate as the schema fully covers the parameter situation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '이미지 생성/편집에 사용 가능한 설정 옵션 정보를 반환합니다' (Returns information about configuration options available for image generation/editing). It specifies the verb ('반환합니다' - returns) and resource ('설정 옵션 정보' - configuration option information), though it doesn't explicitly differentiate from sibling tools like 'generate_image' or 'edit_image'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, timing, or relationships with sibling tools such as 'generate_image', 'edit_image', 'start_image_session', or 'continue_image_session'. The agent must infer usage from the purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_image_sessionC

멀티턴 이미지 편집 세션을 시작합니다. 이전 맥락을 유지하며 반복 수정이 가능합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes첫 번째 이미지 생성/편집 지시사항
outputPathYes결과 이미지를 저장할 파일 경로
imagePathNo편집할 원본 이미지 경로 (없으면 텍스트로 새 이미지 생성)
aspectRatioNo이미지 비율
imageSizeNo이미지 크기 (기본: 1K)
modelNo사용할 모델

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions 'maintaining previous context' and 'allowing repeated modifications,' which gives some behavioral insight, but lacks critical details like whether this creates a persistent session, what authentication or permissions are needed, rate limits, or what happens if the session fails. For a tool with 6 parameters and no annotations, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences that directly state the tool's purpose and key behavioral trait. It's front-loaded with the main action and wastes no words, though it could be slightly more structured by explicitly mentioning session initiation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (6 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what the tool returns, how sessions are managed, error handling, or prerequisites. For a tool that likely creates a stateful session, this leaves significant gaps for an AI agent to understand its full behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema, such as explaining interactions between parameters (e.g., how 'imagePath' and 'prompt' work together). Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as 'starting a multi-turn image editing session that maintains previous context and allows repeated modifications.' It specifies the verb ('start') and resource ('image session'), but doesn't explicitly differentiate it from sibling tools like 'continue_image_session' or 'edit_image' beyond the 'start' aspect.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'continue_image_session' or 'edit_image.' It mentions maintaining context for repeated modifications, but doesn't clarify if this is the only way to achieve that or when to choose it over other image tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv1.0.0
    • First observedcontinue_image_session
    • First observededit_image
    • First observedgenerate_image
    • First observedget_image_config_info
    • First observedstart_image_session

TDQS

B3.4/5.0

Scored across 5 tools

Disambiguation4/5

The tools are mostly distinct in purpose, with clear separation between image generation, editing, and configuration. However, 'edit_image' and the session tools ('start_image_session', 'continue_image_session') could cause some confusion, as both involve editing images, though the session tools explicitly handle multi-turn contexts.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (e.g., generate_image, edit_image, get_image_config_info). The naming is predictable and readable throughout, with no deviations in style or convention.

Tool Count5/5

With 5 tools, the server is well-scoped for image generation and editing tasks. Each tool has a clear role, and the count is appropriate for covering core operations without being overly sparse or bloated.

Completeness4/5

The tool set covers key operations like generation, editing, and configuration, with added support for multi-turn sessions. A minor gap is the lack of a tool for deleting or managing images, but this is not critical for the core functionality, and agents can likely work around it.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers