Square
ทางการเซิร์ฟเวอร์ Model Context Protocol (MCP) สำหรับ square
คุณทำอะไรได้บ้างด้วย Square MCP?
- Discover available API operations — สอบถามว่า Square service รองรับ method ใดบ้างโดยใช้
get_service_infoเช่น การแสดงรายการสินค้าในแค็ตตาล็อกหรือการค้นหาออเดอร์ - Inspect parameter requirements — ใช้
get_type_infoเพื่อดูว่า method API ใดต้องการฟิลด์ใดบ้างก่อนทำการร้องขอ - Execute Square API calls — ดำเนินการอ่านหรือเขียนข้อมูลใน Square services (การชำระเงิน ลูกค้า แค็ตตาล็อก ออเดอร์ ฯลฯ) ผ่าน
make_api_request - Limit access to read-only mode — ตั้งค่า
DISALLOW_WRITES=trueเพื่อป้องกันไม่ให้ผู้ช่วยทำการร้องขอ API ที่เปลี่ยนแปลงข้อมูลใดๆ
เอกสาร
Square Model Context Protocol Server (เบต้า)
โปรเจกต์นี้เป็นไปตามมาตรฐาน Model Context Protocol ซึ่งช่วยให้ผู้ช่วย AI สามารถโต้ตอบกับ Square connect API ได้
เริ่มต้นอย่างรวดเร็ว
เริ่มต้นใช้งาน Square MCP server ด้วย 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-server
แทนที่ YOUR_SQUARE_ACCESS_TOKEN ด้วยโทเค็นการเข้าถึง Square จริงของคุณ คุณสามารถขอรับโทเค็นการเข้าถึงได้โดยทำตามคำแนะนำที่ Square Access Tokens นอกจากนี้คุณยังสามารถตั้งค่าตัวแปรสภาพแวดล้อมก่อนรันคำสั่งได้อีกด้วย
Remote MCP Server
ขณะนี้ Square ให้บริการ remote MCP server แบบโฮสต์ที่:
https://mcp.squareup.com/sse
แนะนำให้ใช้ remote MCP เนื่องจากใช้การตรวจสอบสิทธิ์แบบ OAuth ซึ่งช่วยให้คุณเข้าสู่ระบบด้วยบัญชี Square ของคุณได้โดยตรง โดยไม่ต้องสร้างหรือจัดการโทเค็นการเข้าถึงด้วยตนเอง
ตัวเลือกการกำหนดค่า
| ตัวแปรสภาพแวดล้อม | วัตถุประสงค์ | ตัวอย่าง |
|---|---|---|
ACCESS_TOKEN | โทเค็นการเข้าถึง Square API ของคุณ | ACCESS_TOKEN=sq0atp-... |
SANDBOX | ใช้สภาพแวดล้อม Square sandbox | SANDBOX=true |
PRODUCTION | ใช้สภาพแวดล้อมการใช้งานจริงของ Square | PRODUCTION=true |
DISALLOW_WRITES | จำกัดเฉพาะการดำเนินการแบบอ่านอย่างเดียว | DISALLOW_WRITES=true |
SQUARE_VERSION | ระบุเวอร์ชันของ Square API | SQUARE_VERSION=2025-04-16 |
การผสานรวมกับผู้ช่วย AI
การผสานรวมกับ Goose
วิธีกำหนดค่า Square MCP Server กับ Goose:
Remote MCP
ในการติดตั้ง Square remote MCP ใน Goose ให้คลิก URL นี้บนคอมพิวเตอร์ที่ติดตั้ง Goose ไว้:
หรือคัดลอกและวาง URL ลงในแถบที่อยู่ของเบราว์เซอร์ของคุณ
# Automatic installation
npx square-mcp-server install
# Get URL for manual installation
npx square-mcp-server get-goose-url
คำสั่ง install จะอัปเดตการกำหนดค่า Goose ของคุณโดยอัตโนมัติ
การผสานรวมกับ Claude Desktop
สำหรับการผสานรวมกับ Claude Desktop โปรดดู Model Context Protocol Quickstart Guide เพิ่มการกำหนดค่านี้ลงใน claude_desktop_config.json ของคุณ:
Remote MCP
{
"mcpServers": {
"mcp_square_api": {
"command": "npx",
"args": ["mcp-remote", "https://mcp.squareup.com/sse"]
}
}
}
แนวทางนี้ช่วยให้คุณตรวจสอบสิทธิ์โดยตรงด้วยข้อมูลประจำตัวบัญชี Square ของคุณ โดยไม่ต้องจัดการโทเค็นการเข้าถึง
Local MCP
{
"mcpServers": {
"mcp_square_api": {
"command": "npx",
"args": ["square-mcp-server", "start"],
"env": {
"ACCESS_TOKEN": "YOUR_SQUARE_ACCESS_TOKEN",
"SANDBOX": "true"
}
}
}
}
การอ้างอิงเครื่องมือ
Square MCP Server มีชุดเครื่องมือที่คล่องตัวสำหรับการโต้ตอบกับ Square APIs:
| เครื่องมือ | คำอธิบาย | การใช้งานหลัก |
|---|---|---|
get_service_info | ค้นพบเมธอดที่พร้อมใช้งานสำหรับบริการ | การสำรวจและค้นพบ |
get_type_info | รับข้อกำหนดพารามิเตอร์โดยละเอียด | การเตรียมคำขอ |
make_api_request | ดำเนินการเรียก API ไปยัง Square | การดำเนินการ |
แค็ตตาล็อกบริการ
Square MCP Server ให้การเข้าถึง ระบบนิเวศ API ที่สมบูรณ์ของ Square ดู Square API Documentation สำหรับข้อมูลโดยละเอียดเกี่ยวกับแต่ละบริการ:
| บริการ | คำอธิบาย |
|---|---|
applepay | การผสานรวม Apple Pay |
bankaccounts | การจัดการบัญชีธนาคาร |
bookingcustomattributes | แอตทริบิวต์แบบกำหนดเองสำหรับการจอง |
bookings | การจัดการการนัดหมาย |
cards | การจัดการบัตรชำระเงิน |
cashdrawers | การจัดการลิ้นชักเงินสด |
catalog | การจัดการแค็ตตาล็อก (รายการ, หมวดหมู่ ฯลฯ) |
checkout | การชำระเงินและการดำเนินการชำระเงิน |
customercustomattributes | แอตทริบิวต์แบบกำหนดเองสำหรับลูกค้า |
customergroups | การจัดกลุ่มลูกค้า |
customersegments | การแบ่งกลุ่มลูกค้า |
customers | การจัดการลูกค้า |
devices | การจัดการอุปกรณ์ Square |
disputes | การจัดการข้อพิพาทการชำระเงิน |
events | การติดตามเหตุการณ์ |
giftcardactivities | การติดตามกิจกรรมบัตรของขวัญ |
giftcards | การจัดการบัตรของขวัญ |
inventory | การติดตามสินค้าคงคลัง |
invoices | การจัดการใบแจ้งหนี้ |
labor | การจัดการกำลังคน |
locationcustomattributes | แอตทริบิวต์แบบกำหนดเองสำหรับสถานที่ |
locations | การจัดการสถานที่ |
loyalty | การจัดการโปรแกรมสะสมคะแนน |
merchantcustomattributes | แอตทริบิวต์แบบกำหนดเองสำหรับผู้ค้า |
merchants | การจัดการบัญชีผู้ค้า |
oauth | การตรวจสอบสิทธิ์ |
ordercustomattributes | แอตทริบิวต์แบบกำหนดเองสำหรับคำสั่งซื้อ |
orders | การจัดการคำสั่งซื้อ |
payments | การดำเนินการชำระเงิน |
payouts | การจัดการการจ่ายเงิน |
refunds | การจัดการการคืนเงิน |
sites | การผสานรวมเว็บไซต์ |
snippets | การผสานรวม Square Online Code |
subscriptions | การจัดการการสมัครสมาชิก |
team | การจัดการพนักงาน |
terminal | การจัดการ Square Terminal |
vendors | การจัดการซัพพลายเออร์ |
webhooksubscriptions | การแจ้งเตือนเหตุการณ์ |
รูปแบบการใช้งาน
เพื่อการโต้ตอบกับ Square API ผ่าน MCP อย่างเหมาะสมที่สุด:
-
ค้นพบ: ใช้
get_service_infoเพื่อสำรวจเมธอดที่พร้อมใช้งานget_service_info(service: "catalog") -
ทำความเข้าใจ: ใช้
get_type_infoเพื่อเรียนรู้ข้อกำหนดพารามิเตอร์get_type_info(service: "catalog", method: "list") -
ดำเนินการ: ใช้
make_api_requestเพื่อดำเนินการmake_api_request(service: "catalog", method: "list", request: {})
การพัฒนาและการดีบัก
การใช้ MCP Inspector
MCP Inspector มีอินเทอร์เฟซแบบภาพสำหรับการทดสอบ:
# Build the project
npm run build
# Start the inspector with the Square MCP Server
npx @modelcontextprotocol/inspector node dist/index.js start
ขั้นตอนการพัฒนา
- โคลนที่เก็บ
- ติดตั้งการพึ่งพา:
npm install - เริ่มโหมดการพัฒนา:
npm run watch - รันเซิร์ฟเวอร์:
node dist/index.js start - ทดสอบการเปลี่ยนแปลงของคุณโดยใช้ MCP Inspector
การมีส่วนร่วม
ที่เก็บนี้สร้างขึ้นโดยอัตโนมัติจากข้อกำหนด OpenAPI ของ Square แม้ว่ายินดีรับการมีส่วนร่วม แต่โปรดทราบว่าการเปลี่ยนแปลงจะต้องถูกรวมเข้ากับตัวสร้างที่ผลิตโค้ดนี้ โปรดเปิด issue เพื่อหารือเกี่ยวกับการเปลี่ยนแปลงที่เสนอก่อนส่ง pull request