概要
インストール
ツールリスト
コンテンツ詳細
代替品
TweekIT MCP Serverとは?
TweekIT MCP Serverは、AIワークフロー向けに特別に設計されたメディア翻訳サービスです。DOC、XLS、PSD、DWGなどの非互換性のあるさまざまなファイル形式を、AIツールが処理できる形式(PDF、PNG、JPEGなど)に変換することができます。EquilibriumのMediaRich Server技術に基づいており、20年以上のメディア処理の経験を持っています。TweekIT MCP Serverの使い方は?
TweekITの使用は非常に簡単です。1) 無料アカウントを登録してAPIキーを取得します。2) MCPクライアントを構成してTweekITサーバーに接続します。3) AIツールを通じて直接変換機能を呼び出します。Claude Desktop、ChatGPT、Cursor IDEなどのさまざまなクライアントをサポートしています。適用シナリオ
TweekITは、複数のファイル形式を処理する必要があるAIワークフローシナリオに最適です。例えば、社員のアバターの自動処理、KYC身分認証、ソーシャルメディアの画像最適化、クロスプラットフォームのアセット変換、文書形式の標準化などです。主な機能
使い方
使用例
よくある質問
関連リソース
インストール
{
"mcpServers": {
"tweekit": {
"transport": { "type": "http", "url": "https://mcp.tweekit.io/mcp" }
}
}
}
{
"mcpServers": {
"tweekit": {
"type": "http",
"url": "https://mcp.tweekit.io/mcp",
"headers": {
"ApiKey": "${TWEEKIT_API_KEY}",
"ApiSecret": "${TWEEKIT_API_SECRET}"
}
}
}
}
{
"mcpServers": {
"tweekit": {
"type": "streamable-http",
"url": "https://mcp.tweekit.io/mcp",
"headers": {
"ApiKey": "${TWEEKIT_API_KEY}",
"ApiSecret": "${TWEEKIT_API_SECRET}"
}
}
}
}
{
"mcpServers": {
"tweekit": {
"transport": { "type": "http", "url": "https://mcp.tweekit.io/mcp" }
}
}
}## 🚀 TweekIT MCP Server
*あらゆるファイル形式をAIワークフローに取り込み、変換します*
現在のバージョン: v1.6.1
> **🤖 Claudeユーザー**: 「サポートされていないファイル形式」のエラーにうんざりしていますか? 当社の[Claudeファイル形式エネーブラー](#solving-claudes-file-type-limitations)にジャンプしてください。これはブラウザベースのツールで、450以上の形式(DOC、XLS、PSD、DWGなど)を数秒でClaude互換のファイルに変換します。
## 🚀 クイックスタート
TweekIT MCP Serverは、AIワークフローのための汎用メディア変換サービスです。このサービスを使用することで、あらゆるファイルを数秒で処理可能な状態に変換できます。以下に、TweekIT MCP Serverを始めるための手順を説明します。
### 前提条件
- Python 3.10以降
- Docker(コンテナ化ビルドの場合、オプション)
- HTTPリクエスト用の`httpx`ライブラリ
- ツール登録とサーバー機能のための`FastMCP`
### インストール方法
#### オプション1: PyPIからインストール(推奨)
```bash
# pipを使用する場合
pip install tweekit-mcp
# uvを使用する場合
uv pip install tweekit-mcp
# pipx(孤立した環境)を使用する場合
pipx install tweekit-mcp
MCPサーバーをローカルで実行するには、以下のコマンドを実行します。
tweekit-mcp --transport streamable-http --port 8080
CLIはserver.pyをラップしており、同じフラグ(--transport、--host、--port)を受け付けます。
オプション2: リポジトリをクローンする
git clone https://github.com/equilibrium-team/tweekit-mcp.git
cd tweekit-mcp
uv sync # または: pip install -r requirements.txt
必要に応じて、環境変数を設定します。
- PORT – Streamable HTTPポート(デフォルト: 8080)。
- PLUGIN_PROXY_PORT – ChatGPTプラグインプロキシのポート(スタンドアロンで実行する場合のデフォルト: 8080)。
- MCP_SERVER_PORT –
start_services.shを使用する場合のMCPサーバーの内部ポート(デフォルト: 8000)。
最初のAPI呼び出し
以下は、基本的なリサイズ操作を伴う画像を送信し、変換をプレビューし、結果を返す最小限の動作するJSONの例です。この例では、APIキーとシークレットによる認証を使用しています。
{
"method": "tools/call",
"params": {
"name": "convert",
"arguments": {
"apiKey": "{Your TweekIT API key}",
"apiSecret": "{Your TweekIT API secret}",
"inext": "png",
"outfmt": "png",
"blob": "iVBORw0KGgoAAAANSUhEUgAAABwAAAA6CAYAAACj+Dm/AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsSAAALEgHS3X78AAAAHnRFWHRTb2Z0d2FyZQBFcXVpbGlicml1bSBNZWRpYVJpY2h7w4AAAAAB30lEQVRYhe2Xv0vDQBTHP4rQTRGhLqKiYt38MaggKIi46e6im2Rw7FJw7NAh4uAi+h/oIDgKnR3VQZROKiLYrZtOOiQH1+RevJQ0INwXQt7de7lP++7l7tJTq9XIU7250hzQAR3QAR3QAXMH3gM/wG0ewHtgNrSXgXo3gXUNprTSLaAPrBv6C4DXDeBBgm8ha+ArwT+RNJkl8BoY/SNmKiugB2xaxA1nBayQnEolY+GkBdqkUlescNIAPWBL8D0I/bHCSQOsCP3fwFx4jypWOLbApFRehfdPgy9WODbApKpsATuh/WHwxwrHBphUlRea/SLErKUBniGn8g3Y19qPQtx4GuBugu8y0q4KcRN6oy9hwFvkVDaAfoKtaQgYBAaE2KINsE6wkUqaDi9b+UBZAn5ht3Sl0bwyTHOYNQxgRAIad+kMNJY3sAAcQvscesQPQ7qaBPP7Bbxr/XeaXab9BKdrMQrcS4AdhYPZ6EkArkJ7SucNQRC8c7YwCNZW084xAPgKeI25Or+B4xQwpWehf0MBl4SAG+C0A6D0zIwCFg3OJrDdAUwBTaeAggI2DM6TDmFKcwT7pa6GApY0aAs4R17908gnyBTh+CX9tShlAIiqSuSH/+sPUgd0QAf8J8BfT2hGnMaA5CUAAAAASUVORK5CYII=",
"noRasterize": false,
"width": 30,
"height": 30,
"page": 1,
"bgcolor": ""
}
},
"jsonrpc": "2.0",
"id": 4
}
動作確認
コードを書く前に、TweekITを視覚的に探索することができます。ライブデモでは、ファイルをアップロードし、変換を適用し、結果を即座にダウンロードすることができます。
- ライブデモを開く
- ユースケースの例を表示 実際のワークフローとコードサンプルを参照してください。
✨ 主な機能
TweekITとは?
TweekITは、あらゆるサポートされているファイルを数秒でAI対応状態にする、汎用メディア取り込みおよび変換サービスです。フォーマットの正規化、アセットのリサイズ、複雑なドキュメントからの単一ページの抽出など、TweekITは一貫したAPIファーストの方法で、個々のファイル形式の特性を気にすることなく、正確に必要な出力を得ることができます。
MCPコンテキストで使用する理由
モデルコンテキストプロトコル(MCP)ワークフローでは、TweekITはメディアの汎用翻訳者のように機能します。AIエージェントと、それが遭遇する予測不可能な実世界のファイルの間に位置し、処理前にすべてのアセットを互換性のある標準化された形式に変換します。これは、GitHub Actionsがソフトウェア自動化を合理化するのと同じように、AIパイプラインのメディア処理に適用されます。
TweekITをMCPツールセットに追加することで、エージェントは以下のことができます。
- ユーザーからのより広範な入力を失敗することなく受け入れる
- クロッピング、リサイズ、フォーマット変換、背景変更などの変換を自動的に適用する
- 手動介入なしで、クリーンで使用可能なアセットをAIワークフローの次のステップに渡す 私たちがよく知っている、常に発生する顧客ファイル取り込みエラーを解消する
キー機能
- 400以上のファイル形式をサポートし、シームレスな取り込みと変換を実現します。20年以上にわたって洗練されたコアエンジンを活用して、動的な画像およびビデオ処理を行います。
- ステートレスでAPIファーストの設計で、高速かつスケーラブルな統合が可能です。
- ウィジェットまたはREST APIによるアクセスで、あらゆるアプリケーションアーキテクチャに適合します。
- セキュアなキー管理と短期間のアセット保存によるエンタープライズグレードのセキュリティ。
- 不良な入力フォーマットによるAIパイプラインの失敗を即座に防止する即時互換性修正。
今すぐ試す
- AIファイル形式エネーブラー – Claude、OpenAI、その他のAIツール用のブラウザベースの変換ツール(DOC、XLS、PSD、DWG → PDF/PNG)
- ライブデモ – ブラウザでファイルをアップロードし、変換することができます。
- ユースケースの例 – ウェブサイトで実際のワークフローとコードサンプルを参照してください。具体的なMCPマニフェスト変換は、以下のセクション7に示されています。
📦 インストール
オプション1: PyPIからインストール(推奨)
# pipを使用する場合
pip install tweekit-mcp
# uvを使用する場合
uv pip install tweekit-mcp
# pipx(孤立した環境)を使用する場合
pipx install tweekit-mcp
MCPサーバーをローカルで実行するには、以下のコマンドを実行します。
tweekit-mcp --transport streamable-http --port 8080
CLIはserver.pyをラップしており、同じフラグ(--transport、--host、--port)を受け付けます。
オプション2: リポジトリをクローンする
git clone https://github.com/equilibrium-team/tweekit-mcp.git
cd tweekit-mcp
uv sync # または: pip install -r requirements.txt
必要に応じて、環境変数を設定します。
- PORT – Streamable HTTPポート(デフォルト: 8080)。
- PLUGIN_PROXY_PORT – ChatGPTプラグインプロキシのポート(スタンドアロンで実行する場合のデフォルト: 8080)。
- MCP_SERVER_PORT –
start_services.shを使用する場合のMCPサーバーの内部ポート(デフォルト: 8000)。
💻 使用例
基本的な使用法
{
"method": "tools/call",
"params": {
"name": "convert",
"arguments": {
"apiKey": "{Your TweekIT API key}",
"apiSecret": "{Your TweekIT API secret}",
"inext": "png",
"outfmt": "png",
"blob": "iVBORw0KGgoAAAANSUhEUgAAABwAAAA6CAYAAACj+Dm/AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsSAAALEgHS3X78AAAAHnRFWHRTb2Z0d2FyZQBFcXVpbGlicml1bSBNZWRpYVJpY2h7w4AAAAAB30lEQVRYhe2Xv0vDQBTHP4rQTRGhLqKiYt38MaggKIi46e6im2Rw7FJw7NAh4uAi+h/oIDgKnR3VQZROKiLYrZtOOiQH1+RevJQ0INwXQt7de7lP++7l7tJTq9XIU7250hzQAR3QAR3QAXMH3gM/wG0ewHtgNrSXgXo3gXUNprTSLaAPrBv6C4DXDeBBgm8ha+ArwT+RNJkl8BoY/SNmKiugB2xaxA1nBayQnEolY+GkBdqkUlescNIAPWBL8D0I/bHCSQOsCP3fwFx4jypWOLbApFRehfdPgy9WODbApKpsATuh/WHwxwrHBphUlRea/SLErKUBniGn8g3Y19qPQtx4GuBugu8y0q4KcRN6oy9hwFvkVDaAfoKtaQgYBAaE2KINsE6wkUqaDi9b+UBZAn5ht3Sl0bwyTHOYNQxgRAIad+kMNJY3sAAcQvscesQPQ7qaBPP7Bbxr/XeaXab9BKdrMQrcS4AdhYPZ6EkArkJ7SucNQRC8c7YwCNZW084xAPgKeI25Or+B4xQwpWehf0MBl4SAG+C0A6D0zIwCFg3OJrDdAUwBTaeAggI2DM6TDmFKcwT7pa6GApY0aAs4R17908gnyBTh+CX9tShlAIiqSuSH/+sPUgd0QAf8J8BfT2hGnMaA5CUAAAAASUVORK5CYII=",
"noRasterize": false,
"width": 30,
"height": 30,
"page": 1,
"bgcolor": ""
}
},
"jsonrpc": "2.0",
"id": 4
}
高度な使用法
{
"name": "convert",
"arguments": {
"apiKey": "{Your TweekIT API key}",
"apiSecret": "{Your TweekIT API secret}",
"inext": "{filename extension of the input doc}",
"outfmt": "webp",
"blob": "{Your base64 encoded document}"
}
}
📚 ドキュメント
目次
- 概要
- Claudeのファイル形式制限の解決策
- 要件
- インストール
- クイックスタート
- 認証
- サーバーとホスティング
- クライアント互換性
- Claude Desktopのクイックスタート
- ChatGPT MCPのクイックスタート
- Cursor IDEのクイックスタート
- Continue IDEのクイックスタート
- レート制限と価格
- 核心概念
- MCP APIリファレンス
- REST APIリファレンス
- ユースケース
- デモ + コード表示
- エラーハンドリングとトラブルシューティング
- 高度なトピック
- レジストリ準備状況
- リソース
要件
- Python 3.10またはそれ以降
- Docker(コンテナ化ビルドの場合、オプション)
- HTTPリクエスト用の
httpxライブラリ - ツール登録とサーバー機能のための
FastMCP
認証
TweekITは複数の認証方法をサポートしています。ただし、MCP統合では、キー/シークレットペアの方法のみが機能します。
MCPサーバーでの使用: APIキー + シークレット
これは最も安全で柔軟なオプションです。すべての本番環境のデプロイにこれを使用してください。
手順
- TweekITアカウントでAPIキーとシークレットを生成します。
- これらを安全に保管してください。ソースコントロールにコミットしないでください。
- サーバーサイドのコードまたはリバースプロキシを使用して、リクエストに資格情報を挿入します。
セキュリティのヒント
- 常にリバースプロキシまたはその他のサーバーサイドの方法を使用して、資格情報を保護してください。
- クライアントサイドのコードにシークレットを埋め込まないでください。
次のステップ
認証後、以下のことができます。
- Base-64を使用して、リクエストの一部としてメディアをアップロードする
- 出力を受け取る
サーバーとホスティング
ホスト済みのMCPサーバー
すべてのツールとリソースはここで利用できます。テストと無料トライアルに使用されます。
- 公開MCPエンドポイント(HTTPトランスポート): https://mcp.tweekit.io/mcp
現在利用可能なリソース名は'version'です。現在利用可能なツール名は'doctype'、'convert'、および'convert_url'です。パラメーターについては以下を参照するか、MCPサーバーにクエリを送信すると、それぞれの使用方法を指示するメタデータが返されます。
バージョニングとビルド番号
プロジェクトはmajor.minor.build形式でセマンティックバージョンを追跡し、ビルドコンポーネントは2桁にパディングされます(例: 1.6.01)。scripts/bump_version.pyを使用して、すべてのメタデータファイルを同期させます。
# ビルド番号のみをインクリメントする(例: 1.6.01 -> 1.6.02)
python scripts/bump_version.py --bump-build
# 明示的なバージョンを設定し、必要に応じてビルドカウンターをリセットする
python scripts/bump_version.py --set 1.7.00
このスクリプトは、VERSION、pyproject.toml、server.py、server.json、README.md、およびuv.lockを更新して、コンテナビルド、マニフェスト、およびドキュメントが同期されたままになります。
MCPのインストール
TweekIT MCPサーバーをローカルで実行するか、ホストされたインスタンスに接続することができます。開発とテストには、ローカルオプションが推奨されます。
ローカルインストール
git clone https://github.com/equilibrium-team/tweekit-mcp.git
cd tweekit-mcp
pip install -r requirements.txt
サーバーを実行する
uv run server.py
サーバーは以下のアドレスでリッスンします。
設定オプション
ローカル開発モード
デフォルトでは、server.pyはポート8080のlocalhostにバインドされます。PORT環境変数を使用してポートをオーバーライドすることができます。
PORT=9090 uv run server.py
Cloud Runデプロイメント
提供されているスクリプトを使用して、Google Cloud Runでコンテナ化されたステージまたは本番サービスをビルドしてデプロイします。
前提条件:
- Google Cloudプロジェクトへのアクセス(デフォルトでは
tweekitmcp-a26b6)。 gcloudCLIが認証されていること(gcloud auth login)。標準の設定ディレクトリが読み取り専用の場合、export CLOUDSDK_CONFIG="$(pwd)/.gcloud-config"のような書き込み可能なエクスポートを行ってください。
Dockerでコンテナをローカルで実行します(イメージtweekit-mcp-local:devをビルドし、8080にバインドします)。
bash scripts/deploy_cloud_run.sh local --version dev
ステージングにデプロイします(tweekit-mcp-stageサービスを作成/更新します)。
bash scripts/deploy_cloud_run.sh stage --version 1.6.01
本番環境にデプロイします(tweekit-mcpサービスを更新します)。
bash scripts/deploy_cloud_run.sh prod --version 1.6.01
アクティブなgcloud構成をオーバーライドする必要がある場合は、--project <PROJECT_ID>を渡し、Cloud Run環境変数をYAML形式で提供するには、--env-file <path>を渡します。
ヘルパースクリプトは決して資格情報をバンドルしません。実行するときは、常に独自のGoogle Cloudプロジェクト、リージョン、およびシークレットソースを提供してください。Equilibriumのステージング/本番キーは管理されたシークレットストアに保存されており、このリポジトリから意図的に除外されています。
Firebase FunctionsのPython依存関係はデプロイ時に解決されます。
scripts/deploy_firebase.shはこれらをローカルのfunctions/packages/(gitignoredディレクトリ)にベンダー化するため、リポジトリは軽量なままです。
クライアント互換性
- Claude: 互換性あり(listToolsを介してツールを検出します。HTTPトランスポートで動作します)。
- ChatGPT (OpenAI): 互換性あり(必要なツールを提供します:
search、fetch)。 - Cursor: 対象外(ワークスペース/ファイルツールは公開されていません)。
例
- Claude Desktop(設定スニペット)
{ "mcpServers": { "tweekit": { "transport": { "type": "http", "url": "https://mcp.tweekit.io/mcp" } } } } - Claudeツール呼び出し(引数の例)
{ "name": "convert", "arguments": { "apiKey": "YOUR_KEY", "apiSecret": "YOUR_SECRET", "inext": "png", "outfmt": "webp", "blob": "<base64>", "width": 300, "height": 300 } } - OpenAI (Node, MCP TypeScriptクライアントを使用)
import { Client } from "@modelcontextprotocol/sdk/client"; import { HttpClientTransport } from "@modelcontextprotocol/sdk/client/transport/http"; const transport = new HttpClientTransport(new URL("https://mcp.tweekit.io/mcp")); const client = new Client({ name: "tweekit-example", version: "1.0.0" }, { capabilities: {} }, transport); await client.connect(); const tools = await client.listTools(); const res = await client.callTool({ name: "doctype", arguments: { ext: "pdf", apiKey: process.env.TWEEKIT_API_KEY, apiSecret: process.env.TWEEKIT_API_SECRET }, }); console.log(res); - OpenAI (Python, クイックコール)
import asyncio import os from fastmcp import Client async def main(): async with Client("https://mcp.tweekit.io/mcp") as c: print(await c.list_tools()) out = await c.call_tool( "convert", { "apiKey": os.environ["TWEEKIT_API_KEY"], "apiSecret": os.environ["TWEEKIT_API_SECRET"], "inext": "png", "outfmt": "txt", "blob": "<base64>", }, ) print(out) asyncio.run(main())
Claude Desktopのクイックスタート
Claude Desktop内でTweekitを使用する方法は2つあります。
- ホストされたHTTPサーバー – 設定 → コネクタ → 詳細 → 開発者モード → “HTTPサーバーを追加” を介して、Claudeを
https://mcp.tweekit.io/mcpに向けます。 - ローカルバンドル (
.mcpb) – パッケージ化されたstdioサーバーをインストールすると、オフラインで作業したり、カスタマイズされたビルドを配布したりできます。
私たちは、scripts/build_claude_bundle.pyでローカルバンドルを維持し、scripts/configure_claude_desktop.pyのガイド付きヘルパーを使用しています。このヘルパーは、バージョン選択、バンドル生成、dxtマニフェスト検証を行い、最後に結果のdist/tweekit-claude.mcpbをインポートするように促します。また、私たちの本番環境のTier 1ヘッドレスノードは、SAS 70 / ISO 27001準拠のデータセンター内のEquilibrium所有のCPUcoinエンタープライズマイナー上で実行されていることを繰り返し強調しています。ローカルバンドルは同じ機能セットを反映しています。
接続後(どちらの方法でも):
- 質問: “doctypeを介してサポートされている入力タイプをリストアップしてください。”
- または、キー/シークレットとBase64ブロブを使用してconvertを呼び出します。
{
"name": "convert",
"arguments": { "apiKey": "…", "apiSecret": "…", "inext": "png", "outfmt": "webp", "blob": "<base64>" }
}
ChatGPT MCPのクイックスタート
ChatGPT環境がMCPツールをサポートしている場合、公開エンドポイントを指すHTTP MCPサーバーを追加します。
- サーバーを構成します: URL
https://mcp.tweekit.io/mcp(HTTPトランスポート) - チャットでツールを使用します。
- doctype
{ "name": "doctype", "arguments": { "ext": "pdf", "apiKey": "…", "apiSecret": "…" } }
- convert
{
"name": "convert",
"arguments": {
"apiKey": "…",
"apiSecret": "…",
"inext": "png",
"outfmt": "txt",
"blob": "<base64>"
}
}
Cursor IDEのクイックスタート
Cursorは~/.cursor/mcp.jsonからMCP構成を読み込みます。ホストされたTweekITサーバーを有効にするには、以下のスニペット(configs/cursor-mcp.jsonにも公開されています)を既存のファイルにマージします。
{
"mcpServers": {
"tweekit": {
"type": "http",
"url": "https://mcp.tweekit.io/mcp",
"headers": {
"ApiKey": "${TWEEKIT_API_KEY}",
"ApiSecret": "${TWEEKIT_API_SECRET}"
}
}
}
}
.env.exampleを.envにコピーし、TWEEKIT_API_KEY/TWEEKIT_API_SECRETを入力してから、source .env(または手動で変数をエクスポート)します。
- Cursorを再起動し、“List tools” を実行して、
version、doctype、convert、およびconvert_urlが利用可能であることを確認します。 - オプション: JSONを内部でホストし、チームメイトに “Cursorに追加” のディープリンクを提供します。
Continue IDEのクイックスタート
Continue (VS Code / JetBrains) は~/.continue/config.jsonにMCPサーバーを保存します。mcpServersの下にTweekITサーバーを追加します(configs/continue-mcp.jsonにコピー可能なJSONがあります)。
{
"mcpServers": {
"tweekit": {
"type": "streamable-http",
"url": "https://mcp.tweekit.io/mcp",
"headers": {
"ApiKey": "${TWEEKIT_API_KEY}",
"ApiSecret": "${TWEEKIT_API_SECRET}"
}
}
}
}
構成を保存した後:
- Continueをリロードして、新しいMCPエントリを取得します。
- Continueの “Tools” パネルを使用して、
doctype、convert、またはconvert_urlを適切なパラメーターで呼び出します。 - ワークスペース固有の資格情報手順を文書化して、チームメイトがすぐに接続できるようにします。
レート制限と価格
TweekITは寛大な無料枠を提供しているため、無料で探索して統合することができます。
無料枠
- 10,000回のAPI呼び出し が無料で含まれています。
- すべてのコアアップロード、プレビュー、およびダウンロード機能への完全なアクセス権。
- 開始するためにクレジットカードは必要ありません。
有料プラン
無料枠の制限を超えた場合、いつでも有料プランにアップグレードすることができます。
詳細については、完全な価格ガイドを参照してください。MCPサーバーを使用するには、トークンキーペアが必要です。
https://www.tweekit.io/pricing/
レート制限エラーの処理
月額クォータに達すると、APIはHTTP 429 Too Many Requestsステータスで応答します。
MCP統合のヒント
MCPクライアントは次のことを行う必要があります。
429レスポンスをキャッチします。- ユーザーに明確なエラーメッセージを表示します。
- 続行するためにすぐにプランをアップグレードすることを推奨します。
🔧 技術詳細
核心概念
これらの核心概念を理解することで、MCPワークフローでTweekITを最大限に活用することができます。
リクエストにBase-64コンテンツを含む → レスポンスにBase-64結果を含む
TweekIT MCPサーバーは、このシンプルでステートレスで安全なパイプラインを使用して、ドキュメント処理リクエストを行います。
変換
TweekITは、プレビュー時に適用される幅広い変換をサポートしています。
- リサイズ: 幅と高さでリサイズします(一方のパラメータのみを送信すると、もう一方はアスペクト比を維持するために自動的に計算されます)。
- 出力形式の変更: ファイル形式を別のファイルタイプに変更します。
- 背景色: 透明またはパディングされた領域に塗りつぶします。
- 非ラスタライズ: PDF出力形式と組み合わせると、テキストベースのドキュメント全体をPDFファイルに変換して、上流のAIに取り込むことができます。
ステートレス処理
TweekITはファイルを永続的に保存しません。
- ジョブフォルダと一時ストレージは、各リクエスト後に削除されます。
- この設計により、最小限のストレージオーバーヘッドと、機密ファイルの強力なプライバシーが保証されます。
- 通信中のデータはSSLを介して暗号化されます。
MCPリファレンス
リソース
/version
説明: TweekIT APIの現在のバージョンを取得します。パラメータは必要ありません。
/server-version
説明:
このMCPサーバーのバージョン文字列(例: 1.6.01)を返します。パラメータは必要ありません。
ツール
/doctype
説明: サポートされている入力ファイル形式のリストを取得するか、ファイル拡張子をドキュメントタイプにマッピングします。返されるドキュメントタイプフィールドが空の場合、その形式は読み取りにサポートされていません。
パラメータ:
- extension: ファイル拡張子(例: jpg、docx)。オプションで、デフォルトは'*'です。(すべてのサポートされている入力ドキュメントタイプを返します)。
- apiKey: 認証用のAPIキー。
- apiSecret: 認証用のAPIシークレット。
/convert
説明: Base64でエンコードされたドキュメントを指定された出力形式に変換します。
パラメータ:
- apiKey: 認証用のAPIキー。
- apiSecret: 認証用のAPIシークレット。
- inext: 入力ファイルの拡張子(例: jpg、png、doc、docxなど)。
- outfmt: 目的の出力形式(例: jpg、pdf、png)。
- blob: Base64でエンコードされたドキュメントデータ。
オプション:
- noRasterize: 入力ドキュメントがテキストベースのドキュメント(doc、odt、xlsなど)で、出力形式が'pdf'に設定され、このパラメータがtrueに設定されている場合、ドキュメントをラスタライズして画像操作を行う代わりに、すべてのページがPDFに変換されて返されます。出力形式が'pdf'でない場合、このパラメータは無視されます。デフォルトはfalseです。
- width: 出力の目的の幅(デフォルト: リサイズしない場合は0)。
- height: 出力の目的の高さ(デフォルト: リサイズしない場合は0)。
- x1, y1, x2, y2: 整数のクロップ座標。デフォルトはすべて0(クロップしない)です。クロップはリサイズの前に適用されます。x1とy1の値は負の値にすることができ、これにより上部と左部にパディングが追加されます。x2とy2は元のラスターサイズより大きくすることができ、これにより右部と下部にパディングが追加されます。
- page: 変換するページ番号(マルチページドキュメントの場合、デフォルト: 1)。
- alpha: ブール値(デフォルト: True - 出力形式がサポートする場合はアルファチャネルを通過させます)。falseの場合、アルファチャネルが削除され、ピクセルがbgColor値で置き換えられます。
- bgColor: 背景色のパディング、または透明なドキュメントのアルファチャネルを削除する必要がある場合。(デフォルト: "000000"または黒)。16進数値の前に'#'(ウェブカラーインジケータ)を付けることもできます。
指定されたページ(またはページ1)の画像が、正しいコンテンツタイプが設定されたレスポンスで返されます。noRasterizeがtrueに設定され、他のすべての条件が満たされている場合、送信されたドキュメント全体の内容のPDFが返されます。
/convert_url
説明: HTTP(S)を介してリモートドキュメントをダウンロードし、呼び出し元がBase64入力を提供する必要なく、TweekIT変換パイプラインにルーティングします。
パラメータ:
- apiKey: 認証用のAPIキー。
- apiSecret: 認証用のAPIシークレット。
- url: ソースドキュメントを指すHTTPSまたはHTTPのURL。
- outfmt: 目的の出力形式(例: jpg、pdf、png)。
オプション:
- inext: 入力拡張子のオーバーライド。省略された場合、サーバーはURLパスまたはレスポンスのコンテンツタイプヘッダーからこれを推測します。
- noRasterize, width, height, x1, y1, x2, y2, page, alpha, bgColor:
/convertと同じ意味です。 - fetchHeaders: リモートアセットをダウンロードする際に含めるHTTPヘッダーのオブジェクト(例: Authorization)。
戻り値: /convertと同じです。バイナリ画像/ファイルペイロードはFastMCP Image/Fileオブジェクトとして表示され、JSONレスポンスはそのまま渡されます。
/search
説明: 軽量のDuckDuckGoクエリを実行し(APIキーは必要ありません)、{ query, results: [{ title, url, snippet }] }を返します。これは、公開ドキュメントまたは画像を見つけ、そのURLを直接/convert_urlに渡すのに役立つように設計されています。環境で別のプロバイダが必要な場合は、server.pyのHTTP呼び出しを交換してください。docs/quickstarts.mdで理由とカスタマイズする場所を説明しています。
パラメータ:
- query: 検索クエリ文字列。
- max_results: 返す最大結果数(デフォルト: 5、最大: 10)。
/fetch
説明: URLをフェッチし、コンテンツタイプに基づいてコンテンツを返します。
パラメータ:
- url: フェッチする
httpまたはhttpsのURL。
戻り値:
- 画像コンテンツは
imageリソースとして、image/*レスポンスに対して返されます。 - PDFは
resourceとして、application/pdfに対してformat="pdf"で返されます。 - テキスト/JSONは
textとメタデータを含むJSONオブジェクトとして返されます。 - その他のバイナリは、
format="bin"の汎用resourceとして返されます。
REST APIリファレンス
MCPサーバーがTweekIT REST APIと通信して、MCPリクエストをTweekITにプロキシする方法を理解するには、こちらのドキュメントを参照してください。
使用例
以下は、TweekITがメディア処理の信頼性と速度を向上させる一般的なワークフローです。各例では、REST APIとMCPの使用パターンの両方を示しています。
1. 従業員の証明写真自動化
画像を自動的にクロップし、リサイズして、一貫したサイズと形式にします。
MCPの例
{
"method": "tools/call",
"params": {
"name": "convert",
"arguments": {
"apiKey": "{Your TweekIT API key}",
"apiSecret": "{Your TweekIT API secret}",
"inext": "png",
"outfmt": "png",
"blob": "iVBORw0KGgoAAAANSUhEUgAAABwAAAA6CAYAAACj+Dm/AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsSAAALEgHS3X78AAAAHnRFWHRTb2Z0d2FyZQBFcXVpbGlicml1bSBNZWRpYVJpY2h7w4AAAAAB30lEQVRYhe2Xv0vDQBTHP4rQTRGhLqKiYt38MaggKIi46e6im2Rw7FJw7NAh4uAi+h/oIDgKnR3VQZROKiLYrZtOOiQH1+RevJQ0INwXQt7de7lP++7l7tJTq9XIU7250hzQAR3QAR3QAXMH3gM/wG0ewHtgNrSXgXo3gXUNprTSLaAPrBv6C4DXDeBBgm8ha+ArwT+RNJkl8BoY/SNmKiugB2xaxA1nBayQnEolY+GkBdqkUlescNIAPWBL8D0I/bHCSQOsCP3fwFx4jypWOLbApFRehfdPgy9WODbApKpsATuh/WHwxwrHBphUlRea/SLErKUBniGn8g3Y19qPQtx4GuBugu8y0q4KcRN6oy9hwFvkVDaAfoKtaQgYBAaE2KINsE6wkUqaDi9b+UBZAn5ht3Sl0bwyTHOYNQxgRAIad+kMNJY3sAAcQvscesQPQ7qaBPP7Bbxr/XeaXab9BKdrMQrcS4AdhYPZ6EkArkJ7SucNQRC8c7YwCNZW084xAPgKeI25Or+B4xQwpWehf0MBl4SAG+C0A6D0zIwCFg3OJrDdAUwBTaeAggI2DM6TDmFKcwT7pa6GApY0aAs4R17908gnyBTh+CX9tShlAIiqSuSH/+sPUgd0QAf8J8BfT2hGnMaA5CUAAAAASUVORK5CYII=",
"noRasterize": false,
"width": 30,
"height": 30,
"page": 1,
"bgcolor": ""
}
}
}
同等のRESTの例(別のアップロード手順が必要)
curl -X POST "https://www.tweekit.io/tweekit/api/image/preview/{docId}" \
-H "apikey: {Your API Key}" \
-H "apisecret: {Your API Secret}" \
-H "Content-Type: application/json;charset=UTF-8" \
-d '{"width": 30, "height": 30, "fmt": "png"}'
2. KYC写真の取り込みと正規化
身分証明書の写真を標準化された形式に処理して、自動検証を行います。
MCPの例
{
"method": "tools/call",
"params": {
"name": "convert",
"arguments": {
"apiKey": "{Your TweekIT API key}",
"apiSecret": "{Your TweekIT API secret}",
"inext": "jpg",
"outfmt": "webp",
"blob": "{Your base64 encoded photo}",
"width": 600,
"height": 600,
"bgcolor": "FFFFFF"
}
}
}
同等のRESTの例
curl -X POST "https://www.tweekit.io/tweekit/api/image/preview/{docId}" \
-H "apikey: {Your API Key}" \
-H "apisecret: {Your API Secret}" \
-H "Content-Type: application/json;charset=UTF-8" \
-d '{"width": 600, "height": 400, "fmt": "webp", "bgcolor": "#FFFFFF"}'
3. ソーシャルメディアと電子商取引の画像リサイズ
正しいアスペクト比と背景塗りつぶしで、プラットフォーム固有の商品画像を生成します。
MCPの例
{
"method": "tools/call",
"params": {
"name": "convert",
"arguments": {
"apiKey": "{Your TweekIT API key}",
"apiSecret": "{Your TweekIT API secret}",
"inext": "jpg",
"outfmt": "jpg",
"blob": "{Your base64 encoded photo}",
"width": 1080,
"height": 1080,
"bgcolor": "FFFFFF"
}
}
}
同等のRESTの例
curl -X POST "https://www.tweekit.io/tweekit/api/image/preview/{docId}" \
-H "apikey: {Your API Key}" \
-H "apisecret: {Your API Secret}" \
-H "Content-Type: application/json;charset=UTF-8" \
-d '{"width": 1080, "height": 1080, "fmt": "jpg", "bgcolor": "#FFFFFF"}'
4. クロスプラットフォームのアセット変換
異なるツールやワークフロー間での互換性のために、ファイルを形式間で変換します。
MCPの例
{
"method": "tools/call",
"params": {
"name": "convert",
"arguments": {
"apiKey": "{Your TweekIT API key}",
"apiSecret": "{Your TweekIT API secret}",
"inext": "{filename extension of the input doc}",
"outfmt": "webp",
"blob": "{Your base64 encoded document}"
}
}
}
同等のRESTの例
curl -X POST "https://www.tweekit.io/tweekit/api/image/preview/{docId}" \
-H "apikey: {Your API Key}" \
-H "apisecret: {Your API Secret}" \
-H "Content-Type: application/json;charset=UTF-8" \
-d '{"fmt": "webp"}'
5. マルチページドキュメントのPDF変換
複雑なドキュメントやレガシーファイルタイプを元の形式からPDFファイルに変換して、現在のAIワークフローに互換性を持たせます。
MCPの例
{
"method": "tools/call",
"params": {
"name": "convert",
"arguments": {
"apiKey": "{Your TweekIT API key}",
"apiSecret": "{Your TweekIT API secret}",
"inext": "{filename extension of the input doc}",
"outfmt": "pdf",
"noRasterize": true,
"blob": "{Your base64 encoded document}"
}
}
}
同等のRESTの例
curl -X POST "https://www.tweekit.io/tweekit/api/image/preview/{docId}" \
-H "apikey: {Your API Key}" \
-H "apisecret: {Your API Secret}" \
-H "Content-Type: application/json;charset=UTF-8" \
-d '{"fmt": "pdf", noRasterize: true}'
デモ + コード表示
TweekITには、インタラクティブなMCP対応デモが含まれており、ブラウザでアップロード、プレビュー、および変換ワークフローを試すことができます。そして、自分のプロジェクトでそれらのアクションを再現するために必要な正確なコードを確認することができます。
インタラクティブなTweekitデモ
ライブデモを開いて、次のことを行います。
- サポートされている任意のファイルをアップロードします。
- リサイズ、クロップ、背景塗りつぶし、およびフォーマット変換などの変換をプレビューします。
- 変換された出力をダウンロードします。
アップロードプレビューUI
デモでは、ドラッグアンドドロップまたはクリックしてアップロードするインターフェイスが提供されており、ファイルを選択することができます。アップロード後、次の情報が表示されます。
- ファイル名とタイプ。
- 生成されたDocId(20分で有効期限が切れます)。
- 元の画像のプレビュー。
変換UI
ブラウザ内で直接変換パラメータを調整することができます。
- リサイズの寸法。
- クロップ領域(矩形または楕円形)。
- 出力形式。
- 背景色の塗りつぶし。
変更は、アプリケーションが呼び出すのと同じRESTエンドポイントを使用してリアルタイムに適用されます。
自動コード生成タブ
デモのすべてのアクションは、次の言語の対応するコードを表示することができます。
- Node.js
await fetch(`https://www.tweekit.io/tweekit/api/image/preview/${docId}`, { method: 'POST', headers: { "apikey": "{Your API Key}", "apisecret": "{Your API Secret}" }, body: JSON.stringify({ width: 300, height: 300, fmt: 'png' }) }); - curl
curl -X POST "https://www.tweekit.io/tweekit/api/image/preview/{docId}" \ -H "apikey: {Your API Key}" \ -H "apisecret: {Your API Secret}" \ -H "Content-Type: application/json;charset=UTF-8" \ -d '{"width": 300, "height": 300, "fmt": "png"}'
エラーハンドリングとトラブルシューティング
TweekITを使用して堅牢なMCPワークフローを構築するには、一般的なエラーシナリオを予測して処理する必要があります。APIは明確なHTTPステータスコードとエラーペイロードを返すため、クライアントまたはMCPアクションは適切に応答することができます。
一般的な問題
不適切なフォーマット
- 原因: ファイル形式がサポートされていないか、要求された出力形式が無効です。
- 解決策: ドキュメントのサポートされているファイル形式のリストを確認してください。変換要求が有効な
fmt値を持っていることを確認してください。 - HTTPステータス:
400 Bad Request - エラー例:
{ "error": "invalid_format", "message": "The requested
代替品








