apinoa について
apinoa-mcpは、商品、ソーシャル投稿、検索結果、AIの回答、画像翻訳のデータをMCPクライアントに提供します。型チェック済みのTypeScriptコードでAPIをまとめて呼び出し、サンドボックス内で実行できます。
主な機能
- 01商品、ソーシャル投稿、検索結果を検索
- 02AIの回答取得と画像内テキストの翻訳
- 03TypeScriptコードでAPI呼び出しを構成
- 04ページネーション、並列処理、絞り込み
- 05データをローカル保存し利用量を確認
活用シーン
- 01AmazonとWalmartの商品価格を比較
- 02ソーシャルアカウントの投稿反応を分析
- 03検索結果やAI回答でのブランド掲載を確認
- 04商品画像内のテキストを翻訳
MCP 対応
`search_docs`、`execute`、`translate_image`などのツールをMCPクライアントに提供し、API操作の確認、コード実行、画像翻訳を可能にします。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://api.apinoa.com/mcpclaude mcp add --transport http apinoahq-apinoa https://api.apinoa.com/mcp{"mcpServers":{"apinoahq-apinoa":{"type":"http","url":"https://api.apinoa.com/mcp"}}}Cursor で開く{"servers":{"apinoahq-apinoa":{"type":"http","url":"https://api.apinoa.com/mcp"}}}VS Code で開く{"mcpServers":{"apinoahq-apinoa":{"type":"http","url":"https://api.apinoa.com/mcp"}}}{"mcpServers":{"apinoahq-apinoa":{"serverUrl":"https://api.apinoa.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://api.apinoa.com/mcp認証が必要ツール
詳細
apinoa-mcp
apinoa 用の MCP サーバーです。Claude Code、 Codex、Cursor、その他あらゆる MCP クライアントで、Amazon、Walmart、Shopify、TikTok Shop、AliExpress の最新商品データ、TikTok、YouTube、Instagram、Threads、X、Reddit、LinkedIn の投稿、プロフィール、コメント、Google、Bing、Naver など 13 以上の検索エンジンの検索結果、ChatGPT、Gemini、Google AI Overviews、Google AI Mode、Naver の AI 回答を取得でき、画像翻訳も利用できます。スクレイパーを書く代わりにご利用ください。
たとえば、「@duolingo の直近 30 件の TikTok のうち、通常の 3 倍の再生数を獲得したものはどれですか」、「Amazon と Walmart で最も安い 40 オンスの Stanley を比較して」、「Google で『trail running shoes』を検索したとき、example.com は何位ですか」、「おすすめのランニングシューズを尋ねたとき、ChatGPT は当社ブランドに言及しますか」、*「この商品写真のテキストを韓国語に翻訳して」*などと尋ねられます。
セットアップ
apinoa.com の Dashboard > API keys でキーを作成してください。API の通常料金で利用分が請求されます。失敗した呼び出しは請求されません。
ターミナルからキーを取得する
npx apinoa-mcp login
コードが表示され、ブラウザーで apinoa のページが開きます。そこでサインインしてコードを入力してください。新しいキーは、現在のフォルダーの .env に APINOA_API_KEY として保存されます(--out <path> を指定すると別のファイルに保存され、--no-browser を指定するとアドレスのみが表示されます)。有効期限は 90 日で、Dashboard > API keys に表示されます。ここからキーを取り消せます。以下の手順でクライアントに渡してください。
Claude Code
claude mcp add apinoa -e APINOA_API_KEY=your_key -- npx -y apinoa-mcp
Codex
codex mcp add apinoa --env APINOA_API_KEY=your_key -- npx -y apinoa-mcp
または ~/.codex/config.toml に記述します。
[mcp_servers.apinoa]
command = "npx"
args = ["-y", "apinoa-mcp"]
env = { APINOA_API_KEY = "your_key" }
Claude Desktop、Cursor、Windsurf など — クライアントの MCP 設定(claude_desktop_config.json、.cursor/mcp.json、…)に追加します。
{
"mcpServers": {
"apinoa": {
"command": "npx",
"args": ["-y", "apinoa-mcp"],
"env": { "APINOA_API_KEY": "your_key" }
}
}
}
Node.js 20 以降が必要です。このパッケージは、モデルのコードを実行する Deno をインストールします。
ツール
| ツール | 説明 |
|---|---|
search_docs | タスクに必要な操作を検索します。各操作の呼び出し方、すべてのパラメーター、料金、返されるフィールドを確認できます。無料 |
execute | モデルが作成した TypeScript を API に対して実行し、コードが返すか出力する内容のみを返します |
translate_image | 画像内のテキストを翻訳に置き換え、画像を返します |
API 呼び出しごとにツールを 1 回呼び出す代わりに、モデルが短いプログラムを作成します。50 アカウントへの並列処理、ページの追跡、フィルタリング、平均の計算はコード内で行われ、結果だけが会話に返されます。
const page = await apinoa.tiktok.posts({ username: "duolingo", limit: 30 });
const views = page.items.map((p) => p.metrics?.views ?? 0).sort((a, b) => a - b);
const median = views[Math.floor(views.length / 2)];
return page.items.filter((p) => (p.metrics?.views ?? 0) >= 3 * median).map((p) => p.url);
execute 内では、次の機能を利用できます。
apinoa.<platform>.<operation>(params):API を 1 回呼び出します。回答のdataを返し、拒否された場合はApinoaError(code、status)をスローします。pages(op, params, { maxPages }):ページ分割された操作のすべての項目を、カーソルを追跡しながら取得します。many(items, fn, { concurrency }):すべての項目に対してfnを実行します。一度に 8 件ずつ処理し、失敗した項目はundefinedとして返され、件数に数えられます。store.save / load / list / saveFile:実行間でマシン上にデータを保持します(たとえば、apinoa.tiktok.mediaの動画)。usage:今回の実行での呼び出しとユニット数です。
コードは実行前に API の型に照らして型チェックされるため、存在しない操作、パラメーター、フィールドがあれば、その時点でエラーになり、請求も発生しません。各実行には予算があり(デフォルトは 500 ユニット、実行ごとに budget_units で設定)、予算を使い切ると停止します。回答は 10 分間キャッシュされるため、同じコードを再実行しても、すでに呼び出した API の料金はかかりません。
コードは Deno のサブプロセスで実行されます。このプロセスがアクセスできるのは apinoa API のみで、読み書きできるのはデータフォルダーのみです。それ以外のホスト、ファイル、環境変数、プログラムにはアクセスできません。API キーがコードに渡されることはありません。サンドボックスが各リクエストにキーを追加します。
プラットフォーム、操作、パラメーターは、サーバーの起動時にライブ API カタログから読み込まれます。そのため、apinoa にプラットフォームが追加されると、このパッケージを更新せずに利用できるようになります。
ツールセット
APINOA_MCP_MODE=tools を設定すると、代わりに 0.1 のツールセットが提供されます。各種の読み取りにつき 1 つのツール(search_products、
get_product、list_social_posts、get_social_comments、call_apinoa、list_platforms、…)があり、ツールの呼び出しごとに API を 1 回呼び出します。Deno を実行できない環境では、サーバーが自動的にこちらに切り替えます。回答が 100,000
文字を超える場合は、収まる範囲で項目全体をできるだけ多く含め、除外された項目数を注記します。
オプション
| 変数 | デフォルト | |
|---|---|---|
APINOA_API_KEY | — | すべてのデータ呼び出しで必須です。 |
APINOA_BASE_URL | https://gateway.apinoa.com | |
APINOA_API_URL | https://api.apinoa.com | login のログイン先です。https のみ使用できます(localhost では http も使用できます)。 |
APINOA_MCP_MODE | code | 0.1 のツールセットを使用する場合は tools を指定します。 |
APINOA_MCP_DATA_DIR | ~/.apinoa-mcp | キャッシュ、store、保存ファイルの保存先です。 |
APINOA_MCP_MAX_BUDGET | 20000 | 1 回の実行に割り当てられる最大ユニット数です。 |
APINOA_MCP_CONCURRENCY | 16 | 1 回の実行で同時に処理する API 呼び出しの数です。 |
APINOA_MCP_CACHE_TTL_S | 600 | 回答を再利用する期間です。0 にするとキャッシュが無効になります。 |
APINOA_MCP_MAX_OUTPUT | 40000 | 1 回の実行でモデルに返す出力の最大文字数です。 |
APINOA_MCP_DENO | 同梱版 | 別の deno へのパスです。 |
ライブラリとして使用
import { createApinoaServer } from "apinoa-mcp";
const server = await createApinoaServer({ apiKey: process.env.APINOA_API_KEY });
// connect it to any MCP transport, e.g. Streamable HTTP
関連項目
- @apinoa/sdk:TypeScript SDK
- apinoa on PyPI:Python SDK
- API ドキュメント
- 公式 MCP レジストリ:
io.github.apinoahq/apinoa-mcpとして登録されています
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。