exNiche

Unmet shopper demand: products people ask for and can't buy, checked against 2M+ retail listings.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
97%
Integridad del esquema
81%
Calidad de los nombres
97%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~1,767Tokens (definiciones de herramientas)
~2.0 KBTamaño de respuesta típico
Impacto moderado en la atención (1.38% del contexto de 128k)

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-http

Qué puede hacer

Inventario de herramientas

Herramientas (7)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟡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

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada7 herramientas