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

# 서버 도구

> 웹 검색 및 날짜/시간과 같은 실시간 기능을 모델에 제공합니다. Server Tools는 ARouter가 모델을 대신하여 실행하므로 클라이언트 측 로직이 필요하지 않습니다.

Server Tools는 추론 중에 ARouter가 모델을 대신하여 실행하는 기능입니다. 사용자 정의 함수 호출(코드가 함수를 실행)과 달리, Server Tools는 ARouter가 완전히 처리합니다——모델이 언제 호출할지 결정하고, ARouter가 실행하며, 결과가 자동으로 대화에 주입됩니다.

<Note>
  Server Tools는 현재 **베타** 단계입니다. 인터페이스는 안정적이지만 추가 도구가 계속 추가되고 있습니다.
</Note>

## 사용 가능한 Server Tools

| 도구 ID        | 설명                         | 가격     |
| ------------ | -------------------------- | ------ |
| `web_search` | 웹을 검색하고 인용이 포함된 구조화된 결과 반환 | 검색 쿼리당 |
| `datetime`   | 모든 시간대의 현재 날짜와 시간 반환       | 무료     |

## Server Tools vs Plugins vs 사용자 정의 도구

|                | Server Tools | Plugins        | 사용자 정의 도구  |
| -------------- | ------------ | -------------- | ---------- |
| 누가 실행하나요?      | ARouter      | ARouter        | 귀하의 애플리케이션 |
| 모델이 호출을 제어하나요? | 예            | 아니요 (매 요청에 적용) | 예          |
| 구조화된 인용?       | 예            | 예 (웹 전용)       | 해당 없음      |
| 스트리밍에서 사용 가능?  | 예            | 예              | 예          |

## 빠른 시작

```json theme={null}
{
  "model": "openai/gpt-5.4",
  "messages": [{"role": "user", "content": "What are the top AI news stories today?"}],
  "tools": [{"type": "arouter", "arouter": {"id": "web_search"}}]
}
```

<Tabs>
  <Tab title="TypeScript">
    ```typescript theme={null}
    const response = await client.chat.completions.create({
      model: "openai/gpt-5.4",
      messages: [{ role: "user", content: "What are the top AI news stories today?" }],
      tools: [{ type: "arouter", arouter: { id: "web_search" } } as any],
    });
    console.log(response.choices[0].message.content);
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    response = client.chat.completions.create(
        model="openai/gpt-5.4",
        messages=[{"role": "user", "content": "What are the top AI news stories today?"}],
        tools=[{"type": "arouter", "arouter": {"id": "web_search"}}],
    )
    print(response.choices[0].message.content)
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl https://api.arouter.ai/v1/chat/completions \
      -H "Authorization: Bearer lr_live_xxxx" \
      -H "Content-Type: application/json" \
      -d '{"model": "openai/gpt-5.4", "messages": [{"role": "user", "content": "Top AI news today?"}], "tools": [{"type": "arouter", "arouter": {"id": "web_search"}}]}'
    ```
  </Tab>
</Tabs>

## 사용량 추적

```json theme={null}
{
  "usage": {
    "prompt_tokens": 450, "completion_tokens": 210, "total_tokens": 660, "cost": 0.00234,
    "server_tool_calls": {"web_search": 2}
  }
}
```

## 다음 단계

* [웹 검색 도구](/ko/guides/features/server-tools/web-search)
* [날짜/시간 도구](/ko/guides/features/server-tools/datetime)
