FruxonDocs
IntegrationsTools

Finds catalog and workspace tools that match a described capability.

Ranks every tool in the catalog, and every tool this workspace defined itself (its API tools, scripts and MCP servers' tools), against the words of `query`, in one ranking — a tool matches when any of them appears in its name, its integration or tool id, or its description, and ranks higher the more and the more prominently they do. Each result says where it comes from (`CATALOG` or `WORKSPACE`) and whether this workspace could use it now (`READY`: its integration needs no credentials, or a published config exists) or must connect the integration first (`NEEDS_CONNECTION`). Internal tools are never returned. An empty query returns an empty list.

GET
/v1/tenants/{tenant}/tools:search
AuthorizationBearer <token>

JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.

In: header

Path Parameters

tenant*string

The tenant identifier

Query Parameters

PageSize?integer

The maximum number of items to return per page

Formatint32
PageToken.Skip?integer
Formatint32
PageToken.Cursor?string

Opaque cursor token from an external system (e.g. RAG API). When set, M:Fruxon.Common.Collections.PageToken.AsString returns this value directly instead of encoding Fruxon.Common.Collections.PageToken.Skip.

query?string

What the tool should do, in words — e.g. "fetch the content of a web page".

limit?integer

Max results, clamped to 1–50 (default 15).

Default15
Formatint32

Response Body

curl -X GET "https://api.fruxon.com/v1/tenants/string/tools:search"
{
  "items": [
    {
      "integrationId": "string",
      "id": "string",
      "displayName": "string",
      "description": "string",
      "toolType": "API",
      "actionType": "READ_ONLY",
      "availability": "READY",
      "source": "CATALOG"
    }
  ],
  "nextPageToken": "string",
  "totalCount": 0
}
Empty
Empty
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}