Skip to main content
Glama
block

Square MCP Server

by block

🚨 DEPRECATED: Square MCP Server (Old Version)

⚠️ This repository is no longer maintained.
Official development has moved to square/square-mcp-server.
Please use the new repository for the latest, officially supported Square MCP Server.


Archived Information (for reference)

A Model Context Protocol (MCP) server that provides access to Square API functionality.

Related MCP server: PostGIS MCP Server

Setup

  1. Install dependencies:

uv sync
  1. Set environment variables:

# Required
export SQUARE_ACCESS_TOKEN=your_access_token_here

# Optional - defaults to 'sandbox' if not set
export SQUARE_ENVIRONMENT=sandbox  # or 'production' for production environment
  1. Run the server:

uv pip install .
square-mcp

Or for development:

source .venv/bin/activate
mcp dev src/square_mcp/server.py

Environment Variables

Variable

Required

Default

Description

SQUARE_ACCESS_TOKEN

Yes

-

Your Square API access token

SQUARE_ENVIRONMENT

No

sandbox

Square API environment (sandbox or production)


🔗 Migrate to the new server:

Available Tools

12 tools
bookingsC

Manage booking operations

Args:
    operation: The operation to perform. Valid operations:
        Bookings:
            - create_booking
            - search_bookings
            - retrieve_booking
            - update_booking
            - cancel_booking
        Team Member Bookings:
            - bulk_retrieve_team_member_bookings
            - retrieve_team_member_booking_profile
        Location Profiles:
            - list_location_booking_profiles
            - retrieve_location_booking_profile
        Custom Attributes:
            - create_booking_custom_attribute_definition
            - update_booking_custom_attribute_definition
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'manage booking operations' which implies both read and write capabilities, but doesn't specify authentication requirements, rate limits, error conditions, or what happens during operations like 'cancel_booking'. For a tool with multiple operation types including destructive actions, this is insufficient behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably structured with clear categorization of operations, but could be more front-loaded. The initial 'Manage booking operations' line adds little value, and the formatting with bullet points is helpful but not optimally concise. Each operation listed earns its place by providing specific options, but the overall structure could better highlight the tool's core functionality first.

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?

For a tool with 2 parameters (one being a complex object), 0% schema description coverage, no annotations, and no output schema, the description is incomplete. While it documents the operation parameter well, it provides no information about the params dictionary structure, return values, error handling, or how this tool relates to sibling business tools. The absence of output schema means the description should ideally explain what the tool returns.

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?

The description provides significant value beyond the input schema, which has 0% description coverage. It enumerates 12 specific operation types organized into 4 categories, giving concrete meaning to the 'operation' parameter. While it doesn't detail the structure of the 'params' dictionary for each operation, the operation categorization adds substantial semantic context that the bare schema lacks.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Manage booking operations' which is a tautology that restates the tool name 'bookings'. While it lists specific operation types, it doesn't clearly articulate what the tool actually does - whether it creates, modifies, retrieves, or deletes booking data. The purpose remains vague rather than specifying a clear verb+resource combination.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus the sibling tools like 'orders', 'customers', or 'payments'. The description doesn't indicate what booking operations are distinct from other business operations, nor does it provide any context about prerequisites, appropriate scenarios, or limitations for using this tool.

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

businessC

Manage business operations

Args:
    operation: The operation to perform. Valid operations:
        Merchants:
            - list_merchants
            - retrieve_merchant
        Locations:
            - list_locations
            - create_location
            - retrieve_location
            - update_location
        Vendors:
            - bulk_create_vendors
            - bulk_retrieve_vendors
            - create_vendor
            - search_vendors
            - update_vendor
        Sites:
            - list_sites
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.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 carries full burden. It mentions 'Manage business operations' which implies mutation capabilities, but doesn't disclose which operations are read-only vs. mutating, authentication requirements, rate limits, or error behaviors. The operation list suggests both read and write capabilities, but without behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with clear headings and bullet points. The two-sentence introduction is followed by organized parameter documentation. While somewhat lengthy due to the operation list, every element serves a purpose. Could be more front-loaded with a clearer purpose statement.

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?

Inadequate for a complex multi-operation tool with no annotations and no output schema. The description doesn't explain what the tool returns, how errors are handled, or the scope of operations. For a tool that appears to be a gateway to multiple business subsystems, this leaves critical gaps in understanding.

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?

With 0% schema description coverage, the description compensates well by documenting the 'operation' parameter with a comprehensive list of valid values organized by category. It explains that 'params' is a dictionary for operation-specific parameters, though it doesn't detail what those parameters should contain. This adds significant value beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Manage business operations' which is vague and tautological with the tool name 'business'. It lists specific operations but doesn't clearly articulate what the tool actually does beyond being a multi-operation container. The purpose isn't distinguished from sibling tools like 'customers' or 'inventory'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus the sibling tools. While it lists available operations, it doesn't explain when to choose this multi-operation tool over more specialized sibling tools like 'customers', 'inventory', or 'orders'. No context about prerequisites or constraints is provided.

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

catalogC

Manage catalog operations

Args:
    operation: The operation to perform. Valid operations:
        - create_catalog_object
        - batch_delete_catalog_objects
        - batch_retrieve_catalog_objects
        - batch_upsert_catalog_objects
        - create_catalog_image
        - delete_catalog_object
        - retrieve_catalog_object
        - search_catalog_objects
        - update_catalog_object
        - update_item_modifier_lists
        - update_item_taxes
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but offers minimal behavioral insight. It lists operation names but doesn't disclose whether operations are read-only or destructive, what permissions are needed, rate limits, or what happens during execution (e.g., side effects). The description is too vague to inform safe or effective use.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with a brief header and a bulleted list, which is clear but not optimally front-loaded. The first sentence 'Manage catalog operations' is vague and doesn't immediately convey utility. However, it avoids unnecessary verbosity and the bullet list is efficient for listing operations.

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?

Given the complexity (2 parameters with nested objects, no output schema, and no annotations), the description is incomplete. It lists operations but doesn't explain what they do, their inputs/outputs, or behavioral traits. For a tool with multiple operations and no structured guidance, this leaves critical gaps for an AI agent to use it correctly.

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?

The description adds significant value beyond the schema, which has 0% coverage. It enumerates 11 valid operations for the 'operation' parameter and explains that 'params' is a dictionary for operation-specific parameters. This compensates well for the schema's lack of descriptions, though it doesn't detail what each operation does or the structure of 'params'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Manage catalog operations' which is tautological with the tool name 'catalog' and lacks a specific verb-resource combination. While it lists operation types, it doesn't clearly articulate what the tool fundamentally does or distinguish it from sibling tools like 'inventory' or 'orders'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The list of operations implies it's for catalog-related tasks, but there's no explicit context about prerequisites, when to choose specific operations, or how it differs from sibling tools like 'inventory' or 'products' (if present).

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

customersC

Manage customer operations

Args:
    operation: The operation to perform. Valid operations:
        Customers:
            - list_customers
            - create_customer
            - delete_customer
            - retrieve_customer
            - update_customer
            - search_customers
        Groups:
            - create_customer_group
            - delete_customer_group
            - list_customer_groups
            - retrieve_customer_group
            - update_customer_group
        Segments:
            - list_customer_segments
            - retrieve_customer_segment
        Custom Attributes:
            - create_customer_custom_attribute_definition
            - delete_customer_custom_attribute_definition
            - list_customer_custom_attribute_definitions
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. While it lists operations that imply various behaviors (create, delete, update, retrieve), it doesn't disclose any behavioral traits like authentication requirements, rate limits, side effects, or response formats. The description merely catalogs operations without explaining their behavioral implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably structured with an initial statement followed by organized parameter documentation. However, the operation list is quite lengthy and could benefit from better front-loading of key information. Some redundancy exists in the operation naming (e.g., 'customer' appears repeatedly in operation names).

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?

For a complex tool with 2 parameters, no annotations, no output schema, and nested objects in parameters, the description is incomplete. While it documents operation values well, it lacks crucial information about authentication, error handling, response formats, and the structure of the 'params' dictionary. The agent would struggle to use this tool effectively without additional context.

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?

With 0% schema description coverage and 2 parameters, the description provides substantial value by documenting the 'operation' parameter with a comprehensive list of valid values organized by category. It explains that 'params' is a dictionary for operation-specific parameters, though it doesn't detail what those parameters might be. This significantly compensates for the schema's lack of documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Manage customer operations' which provides a general purpose but is vague about what specific operations are available. It lists operations in the Args section, but the initial statement lacks specificity about the verb+resource relationship. It doesn't distinguish this tool from potential siblings like 'business' or 'orders' which might also manage customer-related data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any prerequisites, context for choosing specific operations, or relationships to sibling tools. The agent must infer usage from the operation list alone without any when/when-not guidance.

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

inventoryC

Manage inventory operations

Args:
    operation: The operation to perform. Valid operations:
        - batch_change_inventory
        - batch_retrieve_inventory_changes
        - batch_retrieve_inventory_counts
        - retrieve_inventory_adjustment
        - retrieve_inventory_changes
        - retrieve_inventory_count
        - retrieve_inventory_physical_count
        - retrieve_inventory_transfer
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden for behavioral disclosure. The description mentions 'manage inventory operations' which implies both read and write capabilities, but doesn't specify which operations are destructive versus safe, what permissions are needed, rate limits, or what happens on success/failure. The Args section lists operation types but doesn't explain their behavioral differences or consequences.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably concise with a brief opening statement followed by structured Args section. However, the opening 'Manage inventory operations' adds little value, and the structure could be improved by front-loading more useful information about what the tool actually accomplishes rather than starting with a tautology.

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?

For a tool with 2 parameters, 0% schema coverage, no annotations, no output schema, and nested objects in parameters, the description is inadequate. While it documents operation types, it doesn't explain what each operation does, what the params dictionary should contain for each, what the tool returns, or how errors are handled. The description leaves too many open questions for effective tool use.

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?

With 0% schema description coverage and 2 parameters, the description provides significant value by documenting the 'operation' parameter with 8 specific valid values. However, the 'params' parameter is described only as 'Dictionary of parameters for the specific operation' without detailing what those parameters might be for each operation type. This leaves substantial gaps in parameter understanding despite the operation enum documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Manage inventory operations' which is a tautology that essentially restates the tool name 'inventory'. While it lists specific operations in the Args section, the core description doesn't clearly articulate what the tool actually does beyond the generic term 'manage'. It doesn't distinguish this inventory tool from potential sibling inventory tools (though none are listed in siblings).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any of the sibling tools (bookings, business, catalog, etc.) or explain what inventory operations are versus what those other tools handle. There's no context about when specific operations should be used or any prerequisites for using this tool.

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

invoicesC

Manage invoice operations

Args:
    operation: The operation to perform. Valid operations:
        - create_invoice
        - search_invoices
        - get_invoice
        - update_invoice
        - cancel_invoice
        - publish_invoice
        - delete_invoice
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It lists operations like 'create_invoice' and 'delete_invoice' which imply mutations, but doesn't describe permissions, side effects, or response formats. Critical details such as whether deletions are permanent or if operations require authentication are missing, making it inadequate for a tool with multiple action types.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded with a brief purpose statement followed by a structured list of operations. Each sentence serves a clear function: the first sets context, and the second details parameters efficiently. There's no unnecessary verbosity, making it easy to parse.

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?

Given the tool's complexity (multiple operations including mutations like delete), lack of annotations, no output schema, and nested parameters, the description is incomplete. It fails to explain behavioral traits, return values, or error handling, leaving gaps that could hinder an AI agent from using the tool correctly in varied contexts.

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?

The description adds significant value beyond the input schema, which has 0% coverage and only generic titles. It enumerates valid operations for the 'operation' parameter and explains that 'params' is a dictionary for operation-specific parameters. This clarifies the structure and purpose of both parameters, compensating well for the schema's lack of detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool 'Manage invoice operations' which provides a general purpose but lacks specificity about what 'manage' entails. It distinguishes from siblings like 'payments' or 'orders' by focusing on invoices, but doesn't clearly articulate the exact actions or resources involved beyond listing operations in the parameters section.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description lists operations but doesn't explain context, prerequisites, or exclusions. For example, it doesn't clarify if this should be used instead of sibling tools like 'payments' for invoice-related tasks, leaving usage ambiguous.

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

loyaltyC

Manage loyalty operations

Args:
    operation: The operation to perform. Valid operations:
        Programs:
            - create_loyalty_program
            - retrieve_loyalty_program
        Accounts:
            - create_loyalty_account
            - search_loyalty_accounts
            - retrieve_loyalty_account
            - accumulate_loyalty_points
            - adjust_loyalty_points
            - search_loyalty_events
        Promotions:
            - create_loyalty_promotion
            - cancel_loyalty_promotion
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It mentions operations like 'create' and 'adjust' which imply mutations, but doesn't disclose permissions, side effects, rate limits, or response behavior. The description is minimal and lacks behavioral context needed for safe invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured with a brief purpose statement followed by clear parameter documentation using bullet points. Every sentence adds value, though it could be more front-loaded with a stronger purpose statement.

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?

Given 2 parameters with nested objects, no annotations, and no output schema, the description is incomplete. It covers parameter semantics well but lacks critical behavioral details, output expectations, and error handling, making it inadequate for safe tool use.

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?

With 0% schema description coverage, the description compensates by detailing the 'operation' parameter with specific valid values categorized by type (Programs, Accounts, Promotions). It also explains that 'params' is a dictionary for operation-specific parameters, adding meaningful context beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool 'Manage loyalty operations' which gives a general purpose but lacks specificity about what 'manage' entails. It distinguishes from siblings like 'bookings' or 'payments' by focusing on loyalty, but doesn't clearly articulate the core function beyond a broad category.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description lists operations but doesn't explain context, prerequisites, or comparisons with sibling tools. Users must infer usage from the operation list alone.

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

ordersC

Manage orders and checkout operations

Args:
    operation: The operation to perform. Valid operations:
        Orders:
            - create_order
            - batch_retrieve_orders
            - calculate_order
            - clone_order
            - search_orders
            - pay_order
            - update_order
        Checkout:
            - create_checkout
            - create_payment_link
        Custom Attributes:
            - upsert_order_custom_attribute
            - list_order_custom_attribute_definitions
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but offers minimal behavioral insight. It lists operation types but doesn't disclose permissions needed, side effects (e.g., whether 'pay_order' charges a card), error handling, or response formats. For a tool with multiple operations including mutations, this is inadequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured with a brief header and organized bullet points for operations. Each sentence earns its place by listing operation categories and examples, though it could be more front-loaded with a clearer purpose statement.

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?

Given the tool's complexity (multiple operations including mutations), lack of annotations, no output schema, and nested parameters, the description is insufficient. It doesn't cover authentication needs, rate limits, error responses, or how to structure the 'params' dictionary for different operations, leaving critical gaps for an agent.

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?

The description adds significant value beyond the schema, which has 0% coverage. It enumerates valid operations for the 'operation' parameter and explains that 'params' is a dictionary for operation-specific parameters. This clarifies what would otherwise be completely undocumented parameters, though it doesn't detail the structure of 'params'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool manages orders and checkout operations, which provides a general purpose but lacks specificity about what 'manage' entails. It distinguishes from siblings like 'bookings' or 'inventory' by focusing on orders, but doesn't clearly articulate the core verb beyond the generic 'manage'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'payments' or 'invoices'. The description lists operations but doesn't explain which scenarios warrant 'create_order' versus 'pay_order' or how this tool relates to sibling tools in the ecosystem.

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

paymentsC

Manage payment operations using Square API

Args:
    operation: The operation to perform. Valid operations:
        Payments:
            - list_payments
            - create_payment
            - get_payment
            - update_payment
            - cancel_payment
        Refunds:
            - refund_payment
            - list_refunds
            - get_refund
        Disputes:
            - list_disputes
            - retrieve_dispute
            - accept_dispute
            - create_dispute_evidence
        Gift Cards:
            - create_gift_card
            - link_customer_to_gift_card
            - retrieve_gift_card
            - list_gift_cards
        Bank Accounts:
            - list_bank_accounts
            - get_bank_account
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It lists operations but fails to describe critical traits like authentication requirements, rate limits, error handling, or side effects (e.g., 'cancel_payment' might be irreversible). The description is operational but lacks transparency on how these actions behave in practice.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with a brief overview and a categorized list of operations, which is front-loaded. However, it includes extensive bullet points that could be condensed, and some redundancy exists (e.g., listing all operations without summarizing). It's moderately efficient but could be more streamlined.

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?

Given the complexity (multiple operation types, nested 'params' object) and lack of annotations and output schema, the description is incomplete. It covers operation options but omits details on parameter formats, return values, error cases, and integration context. For a tool with such broad functionality, this leaves the agent under-informed.

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?

The description adds significant meaning beyond the input schema, which has 0% coverage. It enumerates valid operations for the 'operation' parameter and notes that 'params' is a dictionary for specific operations, clarifying their roles. However, it doesn't detail the structure of 'params' or provide examples, leaving gaps in parameter understanding.

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 the tool's purpose as managing payment operations using Square API, which is a specific verb+resource combination. It distinguishes itself from siblings like 'invoices' or 'orders' by focusing on payments, refunds, disputes, gift cards, and bank accounts. However, it doesn't explicitly contrast with all siblings, such as 'customers' or 'subscriptions', which might overlap in payment contexts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It lists operations but doesn't explain scenarios for choosing 'payments' over sibling tools like 'invoices' or 'orders', nor does it mention prerequisites or exclusions. This leaves the agent without contextual usage cues.

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

subscriptionsB

Manage subscription operations

Args:
    operation: The operation to perform. Valid operations:
        - create_subscription
        - search_subscriptions
        - retrieve_subscription
        - update_subscription
        - cancel_subscription
        - list_subscription_events
        - pause_subscription
        - resume_subscription
        - swap_plan
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

B3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It lists operations but doesn't describe behavioral traits such as permissions required, rate limits, side effects (e.g., 'cancel_subscription' might be irreversible), or response formats. For a tool with multiple mutation operations (e.g., create, update, cancel), this lack of detail is a significant gap, though it at least implies the tool can perform both read and write actions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with a brief purpose statement followed by a parameter list, which is front-loaded but could be more concise. The operation list is detailed but necessary given the schema gaps. However, the initial sentence 'Manage subscription operations' is somewhat vague and could be more specific, and the overall text is moderately efficient but not minimal.

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?

Given the tool's complexity (multiple operations with a nested 'params' object), no annotations, and no output schema, the description is partially complete. It covers the high-level purpose and parameter semantics adequately but lacks behavioral details, usage context, and output information. For a tool with such varied operations, more guidance on behavior and integration would improve completeness.

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?

The description adds substantial meaning beyond the input schema, which has 0% description coverage. It enumerates valid operations for the 'operation' parameter and explains that 'params' is a dictionary for operation-specific parameters, clarifying their roles. This compensates well for the schema's lack of descriptions, though it doesn't detail the structure or content of the 'params' dictionary for each operation.

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 the tool's purpose as 'Manage subscription operations' which clearly indicates it handles subscription-related tasks. While it distinguishes itself from siblings like 'customers' or 'payments' by focusing on subscriptions, it doesn't specify what 'manage' entails beyond listing operations in the parameters section. The verb 'manage' is somewhat broad but the operational list provides concrete actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'invoices' or 'orders' for related financial operations, or how it interacts with sibling tools. It lists operations but doesn't specify contexts, prerequisites, or exclusions for choosing this tool over others, leaving the agent to infer usage based on the operation names alone.

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

teamC

Manage team operations

Args:
    operation: The operation to perform. Valid operations:
        Team Members:
            - create_team_member
            - bulk_create_team_members
            - update_team_member
            - retrieve_team_member
            - search_team_members
        Wages:
            - retrieve_wage_setting
            - update_wage_setting
        Labor:
            - create_break_type
            - create_shift
            - search_shifts
            - update_shift
            - create_workweek_config
        Cash Drawers:
            - list_cash_drawer_shifts
            - retrieve_cash_drawer_shift
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It lists operation types but doesn't describe what these operations actually do behaviorally - whether they're read/write operations, what permissions are needed, what side effects occur, or how errors are handled. The description provides operation names but not their behavioral characteristics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear categorization of operations and uses bullet points effectively. It's appropriately sized for a multi-operation tool, though the initial 'Manage team operations' line is somewhat redundant with the tool name. Each section earns its place by organizing the operation types logically.

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?

For a complex tool with 2 parameters, 0% schema coverage, no annotations, no output schema, and nested objects in parameters, the description is incomplete. While it documents operation values well, it doesn't explain the 'params' dictionary structure, return values, error conditions, or behavioral implications of different operations. This is inadequate for a multi-function mutation tool.

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?

With 0% schema description coverage and only 2 parameters, the description provides excellent semantic context for the 'operation' parameter by listing all valid operation values across four categories (Team Members, Wages, Labor, Cash Drawers). This significantly compensates for the schema's lack of documentation, though it doesn't explain the 'params' dictionary structure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Manage team operations' which provides a general purpose but is vague about what specific resources are managed. It distinguishes from siblings like 'bookings' or 'customers' by focusing on team-related functions, but doesn't specify the exact verb+resource combination clearly beyond the broad 'manage' term.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives. The description lists operations but doesn't explain context, prerequisites, or when specific operations should be chosen. There's no mention of when-not-to-use scenarios or how this tool relates to sibling tools like 'business' or 'customers'.

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

terminalB

Manage Square Terminal operations

Args:
    operation: The operation to perform. Valid operations:
        Checkout:
            - create_terminal_checkout
            - search_terminal_checkouts
            - get_terminal_checkout
            - cancel_terminal_checkout
        Devices:
            - create_terminal_device
            - get_terminal_device
            - search_terminal_devices
        Refunds:
            - create_terminal_refund
            - search_terminal_refunds
            - get_terminal_refund
            - cancel_terminal_refund
    params: Dictionary of parameters for the specific operation
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
paramsYes

TDQS

B3/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It lists operation types but doesn't describe what these operations do, their side effects, authentication requirements, rate limits, or error conditions. For example, it doesn't clarify that 'create_terminal_checkout' initiates a payment or that 'cancel_terminal_refund' might be irreversible. The description provides structure but minimal behavioral insight.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized but could be better structured. The opening sentence is clear, but the parameter documentation uses a bulleted list that might be less efficient than a table. All content is relevant, but it could be more front-loaded with a clearer summary of what 'manage' entails before diving into parameter details.

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?

Given the tool's complexity (multiple operation types, nested params object) and lack of both annotations and output schema, the description is partially complete. It documents the parameter structure and valid operation values, which is essential, but doesn't explain what each operation does, what the params should contain, or what the tool returns. For a multi-operation tool with no other documentation, this leaves significant gaps.

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?

The description adds significant value beyond the input schema, which has 0% description coverage. It explains that 'operation' accepts specific string values categorized into Checkout, Devices, and Refunds operations, and that 'params' is a dictionary for the chosen operation. This clarifies what would otherwise be completely undocumented parameters, though it doesn't detail what parameters each operation expects.

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 the tool's purpose: 'Manage Square Terminal operations' with a verb ('Manage') and resource ('Square Terminal operations'). It distinguishes from siblings by focusing specifically on Terminal operations rather than other Square services like bookings, payments, or customers. However, it doesn't specify what 'manage' entails beyond listing operation categories.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It lists operation categories but doesn't explain when to choose Terminal operations over other sibling tools like payments or orders, nor does it provide any context about prerequisites, typical use cases, or exclusions. The agent must infer usage from the operation list alone.

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. Dates show when Glama detected each change.

  1. 12 tool updatesv1.0.0
    • First observedbookings
    • First observedbusiness
    • First observedcatalog
    • First observedcustomers
    • First observedinventory
    • First observedinvoices
    • First observedloyalty
    • First observedorders
    • First observedpayments
    • First observedsubscriptions
    • First observedteam
    • First observedterminal

TDQS

B3.3/5.0
Disambiguation4/5

The tools are organized into clear domains (bookings, business, catalog, etc.), each with distinct purposes, reducing overlap. However, within some domains, operations like 'create' and 'update' across different resources might be conceptually similar, but the structured categorization helps differentiate them. There is minor potential for confusion in operations like 'search' vs 'list' across tools, but overall, the separation is effective.

Naming Consistency5/5

The tool names follow a highly consistent pattern: all are simple nouns (e.g., bookings, business, catalog) that correspond to Square API domains. Within each tool, operations use a consistent verb_noun format (e.g., create_booking, list_locations), with no mixing of conventions like camelCase or snake_case deviations. This uniformity makes the set predictable and easy to navigate.

Tool Count5/5

With 12 tools, the server is well-scoped for a comprehensive Square API integration, covering key business areas like payments, orders, inventory, and more. Each tool represents a distinct domain, and the count is appropriate for the broad functionality offered, avoiding both excessive fragmentation and insufficient coverage. It aligns with typical MCP server ranges for such APIs.

Completeness5/5

The tool set provides extensive coverage of Square's API domains, including CRUD operations for resources like bookings, customers, orders, and payments, as well as lifecycle management for subscriptions and invoices. There are no obvious gaps; each domain includes create, retrieve, update, delete, and search/list operations, ensuring agents can handle full workflows without dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A server implementation of the Model Context Protocol (MCP) that provides REST API endpoints for managing and interacting with MCP resources.
    -
  • F
    license
    B
    quality
    D
    maintenance
    A server application that provides PostGIS database connection using Model Context Protocol (MCP), enabling spatial database functionality through natural language interactions.
    22
    17
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    MCP server for GoHighLevel sub-accounts, enabling management of CRM contacts, pipelines, calendars, invoices, and more via natural language.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server that exposes SQLite datasets as queryable tools and resources via Streamable HTTP, enabling read-only exploration and SQL queries.
    Apache 2.0

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/block/square-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server