---
title: "Χρησιμοποιήστε το ThunderPhone ως διακομιστή MCP"
description: "Δημιουργήστε, δοκιμάστε, επικυρώστε και διαχειριστείτε φωνητικούς πράκτορες ThunderPhone από το Claude, το ChatGPT, το Claude Code, το Codex, το Cursor, το VS Code ή άλλο πρόγραμμα-πελάτη Streamable HTTP MCP."
---

Το ThunderPhone παρέχει έναν διακομιστή Streamable HTTP Model Context Protocol στη διεύθυνση:

```text
https://api.thunderphone.com/v1/mcp
```

Αυτή είναι η αντίθετη κατεύθυνση από τη [σύνδεση ενός απομακρυσμένου διακομιστή MCP με έναν φωνητικό πράκτορα](/el/guides/mcp-servers):

| Κατεύθυνση | Αποτέλεσμα |
| --- | --- |
| Απομακρυσμένος διακομιστής MCP → πράκτορας ThunderPhone | Ένας φωνητικός πράκτορας μπορεί να καλεί τα εργαλεία του απομακρυσμένου διακομιστή. |
| ThunderPhone → το πρόγραμμα-πελάτη MCP σας | Ο πράκτορας προγραμματισμού σας μπορεί να δημιουργεί, να δοκιμάζει και να διαχειρίζεται το ThunderPhone. |

## Έλεγχος ταυτότητας

Χρησιμοποιήστε [OAuth](/el/guides/oauth) από προεπιλογή για προγράμματα-πελάτες καταλόγου: συνδεθείτε, επιλέξτε έναν οργανισμό και εγκρίνετε τα ζητούμενα δικαιώματα. Ανακαλέστε την πρόσβαση από **Οργανισμός → Κλειδιά API → Εξουσιοδοτημένες εφαρμογές**.

Για προγράμματα-πελάτες που έχουν ρυθμιστεί με κλειδί API, δημιουργήστε ένα κλειδί `sk_live_` από **Οργανισμός → Κλειδιά** και διαθέστε το στο πρόγραμμα-πελάτη MCP σας ως `THUNDERPHONE_API_KEY`. Το κλειδί συνδέεται με έναν οργανισμό· ένα αναγνωριστικό που ανήκει σε άλλον οργανισμό αντιμετωπίζεται ως να μην βρέθηκε.

<Warning>
  Ένα κλειδί `sk_live_` μπορεί να διαβάζει δεδομένα οργανισμού και να εκτελεί ενέργειες παραγωγής, όπως ανάπτυξη πρακτόρων, πραγματοποίηση κλήσεων, αγορά αριθμών, έναρξη καμπανιών και διαγραφή πόρων. Μην το συμπεριλαμβάνετε σε κώδικα προγράμματος περιήγησης, αποθετήρια, στιγμιότυπα οθόνης και αρχεία καταγραφής συνομιλιών. Χρησιμοποιήστε τον χώρο αποθήκευσης μυστικών ή την υποστήριξη μεταβλητών περιβάλλοντος του προγράμματος-πελάτη σας και ανακαλέστε αμέσως ένα εκτεθειμένο κλειδί.
</Warning>

## Εναλλακτικές λύσεις CLI και τυπικής εισόδου/εξόδου

Το [CLI του ThunderPhone](/el/guides/cli) μπορεί να εγγράψει ρυθμίσεις προγράμματος-πελάτη διατηρώντας
άλλους διακομιστές:

```bash
npx -y @thunderphone/mcp setup --client cursor --api-key-env THUNDERPHONE_API_KEY
npx thunderphone mcp setup --client claude-desktop --scope user
```

Μετά από καθολική εγκατάσταση του `@thunderphone/mcp`, χρησιμοποιήστε `thunderphone-mcp setup` με τις
ίδιες επιλογές. Η ρύθμιση υποστηρίζει Claude Code, Codex, Cursor, VS Code, Gemini, Claude
Desktop και Windsurf. Προτιμάται το άμεσο HTTP· το Desktop χρησιμοποιεί τυπική είσοδο/έξοδο.

Για οποιοδήποτε πρόγραμμα-πελάτη που υποστηρίζει τυπική είσοδο/έξοδο, ρυθμίστε το `command: "npx"` με
`args: ["-y", "@thunderphone/mcp"]`. Το περιτύλιγμα χρησιμοποιεί πρώτα το `THUNDERPHONE_API_KEY`,
έπειτα τα διαπιστευτήρια από το `thunderphone login`, ανανεώνοντας ληγμένα διακριτικά, και κατόπιν
OAuth μέσω του `mcp-remote`. Η σύνδεση μέσω συσκευής και το OAuth απαιτούν την αντίστοιχη ενεργοποίηση
OAuth του API. Η διαδρομή με κλειδί API δεν την απαιτεί. Οι άμεσες ρυθμίσεις HTTP δεν διαβάζουν
τον χώρο αποθήκευσης διαπιστευτηρίων του CLI· χρησιμοποιήστε το περιτύλιγμα τυπικής εισόδου/εξόδου για να επαναχρησιμοποιήσετε τη σύνδεση μέσω συσκευής.

Αυτές αποτελούν εναλλακτικές λύσεις στις μη αυτόματες ρυθμίσεις προγραμμάτων-πελατών παρακάτω.

## Ρύθμιση παραμέτρων προγράμματος-πελάτη

Τα Claude και ChatGPT συνδέονται με [OAuth](/el/guides/oauth), χωρίς να απαιτείται κλειδί API. Αν δεν έχετε ακόμη λογαριασμό ThunderPhone, επιλέξτε **Δημιουργία λογαριασμού** στη σελίδα σύνδεσης και, αφού επαληθεύσετε το email σας, θα επιστρέψετε στην οθόνη έγκρισης.

### Claude (ιστός, επιτραπέζιος υπολογιστής και κινητό)

1. Ανοίξτε **Ρυθμίσεις → Συνδέσεις**. Αν το ThunderPhone εμφανίζεται στον κατάλογο συνδέσεων, επιλέξτε το. Διαφορετικά, επιλέξτε **Προσθήκη προσαρμοσμένης σύνδεσης**, ονομάστε το `ThunderPhone` και εισαγάγετε `https://api.thunderphone.com/v1/mcp`.
2. Επιλέξτε **Σύνδεση**, συνδεθείτε στο ThunderPhone, επιλέξτε τον οργανισμό και εγκρίνετε τα δικαιώματα.
3. Σε μια συνομιλία, ενεργοποιήστε το ThunderPhone από το μενού εργαλείων και ζητήστε ό,τι χρειάζεστε, για παράδειγμα «Εμφανίστε τους πράκτορές μου».

Οι προσαρμοσμένες συνδέσεις απαιτούν επί πληρωμή πρόγραμμα Claude. Στα προγράμματα Team και Enterprise, ένας κάτοχος προσθέτει πρώτα τη σύνδεση στις ρυθμίσεις συνδέσεων του οργανισμού και, στη συνέχεια, κάθε μέλος συνδέει τον δικό του λογαριασμό ThunderPhone.

### ChatGPT

1. Αν το ThunderPhone εμφανίζεται στον κατάλογο εφαρμογών του ChatGPT, επιλέξτε το και συνδεθείτε.
2. Διαφορετικά, ανοίξτε **Ρυθμίσεις → Εφαρμογές και συνδέσεις → Ρυθμίσεις για προχωρημένους**, ενεργοποιήστε τη **Λειτουργία προγραμματιστή** και δημιουργήστε μια σύνδεση με τη διεύθυνση URL `https://api.thunderphone.com/v1/mcp` και έλεγχο ταυτότητας OAuth.
3. Συνδεθείτε στο ThunderPhone, επιλέξτε τον οργανισμό και εγκρίνετε τα δικαιώματα. Προσθέστε το ThunderPhone σε μια συνομιλία από το μενού εργαλείων.

Η διαγραφή ενός πράκτορα ή αριθμού τηλεφώνου, η απόρριψη ενός προσχεδίου και η έναρξη μιας καμπάνιας ζητούν δεύτερη επιβεβαίωση σε οποιαδήποτε εφαρμογή· δείτε [Επιβεβαίωση καταστροφικών ενεργειών](#confirming-destructive-actions).

### Claude Code

```bash
claude mcp add --transport http thunderphone https://api.thunderphone.com/v1/mcp \
  --header "Authorization: Bearer $THUNDERPHONE_API_KEY"
```

### Codex

Προσθέστε το παρακάτω στο `~/.codex/config.toml`:

```toml
[mcp_servers.thunderphone]
url = "https://api.thunderphone.com/v1/mcp"
bearer_token_env_var = "THUNDERPHONE_API_KEY"
```

### Cursor

Δημιουργήστε το `.cursor/mcp.json`:

```json
{
  "mcpServers": {
    "thunderphone": {
      "url": "https://api.thunderphone.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${env:THUNDERPHONE_API_KEY}"
      }
    }
  }
}
```

### Claude Desktop

Προσθέστε μια γέφυρα `mcp-remote` στη ρύθμιση παραμέτρων του Claude Desktop:

```json
{
  "mcpServers": {
    "thunderphone": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://api.thunderphone.com/v1/mcp",
        "--header",
        "Authorization: Bearer ${THUNDERPHONE_API_KEY}"
      ],
      "env": {
        "THUNDERPHONE_API_KEY": "sk_live_YOUR_API_KEY"
      }
    }
  }
}
```

### VS Code

Δημιουργήστε το `.vscode/mcp.json` και εισαγάγετε το κλειδί μέσω του πλαισίου εισαγωγής του VS Code:

```json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "thunderphone-api-key",
      "description": "ThunderPhone organization API key",
      "password": true
    }
  ],
  "servers": {
    "thunderphone": {
      "type": "http",
      "url": "https://api.thunderphone.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${input:thunderphone-api-key}"
      }
    }
  }
}
```

## Εργαλεία

Κάθε εργαλείο φέρει επισημάνσεις MCP. Στους πίνακες, το **R** σημαίνει μόνο για ανάγνωση, το **D** καταστροφικό, το **I** ιδιομορφικό και το **O** αλληλεπίδραση με ανοικτό κόσμο/δίκτυο. Η παύλα σημαίνει ότι δεν έχει οριστεί κάποια ένδειξη.

### Πράκτορες

| Εργαλείο | Κύρια ορίσματα | Επισημάνσεις | Τι κάνει |
| --- | --- | --- | --- |
| `list_agents` | — | R, I | Παραθέτει τους πράκτορες. |
| `get_agent` | `agent_id` | R, I | Ανακτά έναν πράκτορα. |
| `create_agent` | διαμόρφωση πράκτορα | — | Δημιουργεί έναν πράκτορα. |
| `update_agent` | `agent_id`, τροποποιημένα πεδία | — | Προετοιμάζει πεδία στο πρόχειρο του πράκτορα. |
| `deploy_agent` | `agent_id`, προαιρετικό `if_updated_at` | I | Προωθεί το πρόχειρο στην παραγωγή. |
| `discard_agent_draft` | `agent_id`, προαιρετικό `if_updated_at`, `confirmation_token` στο δεύτερο αίτημα | D, I | Απορρίπτει τις προετοιμασμένες αλλαγές. Δύο βήματα, δείτε [Επιβεβαίωση καταστροφικών ενεργειών](#confirming-destructive-actions). |
| `duplicate_agent` | `agent_id`, προαιρετικό `name` | — | Αντιγράφει έναν πράκτορα εντός του οργανισμού. |
| `delete_agent` | `agent_id`, `confirmation_token` στο δεύτερο αίτημα | D, I | Διαγράφει οριστικά έναν πράκτορα. Δύο βήματα. |
| `list_agent_versions` | `agent_id` | R, I | Παραθέτει τις εκδοχές διαμόρφωσης που έχουν αναπτυχθεί. |

### Αριθμοί τηλεφώνου και πάροχοι

| Εργαλείο | Κύρια ορίσματα | Επισημάνσεις | Τι κάνει |
| --- | --- | --- | --- |
| `list_phone_numbers` | — | R, I | Παραθέτει τους αριθμούς του οργανισμού και τη δρομολόγηση. |
| `get_phone_number_limits` | — | R, I | Ανακτά τη χρήση και τα όρια των διαχειριζόμενων αριθμών. |
| `provision_phone_number` | προαιρετικά `area_code`, `city`, `state`, `idempotency_key` | O | Αγοράζει έναν εισερχόμενο αριθμό που διαχειρίζεται το ThunderPhone. |
| `list_voip_connections` | — | R, I | Παραθέτει τους συνδεδεμένους παρόχους των πελατών. |
| `search_voip_numbers` | `connection_id`, `country`, `type`, προαιρετικό `area_code` | R, I, O | Αναζητά το απόθεμα του παρόχου. |
| `import_voip_numbers` | `connection_id`, `numbers` | O | Εισάγει αριθμούς που ανήκουν ήδη στον πάροχο. |
| `update_phone_number` | `phone_number_id`, πεδία δρομολόγησης/ετικέτας/webhook | — | Ενημερώνει τη δρομολόγηση αριθμού, συμπεριλαμβανομένης της ανάθεσης πράκτορα. |
| `delete_phone_number` | `phone_number_id`, `confirm`, προαιρετικά `release_at_provider`, `confirmation_token` στο δεύτερο αίτημα | D, I, O | Απελευθερώνει έναν αριθμό. Δύο βήματα. |

### Κλήσεις

| Εργαλείο | Κύρια ορίσματα | Επισημάνσεις | Τι κάνει |
| --- | --- | --- | --- |
| `list_calls` | προαιρετικά φίλτρα, `limit`, `offset` | R, I | Παραθέτει κλήσεις με τα φίλτρα ιστορικού κλήσεων REST. |
| `get_call` | `call_id` | R, I | Ανακτά την κατάσταση και τα μεταδεδομένα κλήσης. |
| `get_call_transcript` | `call_id`, προαιρετικό `live` | R, I | Ανακτά την απομαγνητοφώνηση της κλήσης. |
| `get_call_audio_url` | `call_id`, προαιρετικό `download` | R, I, O | Επιστρέφει ένα υπογεγραμμένο URL ήχου· δεν μεταδίδει ποτέ ήχο μέσω MCP. |
| `get_call_grade` | `call_id` | R, I | Ανακτά την πιο πρόσφατη αξιολόγηση κλήσης. |
| `place_call` | `agent_id`, `from_number`, `to_number` | O | Πραγματοποιεί μία μη ιδιομορφική εξερχόμενη κλήση. |
| `export_calls` | φίλτρα κλήσεων, `export_format` | R, I | Εξάγει έως το όριο του τερματικού REST ως JSON ή CSV. |

### Δοκιμές και επικύρωση

| Εργαλείο | Κύρια ορίσματα | Επισημάνσεις | Τι κάνει |
| --- | --- | --- | --- |
| `list_test_scenarios` | `agent_id` | R, I | Παραθέτει σενάρια δοκιμών. |
| `create_test_scenario` | `agent_id`, `title`, `scenario_prompt`, προαιρετικές συνθήκες | — | Δημιουργεί ένα σενάριο. |
| `generate_test_scenarios` | `agent_id`, προαιρετικά `count`, `include_edge_cases`, `locale` | O | Δημιουργεί σενάρια από την προτροπή του πράκτορα. |
| `run_agent_tests` | `agent_id`, `channel`, `consent_to_charge`, προαιρετική επιλογή/μήτρα | O | Εκτελεί σενάρια μέσω ιστού ή τηλεφωνίας. |
| `get_test_run` | `agent_id`, `batch_id` | R, I | Ανακτά την κατάσταση παρτίδας και τα αποτελέσματα ανά σενάριο. |
| `list_validation_runs` | `agent_id` | R, I | Παραθέτει πρόσφατες εκτελέσεις επικύρωσης προχείρου. |
| `get_validation_status` | `agent_id` | R, I | Ανακτά την πιο πρόσφατη κατάσταση επικύρωσης και την αντιστοίχιση προχείρου. |

### Γνώση

| Εργαλείο | Κύρια ορίσματα | Επισημάνσεις | Τι κάνει |
| --- | --- | --- | --- |
| `list_knowledge_bases` | — | R, I | Παραθέτει βάσεις γνώσης. |
| `create_knowledge_base` | `name`, προαιρετικό `description` | — | Δημιουργεί μια βάση γνώσης. |
| `add_knowledge_document` | `knowledge_base_id`, `name`, `content` | — | Προσθέτει κείμενο ή Markdown. |
| `import_knowledge_url` | `url`, προαιρετικό `name` | O | Προσθέτει μια δημόσια σελίδα στην ουρά για ασφαλή εισαγωγή. |
| `search_knowledge` | `knowledge_base_id`, `query` | R, I | Αναζητά μέσω ανάκτησης παραγωγής. |

### Ενσωματώσεις, webhooks και απομακρυσμένοι διακομιστές MCP

| Εργαλείο | Κύρια ορίσματα | Επισημάνσεις | Τι κάνει |
| --- | --- | --- | --- |
| `list_integrations` | — | R, I | Παραθέτει ενσωματώσεις συναρτήσεων HTTP. |
| `create_integration` | `display_name`, `spec` συνάρτησης, προαιρετικά πεδία τερματικού | — | Δημιουργεί ένα εργαλείο HTTP. |
| `test_integration` | `url`, προαιρετικά μέθοδος/κεφαλίδες/σώμα/χρονικό όριο | O | Στέλνει ένα περιορισμένο, προστατευμένο από SSRF αίτημα δοκιμής. |
| `list_webhook_endpoints` | — | R, I | Παραθέτει υπογεγραμμένα τερματικά webhook. |
| `create_webhook_endpoint` | `label`, `url`, προαιρετικά συμβάντα/κατάσταση | O | Δημιουργεί ένα υπογεγραμμένο τερματικό webhook. |
| `test_webhook_endpoint` | `endpoint_id` | O | Στέλνει ένα συνθετικό συμβάν μέσω κανονικής παράδοσης. |
| `list_mcp_servers` | — | R, I | Παραθέτει απομακρυσμένους διακομιστές που μπορούν να καλούνται από φωνητικούς πράκτορες. |
| `create_mcp_server` | `display_name`, `url`, προαιρετικές κεφαλίδες | O | Καταχωρίζει και συγχρονίζει έναν απομακρυσμένο διακομιστή. |
| `sync_mcp_server_tools` | `server_id` | O | Ανανεώνει τον κατάλογο εργαλείων ενός απομακρυσμένου διακομιστή. |

### Εκστρατείες

| Εργαλείο | Κύρια ορίσματα | Επισημάνσεις | Τι κάνει |
| --- | --- | --- | --- |
| `list_campaigns` | — | R, I | Παραθέτει εξερχόμενες εκστρατείες. |
| `create_campaign` | πεδία εκστρατείας | — | Δημιουργεί μια πρόχειρη εκστρατεία. |
| `add_campaign_contacts` | `campaign_id`, `contacts` | — | Προσθέτει έως 5.000 επαφές JSON. |
| `campaign_action` | `campaign_id`, `action`, προαιρετικά `consent_to_charge`, `confirmation_token` στο δεύτερο αίτημα | D, O | Εκτελεί `start`, `pause`, `resume` ή `stop`. Τα `start` και `resume` έχουν δύο βήματα· τα `pause` και `stop` εκτελούνται αμέσως. |
| `get_campaign_stats` | `campaign_id` | R, I | Ανακτά μετρητές και πρόσφατα αποτελέσματα. |

### Φωνές, χρέωση, εισαγωγές και τεκμηρίωση

| Εργαλείο | Κύρια ορίσματα | Επισημάνσεις | Τι κάνει |
| --- | --- | --- | --- |
| `list_voices` | — | R, I | Παραθέτει φωνές και υποστηριζόμενες γλώσσες. |
| `preview_voice` | `voice`, `language`, `text` | O | Δημιουργεί ένα δείγμα και επιστρέφει ένα υπογεγραμμένο URL. |
| `list_voice_clones` | — | R, I | Παραθέτει προσαρμοσμένους κλώνους φωνής. |
| `get_billing_summary` | — | R, I | Ανακτά το υπόλοιπο και τις έγκυρες τιμές βαθμίδων· δεν εκτίθενται μεταβολές πληρωμών. |
| `create_agent_import` | `vendor`, `vendor_key` | O | Ξεκινά μια κρυπτογραφημένη εισαγωγή από Vapi, Retell, ElevenLabs ή Bland. |
| `get_agent_import` | `public_id` | R, I | Ανακτά την προτεινόμενη διαφορά εισαγωγής. |
| `commit_agent_import` | `public_id` | — | Οριστικοποιεί επιλεγμένους πράκτορες από ένα ελεγμένο πλάνο. |
| `search_docs` | `query`, προαιρετικό `limit` | R, I, O | Αναζητά στο ευρετήριο δημόσιας τεκμηρίωσης. |
| `get_doc_page` | `path` | R, I, O | Ανακτά μία δημόσια σελίδα τεκμηρίωσης Markdown. |

Όλα τα εργαλεία προϊόντος χρησιμοποιούν τις ίδιες διαδρομές κώδικα REST με το δημόσιο API. Επομένως, η επικύρωση REST, ο περιορισμός στον οργανισμό, οι ρόλοι, η έγκριση χρέωσης, οι ποσοστώσεις, η επιβεβαίωση TCPA, η ασφάλεια παρόχου και η συμπεριφορά ελέγχου εφαρμόζονται χωρίς αλλαγές.

## Επιβεβαίωση καταστροφικών ενεργειών

Τα εργαλεία με σήμανση D αλλάζουν ή αφαιρούν κάτι που δεν μπορεί να αποκατασταθεί ή ξεκινούν την κλήση πραγματικών ατόμων. Απαιτούν δύο αιτήματα. Το πρώτο αίτημα δεν αλλάζει τίποτα και επιστρέφει:

```json
{
  "status": "confirmation_required",
  "action": "Delete agent",
  "target": { "id": 195, "name": "Front Desk Receptionist" },
  "confirmation_token": "…",
  "expires_in_seconds": 600,
  "next_step": "…"
}
```

Ο βοηθός δείχνει στον χρήστη τι επηρεάζεται και ζητά επιβεβαίωση. Στη συνέχεια επαναλαμβάνει το αίτημα με τα ίδια ορίσματα μαζί με το `confirmation_token`. Ένα διακριτικό είναι έγκυρο για 10 λεπτά και καλύπτει έναν οργανισμό, ένα εργαλείο και ένα ακριβές σύνολο ορισμάτων, επομένως η διαγραφή τριών πρακτόρων απαιτεί τρεις επιβεβαιώσεις. Το `campaign_action` με `pause` ή `stop` παραλείπει αυτό το βήμα, ώστε μια εκτελούμενη καμπάνια να μπορεί πάντα να διακόπτεται αμέσως.

## Αρχικά προτροπές

Το `prompts/list` παρέχει έξι επαναχρησιμοποιήσιμες ροές εργασίας:

- `create_inbound_receptionist`
- `run_agent_tests`
- `import_vapi_assistants`
- `buy_and_attach_number`
- `review_low_grade_calls`
- `add_url_to_agent_knowledge`

Χρησιμοποιήστε το `prompts/get` με το όνομα της αναφερόμενης προτροπής και τα δηλωμένα ορίσματά της για να λάβετε ένα έτοιμο προς εκτέλεση μήνυμα χρήστη.

## Πόροι

Το `resources/list` εκθέτει δημόσιες, αποθηκευμένες στην προσωρινή μνήμη αναφορές:

| URI | Περιεχόμενο |
| --- | --- |
| `thunderphone://docs/llms.txt` | Ευρετήριο δημόσιας τεκμηρίωσης. |
| `thunderphone://docs/quickstart` | Markdown γρήγορης εκκίνησης. |
| `thunderphone://pricing` | Markdown τρεχουσών δημόσιων τιμών. |

Διαβάστε έναν πόρο με το `resources/read`. Οι δημόσιες ανακτήσεις χρησιμοποιούν σύντομο χρονικό όριο, όριο 2 MiB και δεκάλεπτη προσωρινή μνήμη εντός διεργασίας.

## Πρωτόκολλο και σφάλματα

Ο διακομιστής υποστηρίζει τις εκδόσεις πρωτοκόλλου `2025-06-18` και `2025-03-26`; επιστρέφει ως απόκριση μια υποστηριζόμενη έκδοση πελάτη και διαφορετικά επιλέγει την `2025-06-18`. Υλοποιεί τα `initialize`, `ping`, εργαλεία, προτροπές, πόρους και ειδοποιήσεις. Οι ειδοποιήσεις επιστρέφουν `202 Accepted`. Αυτός ο διακομιστής χωρίς κατάσταση δεν εκθέτει ακροατή SSE ή διαγραφή συνεδρίας, επομένως τα `GET` και `DELETE` επιστρέφουν `405 Method Not Allowed` με `Allow: POST`.

Οι αποτυχίες εργαλείων παραμένουν επιτυχημένες αποκρίσεις JSON-RPC με `isError: true`. Το κείμενό τους περιέχει μια σύντομη πρόταση ακολουθούμενη από ένα μπλοκ JSON:

```json
{
  "code": "insufficient_balance",
  "detail": "There is not enough prepaid balance.",
  "next_step": "Call get_billing_summary, add funds in Organization > Billing, then retry."
}
```

Το διακριτό πρόθεμα `outbound_tcpa_confirmation_required:` διατηρείται για το `place_call`. Άγνωστες μέθοδοι JSON-RPC επιστρέφουν `-32601` σε απόκριση HTTP `200`. Οι δέσμες JSON-RPC δεν υποστηρίζονται από το MCP `2025-06-18` και επιστρέφουν καθαρό σφάλμα μη έγκυρου αιτήματος `-32600`.
