Skip to main content
Glama
square

Square Model Context Protocol Server

Official
by square

スクエアモデルコンテキストプロトコルサーバー(ベータ版)

このプロジェクトはモデルコンテキストプロトコル標準に準拠しており、AI アシスタントが Square の connect API と対話できるようにします。

クイックスタート

npx を使用して Square MCP サーバーを起動して実行します。

# Basic startup
npx square-mcp-server start

# With environment configuration
ACCESS_TOKEN=YOUR_SQUARE_ACCESS_TOKEN SANDBOX=true npx square-mcp-server start

# local runs
npx /path/to/project/square-mcp-server

YOUR_SQUARE_ACCESS_TOKENを実際のSquareアクセストークンに置き換えてください。アクセストークンは、 Squareアクセストークンのガイドに従って取得できます。コマンド実行前に環境変数を設定することもできます。

Related MCP server: AI-Assisted CRM MCP Server

リモートMCPサーバー

Square は現在、次の場所でホスト型リモート MCP サーバーを提供しています。

https://mcp.squareup.com/sse

リモート MCP は OAuth 認証を使用するため、アクセス トークンを手動で作成または管理することなく、Square アカウントで直接ログインできるため、推奨されます。

設定オプション

環境変数

目的

例

ACCESS_TOKEN

Square APIアクセストークン

ACCESS_TOKEN=sq0atp-...

SANDBOX

Squareサンドボックス環境を使用する

SANDBOX=true

PRODUCTION

Square の制作環境を使用する

PRODUCTION=true

DISALLOW_WRITES

読み取り専用操作に制限する

DISALLOW_WRITES=true

SQUARE_VERSION

Square APIのバージョンを指定する

SQUARE_VERSION=2025-04-16

AIアシスタントとの統合

Goose統合

Gooseを使用して Square MCP サーバーを構成するには:

リモートMCP

Goose に Square リモート MCP をインストールするには、Goose がインストールされているコンピューターで次の URL をクリックします。

goose://extension?cmd=npx&arg=mcp-remote&arg=https%3A%2F%2Fmcp.squareup.com%2Fsse&id=square_mcp_production_remote&name=Square%20MCP%20Remote&description=Square%20Production%20MCP%20Remote

または、URL をコピーしてブラウザのアドレスバーに貼り付けます。

# Automatic installation
npx square-mcp-server install

# Get URL for manual installation
npx square-mcp-server get-goose-url

installコマンドは、Goose の設定を自動的に更新します。

クロードデスクトップ統合

Claude Desktopとの統合については、 Model Context Protocolクイックスタートガイドclaude_desktop_config.jsonご覧ください。claude_desktop_config.jsonに以下の設定を追加してください。

リモートMCP

{
  "mcpServers": {
    "mcp_square_api": {
      "command": "npx",
      "args": ["mcp-remote", "https://mcp.squareup.com/sse"]
    }
  }
}

この方法により、アクセス トークンを管理する必要なく、Square アカウントの資格情報を使用して直接認証できます。

ローカルMCP

{
  "mcpServers": {
    "mcp_square_api": {
      "command": "npx",
      "args": ["square-mcp-server", "start"],
      "env": {
        "ACCESS_TOKEN": "YOUR_SQUARE_ACCESS_TOKEN",
        "SANDBOX": "true"
      }
    }
  }
}

ツールリファレンス

Square MCP サーバーは、Square API と対話するための合理化されたツール セットを提供します。

道具

説明

主な用途

get_service_info

サービスで利用可能なメソッドを見つける

探検と発見

get_type_info

詳細なパラメータ要件を取得する

リクエストの準備

make_api_request

SquareへのAPI呼び出しを実行する

操作の実行

サービスカタログ

Square MCPサーバーは、Squareの完全なAPIエコシステムへのアクセスを提供します。各サービスの詳細については、 Square APIドキュメントをご覧ください。

サービス

説明

applepay

Apple Payの統合

bankaccounts

銀行口座管理

bookingcustomattributes

予約のカスタム属性

bookings

予約管理

cards

決済カード管理

cashdrawers

キャッシュドロワー管理

catalog

カタログ管理(商品、カテゴリなど)

checkout

チェックアウトと支払い処理

customercustomattributes

顧客向けカスタム属性

customergroups

顧客グループ分け

customersegments

顧客セグメンテーション

customers

顧客管理

devices

Squareデバイス管理

disputes

支払い紛争処理

events

イベントトラッキング

giftcardactivities

ギフトカードアクティビティの追跡

giftcards

ギフトカード管理

inventory

在庫追跡

invoices

請求書管理

labor

人材管理

locationcustomattributes

場所のカスタム属性

locations

ロケーション管理

loyalty

ロイヤルティプログラム管理

merchantcustomattributes

販売者向けカスタム属性

merchants

加盟店アカウント管理

oauth

認証

ordercustomattributes

注文のカスタム属性

orders

注文管理

payments

支払い処理

payouts

支払い管理

refunds

払い戻し管理

sites

ウェブサイトの統合

snippets

Squareオンラインコードの統合

subscriptions

サブスクリプション管理

team

スタッフ管理

terminal

スクエアターミナル管理

vendors

サプライヤー管理

webhooksubscriptions

イベント通知

使用パターン

MCP を介して Square API と最適にやりとりするには:

  1. 発見: get_service_infoを使用して利用可能なメソッドを調べる

    get_service_info(service: "catalog")
  2. 理解: get_type_infoを使用してパラメータの要件を確認する

    get_type_info(service: "catalog", method: "list")
  3. 実行: make_api_requestを使用して操作を実行します

    make_api_request(service: "catalog", method: "list", request: {})

開発とデバッグ

MCPインスペクターの使用

MCP Inspector は、テスト用の視覚的なインターフェースを提供します。

# Build the project
npm run build

# Start the inspector with the Square MCP Server
npx @modelcontextprotocol/inspector node dist/index.js start

開発ワークフロー

  1. リポジトリをクローンする

  2. 依存関係をインストール: npm install

  3. 開発モードを開始: npm run watch

  4. サーバーを実行します: node dist/index.js start

  5. MCP Inspector を使用して変更をテストします

貢献

このリポジトリは、SquareのOpenAPI仕様に基づいて自動生成されています。貢献は歓迎しますが、変更内容はこのコードを生成するジェネレーターに反映される必要があることにご注意ください。プルリクエストを送信する前に、Issueを開いて変更案について議論してください。

Available Tools

3 tools
get_service_infoA

Get information about a Square API service. Call me before trying to get type info

ParametersJSON Schema
NameRequiredDescriptionDefault
serviceYesThe Square API service category (e.g., 'catalog', 'payments')

TDQS

A3.7/5.0
Behavior2/5

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

No annotations provided, so description must disclose behavior. It only says 'get information', without mentioning whether it's read-only, idempotent, or any side effects. Minimal transparency.

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?

Two efficient sentences: first states purpose, second provides usage guidance. No wasted words.

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?

Adequate for a simple info tool with one parameter, but lacks description of the output format or any additional behavioral context.

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 has 100% description coverage for the only parameter, so baseline is 3. Tool description does not add extra meaning beyond the schema parameter description.

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?

Describes a specific action: getting info about a Square API service. Explicitly differentiates from sibling tool get_type_info by telling the agent to call this before that.

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?

Gives clear directive to call this before get_type_info, indicating proper ordering. However, no guidance on when not to use or alternatives like make_api_request.

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

get_type_infoA

Get type information for a Square API method. You must call this before calling the make_api_request tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
serviceYesThe Square API service category (e.g., 'catalog', 'payments')
methodYesThe API method to call (e.g., 'list', 'create')

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description must cover behavior. It states it 'gets type information' but does not disclose whether it is read-only, any side effects, or what the response structure looks like, leaving significant gaps.

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?

Two sentences, front-loaded with purpose and a clear usage instruction. Every sentence adds value with no wasted words.

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?

For a simple prerequisite tool, the description is acceptable but lacks detail on return values and behavioral context. Given no output schema, the agent might need more info to effectively use the result.

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 both parameters described. The description adds no additional information beyond the schema, so baseline 3 is appropriate.

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 clearly states it gets type information for a Square API method, and the prerequisite relationship with make_api_request distinguishes it from sibling tools, though it does not specify what 'type information' entails.

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 explicitly instructs the agent to call this tool before make_api_request, providing clear usage context. However, it does not mention when not to use it or alternatives.

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

make_api_requestB

Unified tool for all Square API operations. Be sure to get types before calling. Available services: applepay, bankaccounts, bookingcustomattributes, bookings, cards, cashdrawers, catalog, checkout, customercustomattributes, customergroups, customersegments, customers, devices, disputes, events, giftcardactivities, giftcards, inventory, invoices, labor, locationcustomattributes, locations, loyalty, merchantcustomattributes, merchants, oauth, ordercustomattributes, orders, payments, payouts, refunds, sites, snippets, subscriptions, team, terminal, vendors, webhooksubscriptions.

ParametersJSON Schema
NameRequiredDescriptionDefault
serviceYesThe Square API service category (e.g., 'catalog', 'payments')
methodYesThe API method to call (e.g., 'list', 'create')
requestNoThe request object for the API call.

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only states it is a unified tool and lists services. It does not disclose that it makes HTTP calls, requires authentication, can modify data, or has rate limits. Minimal behavioral context is provided.

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 extremely concise—two sentences with no superfluous words. It front-loads the core purpose and then lists services efficiently.

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?

Despite the tool's complexity (any API operation), the description lacks details on return values, how to structure the request object, or supported methods beyond 'list' and 'create' implied. Sibling tools exist but the description does not fully compensate for missing output schema or behavioral specifics.

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

Parameters4/5

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

Schema coverage is 100%, but the description adds value by enumerating all available services, which is absent as enum constraints in the schema. This helps the agent select valid service values, going beyond the generic schema description.

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 states it is a unified tool for all Square API operations, clearly indicating its purpose as a general-purpose API caller. It distinguishes from sibling tools (get_service_info, get_type_info) by specifying it performs operations rather than information retrieval.

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 advises to 'get types before calling,' providing a prerequisite but not explicit when-to-use or when-not-to-use guidance. It implies this is the primary tool for API calls but does not contrast with alternatives beyond the mention of getting types.

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. 3 tool updates
    • First observedget_service_info
    • First observedget_type_info
    • First observedmake_api_request

TDQS

A3.8/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a distinct and clearly defined role in the workflow (service info, type info, API request), with no overlap in purpose.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (get_service_info, get_type_info, make_api_request), using snake_case throughout.

Tool Count4/5

Three tools is minimal but appropriate for a unified API wrapper, as the tools cover the essential introspection and request workflow.

Completeness5/5

The tool set covers the full lifecycle: discover services, get type information, and make API requests. No obvious gaps for the intended purpose.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Related MCP Connectors

  • The Mercado Pago MCP Server implements the Model Context Protocol to provide AI agents and LLMs with access to Mercado Pago's APIs and tools within compatible development environments. It acts as an intermediary that translates Mercado Pago resources into executable functions (tools) that AI applications can invoke to perform actions and automate flows. The server simplifies integration, enables using documentation to implement or improve code, and optimizes operations through natural language interactions without manual implementations.

  • Connect AI to store orders, products and inventory with scoped access and human approvals.

  • Connect any AI agent to 1,000+ apps and 27,000+ actions through one remote MCP server (OAuth).

  • Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server

Related MCP Servers