> ## Documentation Index
> Fetch the complete documentation index at: https://docs.danubeai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Recommendations

> Get tool recommendations

## Overview

Get tool recommendations based on co-usage patterns. Optionally pass a `tool_id` to find tools frequently used together with it. Without a `tool_id`, returns popular tools or personalized recommendations.

**Auth:** Optional (works with or without authentication). Authenticated requests may return personalized results.

## Query Parameters

<ParamField query="tool_id" type="string">
  Optional UUID of a tool to find related tools for
</ParamField>

<ParamField query="limit" type="integer" default={5}>
  Maximum number of recommendations to return
</ParamField>

## Response

Returns an array of recommended tool objects.

<ResponseField name="id" type="string">
  Tool UUID
</ResponseField>

<ResponseField name="name" type="string">
  Tool name
</ResponseField>

<ResponseField name="description" type="string">
  Tool description
</ResponseField>

<ResponseField name="service_id" type="string">
  Parent service UUID
</ResponseField>

## Example

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.danubeai.com/v1/tools/recommended?tool_id=tool_abc123&limit=5" \
    -H "danube-api-key: YOUR_API_KEY"
  ```

  ```python Python SDK theme={null}
  from danube import DanubeClient

  with DanubeClient(api_key="dk_...") as client:
      recommendations = client.tools.get_recommendations(
          tool_id="tool_abc123",
          limit=5,
      )
      for tool in recommendations:
          print(f"  {tool.name}: {tool.description}")
  ```

  ```typescript TypeScript SDK theme={null}
  import { DanubeClient } from 'danube';

  const client = new DanubeClient({ apiKey: 'dk_...' });
  const recommendations = await client.tools.getRecommendations({
    toolId: 'tool_abc123',
    limit: 5,
  });
  recommendations.forEach(t => console.log(`${t.name}: ${t.description}`));
  ```
</RequestExample>

<ResponseExample>
  ```json theme={null}
  [
    {
      "id": "tool_def456",
      "name": "Slack - Send Message",
      "description": "Send a message to a Slack channel",
      "service_id": "svc_slack_001"
    },
    {
      "id": "tool_ghi789",
      "name": "Gmail - Send Email",
      "description": "Send an email via Gmail",
      "service_id": "svc_gmail_001"
    }
  ]
  ```
</ResponseExample>

## MCP Tool

This endpoint is also available as the `get_recommendations` MCP tool:

```python theme={null}
result = await mcp.call_tool("get_recommendations", {
    "tool_id": "tool_abc123",
    "limit": 5
})
```
