SIBS Payment MCP
Allows processing Mastercard payments through the SIBS payment gateway, including creating checkouts, capturing payments, and issuing refunds.
Allows processing payments via PayPal through the SIBS payment gateway, including creating checkouts, capturing payments, and issuing refunds.
Allows processing Visa card payments through the SIBS payment gateway, including creating checkouts, capturing payments, and issuing refunds.
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., "@SIBS Payment MCPCreate a €29.99 checkout with card payment"
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.
SIBS Payment MCP
A Model Context Protocol (MCP) server that exposes the SIBS payment gateway as tools for AI agents — enabling LLMs to create checkouts, verify payments, issue refunds, and generate Multibanco references natively in any MCP-compatible environment.
What It Does
Bridges the SIBS payment gateway to the MCP ecosystem. Any AI agent or LLM-powered tool running in an MCP-compatible host (Claude Desktop, n8n, custom agents) can:
Check payment status in real time
Create checkout sessions with configurable payment methods
Capture, refund, or cancel authorised payments
Generate Multibanco references for ATM/homebanking payment
Initiate MB WAY push notifications to a customer's phone
Related MCP server: Magpie MCP Server
Architecture
flowchart LR
A[AI Agent\nClaude / n8n] -->|MCP tool call| B[sibs-payment-mcp\nMCP Server]
B -->|REST API| C[SIBS Gateway\nAPI]
C -->|response| B
B -->|structured result| A
subgraph Tools
T1[sibs_create_checkout]
T2[sibs_payment_status]
T3[sibs_capture_payment]
T4[sibs_refund_payment]
T5[sibs_cancel_payment]
T6[sibs_generate_mb_reference]
T7[sibs_mbway_payment]
T8[sibs_test]
endTools (8 total)
Tool | Description |
| Create a new checkout. Returns |
| Get payment state, amount, method, and timestamps by transaction ID |
| Capture an authorised payment — full or partial |
| Refund a captured payment — full or partial |
| Cancel an authorised payment before capture |
| Generate a Multibanco entity/reference for ATM payment |
| Send MB WAY push to customer phone ( |
| Validate credentials and connectivity |
Stack
Component | Tool |
Protocol | |
Language | TypeScript 5 + Node.js |
Schema validation | |
Payment gateway | SIBS API (Portugal) |
Build |
|
Setup
Prerequisites
Node.js 18+
SIBS merchant account with API credentials
MCP-compatible host (Claude Desktop, n8n, custom agent)
1. Install
git clone https://github.com/RobsonAdvincula/sibs-payment-mcp.git
cd sibs-payment-mcp
npm install
npm run build2. Configure environment
SIBS_BASE_URL=https://stargate.sibs.pt/m001/v1
SIBS_BEARER_TOKEN=your_bearer_token
SIBS_CLIENT_ID=your_client_id
SIBS_TERMINAL_ID=your_terminal_id3. Add to MCP host
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"sibs-payment": {
"command": "node",
"args": ["/path/to/sibs-payment-mcp/dist/index.js"],
"env": {
"SIBS_BEARER_TOKEN": "...",
"SIBS_CLIENT_ID": "...",
"SIBS_TERMINAL_ID": "..."
}
}
}
}n8n MCP Client node: point to the compiled dist/index.js with the same env vars.
Example Interactions
Create a payment and send MB WAY:
Agent: "Create a €29.99 checkout for customer +351912345678"
→ sibs_create_checkout({ amount: 2999, currency: "EUR", paymentMethods: ["MBWAY"] })
→ sibs_mbway_payment({ transactionId: "txn_xxx", amount: 2999, customerPhone: "351#912345678" })
Result: "MB WAY notification sent. Customer has 4 minutes to confirm."Verify and refund:
Agent: "Check transaction txn_abc and refund if paid"
→ sibs_payment_status({ transactionId: "txn_abc" })
← { status: "Success", amount: 4999 }
→ sibs_refund_payment({ transactionId: "txn_abc" })
← { refunded: true }Payment Methods Supported
CARD— Visa / MastercardMBWAY— MB WAY mobile paymentREFERENCE— Multibanco ATM referenceCOFIDIS— InstalmentsPAYPAL— PayPal
License
MIT — free to use, adapt, and build on.
Built by Robson Advincula — AI & Automation Consultant
Available Tools
8 toolssibs_cancel_paymentA
Cancel a SIBS payment authorization. Only works for payments not yet captured.
| Name | Required | Description | Default |
|---|---|---|---|
| transactionId | Yes | SIBS transaction ID to cancel |
TDQS
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 clearly indicates a cancellation (mutation) and a key precondition. However, it does not disclose whether cancellation is reversible, idempotent, requires specific permissions, or what happens if called on a captured payment. Minimal but not misleading.
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, with the core purpose front-loaded and the key constraint immediately following. No wasted words; every part adds essential information.
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 one-parameter tool with no output schema, the description covers the main purpose and a critical usage constraint. It does not describe return values or error behavior, but the operation is straightforward and the key limitation is stated. Adequate for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the 'transactionId' parameter is already well-documented in the schema. The tool description adds no additional parameter meaning beyond what the schema provides. Baseline 3 applies.
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 'Cancel' and the resource 'SIBS payment authorization'. It also includes a scoping condition ('Only works for payments not yet captured') that helps differentiate it from post-capture operations like capture or refund. However, it does not explicitly name sibling tools, so differentiation is implied rather than direct.
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 clear context for when the tool is applicable: payments not yet captured. This implies it is not meant for captured payments, but it does not explicitly mention alternatives or when-not-to-use cases. It gives the essential precondition without routing to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sibs_capture_paymentA
Capture a previously authorized SIBS payment. Omit amount for full capture, or specify partial amount in minor units.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | No | Amount to capture in minor units (omit for full capture) | |
| currency | No | Currency code (default: EUR) | EUR |
| transactionId | Yes | SIBS transaction ID to capture |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavior. It explains that the tool captures an authorized payment and supports full or partial amounts, but it does not mention side effects such as settlement, irreversibility, capture windows, or idempotency.
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 with no filler. The core action is front-loaded and the optionality of the amount is stated directly. 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?
The description is adequate for a simple three-parameter capture operation, but with no output schema and no annotations, it omits useful context such as expected response format, amount constraints relative to the authorized amount, and any time limits on capture. This is a moderate gap rather than a fatal one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is already documented. The description mostly repeats the schema's 'omit for full capture' semantics and minor-units detail, offering little additional parameter-level meaning beyond the structured 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 uses a specific verb and resource: capture a previously authorized SIBS payment. This clearly distinguishes it from sibling tools like sibs_refund_payment and sibs_cancel_payment, which operate at different stages of the payment lifecycle.
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?
It provides clear operational guidance on when to use full capture versus partial capture by omitting or specifying the amount. It does not explicitly name alternatives or exclusion conditions, but the 'previously authorized' phrasing situates usage after authorization.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sibs_create_checkoutB
Create a new SIBS checkout/payment. Amount in minor units (1000 = 10.00 EUR). Returns transactionID and checkout URL.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Payment amount in minor units (e.g., 1000 = 10.00 EUR) | |
| currency | No | Currency code (default: EUR) | EUR |
| customerEmail | No | Customer email address | |
| customerPhone | No | Customer phone number | |
| paymentMethods | No | Allowed payment methods (e.g., ['CARD', 'MBWAY', 'REFERENCE']). Defaults to all. | |
| merchantTransactionId | No | Your own transaction reference/ID for reconciliation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden; it does disclose the key happy-path outcome ('Returns transactionID and checkout URL'). It does not describe flow behaviors such as whether the payment is authorized immediately, whether customer redirect is required, or failure/idempotency behavior, leaving a meaningful gap for a payment 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?
The description is two short sentences with the primary action front-loaded and no filler. The minor-units note and return values are each useful for calling the tool correctly despite the schema already documenting amount units.
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 financial creation tool with no annotations and no output schema, the description is too sparse: it gives only the happy-path return and omits the checkout flow's place in the payment lifecycle, how it relates to the MBWay sibling, and any failure or redirect behavior. An agent would rely heavily on inferred context to select and invoke this tool correctly.
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 covers 100% of parameters with descriptions, so the description does not need to add much. It restates the minor-units rule for amount but adds no semantics about currency, customer fields, or paymentMethods beyond what the schema already provides; this meets the baseline.
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 immediately states an action and object: 'Create a new SIBS checkout/payment.' It also names concrete outputs ('transactionID and checkout URL'), which makes the operation recognizable. It does not, however, explicitly distinguish this from the sibling sibs_mbway_payment or sibs_generate_mb_reference, so it is not fully differentiating.
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?
There is no 'use when' language, exclusion of alternatives, or reference to sibling tools. The only usage signal is the implied 'when you need to create a checkout,' and the description does not say when to use this instead of sibs_mbway_payment or how it fits with capture/refund/status tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sibs_generate_mb_referenceA
Generate a Multibanco (MB) payment reference. Returns entity, reference number, and amount for ATM/homebanking payment.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount in minor units (e.g., 1000 = 10.00 EUR) | |
| currency | No | Currency code (default: EUR) | EUR |
| expiryDate | No | Reference expiry date in ISO 8601 (e.g., '2026-03-01T23:59:59Z') | |
| transactionId | Yes | SIBS transaction ID for Multibanco reference generation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Because no annotations are provided, the description carries the burden of behavioral disclosure. It discloses the return payload (entity, reference number, amount) and that it is for ATM/homebanking payment, but it does not mention side effects (e.g., whether a charge is created, expiry behavior, idempotency, or whether the reference becomes immediately payable). This is acceptable but not rich.
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 one sentence and front-loads the main purpose. It also lists the key return fields, which is useful. It is concise and efficient, though it could add a sentence about behavioral context without becoming bloated.
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 there is no output schema, the description's mention of the return fields (entity, reference number, amount) is helpful. However, for a payment tool, an agent might need to know whether the amount and currency are mandatory together, what happens on expiry, and whether this invokes an actual payment reference that can be used immediately. The description is adequate for basic invocation but misses some payment-specific context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is documented in the schema. The description itself does not add further parameter-level meaning beyond naming the output amount. It does not clarify that 'amount' is in minor units, but the schema already states that. Baseline 3 is appropriate because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Generate a Multibanco (MB) payment reference') and identifies the resource (payment reference) and output (entity, reference number, amount). It clearly distinguishes this from sibling tools like sibs_mbway_payment or sibs_payment_status because it names the specific Multibanco reference generation function.
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 implies the use case (generating a Multibanco reference for ATM/homebanking payment) and the return includes entity, reference number, and amount. However, it does not explicitly state when to use this vs alternatives (e.g., when an MBWay payment or checkout would be preferred), nor does it mention conditions like required prior setup or relationship to transactionId.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sibs_mbway_paymentA
Initiate MB WAY payment. Sends notification to customer's MB WAY app. Phone format: '351#912345678'.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount in minor units (e.g., 1000 = 10.00 EUR) | |
| currency | No | Currency code (default: EUR) | EUR |
| customerPhone | Yes | Customer phone with country code (e.g., '351#912345678') | |
| transactionId | Yes | SIBS transaction ID for the MB WAY payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It discloses the customer-facing side effect of sending a notification to the MB WAY app, which is useful. It does not mention expected outcomes, failure modes, authorization state, or whether the payment remains pending, but the core initiation behavior is still visible.
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 short, purposeful sentences. It states the action first, then the key behavioral side effect and the phone format. There is no filler or redundant background.
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?
The schema is rich enough to cover all parameter meanings, and the description conveys the core action and notification behavior. However, with no output schema and no annotations, the description omits any sense of the payment lifecycle, prerequisites like where transactionId comes from, or what the caller should expect in return.
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 already provides 100% parameter coverage, so the baseline is 3. The description adds the phone format example, but that same example already appears in the customerPhone property description, so the description provides no meaningful extra parameter semantics.
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 a specific action — 'Initiate MB WAY payment' — and adds a distinguishing behavioral detail: it sends a notification to the customer's MB WAY app. This separates it from siblings like sibs_payment_status, sibs_capture_payment, or sibs_refund_payment even without explicitly naming them.
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 implies the tool is used when initiating an MB WAY payment and when a customer needs to receive a notification for approval. However, it gives no explicit guidance about when not to use it or how it differs from sibs_create_checkout or sibs_capture_payment.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sibs_payment_statusA
Get the status of a SIBS payment by transaction ID. Returns payment state, amount, method, and timestamps.
| Name | Required | Description | Default |
|---|---|---|---|
| transactionId | Yes | SIBS transaction ID (returned when payment was created) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It usefully states that the tool returns payment state, amount, method, and timestamps, and the verb 'Get' implies no side effects. It does not cover behavior for invalid or missing transaction IDs, possible state values, or any authentication/error expectations.
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 tight, front-loaded sentences: the first states the action and required input, the second states the output fields. There is no filler, repetition of the tool name, or unnecessary detail.
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 single-parameter status lookup, the description is nearly complete: it identifies the required input and enumerates the returned fields, which matters because there is no output schema. It could add possible payment states or error scenarios, but those are not necessary for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the single parameter is already described clearly as the SIBS transaction ID returned when the payment was created. The tool description's 'by transaction ID' matches the schema but adds no additional semantic detail beyond what the schema already provides.
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 uses a specific verb ('Get') and a specific resource ('status of a SIBS payment'), making it clear this is a read-only status lookup. It stands apart from the sibling tools, which perform payment creation, capture, refund, cancel, or reference generation, so an agent can select it without 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 phrase 'by transaction ID' implies the tool should be used after a payment has been created and the ID retrieved. The schema additionally notes that the transaction ID was returned at creation, reinforcing this context. However, the description does not explicitly state when to prefer this tool over alternatives or mention exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sibs_refund_paymentA
Refund a SIBS payment. Omit amount for full refund, or specify partial amount in minor units.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | No | Amount to refund in minor units (omit for full refund) | |
| currency | No | Currency code (default: EUR) | EUR |
| transactionId | Yes | SIBS transaction ID to refund |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does mention the full-vs-partial refund behavior, but it does not disclose that this is a financial mutation with likely irreversible consequences, nor does it address duplicate refunds, idempotency, permissions, or outcome reporting.
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 a single sentence that is front-loaded with the core action and immediately provides the key usage distinction. There is no redundant or filler content.
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 refund call, the required parameter and the amount omission rule are covered. However, with no output schema and no annotations, an agent cannot anticipate response structure, error conditions, or side effects, leaving the description adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents transactionId, amount, and currency. The description adds little beyond restating the amount behavior already present in the schema, so it meets but does not exceed the baseline.
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 ('Refund') and the resource ('a SIBS payment'), making it easy to distinguish from siblings like sibs_capture_payment or sibs_cancel_payment. The verb and object are specific and 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 gives clear invocation guidance: omit amount for a full refund, or provide a partial amount in minor units. However, it does not explicitly explain when refund should be chosen over alternatives or mention any preconditions, though the refund context is implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sibs_testA
Test SIBS API authentication. Verifies Bearer token and credentials are valid.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It accurately discloses that the tool verifies token/credentials validity, implying a read-only, non-mutating operation. It does not describe failure behavior or return format, but for a simple auth test this is a minor gap.
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, front-loaded with the key purpose. Every word adds value and there is no redundant or filler content.
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?
The tool is low-complexity with no inputs, so the description covers the essential call context. The only slight gap is not explicitly describing the return value or failure signaling, but 'verifies' strongly implies a boolean or success/failure result, making the definition adequately complete.
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 tool has zero parameters, so the description does not need to explain parameter meaning. The baseline for 0 params is 4, and there is no missing parameter information to penalize.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (test) and a specific resource (SIBS API authentication), with the explicit outcome of verifying Bearer token and credentials. This clearly distinguishes it from the sibling payment-operation tools.
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?
Usage is implied rather than explicitly stated. The description indicates the tool is for testing authentication, but it does not mention when to prefer it over alternatives or any prerequisites. Since no sibling tool performs auth testing, the context is still fairly clear, but explicit guidance is missing.
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.
8 tool updates
v1.0.0- First observed
sibs_cancel_payment - First observed
sibs_capture_payment - First observed
sibs_create_checkout - First observed
sibs_generate_mb_reference - First observed
sibs_mbway_payment - First observed
sibs_payment_status - First observed
sibs_refund_payment - First observed
sibs_test
TDQS
Scored across 8 tools
Each tool targets a distinct operation: authentication testing, initiating MB WAY, creating a checkout, generating Multibanco references, querying status, and lifecycle actions (capture, refund, cancel). There is no meaningful overlap or ambiguity between tool purposes.
Most tools follow the sibs_verb_noun pattern (create_checkout, capture_payment, refund_payment, cancel_payment, generate_mb_reference). Minor deviations exist: sibs_mbway_payment and sibs_payment_status omit an explicit verb, and sibs_test uses a bare verb, but the shared sibs_ prefix keeps the family recognizable.
Eight tools is well-scoped for a payment MCP server covering authentication, multiple payment methods, status lookup, and payment lifecycle operations. Each tool serves a necessary and distinct role without unnecessary bloat or duplication.
The tool surface covers the core payment workflow end-to-end: create payments via MB WAY, checkout, and Multibanco reference, check status, capture, refund, and cancel. Authentication testing is also included, making the set self-sufficient for typical SIBS integration scenarios.
Maintenance
Related MCP Connectors
Portugal payments for AI agents — Multibanco via Stripe. Never holds funds.
Stripe payments for AI agents. Create links, verify, manage customers.
Let AI agents add Yolfi crypto checkout, paylinks, webhooks, and status checks.
Brazil payments for AI agents — Pix, cards, boleto via Mercado Pago. Never holds funds.
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceEnables AI agents to interact with multiple payment providers (Stripe, Paystack) through a unified API. Supports payment initialization, verification, refunds, customer management, and invoicing without requiring knowledge of specific provider implementations.2-
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to access Magpie Payment Platform APIs for processing payments, creating checkout sessions, sending invoices, and managing payment links through natural conversation.23 npm2MIT
- AlicenseNot gradedqualityBmaintenanceLets AI agents accept US payments (cards, Apple Pay, Google Pay) via Stripe hosted checkout. Includes tools to create payment links and query payment status.MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to accept payments in Poland via Stripe, providing tools to create hosted-checkout links and query payment status.MIT