Square

by square

SSE
100 stars
383 downloads
Not rated
GitHub Website SSE

About

Search and manage transaction, merchant, and payment data

Details

Author
square
GitHub stars
100
Downloads
383
Transport
SSE
Categories
Remote MCP, Developer Tools, Other, API

- Discover Square API methods with get_service_info
- Inspect parameter requirements via get_type_info
- Execute any Square API call with make_api_request
- Switch between sandbox and production environments
- Restrict operations to read-only with DISALLOW_WRITES
- Integrates with Goose and Claude Desktop

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Square
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Run the server locally using npx square-mcp-server start, optionally setting environment variables like ACCESS_TOKEN, SANDBOX, PRODUCTION, DISALLOW_WRITES, or SQUARE_VERSION. Alternatively, use the hosted remote MCP server at https://mcp.squareup.com/sse which supports OAuth authentication. Integrate with Goose via npx square-mcp-server install or by copying a goose:// URL. For Claude Desktop, add a local or remote configuration to claude_desktop_config.json. Use the three MCP tools—get_service_info, get_type_info, and make_api_request—in sequence to discover, understand, and execute Square API calls.

make_api_request

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.

get_type_info

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

get_service_info

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

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "square": {
            "square-mcp-server": {
                "command": "npx",
                "args": [
                    "square-mcp-server",
                    "start"
                ]
            }
        }
    }
}

McpServers

{
    "square-mcp-server": {
        "command": "npx",
        "args": [
            "square-mcp-server",
            "start"
        ]
    }
}
# Square Model Context Protocol Server (Beta) This project follows the [Model Context Protocol](https://modelcontextprotocol.com/) standard, allowing AI assistants to interact with Square's connect API. <a href="https://glama.ai/mcp/servers/@square/square-mcp-server"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@square/square-mcp-server/badge" alt="Square Model Context Protocol Server MCP server" /> </a> ## Quick Start Get up and running with the Square MCP server using npx: ```bash # 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](https://developer.squareup.com/docs/build-basics/access-tokens). You can also set environment variables before running the command. ## 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](https://block.github.io/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](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. ```bash # 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](https://modelcontextprotocol.io/quickstart/user). Add this configuration to your `claude_desktop_config.json`: #### Remote MCP ```json { "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 ```json { "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](https://developer.squareup.com/reference/square). Check out the [Square API Documentation](https://developer.squareup.com/docs) 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](https://modelcontextprotocol.io/docs/tools/inspector) provides a visual interface for testing: ```bash # 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.
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.