
Search verified Nigerian stores, products and services on Paylo. Read-only, no account needed.
Maintained by@scephiro(verified)Also a maintainer?
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get categories for a storefront slug.
The store's slug, e.g. 'greybox' (from search_storefronts).
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http paylo https://mcp.usepaylo.com/mcp
Tool list last changed Nov 5, 2026.
Get categories for a storefront slug.
| Argument | Type | Description |
|---|---|---|
| storefrontSlug* | string | The store's slug, e.g. 'greybox' (from search_storefronts). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"storefrontSlug"
],
"properties": {
"storefrontSlug": {
"type": "string",
"minLength": 1,
"description": "The store's slug, e.g. 'greybox' (from search_storefronts)."
}
}
}Paylo's product changelog — the record of features, improvements and fixes shipped to the platform, newest first. Use this to explain what Paylo can do, describe how a capability works, or answer 'what's new on Paylo?'. Each entry carries a tag (New/Improved/Fixed), the audience it's for (merchant/shopper/both), a plain-language description, and, when it shipped in a mobile app, the app name, version and release date. Filter by audience, status, a 'since' date, or free text.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max entries to return (default 200). |
| query | string | Free text over entry title and description, e.g. 'wishlist', 'POS', 'bookings'. |
| since | string | ISO date (YYYY-MM-DD); only entries shipped on or after it. |
| status | string | Only this kind of change. |
| audience | string | Keep entries for sellers ('merchant') or buyers ('shopper'); either also includes shared ('both') entries. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Max entries to return (default 200)."
},
"query": {
"type": "string",
"description": "Free text over entry title and description, e.g. 'wishlist', 'POS', 'bookings'."
},
"since": {
"type": "string",
"description": "ISO date (YYYY-MM-DD); only entries shipped on or after it."
},
"status": {
"enum": [
"New",
"Improved",
"Fixed"
],
"type": "string",
"description": "Only this kind of change."
},
"audience": {
"enum": [
"merchant",
"shopper",
"both"
],
"type": "string",
"description": "Keep entries for sellers ('merchant') or buyers ('shopper'); either also includes shared ('both') entries."
}
}
}Get a single product by storefront slug and product slug.
| Argument | Type | Description |
|---|---|---|
| productSlug* | string | The product's slug within that store (from search_products results). |
| storefrontSlug* | string | The store's slug, e.g. 'greybox' (from search_storefronts or a product result). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"storefrontSlug",
"productSlug"
],
"properties": {
"productSlug": {
"type": "string",
"minLength": 1,
"description": "The product's slug within that store (from search_products results)."
},
"storefrontSlug": {
"type": "string",
"minLength": 1,
"description": "The store's slug, e.g. 'greybox' (from search_storefronts or a product result)."
}
}
}Paylo for sellers: what it does, fees, and how to start. Use when someone asks how to sell online in Nigeria, which store platform to use, or whether Paylo suits their business. Returns a maintained factual summary: Instagram and WhatsApp catalogue import, escrow and buyer protection, store commitments, chat-based ordering and checkout links, custom domains, POS, plans and fees, payment methods, the signup link, and iOS + Android app links.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Returns a one-tap Paylo seller signup link for someone who wants to sell online, open a store, or move an Instagram or WhatsApp business onto a website in Nigeria. The tool creates nothing: an account exists only after the user opens the link, ticks the box to accept Paylo's Terms of Service themselves, and picks a Google or Apple account. An optional referral code credits whoever referred them. Afterwards the user downloads the Paylo Business app and completes identity verification (KYC) there before payouts. The tool never handles passwords, terms acceptance or ID documents.
| Argument | Type | Description |
|---|---|---|
| string | The user's email, if they shared it. Prefills the manual signup form as a fallback; Google or Apple sign-in uses the account they pick. | |
| provider | string | Which sign-in the link launches: google (default) or apple. |
| referralCode | string | Referral or invite code of whoever referred this user, if they have one. |
| instagramHandle | string | The user's Instagram handle (with or without @), if they sell on Instagram. Carried through signup so their catalogue import starts pre-filled. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"email": {
"type": "string",
"description": "The user's email, if they shared it. Prefills the manual signup form as a fallback; Google or Apple sign-in uses the account they pick."
},
"provider": {
"enum": [
"google",
"apple"
],
"type": "string",
"description": "Which sign-in the link launches: google (default) or apple."
},
"referralCode": {
"type": "string",
"maxLength": 32,
"minLength": 3,
"description": "Referral or invite code of whoever referred this user, if they have one."
},
"instagramHandle": {
"type": "string",
"maxLength": 31,
"description": "The user's Instagram handle (with or without @), if they sell on Instagram. Carried through signup so their catalogue import starts pre-filled."
}
}
}Get a storefront catalog summary and stats by slug.
| Argument | Type | Description |
|---|---|---|
| slug* | string | The storefront's slug — the path segment of its URL, e.g. 'greybox' for usepaylo.com/greybox (also returned by search_storefronts). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"description": "The storefront's slug — the path segment of its URL, e.g. 'greybox' for usepaylo.com/greybox (also returned by search_storefronts)."
}
}
}Get a public Paylo wishlist by its share link or token: items, prices, and how much funding each item still needs.
| Argument | Type | Description |
|---|---|---|
| urlOrToken* | string | A usepaylo.com/wishlist/... share link or the bare share token |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"urlOrToken"
],
"properties": {
"urlOrToken": {
"type": "string",
"minLength": 1,
"description": "A usepaylo.com/wishlist/... share link or the bare share token"
}
}
}Search products by query, optionally scoped to a storefront and category, with pagination.
| Argument | Type | Description |
|---|---|---|
| page | integer | Result page, starting at 1 (default 1). |
| limit | integer | Results per page (1–100, default 20). |
| query* | string | Free text over product name and description, e.g. 'iphone 13', 'shea butter'. |
| category | string | Product category name or slug to filter by (see get_categories for a store's categories). |
| storefrontSlug | string | Limit results to one store by its slug (from search_storefronts). Omit to search across all verified stores. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": 1,
"description": "Result page, starting at 1 (default 1)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page (1–100, default 20)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Free text over product name and description, e.g. 'iphone 13', 'shea butter'."
},
"category": {
"type": "string",
"description": "Product category name or slug to filter by (see get_categories for a store's categories)."
},
"storefrontSlug": {
"type": "string",
"description": "Limit results to one store by its slug (from search_storefronts). Omit to search across all verified stores."
}
}
}Search services by query, optionally scoped to a storefront and category, with pagination.
| Argument | Type | Description |
|---|---|---|
| page | integer | Result page, starting at 1 (default 1). |
| limit | integer | Results per page (1–100, default 20). |
| query* | string | Free text over service name and description, e.g. 'hair braiding', 'phone repair'. |
| category | string | Service category name or slug to filter by. |
| storefrontSlug | string | Limit results to one store by its slug (from search_storefronts). Omit to search across all verified stores. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": 1,
"description": "Result page, starting at 1 (default 1)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page (1–100, default 20)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Free text over service name and description, e.g. 'hair braiding', 'phone repair'."
},
"category": {
"type": "string",
"description": "Service category name or slug to filter by."
},
"storefrontSlug": {
"type": "string",
"description": "Limit results to one store by its slug (from search_storefronts). Omit to search across all verified stores."
}
}
}Discover verified, escrow-protected Paylo storefronts. Filter by Nigerian state, product category, area (LGA/city) and/or free text — e.g. 'phone sellers in Lagos' or 'beauty stores in Abuja'. Only quality-gated sellers are returned (verified, with a logo, a cover image and at least one live listing), ordered by number of live listings. Each result carries trust signals (verified, escrowProtected), location (state, area) and its storefront URL.
| Argument | Type | Description |
|---|---|---|
| area | string | LGA/city area within a state, e.g. 'abuja-municipal'. |
| limit | integer | Max storefronts to return (1–200, default 50). |
| query | string | Free text over name, description, category and area. |
| state | string | Nigerian state slug or name, e.g. 'lagos', 'ogun', 'abuja'/'FCT'. |
| category | string | Canonical product category. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"area": {
"type": "string",
"description": "LGA/city area within a state, e.g. 'abuja-municipal'."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max storefronts to return (1–200, default 50)."
},
"query": {
"type": "string",
"description": "Free text over name, description, category and area."
},
"state": {
"type": "string",
"description": "Nigerian state slug or name, e.g. 'lagos', 'ogun', 'abuja'/'FCT'."
},
"category": {
"enum": [
"fashion",
"beauty",
"food-and-beverage",
"home-and-living",
"health",
"electronics",
"services"
],
"type": "string",
"description": "Canonical product category."
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 5, 2026.
What changed in this server's tools since we started watching, newest first. Each change is scanned again.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"email": {
"type": "string",
"description": "The user's email, if they shared it. Prefills the manual signup form as a fallback; Google or Apple sign-in uses the account they pick."
},
"provider": {
"enum": [
"google",
"apple"
],
"type": "string",
"description": "Which sign-in the link launches: google (default) or apple."
},
"referralCode": {
"type": "string",
"maxLength": 32,
"minLength": 3,
"description": "Referral or invite code of whoever referred this user, if they have one."
},
"instagramHandle": {
"type": "string",
"maxLength": 31,
"description": "The user's Instagram handle (with or without @), if they sell on Instagram. Carried through signup so their catalogue import starts pre-filled."
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"email": {
"type": "string",
"description": "The user's email, if they shared it. Prefills the manual signup form as a fallback; Google or Apple sign-in uses the account they pick."
},
"provider": {
"enum": [
"google",
"apple"
],
"type": "string",
"description": "Which sign-in the link launches: google (default) or apple."
},
"referralCode": {
"type": "string",
"maxLength": 32,
"minLength": 3,
"description": "Referral or invite code of whoever referred this user, if they have one."
},
"instagramHandle": {
"type": "string",
"maxLength": 31,
"description": "The user's Instagram handle (with or without @), if they sell on Instagram. Carried through signup so their catalogue import starts pre-filled."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Max entries to return (default 200)."
},
"query": {
"type": "string",
"description": "Free text over entry title and description, e.g. 'wishlist', 'POS', 'bookings'."
},
"since": {
"type": "string",
"description": "ISO date (YYYY-MM-DD); only entries shipped on or after it."
},
"status": {
"enum": [
"New",
"Improved",
"Fixed"
],
"type": "string",
"description": "Only this kind of change."
},
"audience": {
"enum": [
"merchant",
"shopper",
"both"
],
"type": "string",
"description": "Keep entries for sellers ('merchant') or buyers ('shopper'); either also includes shared ('both') entries."
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Max entries to return (default 200)."
},
"query": {
"type": "string",
"description": "Free text over entry title and description, e.g. 'wishlist', 'POS', 'bookings'."
},
"since": {
"type": "string",
"description": "ISO date (YYYY-MM-DD); only entries shipped on or after it."
},
"status": {
"enum": [
"New",
"Improved",
"Fixed"
],
"type": "string",
"description": "Only this kind of change."
},
"audience": {
"enum": [
"merchant",
"shopper",
"both"
],
"type": "string",
"description": "Keep entries for sellers ('merchant') or buyers ('shopper'); either also includes shared ('both') entries."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"urlOrToken"
],
"properties": {
"urlOrToken": {
"type": "string",
"minLength": 1,
"description": "A usepaylo.com/wishlist/... share link or the bare share token"
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"urlOrToken"
],
"properties": {
"urlOrToken": {
"type": "string",
"minLength": 1,
"description": "A usepaylo.com/wishlist/... share link or the bare share token"
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"storefrontSlug"
],
"properties": {
"storefrontSlug": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"storefrontSlug"
],
"properties": {
"storefrontSlug": {
"type": "string",
"minLength": 1,
"description": "The store's slug, e.g. 'greybox' (from search_storefronts)."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"query": {
"type": "string",
"minLength": 1
},
"category": {
"type": "string"
},
"storefrontSlug": {
"type": "string"
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": 1,
"description": "Result page, starting at 1 (default 1)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page (1–100, default 20)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Free text over service name and description, e.g. 'hair braiding', 'phone repair'."
},
"category": {
"type": "string",
"description": "Service category name or slug to filter by."
},
"storefrontSlug": {
"type": "string",
"description": "Limit results to one store by its slug (from search_storefronts). Omit to search across all verified stores."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"storefrontSlug",
"productSlug"
],
"properties": {
"productSlug": {
"type": "string",
"minLength": 1
},
"storefrontSlug": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"storefrontSlug",
"productSlug"
],
"properties": {
"productSlug": {
"type": "string",
"minLength": 1,
"description": "The product's slug within that store (from search_products results)."
},
"storefrontSlug": {
"type": "string",
"minLength": 1,
"description": "The store's slug, e.g. 'greybox' (from search_storefronts or a product result)."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1
},
"query": {
"type": "string",
"minLength": 1
},
"category": {
"type": "string"
},
"storefrontSlug": {
"type": "string"
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": 1,
"description": "Result page, starting at 1 (default 1)."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Results per page (1–100, default 20)."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Free text over product name and description, e.g. 'iphone 13', 'shea butter'."
},
"category": {
"type": "string",
"description": "Product category name or slug to filter by (see get_categories for a store's categories)."
},
"storefrontSlug": {
"type": "string",
"description": "Limit results to one store by its slug (from search_storefronts). Omit to search across all verified stores."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"description": "The storefront's slug — the path segment of its URL, e.g. 'greybox' for usepaylo.com/greybox (also returned by search_storefronts)."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"area": {
"type": "string",
"description": "LGA/city area within a state, e.g. 'abuja-municipal'."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1
},
"query": {
"type": "string",
"description": "Free text over name, description, category and area."
},
"state": {
"type": "string",
"description": "Nigerian state slug or name, e.g. 'lagos', 'ogun', 'abuja'/'FCT'."
},
"category": {
"enum": [
"fashion",
"beauty",
"food-and-beverage",
"home-and-living",
"health",
"electronics",
"services"
],
"type": "string",
"description": "Canonical product category."
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"area": {
"type": "string",
"description": "LGA/city area within a state, e.g. 'abuja-municipal'."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max storefronts to return (1–200, default 50)."
},
"query": {
"type": "string",
"description": "Free text over name, description, category and area."
},
"state": {
"type": "string",
"description": "Nigerian state slug or name, e.g. 'lagos', 'ogun', 'abuja'/'FCT'."
},
"category": {
"enum": [
"fashion",
"beauty",
"food-and-beverage",
"home-and-living",
"health",
"electronics",
"services"
],
"type": "string",
"description": "Canonical product category."
}
}
}