squadco-mcp
Provides documentation for integrating WooCommerce with SquadCo's payment platform, including setup and configuration guides.
Click on "Deploy 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., "@squadco-mcpshow me how to create a virtual account"
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.
SquadCo API Docs MCP Server
Disclaimer: This is a community-driven project and is not affiliated with or endorsed by SquadCo. It is built by developers, for developers, using the official public SquadCo documentation.
The SquadCo MCP Server provides your AI coding assistant (Claude, Cursor, Windsurf, etc.) with direct, structured access to the full SquadCo API documentation.
Stop switching between your editor and the browser. Get precise API specs, validation logic, and code samples for SquadCo integrations directly in your chat.
Key Features
Direct Knowledge: Instant access to documentation for Payments, Transfers, Virtual Accounts, VAS, and Webhooks.
Accurate Specs: Returns the exact technical markdown sections—no fuzzy hallucinations.
Developer Ready: Full details on Sandbox environments, test cards, and security validation.
No Clone Needed: Run directly using
uvxorpipx.
Related MCP server: Payman AI Documentation MCP Server
Capabilities
The MCP server covers the entire SquadCo ecosystem:
1. Payments and Collections
Checkout Options: Integration guides for the Squad Payment Modal (Inline), Redirect flows, and mobile-ready implementations.
Direct API: Technical specs for server-to-server payment initiation and transaction verification.
Alternative Methods: Documentation for POS Payment, Direct Debit, and E-commerce plugins (WooCommerce).
Testing: A comprehensive list of test card numbers, expiry dates, and CVVs for sandbox testing.
2. Transfers and Payouts
Fund Transfers: How to move funds from your Squad Wallet to any bank account in Nigeria.
Account Lookup: recipient name verification logic to ensure transaction accuracy.
Wallet Management: Checking ledger balances and transaction history.
Bank Codes: A complete, searchable list of all supported bank and microfinance codes.
3. Virtual Accounts
Account Generation: Creating dedicated virtual accounts for customers to receive automated bank transfers.
Dynamic V2: Advanced specifications for high-frequency, dynamic account creation and management.
Metadata: Attaching custom data to accounts for easier reconciliation.
4. Value Added Services (VAS)
Airtime and Data: API specs for selling mobile airtime and data bundles.
Bills Payment: Integration for electricity bills and other utility services.
SMS Services: Managing SMS buckets and automated messaging.
5. Operations and Security
Webhooks: Step-by-step setup for POST notifications, IP filtering, and signature verification.
Security: Technical guides for HMAC-SHA512 validation and AES-256 encryption/decryption.
Management: Detailed flows for Refunds, Disputes, and Chargebacks.
6. Sandbox and Testing
Environment Setup: Detailed information on using the
sandbox-api.squadco.comendpoints.Test Assets: A full database of test card numbers, CVVs, and standard OTP codes for simulating successful and failed payments.
Transfer Simulation: Specific API flows for simulating incoming bank transfers to virtual accounts in a test environment.
Tools
Tool | Purpose |
| The main entry point. Search for any SquadCo feature (e.g., "AES encryption"). |
| Browse all available API documentation files. |
| View the structural map of a specific document to find precise sections. |
| Fetch the full technical content, URLs, and code samples for a section. |
Client Configuration Guide
1. Prerequisites
Before configuring your client, ensure you have the following installed on your host machine:
Python 3.10+: Required to run the server logic.
Package Manager: Either uv (recommended for speed) or pipx.
To install
uvon Windows:powershell -c "irm https://astral.sh/uv/install.ps1 | iex"To install
uvon macOS/Linux:curl -LsSf https://astral.sh/uv/install.sh | sh
2. Quick Setup (Recommended)
Add one of the following to your MCP settings in Claude, Cursor, or Windsurf.
Using uvx (Fastest):
{
"mcpServers": {
"squadco-docs": {
"command": "uvx",
"args": ["squadco-mcp"]
}
}
}Using pipx:
{
"mcpServers": {
"squadco-docs": {
"command": "pipx",
"args": ["run", "squadco-mcp"]
}
}
}3. Client-Specific Instructions
Claude Desktop
Open the configuration file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Add the
squadco-docsentry provided above.Restart Claude Desktop completely.
Cursor
Open Cursor Settings > Features > MCP Servers.
Click + Add New MCP Server.
Name:
squadco-docsType:
commandCommand:
uvx squadco-mcp(If not found, use the absolute path touvx).
Windsurf (by Codeium)
Add the configuration to your
mcpServersobject insettings.json.Windows Location:
%APPDATA%\Windsurf\User\settings.json
MCP Configuration Reference
Client | MCP Integration Method | squadco-mcp Configuration |
Claude Desktop | JSON-RPC over stdio | Add to |
Cursor | Native MCP UI | Use |
Windsurf | Cascade MCP | Add to |
VS Code | Workspace MCP | Add to |
Claude Code | CLI MCP Manager | Run |
Troubleshooting Tips
Command Not Found: If your client says
uvxorpipxis not found, it is likely because the installation directory is not in your system's PATH.Windows Fix: Restart your PC or use the absolute path to the executable (e.g.,
C:\Users\YourName\.local\bin\uvx.exe).
Restart Required: Most desktop clients (Claude, Cursor) require a full restart (not just closing the window) to pick up changes made to JSON configuration files or the system PATH.
Python Version: Ensure you are using Python 3.10 or higher. You can check this by running
python --versionin your terminal.Connection Errors: If the server fails to connect, check the developer console in your client (usually Ctrl+Shift+I) for specific JSON-RPC errors.
Technical Details
The SquadCo MCP Server uses CiteKit (by @abdushakurob) to provide high-fidelity documentation access to AI agents.
Unlike standard RAG (Retrieval-Augmented Generation) which uses vector-based similarity, this server employs a structural mapping approach:
Pre-computed Mapping: Documentation is analyzed during ingestion to create a structural index of all API endpoints, parameters, and code blocks.
Deterministic Resolution: The AI assistant identifies the specific node it needs from the map and resolves the content locally from the bundled markdown files.
Precision Context: By resolving exact sections rather than chunked text, the server ensures the AI receives clean, relevant context without noise.
Stack:
Core Engine: CiteKit
Scraper: crawl4ai
Protocol: Model Context Protocol (MCP)
Available Tools
4 toolsget_doc_structureB
Get the structure/nodes of a specific document. Use this to see what sections are available before resolving.
| Name | Required | Description | Default |
|---|---|---|---|
| doc_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It implies a read operation but does not explicitly state it is read-only, non-destructive, or discuss error conditions, permissions, or side effects.
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 two concise sentences, front-loaded with the action and purpose. Every sentence earns its place with no waste.
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?
Given the presence of an output schema, the description need not detail return values. However, it lacks parameter guidance and behavioral details, making it minimally adequate for a simple tool.
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?
The input schema has 0% description coverage, and the description does not explain the 'doc_id' parameter (e.g., format, source, or how to obtain it). It adds no meaning beyond the schema.
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 the action ('Get the structure/nodes') and the specific resource ('a specific document'). It distinguishes from siblings by mentioning 'before resolving', which differentiates from 'resolve_section' and others.
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 provides clear context: 'Use this to see what sections are available before resolving.' It implies temporal usage but does not explicitly exclude other contexts or mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_docsA
List all available SquadCo API documentation files.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only says 'list all available...'. It does not disclose side effects, authentication needs, rate limits, or behavior like whether listing respects workspace boundaries. 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?
A single sentence that is direct and front-loaded with the core action. No extraneous words or structure issues.
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 list tool with no parameters and an existing output schema, the description is adequate but not thorough. It does not mention authentication, output format preview, or any usage context like whether it requires a connection.
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?
The input schema has zero parameters, so schema coverage is 100%. The description could still mention that no arguments are needed, but the absence is not a significant gap.
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 the verb 'list' and the resource 'all available SquadCo API documentation files', distinguishing it from sibling tools like get_doc_structure or search_docs, which imply specific retrieval or search operations.
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 provides no guidance on when to use this tool over alternatives or any exclusions. It simply states what it does, leaving the agent to infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_sectionA
Fetch the full content of a specific documentation section. Provide the doc_id (e.g. 'payments') and the section_id (e.g. 'standard-test-cards').
| Name | Required | Description | Default |
|---|---|---|---|
| doc_id | Yes | ||
| section_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states 'Fetch the full content', indicating a read operation, but lacks details on authentication, rate limits, or error handling. Since an output schema exists, return values may be defined there, but additional behavioral context is missing.
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 two sentences with no extraneous information. It is front-loaded with the purpose and immediately provides parameter guidance. Every sentence earns its place.
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 two-parameter tool with an output schema, the description is minimally adequate. It explains what the tool does and how to use the parameters, but it could be more complete by addressing potential issues like section not found or required permissions.
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?
The input schema has 0% description coverage, so the description must compensate. It provides concrete examples for doc_id ('payments') and section_id ('standard-test-cards'), adding meaning beyond names and types. However, it does not explain format constraints or possible values beyond examples.
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 'Fetch the full content of a specific documentation section', using a specific verb and resource. Sibling tools (get_doc_structure, list_docs, search_docs) have distinct purposes, making this tool's role unambiguous.
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 tells the user to provide doc_id and section_id with examples, implying when to use this tool. However, it does not explicitly state when not to use it or mention alternatives like search_docs for finding sections.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_docsB
Search for documentation sections by title or summary. Use this when you aren't sure where a specific feature (e.g. "AES encryption") is documented.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It only mentions searching by title or summary, lacking details on pagination, access restrictions, or result format. This is minimal for a search tool.
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 concise sentences: first sentence states the action and resource, second adds usage context with an example. No redundant words, efficiently front-loaded.
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 search tool with one parameter, the description covers basic purpose and usage context. However, lack of behavioral details limits completeness for autonomous agent invocation.
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?
With 0% schema description coverage, the description must clarify the parameter. It implies the 'query' parameter searches title and summary fields, but does not specify format, length, or allowed values. Insufficient compensation for schema gaps.
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 the tool searches for documentation sections by title or summary, with an example ('AES encryption'). However, it does not explicitly differentiate from sibling tools like get_doc_structure or list_docs, leaving some ambiguity.
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 provides a use case: 'Use this when you aren't sure where a specific feature is documented.' This gives clear context for when to use, but does not explicitly state when not to use or mention alternatives.
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.
4 tool updates
v0.1.1- First observed
get_doc_structure - First observed
list_docs - First observed
resolve_section - First observed
search_docs
TDQS
Scored across 4 tools
Each tool has a distinct role: listing all docs, getting a doc's structure, fetching a section's content, and searching by title/summary. No overlap in purpose.
All tool names follow a consistent verb_noun pattern in snake_case (list_docs, get_doc_structure, resolve_section, search_docs), making them predictable and easy to understand.
With 4 tools, the surface is concise. It covers the essential documentation tasks (list, search, browse structure, fetch content) without being too sparse or overengineered.
The tool set covers navigation and retrieval of documentation. A minor gap is the lack of a tool to fetch an entire document in one call, but this can be worked around by iterating sections.
Related MCP Connectors
Discover, compare, and monitor 1,400+ APIs directly from your AI coding agent.
Form companies, manage bank accounts, cards, invoices and more — directly from your AI coding tools.
Provide your AI coding tools with token-efficient access to up-to-date technical documentation for…
@latest documentation and code examples to 9000+ libraries for LLMs and AI code editors in a singl…
Related MCP Servers
FlicenseBqualityNot gradedmaintenanceProvides AI assistants like Claude or Cursor with access to Payman AI's documentation, helping developers build integrations more efficiently.5-- FlicenseBqualityDmaintenanceProvides AI assistants with access to Payman's documentation, helping developers build integrations more efficiently through enhanced contextual support.5-
- AlicenseAqualityDmaintenanceAllows AI assistants to interact with Square's connect API, providing access to Square's complete API ecosystem for managing payments, orders, customers, inventory, and more.31,940 npmApache 2.0
- FlicenseAqualityDmaintenanceEnables AI assistants to access Ramp's developer documentation and API schemas through natural language queries. Provides contextual answers about API endpoints, authentication methods, data relationships, and implementation patterns for developers building on Ramp's platform.4-