Squarespace MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Squarespace MCP Servershow me my top selling products"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Squarespace MCP Server
A comprehensive Model Context Protocol (MCP) server for Squarespace, providing complete integration with the Squarespace platform for website management, e-commerce operations, content creation, and analytics.
Overview
This MCP server enables AI assistants to interact with Squarespace sites through a rich set of 67 tools covering all major platform features. Built with TypeScript and the official MCP SDK, it provides type-safe, reliable access to Squarespace's v1.0 API with OAuth2 authentication, automatic token refresh, pagination, error handling, and retry logic.
Features
🛍️ Complete API Coverage (67 Tools)
Commerce - Orders (8 tools)
List, search, and filter orders by date range, status, email
Get detailed order information with line items and fulfillment
Create orders (for importing from external sources)
Fulfill orders with optional shipping notifications and tracking
Add internal notes to orders
Get pending orders and recent orders
Commerce - Products (10 tools)
List all products with pagination
Get detailed product information with variants and images
Create new products with variants
Update products (name, description, pricing, SEO)
Delete products
Create, update, and delete product variants
Search products by name or tag
Filter products by tags
Commerce - Inventory (5 tools)
Get inventory levels for variants
Update inventory quantities
Adjust inventory by relative amounts
Check for low stock items (configurable threshold)
List out-of-stock items
Commerce - Transactions (3 tools)
Get all transactions for an order
Process refunds
Get transaction summaries (total paid, refunded, net)
Profiles (7 tools)
List all profiles (customers, subscribers, donors)
Get detailed profile information
List customers with purchase history
List mailing list subscribers
List donors
Search profiles by email
Get top customers by lifetime value
Webhooks (7 tools)
List all webhook subscriptions
Get webhook details
Create new webhooks for events (order.create, inventory.update, etc.)
Update webhook configurations
Delete webhooks
Send test notifications
Rotate webhook secrets for security
Pages & Website (8 tools)
Get website information
List and get collections
List, get, create, update, and delete pages
Manage page SEO settings
Forms (5 tools)
List all forms
Get form details with fields
List form submissions with filtering
Get specific submission details
Export form submissions as CSV
Blog (9 tools)
List all blog collections
Get blog details
List blog posts with pagination
Get specific blog post
Create new blog posts
Update blog posts
Delete blog posts
Publish and unpublish posts
Analytics (5 tools)
Get revenue metrics (total revenue, order count, AOV)
Get top-selling products by revenue
Get daily sales breakdowns
Get monthly revenue summary
Get yearly revenue summary
🎨 15 React MCP Apps (Dark Theme)
All apps are standalone Vite-based React applications with dark theme:
Orders Dashboard - Order management and fulfillment
Products Manager - Product catalog management
Inventory Tracker - Real-time inventory monitoring
Customer Profiles - Customer LTV and history
Analytics Dashboard - Revenue and sales insights
Blog Editor - Blog post management
Forms Viewer - Form submissions and export
Webhook Manager - Webhook configuration and testing
Page Manager - Website page management
Bulk Editor - Bulk product updates
SEO Optimizer - SEO settings and optimization
Reports - Generate and download reports
Shipping Manager - Fulfillment tracking
Discount Manager - Discount code management
Settings - Server and API configuration
🔒 Enterprise-Grade Features
OAuth2 Authentication - Full OAuth2 support with refresh tokens
Automatic Token Refresh - Seamless token renewal before expiration
Retry Logic - Automatic retry with exponential backoff for rate limits and errors
Pagination Support - Handle large datasets efficiently
Error Handling - Comprehensive error messages with details
Type Safety - Full TypeScript types for all API entities
Rate Limit Management - Built-in rate limit handling
Installation
npm install @mcpengine/squarespace-serverOr install from source:
cd servers/squarespace
npm install
npm run buildConfiguration
Environment Variables
The server requires at minimum a Squarespace access token:
export SQUARESPACE_ACCESS_TOKEN="your_access_token_here"For long-term access with automatic token refresh:
export SQUARESPACE_ACCESS_TOKEN="your_access_token"
export SQUARESPACE_REFRESH_TOKEN="your_refresh_token"
export SQUARESPACE_CLIENT_ID="your_client_id"
export SQUARESPACE_CLIENT_SECRET="your_client_secret"MCP Configuration
Add to your MCP settings file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"squarespace": {
"command": "squarespace-mcp",
"env": {
"SQUARESPACE_ACCESS_TOKEN": "your_access_token",
"SQUARESPACE_REFRESH_TOKEN": "your_refresh_token",
"SQUARESPACE_CLIENT_ID": "your_client_id",
"SQUARESPACE_CLIENT_SECRET": "your_client_secret"
}
}
}
}Getting Squarespace API Credentials
1. Register Your OAuth Application
Submit a request to Squarespace to register your OAuth application:
Provide: App name, icon, redirect URI, terms & privacy links
You'll receive:
client_idclient_secret
2. OAuth Flow
Implement the OAuth2 authorization code flow:
Authorization URL:
https://login.squarespace.com/api/1/login/oauth/provider/authorize?
client_id=YOUR_CLIENT_ID&
redirect_uri=YOUR_REDIRECT_URI&
scope=website.orders,website.products,website.inventory&
state=RANDOM_STATE&
access_type=offlineToken Exchange:
curl -X POST https://login.squarespace.com/api/1/login/oauth/provider/tokens \
-H "Authorization: Basic BASE64(client_id:client_secret)" \
-H "Content-Type: application/json" \
-d '{
"grant_type": "authorization_code",
"code": "AUTHORIZATION_CODE",
"redirect_uri": "YOUR_REDIRECT_URI"
}'API Scopes
Request these scopes for full functionality:
website.orders- Read and manage orderswebsite.orders.read- Read-only order accesswebsite.products- Manage productswebsite.products.read- Read-only product accesswebsite.inventory- Manage inventorywebsite.inventory.read- Read-only inventory accesswebsite.transactions.read- Read transaction data
Usage Examples
List Recent Orders
{
"name": "squarespace_list_orders",
"arguments": {
"modifiedAfter": "2024-01-01T00:00:00Z",
"fulfillmentStatus": "PENDING"
}
}Create a Product
{
"name": "squarespace_create_product",
"arguments": {
"product": {
"type": "PHYSICAL",
"storePageId": "store_page_id",
"name": "New Product",
"description": "Product description",
"variants": [{
"sku": "SKU-001",
"pricing": {
"basePrice": {
"value": "29.99",
"currency": "USD"
}
},
"stock": {
"quantity": 100,
"unlimited": false
}
}]
}
}
}Fulfill an Order
{
"name": "squarespace_fulfill_order",
"arguments": {
"orderId": "order_id_here",
"shouldSendNotification": true,
"shipments": [{
"carrierName": "USPS",
"trackingNumber": "1234567890",
"trackingUrl": "https://tools.usps.com/go/TrackConfirmAction?tLabels=1234567890"
}]
}
}Get Revenue Analytics
{
"name": "squarespace_get_revenue_metrics",
"arguments": {
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2024-01-31T23:59:59Z"
}
}Check Low Stock Items
{
"name": "squarespace_check_low_stock",
"arguments": {
"threshold": 10
}
}Architecture
squarespace/
├── src/
│ ├── clients/
│ │ └── squarespace.ts # API client with auth & retry logic
│ ├── types/
│ │ └── index.ts # Complete TypeScript types
│ ├── tools/
│ │ ├── commerce-orders.ts # Order management tools
│ │ ├── commerce-products.ts # Product management tools
│ │ ├── commerce-inventory.ts# Inventory management tools
│ │ ├── commerce-transactions.ts # Transaction tools
│ │ ├── profiles.ts # Customer/subscriber tools
│ │ ├── webhooks.ts # Webhook management tools
│ │ ├── pages.ts # Page management tools
│ │ ├── forms.ts # Form submission tools
│ │ ├── blog.ts # Blog management tools
│ │ └── analytics.ts # Analytics tools
│ ├── ui/
│ │ └── react-app/ # 15 React MCP apps
│ ├── server.ts # MCP server implementation
│ └── main.ts # Entry point
├── package.json
├── tsconfig.json
└── README.mdAPI Reference
Full documentation: Squarespace Developer Docs
Rate Limits
Squarespace enforces varying rate limits per endpoint with 1-minute cooldowns. The client automatically handles rate limiting with retry logic.
Webhooks
Subscribe to real-time events:
order.create- New order createdorder.update- Order updatedtransaction.create- New transactiontransaction.update- Transaction updatedinventory.update- Inventory changedproduct.create- Product createdproduct.update- Product updatedproduct.delete- Product deleted
Development
Build
npm run buildType Check
npm run type-checkDevelopment Mode
npm run devTroubleshooting
Authentication Errors
401 Unauthorized: Token expired or invalid - refresh your token
403 Forbidden: Insufficient scopes - request additional permissions
Token refresh fails: Verify client credentials are correct
Rate Limiting
429 Too Many Requests: Built-in retry handles this automatically
Implement delays between bulk operations for best performance
Common Issues
Missing environment variables: Ensure
SQUARESPACE_ACCESS_TOKENis setTypeScript errors: Run
npm run type-checkto diagnoseModule resolution: Verify
package.jsonhas"type": "module"
Contributing
Contributions welcome! Please:
Follow existing code structure
Add tests for new tools
Update documentation
Run type checking before submitting
License
MIT License - see LICENSE file for details
Support
Changelog
v1.0.0 (2024-02-12)
Initial release
67 tools covering all major Squarespace features
15 React MCP apps with dark theme
OAuth2 authentication with auto-refresh
Comprehensive error handling and retry logic
Full TypeScript support
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/BJSwing/squarespace-mcp-2026-complete'
If you have feedback or need assistance with the MCP directory API, please join our Discord server