Skip to content

MCP tools reference

Updated

Baca dalam Bahasa Melayu

The BCL MCP server at https://bcl.my/mcp gives AI agents 62 tools: 30 that read and 32 that write. Each tool does the same job as one BCL API endpoint, with the same checks. This page lists them all, with the permission each one needs and its rate limit.

To connect an agent, see Connect Claude or ChatGPT to BCL or Set up other AI apps. BCL shows the same list under Platform Setup → Connect AI Agent, on the Capabilities tab.

The Capabilities tab, with tool categories and the Transactions and Payments tools, their type and their rate limit

A token or OAuth connection needs at least one MCP permission. The agent only sees the tools its permissions allow:

Permission Token checkbox Gives access to
mcp:read MCP Read Every read tool below
mcp:write MCP Write Every write tool below. It does not include the read tools.
Full access (*) (older tokens only) All tools

A token with only API Read or API Write is refused with “Token needs at least one of: mcp:read, mcp:write”. A write tool called without mcp:write returns “Tool ‘…’ requires the ‘mcp:write’ ability”.

The agent sees the same data as the BCL user who created the token or approved the connection. An Admin sees the whole team’s data. A Team member sees only their own, unless Show data for all team members is on. See Team roles and permissions.

These tools cover payments and Direct Debit. list_transactions, get_transaction_stats and the customer tools count live payments only; Test Mode payments are left out.

Tool What it does Type Limit
list_transactions List transactions. Filters: dates, status, payment channel, amount, form type, search by order number, name, email or phone Read read
get_transaction_stats For a date range (default last 30 days): paid revenue and count, all transactions by status, paid ones by payment channel and form type Read read
get_transaction One transaction by order number, such as LINK-00123: items, payer, channel, status Read read
get_transaction_by_order The same lookup with more detail Read read
get_mandate One Direct Debit mandate by order number Read read
create_payment_link Create a payment link. Needs amount, payer name, email, phone and portal key Write sensitive
create_payment_mandate Create a Direct Debit mandate enrolment Write sensitive

Customer tools look up the people who paid you:

Tool What it does Type Limit
list_customers List customers, search by email or phone, sort by amount paid or number of transactions Read read
get_customer One customer with their recent transactions Read read

Most form tools change one setting at a time, so the agent can make one careful change:

Tool What it does Type Limit
list_forms List payment forms Read read
get_form One form in full: products, variations, coupon, webhook and affiliate settings Read read
list_showcase_forms Forms shown on your homepage Read read
duplicate_form Copy a form under a new title and slug. The copy is live straight away Write write
update_form_status Turn a form on or off Write write
update_form_title Rename a form Write write
update_form_slug Change the form’s web address Write write
update_form_content Change the form’s description Write write
update_form_prices Change product or variation prices, including quantity discount tiers Write write
update_form_stock Change product stock Write write
update_form_coupon Attach or detach a coupon Write write
update_form_affiliate Turn affiliates on or off for the form, show affiliate info, override the commission Write write
update_form_redirect_urls Set the pages to open after a successful or failed payment Write write
update_form_webhook Set the form’s webhook URL Write write
update_form_facebook_pixel Set the Facebook Pixel ID Write write
update_form_tiktok_pixel Set the TikTok Pixel ID Write write
update_form_homepage Show or hide the form on your homepage Write write

Event tools work on your event and ticketing forms:

Tool What it does Type Limit
list_event_forms List event forms Read read
get_event_form One event with its ticket tiers and settings Read read
update_event_form_status Publish an event or set it to draft Write write
update_event_form_slug Change the event’s web address Write write
update_event_form_venue_name Change the venue name Write write
update_event_form_content Change the event description Write write
update_event_form_tickets Change ticket tiers and stock Write write
update_event_form_ticket_prices Change ticket prices Write write
update_event_form_affiliate Affiliate settings for the event Write write
update_event_form_facebook_pixel Set the Facebook Pixel ID Write write
update_event_form_tiktok_pixel Set the TikTok Pixel ID Write write
update_event_form_homepage Show or hide the event on your homepage Write write

Coupon tools read and manage your discount codes:

Tool What it does Type Limit
list_coupons List coupons Read read
get_coupon One coupon with its settings and usage Read read
create_coupon Create a percentage or fixed coupon, with optional limits and dates Write sensitive
update_coupon Change a coupon’s settings Write write
update_coupon_status Turn a coupon on or off Write write

Protected content tools cover your gated videos, files, text and links:

Tool What it does Type Limit
list_protected_contents List protected content with customer counts Read read
get_protected_content One item with its access settings and view and download counts Read read
get_protected_content_customers Who has access, with their usage Read read
update_protected_content_status Turn content on or off Write write
update_protected_content_title Change the page title and access email subject Write write
update_protected_content_access Change access type, dates, duration, device and download limits Write write

More detail: Manage protected content by API and AI tools.

Automations are read only:

Tool What it does Type Limit
list_automations List automations with their triggers and run counts Read read
get_automation One automation with its conditions and steps Read read
get_automation_executions Run history: which runs succeeded or failed Read read
get_automation_stats Success and failure counts Read read

Nine read tools start with platform_: platform_revenue_overview, platform_revenue_concentration, platform_merchant_performance, platform_growth_and_churn, platform_form_performance, platform_conversion_funnel, platform_traffic_overview, platform_affiliate_overview and platform_monthly_trend. They report on the whole BCL platform. Your agent sees them in its tool list, but for a merchant account they only return “Platform analytics are available to super admins only.”

Some jobs are only done in the BCL dashboard. The tools cannot:

  • Delete anything.
  • Create a payment, event, booking or lead form from scratch, or upload files.
  • Read booking forms, lead forms, participants or affiliates.
  • Change payment settings, Bayarcash keys, gateway fees, company or team settings, or API tokens.
  • Send email, SMS or WhatsApp messages.

Every token or OAuth connection has its own limits, counted per minute:

Bucket Limit Used by
read 100 a minute Every read tool
write 10 a minute Every write tool except the three below
sensitive 3 a minute create_payment_link, create_payment_mandate, create_coupon
meta 60 a minute Connecting, listing tools and ping (initialize, tools/list, ping)

Over the limit, the call fails with “Rate limit exceeded for bucket ‘sensitive’. Retry in 42s.” (with the bucket and seconds that apply) and error code -32003. The response data gives bucket, limit_per_minute and retry_after_seconds, so a well-behaved agent waits and tries again.

The server speaks JSON-RPC 2.0 over HTTP POST. These are the errors an agent can get:

Code Meaning
-32001 No token, or the token is invalid or expired (HTTP 401)
-32002 The token lacks the permission for this tool (HTTP 403 when it has no MCP permission at all)
-32003 Rate limit reached
-32601 The method or tool name does not exist
-32602 tools/call without a tool name
-32700 The request body is not JSON

When a tool’s input is wrong, for example a missing order number, the tool itself answers with isError: true and a “Validation failed” message listing each field. For every argument of every tool, ask your agent “Show me the inputs for <tool name>”, or see the BCL API reference.

Every request made with a valid token, including refused and failed calls, is recorded in Tools → MCP Audit Log. Requests without a valid token are not. See Check what your AI agent did.

Common issues

My token has MCP Write, but the agent cannot read anything. Why?

MCP Write covers only the write tools. Tick MCP Read as well so the agent can look things up before it changes them.

The agent says "Rate limit exceeded". What now?

Each token or connection has a per-minute limit for each kind of tool. Wait for the seconds given in the message, or ask the agent to do fewer changes at once.

Why does the agent list platform_ tools I cannot use?

The nine platform_ tools report on the whole BCL platform and only work for BCL staff. For merchants they return "Platform analytics are available to super admins only." Ignore them.

Was this article helpful?

Cookie settings

We use Google Analytics to see which guides help and where readers get stuck. It is on by default; you can turn it off. Your choice is saved on this device.