Spree Commerce: open-source B2B and marketplace ecommerce
Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
作者による説明(英語の原文)
Products, social posts, search results and AI answers from Amazon, TikTok, Google, ChatGPT and more.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
APINOA_API_KEY, APINOA_MCP_MODE, Authorization「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
このアドレスはリクエストの header にキーが必要ですが、コネクタを追加するメニューでは設定できません。代わりにClaude Code、Cursor、VS Codeを使ってください。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"apinoa": {
"command": "npx",
"args": [
"-y",
"apinoa-mcp"
],
"env": {
"APINOA_API_KEY": "your-value",
"APINOA_MCP_MODE": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add --transport http apinoa https://api.apinoa.com/mcp --header 'Authorization: your-value'claude mcp add apinoa --env APINOA_API_KEY=your-value --env APINOA_MCP_MODE=your-value -- npx -y apinoa-mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"apinoa": {
"url": "https://api.apinoa.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"apinoa": {
"command": "npx",
"args": [
"-y",
"apinoa-mcp"
],
"env": {
"APINOA_API_KEY": "your-value",
"APINOA_MCP_MODE": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"apinoa": {
"type": "http",
"url": "https://api.apinoa.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"apinoa": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"apinoa-mcp"
],
"env": {
"APINOA_API_KEY": "your-value",
"APINOA_MCP_MODE": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
このアドレスはリクエストの header にキーが必要ですが、コネクタを追加するメニューでは設定できません。代わりにClaude Code、Cursor、VS Codeを使ってください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
APINOA_MCP_MODE envAuthorization 秘密 HTTP headerこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
このサーバーは、ツール一覧を表示する前にサインインを求めます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月9日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント apinoahq で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
626ミリ秒で応答(HTTP 401)
OAuthでのサインインに対応しているため、AIアプリがログイン画面へ案内してくれます
まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:APINOA_API_KEY, Authorization
どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。
GitHubリポジトリの最終更新は–、最新バージョン(0.2.9)がレジストリに届いたのは昨日です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
同じカテゴリには:Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
MCP server integrating with Stripe - tools for customers, products, payments, and more.
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
An MCP server for apinoa. It gives Claude Code, Codex, Cursor and any other MCP client live product data from Amazon, Walmart, Shopify, TikTok Shop and AliExpress; posts, profiles and comments from TikTok, YouTube, Instagram, Threads, X, Reddit and LinkedIn; search results from Google, Bing, Naver and 13 more search engines; AI answers from ChatGPT, Gemini, Google AI Overviews, Google AI Mode and Naver; and image translation. Use it instead of writing a scraper.
Ask things like *"which of @duolingo's last 30 TikToks got 3x its usual views"*, *"compare the cheapest Stanley 40 oz on Amazon and Walmart"*, *"where does example.com rank on Google for 'trail running shoes'"*, *"does ChatGPT mention our brand when asked for the best running shoes"* or *"translate the text on this product photo into Korean"*.
Create a key under Dashboard > API keys at apinoa.com. Calls are billed to it at the API's normal rates; a call that fails is not billed.
Get a key from the terminal
npx apinoa-mcp login
It prints a code and opens an apinoa page in your browser, where you sign in and enter the code. The new key is saved to .env in the current folder as APINOA_API_KEY (--out writes it to another file, --no-browser only prints the address). It expires after 90 days and is listed under Dashboard > API keys, where you can revoke it. Give it to your client as below.
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
or in ~/.codex/config.toml:
[mcp_servers.apinoa]
command = "npx" args = ["-y", "apinoa-mcp"] env = { APINOA_API_KEY = "your_key" }
Claude Desktop, Cursor, Windsurf and others — add to the client's MCP configuration (claude_desktop_config.json, .cursor/mcp.json, …):
{
"mcpServers": { "apinoa": { "command": "npx", "args": ["-y", "apinoa-mcp"], "env": { "APINOA_API_KEY": "your_key" } } } }
Requires Node.js 20 or later. The package installs Deno, which runs the model's code.
| Tool | What it does |
|---|---|
search_docs | Finds the operations for a task: how to call each, every parameter, the cost, and the fields it returns. Free |
execute | Runs TypeScript the model writes against the API, and returns only what the code returns or prints |
translate_image | Replaces the text in an image with a translation; returns the image |
Instead of one tool call per API call, the model writes a short program. Fanning out over 50 accounts, following pages, filtering and averaging happen in the code, and only the answer comes back into the conversation:
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);
Inside execute:
apinoa. . (params): one API call; returns the answer's data, throws ApinoaError (code, status) on a refusal.pages(op, params, { maxPages }): every item of a paged operation, following cursors.many(items, fn, { concurrency }): fn over every item, 8 at a time; an item that fails comes back undefined and is counted.store.save / load / list / saveFile: data kept on your machine between runs (videos from apinoa.tiktok.media, for example).usage: this run's calls and units.The code is type-checked against the API's types before it runs, so an operation, parameter or field that does not exist fails there, before anything is billed. Each run has a budget (500 units by default, set per run with budget_units) and stops once it is spent. Answers are cached for 10 minutes, so running fixed code again costs nothing for the calls already made.
The code runs in a Deno subprocess that can reach only the apinoa API and read and write only its data folder: no other hosts, no other files, no environment variables, no programs. The API key never enters the code; the sandbox adds it to each request.
The platforms, operations and parameters are read from the live API catalog when the server starts, so a platform added to apinoa appears without updating this package.
APINOA_MCP_MODE=tools serves the 0.1 tools instead: one tool per kind of read (search_products, get_product, list_social_posts, get_social_comments, call_apinoa, list_platforms, …), one API call per tool call. The server falls back to it by itself where Deno cannot run. An answer over 100,000 characters keeps as many whole items as fit, with a note saying how many were left out.
| Variable | Default | |
|---|---|---|
APINOA_API_KEY | — | Required for every data call. |
APINOA_BASE_URL | https://gateway.apinoa.com | |
APINOA_API_URL | https://api.apinoa.com | Where login signs in. https only (http for localhost). |
APINOA_MCP_MODE | code | tools for the 0.1 tool set. |
APINOA_MCP_DATA_DIR | ~/.apinoa-mcp | Where the cache, store and saved files live. |
APINOA_MCP_MAX_BUDGET | 20000 | The most units one run may be given. |
APINOA_MCP_CONCURRENCY | 16 | API calls in flight at once within a run. |
APINOA_MCP_CACHE_TTL_S | 600 | How long an answer is reused; 0 turns the cache off. |
APINOA_MCP_MAX_OUTPUT | 40000 | The most characters of output one run hands back to the model. |
APINOA_MCP_DENO | the bundled one | Path to another 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
io.github.apinoahq/apinoa-mcpMIT