exNiche MCP
An MCP server that enables AI agents to search public retail product catalogues for specific items and variants, and to report unmet demand gaps when no matching products are found, supporting market intelligence and gap analysis.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://exniche.com/mcpWhat you can do with it
- Search for specific products across retail categories
- Report missing products to identify market gaps
- Access public aggregate gap data
- Retrieve detailed gap dossiers
Source and maintenance
Protocol and capabilities
- Server
- exniche 0.6.0
- MCP protocol
- 2025-06-18
- Tools
- 7 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
7 advertised
check_demand — Check demand for a product idea
Start here. Check whether people have asked for a product and could not buy it. Returns matching exNiche gaps at summary level (verdict, score band, class, trend, source counts, one linked ask) and records your ask as one AI agent search. 1 credit. Never send personal details or synthetic asks.
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Short product idea, e.g. 'waterproof dog backpack'."
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"code": {
"type": "string"
},
"query": {
"type": "string"
},
"licence": {
"type": "string"
},
"matches": {
"type": "array",
"items": {
"type": "object"
}
},
"message": {
"type": "string"
},
"recorded": {
"type": "boolean"
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
},
"credits_charged": {
"type": "integer"
}
},
"additionalProperties": true
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}list_gaps — List scored product gaps
List the exNiche gap ledger with filters. detail=summary costs 1 credit per call; detail=full adds exact scores, all linked asks and requirements for 10 credits per scored row. Scores mean 'worth a closer look', not verified demand.
{
"type": "object",
"properties": {
"q": {
"type": "string",
"maxLength": 200,
"description": "Words that must appear in the gap label or requirements."
},
"sort": {
"enum": [
"score",
"newest",
"asks",
"rising"
],
"type": "string",
"default": "score"
},
"class": {
"type": "string",
"description": "Comma list of absent, exists_hard_to_find, unverified."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1
},
"since": {
"type": "string",
"description": "ISO date or epoch ms; only gaps with an ask since then."
},
"trend": {
"type": "string",
"description": "Comma list of rising, steady, cooling."
},
"cursor": {
"type": "string",
"description": "next_cursor from the previous page."
},
"detail": {
"enum": [
"summary",
"full"
],
"type": "string",
"default": "summary",
"description": "summary = L0 (1 credit per call); full = L1 (1 + 10 credits per scored row)."
},
"source": {
"type": "string",
"description": "Comma list of community_ask, agent_search, store_search, bot_research."
},
"include": {
"enum": [
"unscored"
],
"type": "string",
"description": "Also return unscored leads (L0 only, verdict null)."
},
"verdict": {
"type": "string",
"description": "Comma list of go, maybe, no-go."
},
"category": {
"type": "string"
},
"min_score": {
"type": "integer",
"maximum": 100,
"minimum": 0
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"code": {
"type": "string"
},
"gaps": {
"type": "array",
"items": {
"type": "object"
}
},
"detail": {
"type": "string"
},
"licence": {
"type": "string"
},
"next_cursor": {
"type": [
"string",
"null"
]
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
},
"credits_charged": {
"type": "integer"
}
},
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true
}get_gap — Get one gap
Get one gap by id or slug. detail=summary costs 1 credit; detail=full (exact score parts, every ask with link and attribution, requirements, 8-week ask counts) costs 100 credits. Unscored leads only return summary.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Gap id or slug from list_gaps or check_demand."
},
"detail": {
"enum": [
"summary",
"full"
],
"type": "string",
"default": "summary",
"description": "summary = L0 (1 credit per call); full = L1 (1 + 10 credits per scored row)."
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"gap": {
"type": "object"
},
"code": {
"type": "string"
},
"licence": {
"type": "string"
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
},
"credits_charged": {
"type": "integer"
}
},
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true
}get_dossier — Get a gap dossier
Full dossier for a scored gap: product-by-product checks, live closest products, supplier candidates and a suggested spec. Needs a workspace key. Unlocking costs 19,000 credits once per account; an already unlocked dossier costs 0. Ask the user before unlocking.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"code": {
"type": "string"
},
"dossier": {
"type": "object"
},
"licence": {
"type": "string"
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
},
"credits_charged": {
"type": "integer"
}
},
"additionalProperties": true
}{
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}search_products — Search retail products
Search recorded retail listings across stores using explicit budget, currency, size, color and stock filters. 1 credit. Returns ranked purchase links with observed availability; unknown facts stay unknown. Misses may be saved as agent observations, never verified human demand.
{
"type": "object",
"required": [
"query"
],
"properties": {
"size": {
"type": "string",
"description": "Required recorded size, e.g. M."
},
"sort": {
"enum": [
"relevance",
"price_asc",
"price_desc"
],
"type": "string",
"default": "relevance"
},
"color": {
"type": "string",
"description": "Required recorded color, e.g. black."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1
},
"query": {
"type": "string",
"minLength": 1,
"description": "Short product category or name, e.g. keyboards, shoes or coffee. Put constraints in separate fields."
},
"currency": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"description": "Three-letter currency code, e.g. AUD."
},
"in_stock": {
"type": "boolean",
"description": "Filter recorded availability. Availability must be checked at retailer."
},
"max_price": {
"type": "number",
"minimum": 0,
"description": "Maximum recorded price. Supply currency too; no currency conversion."
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"code": {
"type": "string"
},
"found": {
"type": "boolean"
},
"results": {
"type": "array",
"items": {
"type": "object"
}
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}report_not_found — Report unsatisfied shopping request
Free. Report a genuine shopper mismatch after a search. Do not send synthetic reports or personal details. Response states whether the agent observation was saved; it is not verified human demand.
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 500,
"minLength": 1
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"code": {
"type": "string"
},
"note": {
"type": "string"
},
"saved": {
"type": "boolean"
},
"evidence": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}get_setup_and_upgrade_links — Get setup and upgrade links
Free. Return exNiche install commands for MCP clients, the agent guide, and the signup and prepaid-credit links to hand the user when free credits run out. Free: 1,000 credits a month. Credits: A$10 = 10,000. No automatic charges.
{
"type": "object",
"properties": {},
"additionalProperties": false
}{
"type": "object",
"properties": {
"install": {
"type": "object"
},
"mcp_url": {
"type": "string"
},
"signup_url": {
"type": "string"
},
"credits_checkout_url": {
"type": "string"
}
},
"additionalProperties": true
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1585 ms
- 95th percentile latency
- 1585 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1585 ms · metadata changed · 7 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http exniche-mcp https://exniche.com/mcpCodex
codex mcp add exniche-mcp --url https://exniche.com/mcpCursor
{
"mcpServers": {
"exniche-mcp": {
"url": "https://exniche.com/mcp"
}
}
}Cline
{
"mcpServers": {
"exniche-mcp": {
"type": "streamableHttp",
"url": "https://exniche.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"exniche-mcp": {
"type": "http",
"url": "https://exniche.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http exniche-mcp https://exniche.com/mcpClaude Desktop
{
"mcpServers": {
"exniche-mcp": {
"url": "https://exniche.com/mcp"
}
}
}Windsurf
{
"mcpServers": {
"exniche-mcp": {
"serverUrl": "https://exniche.com/mcp"
}
}
}Let your agent find its tools
Find servers like exNiche MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other data and analytics servers
Do you run exNiche MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.