Skip to main content
Glama
Square Model Context Protocol Server

Square Model Context Protocol Server

by ampcome-mcps

Square Model Context Protocol Server (Beta)

This project follows the Model Context Protocol standard, allowing AI assistants to interact with Square's connect API.

Quick Start

Get up and running with the Square MCP server using npx:

# 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

Replace YOUR_SQUARE_ACCESS_TOKEN with your actual Square access token. You can obtain your access token by following the guide at Square Access Tokens. You can also set environment variables before running the command.

Related MCP server: paystack-mcp-server

Remote MCP Server

Square now offers a hosted remote MCP server at:

https://mcp.squareup.com/sse

The remote MCP is recommended as it uses OAuth authentication, allowing you to log in with your Square account directly without having to create or manage access tokens manually.

Configuration Options

Environment Variable

Purpose

Example

ACCESS_TOKEN

Your Square API access token

ACCESS_TOKEN=sq0atp-...

SANDBOX

Use Square sandbox environment

SANDBOX=true

PRODUCTION

Use Square production environment

PRODUCTION=true

DISALLOW_WRITES

Restrict to read-only operations

DISALLOW_WRITES=true

SQUARE_VERSION

Specify Square API version

SQUARE_VERSION=2025-04-16

Integration with AI Assistants

Goose Integration

To configure the Square MCP Server with Goose:

Remote MCP

To install the Square remote MCP in Goose, click this URL on a computer where Goose is installed:

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

Or copy and paste the URL into your browser's address bar.

# Automatic installation
npx square-mcp-server install

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

The install command automatically updates your Goose configuration.

Claude Desktop Integration

For Claude Desktop integration, see the Model Context Protocol Quickstart Guide. Add this configuration to your claude_desktop_config.json:

Remote MCP

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

This approach allows you to authenticate directly with your Square account credentials without needing to manage access tokens.

Local MCP

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

Tool Reference

The Square MCP Server provides a streamlined set of tools for interacting with Square APIs:

Tool

Description

Primary Use

get_service_info

Discover methods available for a service

Exploration and discovery

get_type_info

Get detailed parameter requirements

Request preparation

make_api_request

Execute API calls to Square

Performing operations

Service Catalog

Square MCP Server provides access to Square's complete API ecosystem. Check out the Square API Documentation for detailed information about each service:

Service

Description

applepay

Apple Pay integration

bankaccounts

Bank account management

bookingcustomattributes

Custom attributes for bookings

bookings

Appointment booking management

cards

Payment card management

cashdrawers

Cash drawer management

catalog

Catalog management (items, categories, etc.)

checkout

Checkout and payment processing

customercustomattributes

Custom attributes for customers

customergroups

Customer grouping

customersegments

Customer segmentation

customers

Customer management

devices

Square device management

disputes

Payment dispute handling

events

Event tracking

giftcardactivities

Gift card activity tracking

giftcards

Gift card management

inventory

Inventory tracking

invoices

Invoice management

labor

Workforce management

locationcustomattributes

Custom attributes for locations

locations

Location management

loyalty

Loyalty program management

merchantcustomattributes

Custom attributes for merchants

merchants

Merchant account management

oauth

Authentication

ordercustomattributes

Custom attributes for orders

orders

Order management

payments

Payment processing

payouts

Payout management

refunds

Refund management

sites

Website integration

snippets

Square Online Code integration

subscriptions

Subscription management

team

Staff management

terminal

Square Terminal management

vendors

Supplier management

webhooksubscriptions

Event notifications

Usage Pattern

For optimal interaction with the Square API through MCP:

  1. Discover: Use get_service_info to explore available methods

    get_service_info(service: "catalog")
  2. Understand: Use get_type_info to learn parameter requirements

    get_type_info(service: "catalog", method: "list")
  3. Execute: Use make_api_request to perform the operation

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

Development and Debugging

Using MCP Inspector

The MCP Inspector provides a visual interface for testing:

# Build the project
npm run build

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

Development Workflow

  1. Clone the repository

  2. Install dependencies: npm install

  3. Start development mode: npm run watch

  4. Run the server: node dist/index.js start

  5. Test your changes using the MCP Inspector

Contributing

This repository is auto-generated from Square's OpenAPI Specification. While contributions are welcome, please note that changes will need to be incorporated into the generator that produces this code. Please open an issue to discuss proposed changes before submitting a pull request.

Available Tools

3 tools
get_service_infoA

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

Inputs: service (required).

get_type_infoA

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

Inputs: service (required), method (required).

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.

Inputs: service (required), method (required), request.

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap: get_service_info provides service metadata, get_type_info supplies method type details, and make_api_request handles all actual API calls. The descriptions explicitly state the sequential dependency between them, eliminating any confusion about when to use each tool.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern (get_service_info, get_type_info, make_api_request) with clear, descriptive names that reflect their specific functions. The naming is uniform and predictable across the entire set.

    Tool Count3/5

    With only 3 tools, the count feels thin for covering the extensive Square API surface listed (over 40 services). While the tools are well-designed, the minimal number may force agents to rely heavily on a single make_api_request tool for all operations, which could be cumbersome for complex workflows.

    Completeness4/5

    The tool set provides complete coverage for the Square API domain through a unified request tool, with preparatory tools for service and type information. However, the reliance on a single generic API call tool may lack the granularity and error handling that dedicated tools for common operations (like create_order or get_payment) would offer, creating minor gaps in usability.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      Enables AI assistants to manage consignment and retail business operations through the ConsignCloud API, including inventory management, sales tracking, vendor accounts, and analytics.
      26
      1
      GPL 3.0
    • A
      license
      A
      quality
      D
      maintenance
      Enables AI assistants to interact with the full range of Paystack APIs, allowing operations like transaction management, customer creation, and payments through natural language.
      2
      152 npm
      56
      MIT
    • A
      license
      B
      quality
      B
      maintenance
      Enables AI assistants to manage payments via Spreedly API, including gateways, transactions, and payment method tokenization.
      32
      113 npm
      10
      Apache 2.0