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

# ThunderPhone을 MCP 서버로 사용하기

> 모든 Streamable HTTP MCP 클라이언트를 ThunderPhone에 연결하여 에이전트 목록을 확인하고, 통화 및 대화 내용을 검토하며, 조직 API 키로 발신 전화를 걸 수 있습니다.

ThunderPhone은 다음 위치에 Model Context Protocol 서버를 제공합니다.

```text theme={null}
https://api.thunderphone.com/v1/mcp
```

조직의 에이전트와 통화를 도구로 사용할 수 있도록 MCP 클라이언트를 해당 Streamable HTTP 엔드포인트에 연결합니다. 이는 [원격 MCP 서버를 음성 에이전트에 연결하는 것](/ko/guides/mcp-servers)과 반대 방향입니다.

| 방향                            | 결과                                                   |
| ----------------------------- | ---------------------------------------------------- |
| 원격 MCP 서버 → ThunderPhone 에이전트 | 음성 에이전트가 원격 서버의 도구를 호출할 수 있습니다.                      |
| ThunderPhone → MCP 클라이언트      | MCP 클라이언트가 에이전트와 통화를 위한 ThunderPhone 도구를 호출할 수 있습니다. |

## 인증

**조직 → 키**에서 `sk_live_` 키를 만들고 Bearer 토큰으로 전송합니다. MCP 엔드포인트는 대시보드 세션 쿠키나 게시 가능한 위젯 키가 아닌 조직 API 키를 허용합니다.

```json Generic client configuration theme={null}
{
  "mcpServers": {
    "thunderphone": {
      "url": "https://api.thunderphone.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer sk_live_YOUR_API_KEY"
      }
    }
  }
}
```

<Warning>
  `sk_live_` 키는 조직 데이터에 접근하고 통화를 발신할 수 있습니다. 브라우저 코드, 리포지토리, 스크린샷 및 채팅 로그에 포함하지 마십시오. MCP 클라이언트가 지원하는 시크릿 저장소를 사용하고, 키가 노출된 경우 즉시 폐기하십시오.
</Warning>

## 사용 가능한 도구

| 도구                    | 인수                                     | 기능                                                   |
| --------------------- | -------------------------------------- | ---------------------------------------------------- |
| `list_agents`         | 없음                                     | ID, 이름, 제품 및 음성과 함께 조직 에이전트를 나열합니다.                  |
| `get_agent`           | `agent_id`                             | 에이전트 하나를 조회합니다.                                      |
| `place_call`          | `agent_id`, `from_number`, `to_number` | REST 통화 엔드포인트와 동일한 유효성 검사 및 청구 게이트를 적용하여 발신 전화를 겁니다. |
| `get_call`            | `call_id`                              | 통화 상태, 요약 및 평가를 조회합니다.                               |
| `list_calls`          | 선택 사항 `limit` (1–100), 선택 사항 `status`  | 최근 통화를 나열합니다.                                        |
| `get_call_transcript` | `call_id`                              | 통화의 전체 대화 기록을 조회합니다.                                 |

모든 도구는 API 키에 연결된 조직 범위로 제한됩니다. 다른 조직의 ID는 사용할 수 없는 것으로 처리됩니다.

## 프로토콜 메서드

이 엔드포인트는 Streamable HTTP 클라이언트에 필요한 MCP JSON-RPC 메서드를 구현합니다.

* `initialize`
* `notifications/initialized`
* `tools/list`
* `tools/call`

도구 카탈로그를 직접 확인할 수 있습니다.

```bash theme={null}
curl -X POST https://api.thunderphone.com/v1/mcp \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/list",
    "params": {}
  }'
```

이름과 인수를 사용하여 도구를 호출합니다.

```json theme={null}
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "list_calls",
    "arguments": { "limit": 20, "status": "completed" }
  }
}
```

도구 결과는 MCP 텍스트 콘텐츠 항목입니다. 도구 실패는 `isError: true`와 함께 결과로 반환되며, 알 수 없는 JSON-RPC 메서드는 프로토콜 오류를 반환합니다.

## 안전하게 통화 발신하기

`place_call`은 [`POST /v1/call`](/api-reference/outbound-calls)과 동일한 규칙을 따릅니다. 에이전트와 번호는 키의 조직에 속해야 하고, 해당 번호는 발신 통화가 가능해야 하며, 조직에 충분한 잔액이 있어야 하고, 적용되는 모든 발신 통화 확인 절차가 완료되어야 합니다.

`place_call`에 접근할 수 있는 클라이언트는 운영 환경의 발신자로 취급하십시오. 클라이언트를 사용할 수 있는 대상을 제한하고, 자체 프롬프트에서 의도한 에이전트와 번호를 명확히 지정하며, 통화 기록에서 통화를 검토하십시오.

## 전체 와이어 참조

응답 예시, JSON-RPC 오류 및 원격 서버 관리 API는 [MCP 서버 API](/api-reference/mcp-servers#thunderphone-as-an-mcp-server)를 참조하십시오.
