Skip to main content
Glama

TokenHub AIGC Model — MCP Server

MCP(Model Context Protocol) を利用して TokenHub 大モデルサービスの画像生成機能を呼び出す MCP Server です。お客様は MCP に対応した任意のクライアント(WorkBuddy / Claude Desktop / Cursor / 各種 AI IDE)で TokenHub API Key を設定するだけで、自然言語でテキストからの画像生成、画像からの画像生成/画像編集インターフェースを直接呼び出すことができます。

現在組み込みのサンプルモデル:custom-model-og-v2(GPT 系の画像生成モデル、同期返却)。


機能特性

  • 2つのツール

    • tokenhub_generate_image:テキストから画像生成(POST /v1/wand/og-image/generation、同期返却)

    • tokenhub_edit_image:画像から画像生成/画像編集(POST /v1/wand/og-image/edits、同期返却、1〜16枚の入力画像、マスクによる部分再描画に対応)

  • 2つの転送方式

    • stdio(デフォルト):ローカルクライアントに直接接続、デプロイ不要

    • streamable-http:リモートエンドポイントとしてデプロイし、外部クライアント/チームのリモート接続に対応

  • 柔軟な設定:API Key、サイトドメイン、モデル名はいずれも環境変数で設定可能。1回の呼び出しでドメイン/モデルを上書きできます(サイトやモデルの切り替えに設定変更は不要)


Related MCP server: Vertex AI Imagen MCP Server

クイックスタート

方式1:stdio(ローカル接続、まずはこちらを推奨)

MCP クライアントの設定に、コマンドタイプの MCP Server を追加します。

客户端

設定場所

WorkBuddy

~/.workbuddy/mcp.json、その後「コネクタ管理 → カスタムコネクタ → 信頼」

Claude Desktop

claude_desktop_config.json

Cursor

Settings → MCP → Add new MCP server

{
  "mcpServers": {
    "tokenhub": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "tokenhub-aigc-model"],
      "env": {
        "TOKENHUB_API_KEY": "你的 TokenHub API Key",
        "TOKENHUB_BASE_URL": "https://tokenhub.tencentmaas.com",
        "TOKENHUB_MODEL": "custom-model-og-v2"
      },
      "description": "TokenHub 生图 MCP"
    }
  }
}

設定後はすぐに会話できます:「竹林の中で踊る子猫を描いて、2048x2048」。

方法二:Streamable HTTP(リモートデプロイ)

{
  "mcpServers": {
    "tokenhub": {
      "url": "https://你的服务域名/mcp",
      "headers": { "x-mcp-auth-token": "部署时设置的 MCP_AUTH_TOKEN" }
    }
  }
}

環境変数

変数

必須

デフォルト値

説明

TOKENHUB_API_KEY

必須(未設定の場合は呼び出し時にエラー)

-

TokenHub コンソールで取得する API Key。リクエストヘッダー Authorization: Bearer <key>

TOKENHUB_BASE_URL

任意

https://tokenhub.tencentmaas.com

サイトドメイン(下のサイト説明を参照)。末尾のスラッシュ不要

TOKENHUB_MODEL

任意

custom-model-og-v2

デフォルトのモデル名。1回の呼び出しで上書き可能

MCP_AUTH_TOKEN

任意(HTTP モードでは推奨)

-

HTTP モードでの任意の認証。設定後、/mcp リクエストには x-mcp-auth-token リクエストヘッダー必須

サイトドメイン

TokenHub は地域ごとに分散デプロイされています。各サイトのお客様は対応するドメインを入力する必要があります。デフォルトは国内サイトの広州です:

サイト

ドメイン(例)

国内サイト・広州

https://tokenhub.tencentmaas.com(デフォルト)

その他のサイト(国内シンガポール / 国際サイト広州、シンガポール、米国西部など)

TokenHub 営業/技術サポートに連絡して対応ドメインを取得し、TOKENHUB_BASE_URL に入力するか、1回の呼び出しで base_url を渡してください


ツールパラメータの説明

tokenhub_generate_image(テキストから画像生成)

パラメータ

必須

説明

prompt

必須

テキストの説明。最大 32000 文字

base_url / model

任意

1回の呼び出しでサイトドメイン / モデル名を上書き

size

任意

生成サイズ 幅x高さ(例:2048x2048)。制約:片側≤3840px、幅・高さは16の倍数、長辺/短辺比≤3:1、総画素数 655360〜8294400

quality

任意

auto / high / medium / low

n

任意

生成枚数 1〜10、デフォルト 1

background

任意

opaque / auto

output_format

任意

png / jpeg

output_compression

任意

JPEG 圧縮レベル 0〜100(jpeg のみ)

response_format

任意

url(デフォルト)/ b64_json

tokenhub_edit_image(画像から画像生成/編集)

上記の大部分のパラメータを共有します。追加パラメータは次のとおりです:

パラメータ

必須

説明

images

必須

入力画像 1〜16 枚。[{ "image_url": "https://... 或 data:image/png;base64,..." }]、png/jpg

mask

任意

部分再描画用マスク。サイズは入力画像と一致させる必要があります

background

任意

追加で transparent に対応

戻り値:画像 URL リスト、request_id(問題調査用)、total_tokens(課金用)。response_format=b64_json の場合は base64 の画像ブロックが含まれ、直接表示できます。


エラー処理

  • ツール呼び出しに失敗すると isError: true を返します。エラー情報には status、上流エラーの code、request_id が含まれます。

  • 権限/レート制限/パラメータエラーが発生した場合は、request_id を保存したうえで TokenHub 技術サポートに送信し、特定してもらってください。

  • TOKENHUB_API_KEY が未設定の場合、ツール呼び出しは明確なメッセージを直接返します(サーバーは正常に起動できます)。


HTTP モードでのデプロイ(リモート)

# 本地启动(默认 stdio)
npx -y tokenhub-aigc-model

# HTTP 模式
TOKENHUB_API_KEY=xxx MCP_AUTH_TOKEN=部署密钥 \
  npx -y tokenhub-aigc-model --transport=http --port=3000 --host=127.0.0.1

エンドポイント:

  • POST /mcp、GET /mcp:MCP プロトコルの入口

  • GET /health:ヘルスチェック

公網にデプロイする場合は必ず:

  1. MCP_AUTH_TOKEN を設定するか、前置ゲートウェイ/リバースプロキシ(例:EdgeOne、CLB、Nginx)で認証を行う;

  2. HTTPS を使用する;

  3. base_url は1回の呼び出しで上書き可能なため、信頼できる環境でのみ開放することを推奨します。


開発とリリース

npm install        # 安装依赖
npm run build      # TypeScript 构建到 dist/
npm test           # 单元测试 + stdio/HTTP 冒烟测试(共 20 个用例)
npm pack --dry-run # 查看发布内容

npmjs に公開する場合(現在の registry が Tencent ミラーの場合は、明示的に指定する必要があります):

npm run build
npm version patch
npm publish --access public --registry=https://registry.npmjs.org
git tag v0.1.0 && git push --tags

⚠️ 重要な注意事項

  1. ホワイトリスト登録:custom-model-og-v2 はテストモデルのため、TokenHub のプロダクト/バックエンド担当者に連絡し、UIN と Appid を提出してホワイトリスト登録を行ったうえで使用できます。未登録で呼び出すと権限エラーが返ります。

  2. API Key:TokenHub コンソール で対応するモデル専用の Key を作成してください。Key は作成時に一度しか表示されないため、確実に保管してください。

  3. 課金:TokenHub は Token 単位の課金(約 10 元/百万トークン)で、時間ごとに精算されます。n>1 や複数枚の入力画像では消費が大幅に増えるため、営業担当者はお客様に早めに割引申請を行ってください。

  4. 費用計算式(人民元):テキスト入力 token×3.35 + テキストキャッシュ入力×0.8375 + 画像入力×5.36 + 画像キャッシュ入力×1.34 + 出力画像×20.1 = 1回のタスクの token 消費量(換算係数は為替レートに関係します。現在の係数は 6.7)。


License

Apache-2.0

Available Tools

2 tools
tokenhub_edit_imageTokenHub 图生图/图片编辑A

调用 TokenHub 接口,基于 1-16 张输入图 + 文本描述同步生成图片(模型默认 custom-model-og-v2,需开白)。支持局部重绘(mask)。输入图支持 URL 或 base64。返回图片 URL 列表、request_id 与 token 用量。

ParametersJSON Schema
NameRequiredDescriptionDefault
nNo生成图片数量 1-10,默认 1
maskNo局部重绘蒙版图,尺寸需与输入图一致
sizeNo生成尺寸 "宽x高",如 2048x2048。约束:单边≤3840px、宽高为 16 的倍数、长短边比≤3:1、总像素 655360~8294400
modelNo单次覆盖模型名。不传时用环境变量 TOKENHUB_MODEL(默认 custom-model-og-v2)
imagesYes输入图 1-16 张,支持 URL 或 base64
promptYes文本描述,最大 32000 字符
qualityNo画质,默认 auto
base_urlNo单次覆盖站点域名(如 https://tokenhub.tencentmaas.com)。不传时用环境变量 TOKENHUB_BASE_URL
backgroundNo图像背景透明度:transparent 透明 / opaque 不透明 / auto 自动判断,默认 auto
output_formatNo输出格式,默认 png
response_formatNo返回格式:url(图片地址)或 b64_json(base64 数据),默认 url
output_compressionNoJPEG 压缩级别 0-100,仅 output_format=jpeg 时生效

TDQS

A4.2/5.0
Behavior4/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 discloses the model default, whitelist requirement, mask support, URL/base64 input acceptance, and return fields. It does not mention error behavior, rate limits, or auth mechanics, but it covers the main operational characteristics well.

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 compact, informative, and well-front-loaded. It covers the core operation, constraints, input formats, mask feature, and return payload in four sentences with no fluff or redundancy.

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

Completeness4/5

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

Given the 12-parameter schema and absence of an output schema, the description provides enough operational context: input requirements, image count range, model default and whitelist, mask support, and response contents. It falls short of 5 only because of missing explicit alternative-tool routing and access/auth context.

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 baseline is 3. The description mentions mask, input images, model default, and input formats, but most of these details are already documented in the schema. It adds only high-level context like whitelist and return metadata, not substantial new parameter-level semantics.

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

Purpose5/5

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

The description clearly states the operation: calling TokenHub to generate an image from 1-16 input images plus a text prompt, with support for mask-based local repainting. It also specifies the output contents (image URL list, request_id, token usage), making the tool's purpose and scope unambiguous.

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

Usage Guidelines4/5

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

The description gives clear contextual signals for when to use this tool: when existing images are provided as input and editing/repainting is needed. It doesn't explicitly exclude or name the alternative tokenhub_generate_image, so the routing guidance is implied rather than explicit.

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

tokenhub_generate_imageTokenHub 文生图A

调用 TokenHub 接口,根据文本描述同步生成图片(模型默认 custom-model-og-v2,需在 TokenHub 控制台开白并配置专属 API Key)。返回图片 URL 列表、request_id 与 token 用量。

ParametersJSON Schema
NameRequiredDescriptionDefault
nNo生成图片数量 1-10,默认 1
sizeNo生成尺寸 "宽x高",如 2048x2048。约束:单边≤3840px、宽高为 16 的倍数、长短边比≤3:1、总像素 655360~8294400
modelNo单次覆盖模型名。不传时用环境变量 TOKENHUB_MODEL(默认 custom-model-og-v2)
promptYes文本描述,最大 32000 字符
qualityNo画质,默认 auto
base_urlNo单次覆盖站点域名(如 https://tokenhub.tencentmaas.com)。不传时用环境变量 TOKENHUB_BASE_URL
backgroundNo图像背景透明度:opaque 不透明 / auto 自动判断,默认 auto
output_formatNo输出格式,默认 png
response_formatNo返回格式:url(图片地址)或 b64_json(base64 数据),默认 url
output_compressionNoJPEG 压缩级别 0-100,仅 output_format=jpeg 时生效

TDQS

A3.8/5.0
Behavior4/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 discloses that the call is synchronous, requires the user to have whitelisted the model and configured a dedicated API key, and that the response includes image URLs, request_id, and token usage. It does not cover error behavior or rate limits, but the key behavioral constraints are present.

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 short, information-dense sentences with no redundancy. It ends with the action and auth prerequisite, then return values. Every word contributes to the agent's understanding.

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

Completeness4/5

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

For a tool with 10 parameters and no output schema, the description covers the important context: synchronous, auth required, default model, return shape. The schema covers parameter details, and what is missing (timeouts, error behavior) is minor for most use cases.

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?

The input schema documents all 10 parameters with detailed per-parameter descriptions, so the description adds very little for parameters. Mentioning the default model is useful but overlaps with the schema's model field. This is the expected baseline since schema coverage is 100%.

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 action: calling TokenHub to synchronously generate an image from a text description, and identifies the resource (image). It does not explicitly contrast with tokenhub_edit_image, but the 'generate from text' wording is distinct enough.

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 the appropriate scenario (generate an image from a prompt) and provides essential prerequisites (whitelist + dedicated API key). However, it gives no explicit guidance on when to prefer this over tokenhub_edit_image or when not to use it.

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. 2 tool updatesv0.1.0
    • First observedtokenhub_edit_image
    • First observedtokenhub_generate_image

TDQS

A4.1/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: one generates an image purely from text, while the other edits/generates from 1-16 input images with optional masking. There is no realistic confusion between them.

Naming Consistency5/5

Both tools follow the same tokenhub_<verb>_image pattern with static verb prefixes: edit and generate. The naming convention is consistent and predictable.

Tool Count4/5

With only two tools, the server is slightly thin, but each tool covers a distinct core task in the image-generation domain. The focused scope makes the small count reasonable.

Completeness4/5

The two primary workflows—text-to-image generation and image editing/reinpainting—are covered, and the synchronous design avoids needing result-status tools. A minor gap is the lack of model-list or capability-discovery tooling, but agents can still complete the core tasks.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers