Skip to main content
Glama
makeleaps-mcp

makeleaps-mcp

Official
by Swandive-Inc

makeleaps-mcp

MakeLeapsの取引先、見積書、請求書をLLMから操作するための、非公式・ローカル実行専用MCPサーバーです。

HubSpotなど他サービスとの接続処理は含みません。LLMクライアントがHubSpot ConnectorとこのMCPサーバーを同時に利用し、必要な情報をツール間で受け渡す構成を想定しています。

IMPORTANT

このプロジェクトはMakeLeaps株式会社による公式製品ではありません。MakeLeaps APIを利用した実装について、MakeLeapsは技術サポートを提供していません。

特徴

  • stdioによるローカル実行のみ

  • ホステッドサービス、リモートHTTP、テレメトリーなし

  • MakeLeapsの認証情報と請求データを開発者側へ送信しない

  • 金額を浮動小数点数ではなくDecimalとして検証

  • MakeLeapsのテンプレートに応じた税区分の検証

  • ローカルSQLiteを用いた書き込み操作の二重実行防止

  • 書類の送付機能は提供しない

Related MCP server: Frappe Assistant Core

利用者向け

提供ツール

ツール

内容

search_clients

取引先の一覧取得・検索

get_client

取引先とデフォルト連絡先の取得

create_organization_client

法人取引先の作成

list_document_templates

見積書・請求書テンプレートの取得

search_documents

見積書・請求書の検索

get_document

書類詳細の取得

create_quote

見積書の作成

create_invoice

請求書の作成

create_quoteとcreate_invoiceは書類をMakeLeapsへ保存しますが、取引先への送付は行いません。 HubSpotのDeal名など、書類の案件名はproject_nameで指定できます。

create_organization_clientでは法人名に加えて、法人のメールアドレス・電話番号・FAX番号・住所・適格請求書発行事業者登録番号と、任意の担当者を登録できます。住所を指定する場合は、MakeLeaps APIの仕様に従ってformatと2文字の国コードcountry_nameが必須です。

書類には取引先向けの備考messageとは別に、MakeLeaps内だけで使用する社内メモnoteと発注番号purchase_order_idsを設定できます。create_invoiceでは請求対象期間も指定できます。

必要環境

  • Python 3.12以上

  • uv

  • MakeLeapsのAPI Client ID、Client Secret、Partner MID

MakeLeapsの管理画面からAPIキーを発行してください。APIは本番データへ接続され、サンドボックス環境は提供されていません。

セットアップ

git clone https://github.com/Swandive-Inc/makeleaps-mcp.git
cd makeleaps-mcp
uv sync --frozen

次の環境変数をMCPクライアントから渡します。

環境変数

必須

内容

MAKELEAPS_CLIENT_ID

はい

MakeLeaps API Client ID

MAKELEAPS_CLIENT_SECRET

はい

MakeLeaps API Client Secret

MAKELEAPS_PARTNER_MID

はい

MakeLeaps Partner MID

MAKELEAPS_STATE_PATH

いいえ

冪等性管理用SQLiteファイルの保存先

MAKELEAPS_STATE_PATHを省略した場合は、OS標準のユーザーデータディレクトリへ保存します。認証トークンや書類本文はSQLiteへ保存しません。

MCPクライアントの設定例です。パスと認証情報を利用環境に合わせて変更してください。

{
  "mcpServers": {
    "makeleaps": {
      "command": "uv",
      "args": [
        "--directory",
        "C:\\path\\to\\makeleaps-mcp",
        "run",
        "makeleaps-mcp"
      ],
      "env": {
        "MAKELEAPS_CLIENT_ID": "your-client-id",
        "MAKELEAPS_CLIENT_SECRET": "your-client-secret",
        "MAKELEAPS_PARTNER_MID": "your-partner-mid"
      }
    }
  }
}

秘密情報を.envやMCPクライアントの設定ファイルへ保存する場合は、ファイルのアクセス権とバックアップ先を確認してください。秘密情報をGitへコミットしないでください。

LLMへの依頼例

HubSpotのDeal 12345を取得し、会社と担当者をMakeLeapsで検索してください。
見積内容を提示して私の確認を取ったあと、MakeLeapsへ見積書を作成してください。
送付はしないでください。

利用上の注意

  • HubSpotのIDをexternal_idへ保存する場合は、既存運用で同フィールドを使っていないか確認してください。すでに別システムとの対応付けに利用している場合は上書きしないでください。

  • APIへの送信後に通信が切れた場合は、MakeLeaps上で作成結果を確認してください。

開発者向け

二重作成の防止

書き込みツールはoperation_keyを必須引数とし、呼び出し元と対象を識別できる安定した値を受け取ります。

hubspot:deal:12345:quote:v1

同じキーと同じ入力を再実行すると、MakeLeaps APIを再度呼ばず、ローカルSQLiteに保存した結果を返します。同じキーを異なる入力で再利用した場合はエラーになります。

APIへの送信後に通信が切れた場合は、結果が確定できないため同じ操作を自動再実行しません。通信結果が不明なまま書類を二重作成することを防ぐためです。

開発

uv sync --frozen
uv run ruff format --check .
uv run ruff check .
uv run pytest

テストはMakeLeaps APIをモックし、本番アカウントへ接続しません。

セキュリティ

  • MCPサーバーはstdioのみで動作し、待受ポートを開きません。

  • APIアクセストークンはメモリ内でのみ保持し、期限切れ前に更新します。

  • 顧客情報、書類内容、認証情報をログへ出力しません。

  • 書類送付や削除のツールは実装していません。

参考資料

ライセンス

MIT License

Available Tools

8 tools
create_invoiceA
Idempotent

MakeLeapsに請求書を作成する。送付は行わない。

Inputs: currency (required), due_date (required), client_mid (required), issue_date (required), +12 more. Returns: object

create_organization_clientA
Idempotent

法人の取引先を作成する。

operation_keyには呼び出し元で一意かつ再利用可能な値を指定する。同じキーと同じ入力を 再実行した場合は保存済み結果を返し、異なる入力でのキー再利用は拒否する。

Inputs: operation_key (required), organization_name (required), lang_code, external_id, +6 more. Returns: object

create_quoteA
Idempotent

MakeLeapsに見積書を作成する。送付は行わない。

Inputs: currency (required), client_mid (required), issue_date (required), line_items (required), +10 more. Returns: object

get_clientA
Read-onlyIdempotent

MakeLeaps IDを指定して取引先とデフォルト連絡先の詳細を取得する。

Inputs: client_mid (required). Returns: object

get_documentA
Read-onlyIdempotent

MakeLeaps IDを指定して見積書または請求書の詳細を取得する。

Inputs: document_mid (required). Returns: object

list_document_templatesA
Read-onlyIdempotent

見積書または請求書で利用可能なMakeLeapsテンプレートを取得する。

Inputs: document_type (required). Returns: result

search_clientsB
Read-onlyIdempotent

MakeLeapsの取引先を検索する。searchを省略すると取引先一覧を返す。

Inputs: limit, search, archived. Returns: result

search_documentsB
Read-onlyIdempotent

見積書または請求書を条件検索する。日付は発行日の範囲を表す。

Inputs: paid, sent, limit, search, +4 more. Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool targets a distinct resource and action: clients vs documents, search/get/create are clearly separated. There is no ambiguity between e.g. search_documents and get_document or create_quote and create_invoice.

    Naming Consistency5/5

    All tools follow the verb_noun pattern with consistent snake_case style (search_, get_, create_, list_). Even the longer create_organization_client fits the convention, and there are no mixed naming styles.

    Tool Count5/5

    With 8 tools covering clients and documents (quotes/invoices), the set is well-scoped and each tool has a clear purpose. It sits comfortably in the ideal 3-15 range.

    Completeness4/5

    The tool surface covers core workflows: search/get/create for clients, and search/get/create plus template listing for documents. Minor gaps exist, such as no update/delete operations and no creation of individual (non-organization) clients, but agents can work around these.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      MCP server for the FreeAgent accounting API, enabling LLMs to securely access and manage accounting data including contacts, invoices, bills, bank transactions, and more.
      5 npm
      1
      MIT
    • A
      license
      Not graded
      quality
      A
      maintenance
      MCP server that enables LLMs to interact with ERPNext/Frappe sites for document CRUD, search, reports, workflows, and analytics, respecting user permissions and logging all actions.
      337
      AGPL 3.0
    • A
      license
      B
      quality
      D
      maintenance
      MCP server for Invoice Ninja v5 API. Enables AI assistants to manage clients, invoices, quotes, payments, and time tracking through natural language.
      32
      22 npm
      2
      MIT