Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Base MCP (39 tools) on Base: programs, mint, rewards. lsk_ key; plan limits enforced. /for-agents
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
x-api-key, AuthorizationValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Run this in your terminal
claude mcp add --transport http loyal-spark https://api.loyalspark.online/loyalty-mcp --header 'x-api-key: your-value' --header 'Authorization: your-value'Fill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"loyal-spark": {
"url": "https://api.loyalspark.online/loyalty-mcp",
"headers": {
"x-api-key": "your-value",
"Authorization": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"loyal-spark": {
"type": "http",
"url": "https://api.loyalspark.online/loyalty-mcp",
"headers": {
"x-api-key": "your-value",
"Authorization": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Your choice stays on this device in a cookie; no account needed.
x-api-key secret required HTTP headerAuthorization secret HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 8, 2026. The maker wrote them, not us; we show them as plain text.
get_platform_infoGet info about Loyal Spark protocol on Base L2
get_my_profileGet authenticated agent's profile
generate_program_defaultsWorkflow planner: field catalog, required parameters, next_actions, and non-binding examples. External agents must choose their own name, symbol, and economics.
get_program_workflow_statusExplain the next merchant action: current_step, required fields, and ordered next_actions (you provide all parameter values)
list_loyalty_programsList loyalty programs owned by the agent's merchant
create_loyalty_programGet factory calldata to deploy a new loyalty token on Base. Defaults to B20 (Base-native B20 asset standard, ERC-20 compatible, single tx, active immediately). Pass token_standard='erc20' for the legacy factory. For B20, MINT_ROLE is granted atomically to the merchant admin AND t
register_loyalty_programRegister a deployed token as a loyalty program in the database. B20 tokens are registered as active; legacy ERC-20 as inactive (activate next).
activate_loyalty_programFor legacy ERC-20 programs: returns unpauseUtility + enableMinting calldata. For B20 programs: no-op (already active).
update_program_statusUpdate program status in database after onchain activation/pause
update_program_configUpdate default cashback_rate and/or points_per_dollar for a program (same as merchant dashboard sliders)
list_rewardsList rewards for a loyalty program by token_address. Includes redemption metrics (total vouchers issued, redeemed, and last-30-day counts) for each reward.
create_rewardCreate a new reward redeemable with loyalty tokens
mint_loyalty_tokensRecord a mint intent and get a fee-first calls[] bundle: protocol fee mint first (in the merchant's own loyalty tokens, not USDC), then the recipient mint. Submit both in order (atomically via EIP-5792 if supported), then call confirm_mint_fee with obligation_id, fee_tx_hash, rec
transfer_loyalty_tokensBuild B20 token transfer calldata (ERC-20 compatible) to send loyalty tokens from your merchant wallet to any 0x address. Recipient: to (alias to_address).
earn_pointsMint cashback tokens for a purchase at the program's cashback rate, optionally redeeming points first (points_to_redeem or redeem_all) to lower the payable amount. Returns a fee-first calls[] bundle (protocol fee mint, then the customer mint): submit in order (atomically via EIP-
confirm_mint_feeConfirm a prepared mint on Base. Verifies the protocol-fee mint and, when recipient_tx_hash is set (or the fee receipt already contains the recipient mint), writes customer_tier_status so get_token_balance leaves 0. Same hash for both fields when EIP-5792 batched the calls. A sec
list_mintsList mint intents for this merchant. status=pending means transaction_hash is still null (confirm has not credited the recipient). status=completed means the recipient mint was recorded. GET /balance offchain_ledger_balance stays 0 until confirm.
list_fee_obligationsList protocol-fee obligations for this API key. status=unpaid is an alias for pending. Each unpaid row includes next_action describing POST /mint/confirm.
get_token_balanceGet loyalty token balance and tier info for a customer (accepts 0x Base wallet address or customer email in customer_address / customer_email)
get_program_analyticsGet analytics for one of your loyalty programs. total_customers is the same count export_customers and GET /customers report; a program you do not own returns program_not_found.
list_marketplace_offersList active token trading offers on the marketplace
redeem_rewardRedeem a reward by providing a verified token transfer transaction hash. Creates a voucher for the customer.
use_voucherMark a voucher as used at the merchant. Send one of voucher_code (alias code) or voucher_id (anyOf). If neither is sent the tool returns error_code missing_identifier and an example. A voucher used before returns error_code voucher_already_used (do not retry).
check_voucher_statusCheck voucher status for this merchant. Send one of code, voucher_code, or voucher_id (anyOf). If none is sent the tool returns error_code missing_identifier, an example, and next_action. Anonymous public lookup is GET /agent-api/vouchers/status.
create_personalized_offerCreate a personalized offer for a specific customer. Use when analytics reveal engagement patterns (e.g., inactive customers, high-value segments).
update_reward_statusActivate or deactivate a reward in the catalog. Use to manage reward availability based on analytics.
send_reportInternal. Send a report to the merchant's Agent Reports dashboard (SEO audits, growth ideas, anomalies, weekly summaries). Not a loyalty action.
list_my_reportsInternal. List reports this agent submitted (status new, reviewed, or done).
update_report_statusInternal. Set a report you submitted to reviewed or done.
delete_reportInternal. Delete a report you submitted.
export_customersExport customers of one of your loyalty programs: the same wallet set and total_customers as GET /customers and get_program_analytics (voucher holders, ledger rows, completed mints), each with voucher stats, on-chain current_balance plus offchain_ledger_balance, and tier. Email-o
list_store_discount_codesList discount codes for this merchant's Shopify store, plus how customers spend points (online code, register voucher, or both).
update_store_discount_codeMark a Shopify discount code used, or cancel it and return the loyalty points. Same actions as the merchant discount-code journal.
set_store_sales_channelSet how this store's customers spend loyalty points: online (checkout code), offline (voucher at the register), or both (the shopper chooses).
create_gift_certificateCreate a gift / welcome certificate (UDS-style) with a unique random redemption code (LOYAL-XXXX-XXXX-XXXX). Customer redeems via QR or by entering the code; merchant then mints tokens on-chain. Use for welcome bonuses, promo campaigns, partnership gifts.
list_gift_certificatesList gift certificates issued by the agent's merchant (with status and redemption info).
revoke_gift_certificateRevoke an active gift certificate (status active -> revoked). Only the issuing merchant can revoke. Already-redeemed/minted certificates cannot be revoked.
mark_gift_certificate_mintedAfter the merchant submits the on-chain mint transaction for a claimed gift certificate, call this to mark it as minted (status pending_mint -> redeemed) and store the mint tx hash.
bazaar_discover_resourcesDiscover third-party x402-paid resources published in Coinbase CDP's Bazaar (docs, data feeds, AI inference, etc). Read-only. Filter by free-text q and/or network (e.g. 'base').
bazaar_discover_mcp_serversSearch Coinbase CDP's Bazaar MCP catalog (search_resources) for third-party x402-payable tools. Read-only, free. Rows are run via the Bazaar MCP server's proxy_tool_call, not here.
bazaar_probe_x402Probe one x402 resource URL without paying: a single GET (https only, 5 s, 64 KB, no redirects). If it answers HTTP 402, returns a parsed summary of the x402 payment requirements (PAYMENT-REQUIRED header or accepts[]). Any other status returns error not_x402_resource with the sta
bazaar_pay_and_callPay a Loyal Spark x402 URL on api.loyalspark.online with the merchant agent's CDP MPC wallet (EIP-3009 exact scheme, Base USDC). Other hosts are refused before any signature. Requires scope 'mint' and an active CDP wallet. max_usdc default 0.25, hard limit 10.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The publisher (aspekt19) is not the repo owner (aspekt19); someone else may have listed it
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 569 ms (HTTP 200)
No sign-in needed
Read 42 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 2 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: x-api-key, Authorization
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (1.0.4) reached the registry 28 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, Readfirst
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
What to read and check before changing a file: project rules, risks, checks and tests per file.
No README found in the repo