exNiche
Unmet shopper demand: products people ask for and can't buy, checked against 2M+ retail listings.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"search": {
"url": "https://exniche.com/mcp"
}
}
}Puntos de conexión remotos
https://exniche.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (7)
🟡check_demand(query)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 500,
"description": "Short product idea, e.g. 'waterproof dog backpack'."
}
},
"required": [
"query"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"matches": {
"type": "array",
"items": {
"type": "object"
}
},
"recorded": {
"type": "boolean"
},
"message": {
"type": "string"
},
"credits_charged": {
"type": "integer"
},
"licence": {
"type": "string"
},
"code": {
"type": "string"
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
}
},
"additionalProperties": true
}🟢list_gaps(q, category, verdict, class, trend, ...)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"q": {
"type": "string",
"maxLength": 200,
"description": "Words that must appear in the gap label or requirements."
},
"category": {
"type": "string"
},
"verdict": {
"type": "string",
"description": "Comma list of go, maybe, no-go."
},
"class": {
"type": "string",
"description": "Comma list of absent, exists_hard_to_find, unverified."
},
"trend": {
"type": "string",
"description": "Comma list of rising, steady, cooling."
},
"source": {
"type": "string",
"description": "Comma list of community_ask, agent_search, store_search, bot_research."
},
"min_score": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"since": {
"type": "string",
"description": "ISO date or epoch ms; only gaps with an ask since then."
},
"sort": {
"type": "string",
"enum": [
"score",
"newest",
"asks",
"rising"
],
"default": "score"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20
},
"cursor": {
"type": "string",
"description": "next_cursor from the previous page."
},
"detail": {
"type": "string",
"enum": [
"summary",
"full"
],
"default": "summary",
"description": "summary = L0 (1 credit per call); full = L1 (1 + 10 credits per scored row)."
},
"include": {
"type": "string",
"enum": [
"unscored"
],
"description": "Also return unscored leads (L0 only, verdict null)."
}
},
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"gaps": {
"type": "array",
"items": {
"type": "object"
}
},
"next_cursor": {
"type": [
"string",
"null"
]
},
"detail": {
"type": "string"
},
"credits_charged": {
"type": "integer"
},
"licence": {
"type": "string"
},
"code": {
"type": "string"
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
}
},
"additionalProperties": true
}🟢get_gap(id, detail)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Gap id or slug from list_gaps or check_demand."
},
"detail": {
"type": "string",
"enum": [
"summary",
"full"
],
"default": "summary",
"description": "summary = L0 (1 credit per call); full = L1 (1 + 10 credits per scored row)."
}
},
"required": [
"id"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"gap": {
"type": "object"
},
"credits_charged": {
"type": "integer"
},
"licence": {
"type": "string"
},
"code": {
"type": "string"
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
}
},
"additionalProperties": true
}🟢get_dossier(id)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"id"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"dossier": {
"type": "object"
},
"credits_charged": {
"type": "integer"
},
"licence": {
"type": "string"
},
"code": {
"type": "string"
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
}
},
"additionalProperties": true
}🟢search_products(query, max_price, currency, size, color, ...)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Short product category or name, e.g. keyboards, shoes or coffee. Put constraints in separate fields."
},
"max_price": {
"type": "number",
"minimum": 0,
"description": "Maximum recorded price. Supply currency too; no currency conversion."
},
"currency": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"description": "Three-letter currency code, e.g. AUD."
},
"size": {
"type": "string",
"description": "Required recorded size, e.g. M."
},
"color": {
"type": "string",
"description": "Required recorded color, e.g. black."
},
"in_stock": {
"type": "boolean",
"description": "Filter recorded availability. Availability must be checked at retailer."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc"
],
"default": "relevance"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 10
}
},
"required": [
"query"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"found": {
"type": "boolean"
},
"results": {
"type": "array",
"items": {
"type": "object"
}
},
"code": {
"type": "string"
},
"upgrade_url": {
"type": "string"
},
"human_message": {
"type": "string"
}
},
"additionalProperties": true
}🟡report_not_found(query)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"query"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"saved": {
"type": "boolean"
},
"evidence": {
"type": "string"
},
"note": {
"type": "string"
},
"code": {
"type": "string"
}
},
"additionalProperties": true
}🟢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.
Esquema de entrada
{
"type": "object",
"properties": {},
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"mcp_url": {
"type": "string"
},
"signup_url": {
"type": "string"
},
"credits_checkout_url": {
"type": "string"
},
"install": {
"type": "object"
}
},
"additionalProperties": true
}Comunidad
Evidencia