APIFleet

Build and run AI phone agents: provider matrix, call-cost estimates, config checks, call management.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
96%
Integridad del esquema
82%
Calidad de los nombres
98%
Riesgo de envenenamiento
100%
Coincidencia de permisos
60%
Cumplimiento del protocolo
100%

Hallazgos (7)

  • LOWTool 'set_assistant_tools' description lacks action verben set_assistant_tools
  • LOWTool 'set_assistant_knowledge' description lacks action verben set_assistant_knowledge
  • LOWTool 'apifleet_check_assistant_config' name length outside 3-30 rangeen apifleet_check_assistant_config
  • LOWTool 'list_webhooks' suggests web access but openWorldHint=falseen list_webhooks
  • LOWTool 'create_webhook' suggests web access but openWorldHint=falseen create_webhook
  • LOWTool 'update_webhook' suggests web access but openWorldHint=falseen update_webhook
  • LOWTool 'delete_webhook' suggests web access but openWorldHint=falseen delete_webhook

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~9,567Tokens (definiciones de herramientas)
~1.1 KBTamaño de respuesta típico
Impacto significativo en la atención (7.47% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "apifleet": {
      "url": "https://apifleet.dev/mcp"
    }
  }
}

Puntos de conexión remotos

https://apifleet.dev/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (67)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢apifleet_get_provider_matrix

Public, no key: discover implemented voice and carrier integrations, setup boundaries, platform pricing and documentation. No provider request or call is made.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢apifleet_estimate_call_cost(seconds, provider_usd_per_minute, carrier_usd_per_minute)

Public, no key: calculate USD platform fees plus caller-supplied blended provider/carrier rates. An estimate, not a provider quote or invoice. Does not place a call.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "seconds": {
      "type": "integer",
      "minimum": 0,
      "maximum": 60000000
    },
    "provider_usd_per_minute": {
      "type": "number",
      "minimum": 0,
      "maximum": 100
    },
    "carrier_usd_per_minute": {
      "type": "number",
      "minimum": 0,
      "maximum": 100
    }
  },
  "required": [
    "seconds"
  ],
  "additionalProperties": false
}
🟢apifleet_check_assistant_config(config)

Public, no key: seven static configuration checks. Send a redacted configuration without secrets or customer data. No save, credential verification, full API validation or call-quality certification occurs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "config": {
      "type": "object"
    }
  },
  "required": [
    "config"
  ],
  "additionalProperties": false
}
🟢check_entitlements

Read the workspace prepaid balance and funding path. Does not start a checkout or call.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢list_assistants

List assistants in the authenticated workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢get_assistant(id)

Get one assistant belonging to this workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟡create_assistant(data)

Create a assistant. Saving configuration does not place a call. The REST response includes revision, configuration and attached resource identifiers.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Resource fields. Saving configuration does not place a call. The REST response includes revision, configuration and attached resource identifiers. Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Display name."
        },
        "instructions": {
          "type": "string",
          "minLength": 1,
          "description": "Business instructions for the assistant."
        },
        "first_message": {
          "type": "string",
          "minLength": 1,
          "description": "Opening message."
        },
        "model": {
          "type": "string",
          "minLength": 1,
          "description": "Supported model identifier."
        },
        "voice": {
          "type": "string",
          "minLength": 1,
          "description": "Voice identifier."
        },
        "pipeline_mode": {
          "type": "string",
          "enum": [
            "realtime",
            "cascading"
          ]
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟡update_assistant(id, data, if_revision)

Update selected assistant fields. Omitted fields retain their values.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Resource fields. Saving configuration does not place a call. The REST response includes revision, configuration and attached resource identifiers. Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Display name."
        },
        "instructions": {
          "type": "string",
          "minLength": 1,
          "description": "Business instructions for the assistant."
        },
        "first_message": {
          "type": "string",
          "minLength": 1,
          "description": "Opening message."
        },
        "model": {
          "type": "string",
          "minLength": 1,
          "description": "Supported model identifier."
        },
        "voice": {
          "type": "string",
          "minLength": 1,
          "description": "Voice identifier."
        },
        "pipeline_mode": {
          "type": "string",
          "enum": [
            "realtime",
            "cascading"
          ]
        }
      },
      "additionalProperties": true
    },
    "if_revision": {
      "type": "integer",
      "minimum": 1,
      "description": "Optional optimistic concurrency revision, sent as If-Match. Reload after a 409."
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🔴delete_assistant(id, if_revision)

Delete this assistant. Review the identifier before deleting; the change cannot be undone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "if_revision": {
      "type": "integer",
      "minimum": 1,
      "description": "Optional optimistic concurrency revision, sent as If-Match. Reload after a 409."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟡set_assistant_tools(id, data)

Replace all attached HTTP tools with existing tools owned by this workspace. Empty tool_ids detaches every tool.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Attachment set.",
      "properties": {
        "tool_ids": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "description": "Resource identifier returned by a previous request.",
            "pattern": "^[A-Za-z0-9_-]+$",
            "maxLength": 200
          },
          "maxItems": 200,
          "description": "Complete replacement list; an empty list removes every attachment."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🟡set_assistant_knowledge(id, data)

Replace all attached knowledge documents. Each document must belong to this workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Attachment set.",
      "properties": {
        "knowledge_ids": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "description": "Resource identifier returned by a previous request.",
            "pattern": "^[A-Za-z0-9_-]+$",
            "maxLength": 200
          },
          "maxItems": 200,
          "description": "Complete replacement list; an empty list removes every attachment."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🟡create_browser_test_token(id, data)

Issue a short-lived browser voice-test URL. Opening its WebSocket can incur usage. Never publish the returned token.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Test session options.",
      "properties": {
        "ttl_seconds": {
          "type": "integer",
          "minimum": 1,
          "description": "Token lifetime, clamped to 30–3600 seconds."
        },
        "max_duration_seconds": {
          "type": "integer",
          "minimum": 1,
          "description": "Call duration limit, clamped to 30–3600 seconds."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🟢list_numbers

List number bindings. This does not buy phone numbers from a carrier.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
⚪bind_number(number, data)

Bind an existing carrier number to a workspace assistant. This changes incoming call routing; configure the carrier webhook separately.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "number": {
      "type": "string",
      "minLength": 1,
      "description": "International E.164 number, including the leading +.",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "data": {
      "type": "object",
      "description": "Number binding.",
      "properties": {
        "assistant_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "provider": {
          "type": "string",
          "enum": [
            "telnyx",
            "twilio",
            "voximplant",
            "voipcloud"
          ]
        },
        "region": {
          "type": "string",
          "minLength": 1,
          "description": "Carrier region, when required."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "number",
    "data"
  ],
  "additionalProperties": false
}
🔴unbind_number(number)

Remove the routing binding. This does not release or cancel the carrier number.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "number": {
      "type": "string",
      "minLength": 1,
      "description": "International E.164 number, including the leading +.",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    }
  },
  "required": [
    "number"
  ],
  "additionalProperties": false
}
🟢list_calls(page, limit, search, assistant_id, source, ...)

Read call logs, summary statistics and pagination. Each row may contain transcript, analysis, costs and recording links; recordings require separate authentication.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page number; default 1."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "description": "Rows per page; default 200, maximum 1000.",
      "maximum": 1000
    },
    "search": {
      "type": "string",
      "minLength": 1,
      "description": "Text or call identifier search."
    },
    "assistant_id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "source": {
      "type": "string",
      "minLength": 1,
      "description": "Call source filter."
    },
    "model": {
      "type": "string",
      "minLength": 1,
      "description": "Model filter."
    },
    "voice": {
      "type": "string",
      "minLength": 1,
      "description": "Voice filter."
    },
    "outcome": {
      "type": "string",
      "minLength": 1,
      "description": "Outcome filter."
    },
    "sentiment": {
      "type": "string",
      "minLength": 1,
      "description": "Sentiment filter."
    },
    "date_from": {
      "type": "string",
      "minLength": 1,
      "description": "Start date filter."
    },
    "date_to": {
      "type": "string",
      "minLength": 1,
      "description": "End date filter."
    },
    "sort": {
      "type": "string",
      "minLength": 1,
      "description": "Supported sort column; default started_at."
    },
    "order": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    }
  },
  "required": [],
  "additionalProperties": false
}
🔴create_outbound_call(data, confirm)

Place a real telephone call. Ask the user to approve recipient, caller number and expected usage first. Billing/provider/carrier checks are the same as REST. No automatic retry or universal idempotency guarantee.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Call request.",
      "properties": {
        "assistant_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "to": {
          "type": "string",
          "minLength": 1,
          "description": "International E.164 number, including the leading +.",
          "pattern": "^\\+[1-9]\\d{6,14}$"
        },
        "from": {
          "type": "string",
          "minLength": 1,
          "description": "International E.164 number, including the leading +.",
          "pattern": "^\\+[1-9]\\d{6,14}$"
        },
        "user_number": {
          "type": "string",
          "minLength": 1,
          "description": "International E.164 number, including the leading +.",
          "pattern": "^\\+[1-9]\\d{6,14}$"
        }
      },
      "additionalProperties": true
    },
    "confirm": {
      "type": "boolean",
      "const": true,
      "description": "Set true only after the user approves this paid action. A timeout is not safe to retry blindly."
    }
  },
  "required": [
    "data",
    "confirm"
  ],
  "additionalProperties": false
}
🟢get_waveform(id)

Read recording waveform metadata and available audio channels.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🔴delete_recording(id)

Permanently remove a call recording. The call log remains. Confirm the identifier before deleting.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢list_tools

List http tools in the authenticated workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢get_tool(id)

Get one tool belonging to this workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟡create_tool(data)

Create a tool. Creating a tool returns its signing secret once. Configuring a tool does not invoke its URL; attached tools can call it during conversations.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Resource fields. Creating a tool returns its signing secret once. Configuring a tool does not invoke its URL; attached tools can call it during conversations. Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Function name: letters, digits and underscore; cannot start with a digit."
        },
        "url": {
          "type": "string",
          "minLength": 1,
          "description": "Public HTTPS callback URL; private network targets are rejected."
        },
        "method": {
          "type": "string",
          "enum": [
            "GET",
            "POST",
            "PUT",
            "PATCH",
            "DELETE"
          ]
        },
        "description": {
          "type": "string",
          "minLength": 1,
          "description": "Tool purpose."
        },
        "parameters": {
          "type": "object",
          "description": "JSON Schema for tool arguments.",
          "properties": {},
          "additionalProperties": true
        },
        "timeout_ms": {
          "type": "integer",
          "minimum": 500,
          "maximum": 30000
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟡update_tool(id, data)

Update selected tool fields. Omitted fields retain their values.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Resource fields. Creating a tool returns its signing secret once. Configuring a tool does not invoke its URL; attached tools can call it during conversations. Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Function name: letters, digits and underscore; cannot start with a digit."
        },
        "url": {
          "type": "string",
          "minLength": 1,
          "description": "Public HTTPS callback URL; private network targets are rejected."
        },
        "method": {
          "type": "string",
          "enum": [
            "GET",
            "POST",
            "PUT",
            "PATCH",
            "DELETE"
          ]
        },
        "description": {
          "type": "string",
          "minLength": 1,
          "description": "Tool purpose."
        },
        "parameters": {
          "type": "object",
          "description": "JSON Schema for tool arguments.",
          "properties": {},
          "additionalProperties": true
        },
        "timeout_ms": {
          "type": "integer",
          "minimum": 500,
          "maximum": 30000
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🔴delete_tool(id)

Delete this tool. Review the identifier before deleting; the change cannot be undone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢list_knowledge_documents

List knowledge in the authenticated workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢get_knowledge_document(id)

Get one knowledge document belonging to this workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟡create_knowledge_document(data)

Create a knowledge document. Attach documents separately to use them in an assistant. Total injected knowledge has a 200 KiB limit.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Resource fields. Attach documents separately to use them in an assistant. Total injected knowledge has a 200 KiB limit. Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Unique document name in this workspace."
        },
        "content": {
          "type": "string",
          "minLength": 1,
          "description": "Plain text; maximum 50 KiB per document.",
          "maxLength": 51200
        },
        "source": {
          "type": "string",
          "minLength": 1,
          "description": "Source label; defaults to text."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟡update_knowledge_document(id, data)

Update selected knowledge document fields. Omitted fields retain their values.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Resource fields. Attach documents separately to use them in an assistant. Total injected knowledge has a 200 KiB limit. Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Unique document name in this workspace."
        },
        "content": {
          "type": "string",
          "minLength": 1,
          "description": "Plain text; maximum 50 KiB per document.",
          "maxLength": 51200
        },
        "source": {
          "type": "string",
          "minLength": 1,
          "description": "Source label; defaults to text."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🔴delete_knowledge_document(id)

Delete this knowledge document. Review the identifier before deleting; the change cannot be undone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢list_webhooks

List webhooks in the authenticated workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟡create_webhook(data)

Create a webhook. Creation returns a signing secret once; verify delivery signatures against the raw body. Events may be retried.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Resource fields. Creation returns a signing secret once; verify delivery signatures against the raw body. Events may be retried. Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "url": {
          "type": "string",
          "minLength": 1,
          "description": "Public HTTPS receiver."
        },
        "events": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "description": "Event name, e.g. call.ended or assistant.updated."
          }
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟡update_webhook(id, data)

Update selected webhook fields. Omitted fields retain their values.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Resource fields. Creation returns a signing secret once; verify delivery signatures against the raw body. Events may be retried. Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "url": {
          "type": "string",
          "minLength": 1,
          "description": "Public HTTPS receiver."
        },
        "events": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "description": "Event name, e.g. call.ended or assistant.updated."
          }
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🔴delete_webhook(id)

Delete this webhook. Review the identifier before deleting; the change cannot be undone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢list_simulation_personas

List simulation personas in the authenticated workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢get_simulation_persona(id)

Get one simulation persona belonging to this workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟡create_simulation_persona(data)

Create a simulation persona.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Resource fields.  Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Persona name."
        },
        "system_prompt": {
          "type": "string",
          "minLength": 1,
          "description": "Instructions for the simulated caller."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟡update_simulation_persona(id, data)

Update selected simulation persona fields. Omitted fields retain their values.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Resource fields.  Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Persona name."
        },
        "system_prompt": {
          "type": "string",
          "minLength": 1,
          "description": "Instructions for the simulated caller."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🔴delete_simulation_persona(id)

Delete this simulation persona. Review the identifier before deleting; the change cannot be undone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢list_simulation_scenarios

List simulation scenarios in the authenticated workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢get_simulation_scenario(id)

Get one simulation scenario belonging to this workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟡create_simulation_scenario(data)

Create a simulation scenario.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Resource fields.  Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Scenario name."
        },
        "instructions": {
          "type": "string",
          "minLength": 1,
          "description": "Scenario instructions."
        },
        "evaluations": {
          "type": "array",
          "items": {
            "type": "object",
            "description": "Evaluation specification; see simulation documentation.",
            "properties": {},
            "additionalProperties": true
          }
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟡update_simulation_scenario(id, data)

Update selected simulation scenario fields. Omitted fields retain their values.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Resource fields.  Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Scenario name."
        },
        "instructions": {
          "type": "string",
          "minLength": 1,
          "description": "Scenario instructions."
        },
        "evaluations": {
          "type": "array",
          "items": {
            "type": "object",
            "description": "Evaluation specification; see simulation documentation.",
            "properties": {},
            "additionalProperties": true
          }
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🔴delete_simulation_scenario(id)

Delete this simulation scenario. Review the identifier before deleting; the change cannot be undone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢list_simulations(assistant_id)

List simulations in the authenticated workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "assistant_id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢get_simulation(id)

Get one simulation belonging to this workspace.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟡create_simulation(data)

Create a simulation.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Resource fields.  Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "assistant_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "persona_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "scenario_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Optional simulation name."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟡update_simulation(id, data)

Update selected simulation fields. Omitted fields retain their values.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Resource fields.  Additional settings are documented in https://apifleet.dev/docs",
      "properties": {
        "assistant_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "persona_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "scenario_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Optional simulation name."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "data"
  ],
  "additionalProperties": false
}
🔴delete_simulation(id)

Delete this simulation. Review the identifier before deleting; the change cannot be undone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢list_simulation_runs(assistant_id, simulation_id, batch_id, status, page, ...)

List simulation runs and pagination; inspect status before starting another run.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "assistant_id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "simulation_id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "batch_id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "status": {
      "type": "string",
      "enum": [
        "queued",
        "running",
        "completed",
        "error"
      ]
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page number."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "description": "Rows per page."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢get_simulation_run(id)

Read a run, its evaluations and linked call when available.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🔴delete_simulation_run(id)

Delete a completed simulation result. Running runs may reject deletion.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🔴start_simulation_run(id, data, confirm)

Queue an asynchronous test. Models and speech can incur usage. Approve the run first and poll the returned identifier; do not enqueue again while it is running.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    },
    "data": {
      "type": "object",
      "description": "Run options.",
      "properties": {
        "mode": {
          "type": "string",
          "enum": [
            "chat",
            "voice"
          ],
          "default": "chat"
        }
      },
      "additionalProperties": true
    },
    "confirm": {
      "type": "boolean",
      "const": true,
      "description": "Set true only after the user approves this paid action. A timeout is not safe to retry blindly."
    }
  },
  "required": [
    "id",
    "data",
    "confirm"
  ],
  "additionalProperties": false
}
🔴start_simulation_batch(data, confirm)

Queue every simulation for one assistant. This can incur multiple test runs; approve the batch first.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Batch options.",
      "properties": {
        "assistant_id": {
          "type": "string",
          "minLength": 1,
          "description": "Resource identifier returned by a previous request.",
          "pattern": "^[A-Za-z0-9_-]+$",
          "maxLength": 200
        },
        "mode": {
          "type": "string",
          "enum": [
            "chat",
            "voice"
          ],
          "default": "chat"
        }
      },
      "additionalProperties": true
    },
    "confirm": {
      "type": "boolean",
      "const": true,
      "description": "Set true only after the user approves this paid action. A timeout is not safe to retry blindly."
    }
  },
  "required": [
    "data",
    "confirm"
  ],
  "additionalProperties": false
}
🟢list_tts_rates

Read configured voice-cost reference rates. These are not an invoice or a complete call price.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢list_tts_voices(provider)

Read a provider voice catalog using configured server-side credentials. Catalog failure may return an empty list and error; it is not evidence the provider has no voices.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "provider": {
      "type": "string",
      "minLength": 1,
      "description": "Voice provider identifier."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢list_voice_presets(provider, realtime_provider, model)

Read configured runnable voice presets. Provider catalog requests may reach a vendor.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "provider": {
      "type": "string",
      "minLength": 1,
      "description": "Optional catalog provider."
    },
    "realtime_provider": {
      "type": "string",
      "minLength": 1,
      "description": "Optional realtime provider."
    },
    "model": {
      "type": "string",
      "minLength": 1,
      "description": "Optional realtime model."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢get_assistant_voice_presets(id)

Read voices compatible with this assistant configuration.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢get_tts_settings(provider)

Read supported provider voice settings and validation ranges.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "provider": {
      "type": "string",
      "minLength": 1,
      "description": "Optional voice provider."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢list_provider_credentials

List which provider credentials are configured. Returns metadata only, never provider secret values.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢list_api_keys

List this workspace API-key metadata. Full key values cannot be retrieved.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟡create_api_key(data)

Create a new full workspace key. The secret is returned once. Store it privately; never put it in public client code.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "description": "Key label.",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "description": "Human-readable key label."
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🔴revoke_api_key(id)

Revoke a workspace API key immediately. Revoking the key in use disconnects this MCP client on its next request.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "Resource identifier returned by a previous request.",
      "pattern": "^[A-Za-z0-9_-]+$",
      "maxLength": 200
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢get_wallet

Read available, reserved and total prepaid funds, policy, funding availability and runtime enforcement. Amounts ending in microusd are integer millionths of a USD.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢get_billing_policy

Read the actual workspace policy. Internal exempt workspaces can differ from the public tariff.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢list_balance_activity(limit, before)

Read balance activity and pagination cursor. Funding is credited only after verified payment processing.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "description": "Maximum entries; defaults to 50."
    },
    "before": {
      "type": "integer",
      "minimum": 1,
      "description": "Return entries before this ledger identifier."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢list_payments

Read confirmed and pending workspace payment records for the configured live/test environment.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}
🟢get_metrics

Read the authenticated workspace metrics snapshot. Metrics may reset with the application process and are not a complete billing ledger.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada67 herramientas