
This profile is part of our MCP server directory, within The MCP Guide. Profiles are checked against each vendor's own documentation. Need a server built? See MCP development.
The Square MCP server lets an AI app call the Square API for payments, orders, catalog, inventory, customers, bookings and more. Square publishes it in beta, as a hosted server run by Block and as a local package you run yourself.
Checked against: Square's MCP server documentation on 28 October 2026. eSEOspace did not install or test this server.
Key Takeaways
- Square labels the server Beta and asks for feedback through GitHub issues.
- The remote server at
https://mcp.squareup.com/mcpuses OAuth and reaches production data only. - The local server (
square-mcp-serveron npm) uses an access token and can target the Sandbox. - Three generic tools let the AI discover Square API methods and then call them.
- Setting
DISALLOW_WRITES=trueon the local server limits it to read-only operations.
At a glance
| Item | Detail |
|---|---|
| Publisher | Square (remote server hosted by Block) |
| Official? | Yes |
| Hosting | Both: remote URL and local npm package |
| Transport | Remote over HTTP (examples use mcp-remote); local stdio |
| Sign-in | Remote: OAuth. Local: Square access token |
| Read or write | Both; local server can be set to read-only |
| Price | No separate MCP price listed |
| Source code | square/square-mcp-server on GitHub (Apache-2.0) |
| Status | Beta |
What it can do
The project README lists three tools:
get_service_info: discover the methods available for a Square service.get_type_info: get the parameters a request needs.make_api_request: run the API call.
Those tools sit on top of a long list of Square services. Examples from the README include catalog, checkout, customers, disputes, giftcards, inventory, invoices, locations, loyalty, bookings, cards, bankaccounts and labor.
Because make_api_request is generic, what the AI can do depends on the service, the method and the scopes you grant. It can read and also change records.
How to connect it
Remote server (Claude Desktop example from Square):
{
"mcpServers": {
"mcp_square_api": {
"command": "npx",
"args": ["mcp-remote", "https://mcp.squareup.com/mcp"]
}
}
}
You log in with your Square account and approve only the scopes you need. Square also gives steps for Claude.ai, Goose, Cursor and Windsurf (now Devin Desktop). In Cursor, set the type to "Command" and enter npx mcp-remote https://mcp.squareup.com/mcp.
Local server (sandbox example):
{
"mcpServers": {
"mcp_square_api": {
"command": "npx",
"args": ["square-mcp-server", "start"],
"env": {
"ACCESS_TOKEN": "YOUR_SQUARE_ACCESS_TOKEN",
"SANDBOX": "true"
}
}
}
}
The local server reads these environment variables, per Square's docs:
| Variable | Purpose |
|---|---|
ACCESS_TOKEN | Square API access token |
SANDBOX | Use the Sandbox environment |
PRODUCTION | Use the production environment |
DISALLOW_WRITES | Restrict to read-only operations |
SQUARE_VERSION | Set the Square API version |
Square keeps an allowlist of MCP clients. To get a client added, Square says to ask in its developer forum.
Security notes
- Beta software. Square says the server is in beta. Expect changes, and test before you rely on it.
- Remote means production. Square says remote instances only access production resources. For Sandbox tests, run the local server with
SANDBOX. - Read-only mode.
DISALLOW_WRITES=truerestricts the local server to read operations. Square's docs do not describe the same switch for the remote server, so limit OAuth scopes there instead. - Generic write tool.
make_api_requestcan call write methods across many services. Square's pages do not describe a server-side human approval step, so keep your client's approval prompt on. - Scopes. On the remote server you authorize only the scopes you need. See excessive permissions in MCP servers for how to choose.
- What the spec says. The MCP tools specification says there SHOULD always be a human in the loop who can deny tool calls. The spec's security best practices also recommend scope minimization.
For a full checklist, see the MCP security center and MCP security risks.
Alternatives
- Stripe MCP server: remote, with server-side approval for refunds and outbound payments.
- PayPal MCP server: local or remote, with sandbox and production endpoints.
- Adyen MCP server: local, alpha, with a
--toolsflag to load only what you need.
Next step
Point-of-sale data is a good fit for read-only reporting first. Start with DISALLOW_WRITES=true and a Sandbox token, then decide which writes you really need. Our MCP readiness audit can help you plan that, and the MCP server directory lists more options.
Frequently asked questions
Is the Square MCP server ready for production?
Square labels it Beta as of October 2026. The remote server works against production data, but Square recommends testing your prompts against a Sandbox account first.
Can I make the Square MCP server read-only?
Yes, on the local server. Set DISALLOW_WRITES=true and it restricts itself to read-only operations. For the remote server, grant only read scopes when you sign in.
Why can't the remote server reach my Sandbox?
Square's docs say remote instances only access production resources. Use the local server with SANDBOX=true for Sandbox work.
Which AI apps does Square document?
Square gives setup steps for Claude.ai, Claude Desktop, Goose, Cursor and Windsurf. Square also keeps an allowlist of MCP clients.











