Square Model Context Protocol Server
OfficialServidor de protocolo de contexto del modelo cuadrado (Beta)
Este proyecto sigue el estándar del Protocolo de Contexto de Modelo , lo que permite a los asistentes de IA interactuar con la API de conexión de Square.
Inicio rápido
Comience a utilizar el servidor Square MCP usando 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-serverReemplace YOUR_SQUARE_ACCESS_TOKEN con su token de acceso de Square. Puede obtener su token de acceso siguiendo la guía en Tokens de Acceso de Square . También puede configurar variables de entorno antes de ejecutar el comando.
Related MCP server: AI-Assisted CRM MCP Server
Servidor MCP remoto
Square ahora ofrece un servidor MCP remoto alojado en:
https://mcp.squareup.com/sseSe recomienda el MCP remoto ya que utiliza autenticación OAuth, lo que le permite iniciar sesión con su cuenta Square directamente sin tener que crear o administrar tokens de acceso manualmente.
Opciones de configuración
Variable de entorno | Objetivo | Ejemplo |
| Su token de acceso a la API de Square |
|
| Utilice el entorno sandbox de Square |
|
| Utilice el entorno de producción Square |
|
| Restringir a operaciones de solo lectura |
|
| Especifique la versión de la API de Square |
|
Integración con asistentes de IA
Integración de Goose
Para configurar el servidor Square MCP con Goose :
MCP remoto
Para instalar el MCP remoto Square en Goose, haga clic en esta URL en una computadora donde esté instalado Goose:
ganso://extensión?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
O copie y pegue la URL en la barra de direcciones de su navegador.
# Automatic installation
npx square-mcp-server install
# Get URL for manual installation
npx square-mcp-server get-goose-urlEl comando install actualiza automáticamente la configuración de Goose.
Integración de escritorio de Claude
Para la integración con Claude Desktop, consulte la Guía de inicio rápido del Protocolo de Contexto de Modelo . Agregue esta configuración a su claude_desktop_config.json :
MCP remoto
{
"mcpServers": {
"mcp_square_api": {
"command": "npx",
"args": ["mcp-remote", "https://mcp.squareup.com/sse"]
}
}
}Este enfoque le permite autenticarse directamente con las credenciales de su cuenta Square sin necesidad de administrar tokens de acceso.
MCP local
{
"mcpServers": {
"mcp_square_api": {
"command": "npx",
"args": ["square-mcp-server", "start"],
"env": {
"ACCESS_TOKEN": "YOUR_SQUARE_ACCESS_TOKEN",
"SANDBOX": "true"
}
}
}
}Referencia de herramientas
El servidor Square MCP proporciona un conjunto optimizado de herramientas para interactuar con las API de Square:
Herramienta | Descripción | Uso principal |
| Descubra los métodos disponibles para un servicio | Exploración y descubrimiento |
| Obtenga los requisitos de parámetros detallados | Preparación de solicitudes |
| Ejecutar llamadas API a Square | Realizar operaciones |
Catálogo de servicios
El servidor MCP de Square proporciona acceso a todo el ecosistema de API de Square. Consulte la documentación de la API de Square para obtener información detallada sobre cada servicio:
Servicio | Descripción |
| Integración con Apple Pay |
| Gestión de cuentas bancarias |
| Atributos personalizados para reservas |
| Gestión de reservas de citas |
| Gestión de tarjetas de pago |
| Gestión de caja registradora |
| Gestión de catálogos (artículos, categorías, etc.) |
| Procesamiento de pagos y pago |
| Atributos personalizados para clientes |
| Agrupación de clientes |
| Segmentación de clientes |
| Gestión de clientes |
| Administración de dispositivos Square |
| Manejo de disputas de pago |
| Seguimiento de eventos |
| Seguimiento de la actividad de las tarjetas de regalo |
| Gestión de tarjetas de regalo |
| Seguimiento de inventario |
| Gestión de facturas |
| Gestión de la fuerza laboral |
| Atributos personalizados para ubicaciones |
| Gestión de ubicaciones |
| Gestión de programas de fidelización |
| Atributos personalizados para comerciantes |
| Gestión de cuentas comerciales |
| Autenticación |
| Atributos personalizados para pedidos |
| Gestión de pedidos |
| Procesamiento de pagos |
| Gestión de pagos |
| Gestión de reembolsos |
| Integración de sitios web |
| Integración de códigos de Square Online |
| Gestión de suscripciones |
| Gestión de personal |
| Gestión de terminales Square |
| Gestión de proveedores |
| Notificaciones de eventos |
Patrón de uso
Para una interacción óptima con la API de Square a través de MCP:
Descubra : utilice
get_service_infopara explorar los métodos disponiblesget_service_info(service: "catalog")Comprender : utilice
get_type_infopara conocer los requisitos de los parámetrosget_type_info(service: "catalog", method: "list")Ejecutar : utilice
make_api_requestpara realizar la operaciónmake_api_request(service: "catalog", method: "list", request: {})
Desarrollo y depuración
Uso del inspector MCP
El Inspector MCP proporciona una interfaz visual para realizar pruebas:
# Build the project
npm run build
# Start the inspector with the Square MCP Server
npx @modelcontextprotocol/inspector node dist/index.js startFlujo de trabajo de desarrollo
Clonar el repositorio
Instalar dependencias:
npm installIniciar el modo de desarrollo:
npm run watchEjecute el servidor:
node dist/index.js startPruebe sus cambios utilizando el Inspector MCP
Contribuyendo
Este repositorio se genera automáticamente a partir de la especificación OpenAPI de Square. Si bien se agradecen las contribuciones, tenga en cuenta que los cambios deberán incorporarse al generador que produce este código. Abra una incidencia para discutir los cambios propuestos antes de enviar una solicitud de incorporación de cambios.
Available Tools
3 toolsget_service_infoA
Get information about a Square API service. Call me before trying to get type info
| Name | Required | Description | Default |
|---|---|---|---|
| service | Yes | The Square API service category (e.g., 'catalog', 'payments') |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| service | Yes | The Square API service category (e.g., 'catalog', 'payments') | |
| method | Yes | The API method to call (e.g., 'list', 'create') |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| service | Yes | The Square API service category (e.g., 'catalog', 'payments') | |
| method | Yes | The API method to call (e.g., 'list', 'create') | |
| request | No | The request object for the API call. |
TDQS
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.
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.
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.
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.
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.
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.
3 tool updates
- First observed
get_service_info - First observed
get_type_info - First observed
make_api_request
TDQS
Scored across 3 tools
Each tool has a distinct and clearly defined role in the workflow (service info, type info, API request), with no overlap in purpose.
All tool names follow a consistent verb_noun pattern (get_service_info, get_type_info, make_api_request), using snake_case throughout.
Three tools is minimal but appropriate for a unified API wrapper, as the tools cover the essential introspection and request workflow.
The tool set covers the full lifecycle: discover services, get type information, and make API requests. No obvious gaps for the intended purpose.
Maintenance
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
AlicenseNot gradedqualityCmaintenanceEnables AI assistants to securely interact with Fireblocks services through the Model Context Protocol, supporting transaction management, vault and exchange account queries, network connections, and workspace user management.16 npm10MIT- FlicenseNot gradedqualityDmaintenanceEnables AI agents to perform CRM operations like creating contacts, managing deals, and updating leads through natural language using the Model Context Protocol.4-
- AlicenseAqualityCmaintenanceEnables AI agents to manage crypto payments, stores, products, and orders through the Model Context Protocol.2025 npmMIT
- FlicenseBqualityDmaintenanceConnects AI clients to retail customer, inventory, sales, order, and support capabilities through the Model Context Protocol.31-