Skip to main content
Glama

chatbuy — 言えば、届く。

「犬が長生きする健康な食材」のような短いひとことから、商品候補と合計金額を出し、 カート/確認ページまで開く、ローカルで動くAI買い物MCPサーバー。

あなたのログインはあなたのマシンの中だけ。 chatbuy.ai(このサーバーの提供元)は あなたのAmazonログインを一切見ません・保持しません — すべてこのマシン上の Chromeプロファイル(~/.chatbuy/profile)に閉じています。

購入確定(決済)は絶対に自動化しません。 chatbuy_review はカート/確認ページを 開くところで止まります。最後の「注文を確定する」ボタンは、必ずあなた自身が実際の ブラウザ画面で押してください。決済を行うツールはこのサーバーに存在しません。

インストール

npm未公開のため、現状はGitHubから直接実行する:

npx github:yukihamada/chatbuy-mcp

Claude Code に追加

claude mcp add chatbuy -- npx github:yukihamada/chatbuy-mcp

初回セットアップ

  1. chatbuy_login を呼ぶ → Chromeが開くので、Amazonに一度だけ手でログインする

  2. chatbuy_search("探したいもの") → 候補と価格が返る

  3. chatbuy_review(["<asin>", ...]) → カートに入り確認ページが開く

  4. あなたの手で ブラウザの「注文を確定する」を押す

Related MCP server: agentic-commerce

ツール一覧

ツール

できること

chatbuy_status

ログイン状態の確認

chatbuy_login

ログインページを開く(ログインは人力)

chatbuy_search

自然文 → 商品候補+価格(月20回まで無料)

chatbuy_review

カート追加 → 確認ページを開く(購入確定ボタンには触れない)

chatbuy_activate

サポーターサブスクを有効化(任意・無料枠を外す)

無料枠とサポーターサブスク(任意)

chatbuy_search は月20回まで無料。それ以降使いたい場合はサポーターサブスク(任意・現状テストモード)で 無制限になる。買い手の購入代金そのものには一切触れない — あくまで chatbuy 自体の利用への応援課金。 OSSなのでこのゲートはコード改変で回避できるが、それは意図通り(強制ではなく「応援すると快適」という設計)。

対応サイト

  • Amazon.co.jp(v1)

  • 今後追加予定(サイトごとに lib/sites/*.mjs を1つ足すだけの構成)

ローカル開発

npm install
npm run smoke   # MCPサーバーが起動しtools/listに応答することを確認
node server.mjs # 実行(stdio MCPサーバー)

Available Tools

5 tools
chatbuy_activateA

サポーターサブスク(任意)を有効化する。登録済みのメールアドレスを渡すと無料枠の上限が外れる。/ Activate the optional supporter subscription by email — removes the free-tier search limit.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesStripeサブスク登録に使ったメールアドレス

TDQS

A3.6/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only mentions the effect (removing the limit) but does not disclose potential side effects (e.g., billing implications), prerequisites (e.g., active Stripe subscription), error behavior for unregistered emails, or reversibility. For a mutation tool, this is a significant gap.

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 sentences, one in Japanese and one in English, both immediately conveying the action and effect. There is no filler or redundant content, and the bilingual format is compact while serving localization needs.

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 low-complexity tool with one parameter and no output schema, the description adequately covers purpose, effect, and parameter semantics. It lacks preconditions and error handling details, but these are less critical given the simplicity. The description is complete enough for an agent to select and invoke the tool in most 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?

Schema coverage is 100% with a clear parameter description ('Stripeサブスク登録に使ったメールアドレス' – email used for Stripe subscription registration). The tool description adds 'registered email' context, but the schema already provides the essential meaning. This matches the baseline for high schema coverage.

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 tool activates the optional supporter subscription by email and removes the free-tier search limit. This distinguishes it from sibling tools like chatbuy_status, chatbuy_login, chatbuy_search, and chatbuy_review. The verb 'activate' and resource 'supporter subscription' are explicit and specific.

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 when a registered email exists and the user wants to remove the free-tier limit, but it does not explicitly state when to use this tool versus alternatives or when not to use it (e.g., if already activated). No alternative sibling tools are mentioned, nor any prerequisites like prior subscription setup.

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

chatbuy_loginA

実ブラウザでログインページを開く。ログイン自体は人が手で行い、以後セッションはこのマシンにローカル保存される。/ Opens a real browser to the login page — you log in yourself once, session persists locally on this machine only.

ParametersJSON Schema
NameRequiredDescriptionDefault
siteNo

TDQS

A3.5/5.0
Behavior4/5

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

Without annotations, the description discloses key behaviors: it opens a real browser, requires human interaction for login, and stores the session locally. It also notes the session persists, which is important for understanding state. However, it does not explain what happens if the session expires.

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 both Japanese and English, making the purpose clear without unnecessary detail. Each sentence contributes to understanding the tool's behavior.

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?

While the tool's basic behavior is explained, the single parameter 'site' is completely unexplained, and there is no information about return values or error conditions. For a tool with minimal schema detail, this is a significant gap.

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

Parameters1/5

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

The schema includes a 'site' parameter with no description and the tool description does not explain what 'site' refers to. With 0% schema coverage, the description fails to compensate, leaving the agent without guidance on what value to pass.

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 tool opens a real browser to the login page, with a specific verb and resource. It distinguishes itself from siblings like chatbuy_search and chatbuy_status by focusing on the manual login step.

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 this is a one-time manual login setup that persists locally, but it does not explicitly state when to use it relative to other tools or any exclusions. The 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.

chatbuy_reviewA

カートに入れて確認/レビューページまで開く。購入確定ボタンには一切触れない — 最後の1クリックは必ずあなた自身。/ Adds items to cart and opens the review page. NEVER clicks the final purchase button — that click is always yours.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYeschatbuy_search で得た商品ID(asin等)の一覧
siteNo

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral disclosure burden. It transparently states the key boundary—never clicking the final purchase button—and describes the actions it takes. It does not cover other behaviors like authentication or side effects, but the most critical safety trait is well disclosed.

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 concise, front-loaded with the primary action, and followed by a crucial safety note. The bilingual repetition is not wasteful, and every sentence serves a purpose.

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?

The description covers the core actions and the safety boundary, but it misses the purpose of the site parameter and any prerequisites or return behavior. Given the lack of annotations and output schema, more context would be beneficial for full completeness.

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

Parameters2/5

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

The schema already documents ids, and the description adds minimal context beyond that these are items to add to cart. However, the optional site parameter is entirely undocumented in the schema and unmentioned in the description, leaving a significant parameter semantic gap.

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 tool adds items to cart and opens the review page, using specific verbs and resources. It also explicitly differentiates itself by noting it never clicks the final purchase button, which distinguishes it from purchase-completion tools.

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 implies usage after chatbuy_search by referencing product IDs from that tool. It gives clear context for when to use it (for review before purchase) and imposes a safety boundary, but it does not explicitly name alternatives or exclusion criteria.

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

chatbuy_statusC

ログイン状態を確認する。/ Check login status for a shopping site.

ParametersJSON Schema
NameRequiredDescriptionDefault
siteNoamazon(既定・現状唯一の対応サイト)

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 responsibility for disclosing behavior. It only says 'check login status' and doesn't reveal whether the operation is read-only, what the response looks like, or any prerequisites or side effects.

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 lines, front-loaded with the core purpose, and repeated in Japanese and English. Every word earns its place, and there is no unnecessary fluff.

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?

Although the tool is simple, there is no output schema and no annotations, so the description should at least indicate what the status result looks like. It doesn't mention return values, success/failure behavior, or how login status is determined, leaving significant gaps for an 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?

The input schema fully documents the single optional 'site' parameter, so schema coverage is 100%. The description adds no additional meaning about the parameter, but the schema already handles it adequately.

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 uses a specific verb ('check') and resource ('login status') for a shopping site, clearly stating what the tool does. It is distinguishable from siblings like 'chatbuy_login' because 'status' implies inspection rather than performing a login, though it doesn't explicitly call out the difference.

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 given about when to use this tool versus alternatives such as chatbuy_login or chatbuy_activate. The only context is 'for a shopping site,' which doesn't help an agent choose this tool over its siblings.

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 observedchatbuy_activate
    • First observedchatbuy_login
    • First observedchatbuy_review
    • First observedchatbuy_search
    • First observedchatbuy_status

TDQS

A3.6/5.0

Scored across 5 tools

Disambiguation5/5

Each tool targets a distinct phase: login status, login, search, subscription activation, and cart review. No overlap or confusion between purposes.

Naming Consistency4/5

All tools share the 'chatbuy_' prefix and mostly use single verbs (login, search, activate, review), but 'status' is a noun, creating a minor inconsistency in the pattern.

Tool Count5/5

Five tools is well-scoped for a shopping assistant, covering the essential workflow without excess or bloat.

Completeness4/5

The core flow (search, add to cart, review, manual purchase) is covered, along with login and subscription management. Minor gaps like logout or cart modification are not critical given the intentional manual final click.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers