Skip to main content

Ask AI assistant widget for React

Add an AI assistant or AI search widget to your React application using Biel.ai's React components. You can also connect AI agents through MCP, with or without installing the widget.

The biel-react package includes three components: BielButton for a floating assistant, BielSearchButton for AI-powered search, and BielBot for embedding the assistant directly in your page layout.

Prerequisites​

Add the assistant widget​

Assistant widget for docs

  1. Install Biel.ai:

    npm install biel-react biel-search
    Info

    For Yarn, use yarn add biel-react biel-search.

  2. In the main component where you wish to place the assistant (often src/App.js), embed the Biel.ai button:

    import React, { useEffect } from 'react';

    import { BielButton } from 'biel-react';
    import bielPackage from 'biel-search/package.json';
    import 'biel-search/dist/biel-search/biel-search.css';

    function App() {

    useEffect(() => {
    if (!document.querySelector('script[data-biel]')) {
    const script = document.createElement('script');
    script.type = 'module';
    script.src = `https://cdn.jsdelivr.net/npm/biel-search@${bielPackage.version}/dist/biel-search/biel-search.esm.js`;
    script.dataset.biel = '';
    document.head.appendChild(script);
    }
    }, []);

    return (
    <div className="App">
    {/* Other components and content */}
    <BielButton project="<YOUR_PROJECT_ID>"
    header-title="Biel.ai assistant"
    button-position="bottom-right"
    modal-position="bottom-right"
    button-style="dark">Ask AI
    </BielButton>
    </div>
    );
    }

    export default App;

    Replace <YOUR_PROJECT_ID> with your project's ID from the Biel.ai dashboard.

  3. Run npm start or yarn start, open your site, and send a test question.

Add the search widget​

Biel search

  1. Install Biel.ai:

    npm install biel-react biel-search
    Info

    For Yarn, use yarn add biel-react biel-search.

  2. In the component where you want to place the search widget, embed the Biel.ai search button:

    import React, { useEffect } from 'react';

    import { BielSearchButton } from 'biel-react';
    import bielPackage from 'biel-search/package.json';
    import 'biel-search/dist/biel-search/biel-search.css';

    function App() {

    useEffect(() => {
    if (!document.querySelector('script[data-biel]')) {
    const script = document.createElement('script');
    script.type = 'module';
    script.src = `https://cdn.jsdelivr.net/npm/biel-search@${bielPackage.version}/dist/biel-search/biel-search.esm.js`;
    script.dataset.biel = '';
    document.head.appendChild(script);
    }
    }, []);

    return (
    <div className="App">
    {/* Other components and content */}
    <BielSearchButton project="<YOUR_PROJECT_ID>"
    header-title="Biel.ai assistant"
    button-style="rounded">Search
    </BielSearchButton>
    </div>
    );
    }

    export default App;

    Replace <YOUR_PROJECT_ID> with your project's ID from the Biel.ai dashboard.

  3. Run npm start or yarn start and search for a page in your documentation.

Add embedded chat​

Use BielBot to render the assistant inline in your page layout instead of as a floating button. See Embedded mode for more details.

  1. Install Biel.ai:

    npm install biel-react biel-search
    Info

    For Yarn, use yarn add biel-react biel-search.

  2. In the component where you want the assistant to appear inline, embed BielBot with embedded-mode set to true:

    import React, { useEffect } from 'react';

    import { BielBot } from 'biel-react';
    import bielPackage from 'biel-search/package.json';
    import 'biel-search/dist/biel-search/biel-search.css';

    function HelpPage() {

    useEffect(() => {
    if (!document.querySelector('script[data-biel]')) {
    const script = document.createElement('script');
    script.type = 'module';
    script.src = `https://cdn.jsdelivr.net/npm/biel-search@${bielPackage.version}/dist/biel-search/biel-search.esm.js`;
    script.dataset.biel = '';
    document.head.appendChild(script);
    }
    }, []);

    return (
    <div className="HelpPage">
    <BielBot project="<YOUR_PROJECT_ID>" embedded-mode="true"></BielBot>
    </div>
    );
    }

    export default HelpPage;

    Replace <YOUR_PROJECT_ID> with your project's ID from the Biel.ai dashboard.

  3. Run npm start or yarn start and send a test question from the inline assistant.

Select a widget version​

The React wrapper loads the widget installed by npm. It declares biel-search@latest, so a fresh npm installation selects the npm latest widget release. Your application's lockfile keeps the resolved version, npm ci installs that locked version.

To select a specific widget release, add an override to your application's root package.json:

{
"overrides": {
"biel-react": {
"biel-search": "0.1.93"
}
}
}

Then run npm install. Replace 0.1.93 with a published biel-search version on npm. Remove the override and update the widget dependency to follow latest again. If your application also lists biel-search as a direct dependency, keep it on the same version so its loader and styles match.

Connect AI agents with MCP​

Let AI tools search and read your indexed documentation. MCP is available on every plan and during your trial.

  1. In the Biel.ai dashboard, open your project’s Settings > MCP.
  2. Select Enable MCP server and click Save.
  3. In the widget, open Connect via MCP using the <> button. Select your AI client or choose MCP URL to copy the endpoint into its settings.

Without the widget: after enabling MCP, copy MCP endpoint from Settings > MCP and add it to your AI client. No widget installation or website changes are required.

The widget also exposes WebMCP tools to compatible browser agents visiting your site. Use the latest widget release and keep Enable WebMCP selected in Settings > MCP.

Next steps​