Skip to content

Bizzkit MCP server

Overview

The Bizzkit MCP (Model Context Protocol) server exposes AI Assistant capabilities to MCP-compliant clients.

For an introduction to the protocol, see the official MCP documentation.

Prerequisites

Your Ecommerce Search Host must have a scope named mcp (case-sensitive).

If the scope does not exist refer to the scopes documentation.

Without this scope, MCP server calls will fail.

API endpoint

The MCP client connects to:

GET https://baia-mcp.bizzk.cloud/{tenantId}/{segmentId}

Replace {tenantId} with your tenant identifier and {segmentId} with your segment identifier.

Tools

The server exposes two product search tools: a product search tool and a facet discovery tool.

Product search tool

Name: search

Purpose: Search the product catalog to find relevant products. Supports optional filtering, targeting, and facet retrieval. There is also an option for passing the authentication token for authenticated search.

Input parameters:

Parameter Type Required Default Description
phrase string Yes The search phrase to use for finding products.
maxNumberOfProducts integer No 5 Max number of products to return.
filters object (Dictionary<string, FilterModel>) No null Filters to narrow results. Keys are field names, values are FilterModel objects (from the Ecommerce Search API) with values for term filters or from/to for range filters. Use the GetFacets tool to discover available filter keys and values.
targets object (Dictionary<string, string[]>) No null Targets for business rule matching. Keys are target names, values are arrays of target values.
authenticationToken string No null End-user JWT token passed through to the search service for content-level authorization. When omitted, only publicly visible products are returned. When provided, products restricted to authenticated end-users are also included.
includeFacets boolean No false When true, the response includes available facets alongside products. Useful for discovering available refinement options such as categories, brands, or price ranges.

Behaviour:

  • Returns up to maxNumberOfProducts products (defaults to 5)
  • Returns a products array of simplified product objects
  • Optionally returns a facets array when includeFacets is true

Response schema

{
    "products": [
        {
            "title": "string",
            "description": "string",
            "imageUrl": "string",
            "price": 100
        }
    ],
    "facets": [
        {
            "key": "string",
            "name": "string",
            "type": "Term | Range",
            "values": [
                {
                    "value": "string",
                    "count": 10,
                    "isSelected": false
                }
            ],
            "min": null,
            "max": null
        }
    ]
}

Product fields:

  • title: Product display name
  • description: Short description (may be null)
  • imageUrl: First media resource URI from the product
  • price: Unit price from the first SKU

Facet fields (only present when includeFacets is true):

  • key: The field key of the facet. Use this value as the dictionary key in the filters parameter when filtering search results by this facet.
  • name: Display name of the facet
  • type: Term for value-based facets or Range for numeric range facets
  • values: List of facet values with value, count, and isSelected (populated for Term facets)
  • min: Minimum value (populated for Range facets)
  • max: Maximum value (populated for Range facets)

Get facets tool

Name: GetFacets

Purpose: Retrieve available facets (filter categories and their values) for a search phrase without returning products. Use this to discover what filters are available before performing a filtered search.

Input parameters:

Parameter Type Required Default Description
phrase string No "" The search phrase to scope facets. Can be empty to get all available facets.
filters object (Dictionary<string, FilterModel>) No null Filters to narrow results. Keys are field names, values are FilterModel objects (from the Ecommerce Search API) with values for term filters or from/to for range filters.
targets object (Dictionary<string, string[]>) No null Targets for business rule matching. Keys are target names, values are arrays of target values.
authenticationToken string No null End-user JWT token passed through to the search service for content-level authorization. When omitted, only publicly visible products are returned. When provided, products restricted to authenticated end-users are also included.

Response schema

{
    "totalProducts": 42,
    "facets": [
        {
            "key": "string",
            "name": "string",
            "type": "Term | Range",
            "values": [
                {
                    "value": "string",
                    "count": 10,
                    "isSelected": false
                }
            ],
            "min": null,
            "max": null
        }
    ]
}

Fields:

  • totalProducts: Total number of products matching the search
  • facets: List of available facets (same structure as described under the search tool)

Integration guides

How to add ECS search MCP server to GitHub Copilot

GitHub Copilot supports MCP servers through VS Code extensions and configuration.

Prerequisites:

  • Visual Studio Code with GitHub Copilot extension installed
  • Access to your tenant's MCP server endpoint
  • Valid tenant ID and segment ID

Steps:

  1. In the main search field, type > to open the command palette
  2. Search for mcp and select MCP: List servers
  3. Click Add server
  4. Select HTTP and paste the address: https://baia-mcp.bizzk.cloud/{tenantId}/{segmentId}
  5. Replace {tenantId} and {segmentId} with your actual values
  6. Give your server a name and choose the scope
  7. Restart VS Code or reload the window
  8. GitHub Copilot can now access the search and GetFacets tools when you ask product-related questions

Example usage:

In your chat, you can ask:

"Use {name for your MCP server} to search for popcorn"

GitHub Copilot will use the MCP server to search your product catalog and return relevant results.

Example result:

Search results

The search found 4 popcorn-related products:

  • Popcornnet til bålsted (89 kr) - A popcorn net with long handle and wooden grip for making popcorn over a campfire
  • Udklædning popcorn 3-5 år (69 kr) - A creative popcorn costume for children aged 3-5 years
  • POPZ Popcorn 8 poser - assorterede varianter (38 kr) - Microwave popcorn, 8 bags in assorted varieties
  • Popcornmaskine med ske 1200W (109 kr) - A popcorn machine with scoop, 1200W

Since the facet search tool is now available it is highly encouraged to prompt the agent to look at the facets that are available for the search phrase and then set the relevant ones and send them to the search tool.

"Use {name for your MCP server} to get the available facets for popcorn"

And then refine your search using the returned facet keys:

"Now search for popcorn but filter by brand 'POPZ'"