Beta

Please contact a Glean representative if you are interested in partnering with Glean and building tools on Glean’s platform.

Getting Started

To get started, you should either be an admin or have the App developer role. You should be able to access the tools setup page at Workspace > Platform > Tools.

On this page, you will be able to view tools that have been created by you and other members of your organization.

New Tool Creation

To create a new tool, click on New Tool in the top right. This will lead to 2 types of tool creation modes:

create-new-tool

  1. Start from Scratch: For this, you will need to define every aspect of the tool's behaviour and interaction with an API and how parameters are filled. In the case of a server tool, the developer is expected to bring up and host a server which Glean Assistant will talk to.
  2. Templates: This includes an experience which requires no code and has certain preset configurations (eg. authentication) as well as how glean assistant will interact with a server and/or fill parameters for the tool.

Irrespective of the "Start from Scratch" mode or "Template" mode, tool building involves configuring 4 sections:

create-tool-page

  • Basic Info : Includes metadata like name, icon, type of tool, brief description for a user of the tool.
  • Trigger Condition : Includes instructions to be given to decide when to trigger the tool.
  • Functionality : This includes the core functionality and interaction between Glean assistant and the tool - API Spec for a server, custom instructions for parameters in a template etc.
  • Authentication : (Only relevant for tools with a server): Includes how Glean should pass information required for a tools server to authenticate requests coming from Glean.

Each section in the tool developement experience goes into the detail of how it shoud be configured with instructions.

What are the types of Tools I can build?

The type of the tool (and optionally, a subtype) is set in the Basic Info section of the tool creation flow. Broadly, tools are of 2 types:

  1. Action : Tool that performs an action with an external app (e.g., writing something).
  2. Retrieval : Tool that retrieves info from an external app (e.g., retrieving calendar events).

Action tools can further be of 2 types:

  1. Redirect : User is redirected to a URL where the user will complete the action.
  2. Execution : Glean Assistant will execute the action after user confirmation.

How do I test my Tool?

Once you have built a tool, you can test the tool using the link available at the bottom once you hit Save. Click on the link and try issuing queries that are expected to trigger the tool. If the tool does not trigger, consider tweaking the Trigger Condition section of the tool with clearer instructions.

How do I deploy my tool?

A Tool can be deployed either in Chat or in Ai Apps.

For Chat, tools can be deployed to all users (recommended only after thorough testing of the tool) or a subset of users for testing.

How do I configure the API Spec for a Tool?

(Note: This section is only relevant for tools that are built from scratch)

A .yaml or JSON file is required that describes the openAPI spec. The following are specifications on the openapi spec of the tool:

  • Should contain a single endpoint defined in /paths (Example: /execute)
  • Fields can be added either in requestBody.content or parameters. All fields in the requestBody.content and parameters should follow the following format:
    • Fields should not be nested (i.e., can only be of type string / number / integer / boolean , or an array of one of these types; or one of Glean’s built-in types)
    • To specify a fixed value use enum with a single value
    • All values which are not fixed can be guessed by the assistant
    • Fields can be marked required using regular openapi specifications

How do I build a server for my tool?

Refer to examples for a few example servers that Glean Assistant could interact with along with their respective API specs.