GooodBilling 公式 MCP Server — Claude Desktop / Cursor 等の MCP 対応クライアントから AI ファーストで請求書・見積を操作する
Strong foundation with 16 well-named tools following verb_noun convention (search_, list_, get_, create_, update_, discard_, send_). All tools have descriptions and input schemas with proper JSON Schema structure. Parameters include types, descriptions, and constraints (enums, format, min/max). However, several critical gaps: (1) output schemas are not documented, LLMs cannot predict response structure for chaining; (2) parameter descriptions contain Japanese text mixed with English, reducing LLM clarity; (3) error handling descriptions are present but lack actionable recovery guidance in most tools; (4) some parameters like 'case_id' have vague descriptions ('任意。未指定時はサーバーが自動解決' = 'optional, auto-resolved by server') that don't explain when/why to use them; (5) send_invoice and send_quote descriptions are verbose and procedural rather than concise tool descriptions.
請求書を新規作成 (status=draft)。
見積書を新規作成 (status=draft)。
請求書ドラフトを破棄。
見積書ドラフトを破棄。
請求書の詳細。
見積書の詳細。
売上集計 (期間指定)。
Output schemas not documented. LLMs cannot predict response structure (fields, types, nested objects) for downstream tool chaining. E.g., does get_invoice return pdf_preview_url? Does list_invoices return total_count or next_cursor for pagination?
Parameter descriptions mix Japanese and English (e.g., '任意。未指定時はサーバーが自動解決' in case_id, '省略推奨' in tax_rate_code). LLMs trained primarily on English struggle with mixed-language descriptions, reducing clarity and increasing misuse.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | B | 70 | 2026-07-28+ | v2 |
テナント設定 (送信機能 ON/OFF) を取得。
請求書の一覧。
見積書の一覧。
未払い請求書の一覧。
取引先を検索する。
⚠️ 取引先に請求書メールを送付する (取り消し不可)。送信前にユーザーへ宛先メールアドレス・請求書金額・添付 PDF の最終確認を取ること。subject / body / to / cc / bcc は通常省略する (システムが自動で組み立てる)。ユーザーが明示的に上書き指定した場合のみ含め、その時だけ確認文に含めること。失敗時: 403=テナント送信機能 OFF (get_tenant_settings で確認可) / 422=取引先メアド未登録 / 409=送信済。冪等性キーは省略可 (自動生成、二重送信防止)。
⚠️ 取引先に見積書メールを送付する (取り消し不可)。送信前にユーザーへ宛先メールアドレス・見積金額・添付 PDF の最終確認を取ること。subject / body / to / cc / bcc は通常省略する (システムが自動で組み立てる)。ユーザーが明示的に上書き指定した場合のみ含め、その時だけ確認文に含めること。失敗時: 403=テナント送信機能 OFF (get_tenant_settings で確認可) / 422=取引先メアド未登録。冪等性キーは省略可。
請求書ドラフトを更新。
見積書ドラフトを更新。
send_invoice and send_quote descriptions are procedural (50 chars) rather than concise tool descriptions. They read like instructions ('send_before_confirming...') instead of 'Send invoice to customer via email.' Descriptions should be 10 - 1024 chars, optimized for LLM selection, not user guidance.
Error handling lacks actionable recovery guidance in tool descriptions. E.g., send_invoice mentions '403=テナント送信機能 OFF' but doesn't say 'Call get_tenant_settings to check status, then guide user to Web UI.' LLMs need explicit next steps.
Parameter 'case_id' in create_invoice_draft and update_invoice_draft has vague description ('任意。未指定時はサーバーが自動解決'). LLMs cannot determine when to provide it vs omit it. Should explain: 'Optional. Links invoice to a case/project. If omitted, server auto-resolves based on customer. Provide if you want to override.'