Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

io.github.Ringer/warp

NPM · WARP-MCP · SCANNED AUG 3

SIP trunking, numbers, porting, messaging, billing, and CDR analytics on the Ringer WARP platform

Available components

+28 this week 79 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security80
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.Partial
  • Runs a script at install time (postinstall) that we could not recognise. It may be perfectly ordinary, but we do not read the published tarball, so we cannot say what it does. View diagnostics → Partial
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to Ringer/warp-mcp). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 27 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability81
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 21646 tokens (~160/item across 135 items; 135 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · warp-mcp

# add to Claude Code
claude mcp add ringer-warp -- npx -y warp-mcp
# add to Codex CLI
codex mcp add ringer-warp -- npx -y warp-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ringer-warp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "warp-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add ringer-warp --command npx --arg -y --arg warp-mcp
# ~/.hermes/config.yaml
mcp_servers:
  ringer-warp:
    command: "npx"
    args: ["-y", "warp-mcp"]
// mcp.json
{
  "mcpServers": {
    "ringer-warp": {
      "command": "npx",
      "args": [
        "-y",
        "warp-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Aug 26 +53
    • Known CVEs: unverified → partial security
    • Provenance: unverified → pass security
    • Install scripts: unverified → partial security
    • Malware scan: unverified → pass security
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • The scripts that run when this package is installed changed: postinstall security
    • The attested source repository moved: Ringer/warp-mcp security
    • Stability: unverified → 0.23 functional
    • Maintenance: unverified → pass functional
    • Dependency health: unverified → partial functional
    • License: unverified → pass functional
    • Schema quality: unverified → excellent functional
    • MCP protocol: unverified → pass functional
    • Licence: MIT functional
  • 1 Aug 26 −27
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 31 Jul 26 +1
    • Malware scan: pass → unverified security
    • Install scripts: unverified → partial security
    • Provenance: unverified → pass security
    • The scripts that run when this package is installed changed: postinstall security
    • The attested source repository moved: Ringer/warp-mcp security
    • Maintenance: unverified → pass functional
    • License: unverified → pass functional
    • Licence: MIT functional
  • 27 Jul 26 51

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Analysed npm/[email protected]

Provenance verified

Ecosystem: npm · Outcome: verified

Reason: verified

Source repo:
Ringer/warp-mcp
Certificate issuer:
https://token.actions.githubusercontent.com
Certificate SAN:
https://github.com/Ringer/warp-mcp/.github/workflows/publish.yml@refs/tags/v1.0.2
Rekor log index:
2084915860
Predicate type:
https://slsa.dev/provenance/v1
Subject digest:
sha512:b72983e1441c9dab7ac2adf29c971e8d57c5b6a03ec6d41de2cb3cf260b115ccad4d8bc63ac7971093c7baad17210682485b7f58b9988eec9aa7d132c
Discovery method:
attestation_endpoint
Install scripts 1 script
Hook Tier Command
postinstall unreviewed node postinstall.js
Dependencies 94 packages

94 packages in the resolved dependency tree · 94 deprecated · 29 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 135 exposed · ~17,617 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
port_verify_tin_name ~121

Verify that a TIN matches the provided company name via IRS TIN-Name matching. Used during the port-in flow to confirm the authorizing entity before submission. See also port_lookup_ein and port_lookup_company_details. Errors: INVALID_REQUEST, INVALID_TIN, COMPANY_NAME_REQUIRED, TINCOMPLY_ERROR, VERIFICATION_FAILED.

NameTypeReqDescription
company_namestringyesLegal company name to match against the TIN
tinstringyesTIN/EIN to verify, 9 digits, e.g. 123456789

No output schema declared.

No examples provided.

team_create_role ~191

Create a customer-owned role with the given scope set. Scopes must exist in the platform registry (discover them with acct_list_scopes), be non-superadmin, and be held by the caller (no privilege escalation). To start from an existing role's scopes instead, use team_duplicate_role. Requires the team:write scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)
descriptionstringOptional free-text description of the role's purpose
display_namestringyesHuman-readable role name, e.g. 'Billing Viewer'
namestringyesMachine name for the role (unique within the customer), e.g. 'billing_viewer'
scopesarrayyesPermission scopes the role grants, e.g. ['team:read', 'billing:read']. Use acct_list_scopes to see the full catalog.

No output schema declared.

No examples provided.

team_delete_role ~97

Permanently delete a customer-owned role. HIGH IMPACT and irreversible. Fails when the role is still assigned to any user (reassign members via team_update_member_role first) or when it is a system role. Requires the team:write scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)
role_idstringyesRole UUID (find it via team_list_roles)

No output schema declared.

No examples provided.

team_duplicate_role ~162

Create a new customer-owned role copying the source role's scope set (the source may be a system role). Useful for customizing a system role: duplicate it, then adjust scopes with team_update_role. The caller must hold every copied scope. Requires the team:write scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)
descriptionstringOptional free-text description of the new role
display_namestringyesHuman-readable name for the new role
namestringyesMachine name for the new role (unique within the customer), e.g. 'support_admin_custom'
role_idstringyesSource role UUID to copy scopes from (find it via team_list_roles)

No output schema declared.

No examples provided.

team_get_role ~93

Get one role (system or customer-owned) with its full scope list. Use to inspect exactly what a role grants before assigning it (team_update_member_role) or editing it (team_update_role). Requires the team:read scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)
role_idstringyesRole UUID (find it via team_list_roles)

No output schema declared.

No examples provided.

team_list_members ~81

List every user holding a role in this customer, alphabetical by email. Use to see who is on the team and which role each member holds, or to find a user UUID for team_update_member_role / team_remove_member. Requires the team:read scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)

No output schema declared.

No examples provided.

team_list_roles ~75

List the system roles plus this customer's custom roles. Use to find a role UUID for team_update_member_role, team_get_role, team_update_role, team_duplicate_role, or team_delete_role. Requires the team:read scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)

No output schema declared.

No examples provided.

team_remove_member ~118

Remove a user's membership (role assignment) from this customer. HIGH IMPACT: the user immediately loses access and all their sessions are invalidated. You cannot remove yourself. Find the user UUID via team_list_members first. To change a member's permissions instead of removing them, use team_update_member_role. Requires the team:write scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)
user_idstringyesUser UUID of the team member (find it via team_list_members)

No output schema declared.

No examples provided.

team_update_member_role ~140

Assign a role (system or customer-owned, never superadmin) to a member of this customer, replacing their current role. The caller must hold every scope the role grants (no privilege escalation). Find user UUIDs via team_list_members and role UUIDs via team_list_roles. Requires the team:write scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)
role_idstringyesUUID of the role to assign (from team_list_roles); superadmin roles cannot be assigned
user_idstringyesUser UUID of the team member (find it via team_list_members)

No output schema declared.

No examples provided.

team_update_role ~178

Update the display name, description, and/or scope set of a customer-owned role. System roles are immutable. HIGH IMPACT when changing scopes: session invalidation fans out to every user holding the role. Only provided fields are changed. Use acct_list_scopes to discover valid scopes. Requires the team:write scope.

NameTypeReqDescription
customer_idstringyesYour customer UUID (shown in the WARP portal under Settings)
descriptionstringNew free-text description of the role's purpose
display_namestringNew human-readable role name
role_idstringyesRole UUID (find it via team_list_roles)
scopesarrayReplacement scope set, e.g. ['team:read', 'billing:read']. Replaces the role's entire scope list and invalidates sessions of affected users.

No output schema declared.

No examples provided.

trunk_add_ip_acl ~195

Add an IP/netmask to an owned trunk's ACL and sync it to Kamailio, allowing that source IP to send calls. The trunk's auth_type should include IP_ACL (IP_ACL, EITHER, or BOTH — check with trunk_get). Step-up MFA required. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INVALID_PAYLOAD, INTERNAL_ERROR.

NameTypeReqDescription
descriptionstringFree-text label for this ACL entry (e.g. 'HQ PBX')
enabledbooleanWhether the entry is active (default true)
ipstringyesIPv4 address to allow (e.g. 203.0.113.10)
netmaskintegerCIDR netmask bits, 0-32 (e.g. 32 for a single host)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_create ~309

Create a new trunk group on your account. Enforces your account's allowed number-classes and per-direction capacity ceilings (check acct_get_capacity first). Note: a capacity of 0 means 'direction disabled' — calls in that direction are rejected with 503 + Retry-After. Errors: NO_ACTIVE_CUSTOMER, INVALID_PAYLOAD, VALIDATION_ERROR, INTERNAL_ERROR.

NameTypeReqDescription
allowed_number_classesarrayNumber classes this trunk may carry (must be within the account's allowed classes)
auth_typestringyesAuthentication mode: IP_ACL (source-IP allowlist), DIGEST (SIP username/password), EITHER, or BOTH
capacity_channels_inboundintegerMax concurrent inbound channels; 0 disables inbound
capacity_channels_outboundintegerMax concurrent outbound channels; 0 disables outbound
capacity_cps_inboundintegerMax inbound calls-per-second. 0 is valid and means the direction is disabled (runtime gate returns 503 + Retry-After)
capacity_cps_outboundintegerMax outbound calls-per-second; 0 disables outbound
descriptionstringFree-text description of the trunk
namestringyesTrunk name (required)
sip_configobjectSIP config object persisted as JSONB (e.g. { codecs: [...], dtmf_mode: '...' }). The customer portal only writes codecs and dtmf_mode; other keys are admin-surface.

No output schema declared.

No examples provided.

trunk_create_credential ~122

Create a SIP Digest credential on an owned trunk. The trunk's auth_type must be DIGEST, EITHER, or BOTH (check with trunk_get). The plaintext password is returned exactly once — save it immediately. Step-up MFA required. Errors: INVALID_ID, NO_ACTIVE_CUSTOMER, TRUNK_UNOWNED, VALIDATION_ERROR, INVALID_PAYLOAD, CONFLICT, INTERNAL_ERROR.

NameTypeReqDescription
trunk_idstringyesTrunk group UUID (find it with trunk_list)
usernamestringyesSIP auth username for the new credential (required)

No output schema declared.

No examples provided.

trunk_create_endpoint ~245

Add a dispatcher endpoint (SIP destination) to an owned trunk, either as structured host/port/transport or as a raw_uri. Returns HTTP 207 with a warning when the Kamailio sync is deferred. Step-up MFA required. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INVALID_PAYLOAD, VALIDATION_ERROR, INTERNAL_ERROR.

NameTypeReqDescription
descriptionstringFree-text label for the endpoint
enabledbooleanWhether the endpoint is active in the dispatcher
hoststringSIP destination hostname or IP (structured form; mutually alternative to raw_uri)
portintegerSIP destination port (e.g. 5060)
priorityintegerFailover priority (lower is tried first)
raw_uristringRaw SIP URI (alternative to structured host/port/transport, e.g. sip:pbx.example.com:5061;transport=tls)
transportstringSIP transport protocol
trunk_idstringyesTrunk group UUID (find it with trunk_list)
weightintegerLoad-balancing weight among endpoints of the same priority

No output schema declared.

No examples provided.

trunk_delete ~107

Delete an owned trunk. Rejected with CONFLICT when the trunk has live calls (drain first — check trunk_get_throttle_state) or is referenced by CDRs (disable it via trunk_update instead). Run trunk_get_cascade_preview first to see what will be removed. Step-up MFA required. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, CONFLICT, INTERNAL_ERROR.

NameTypeReqDescription
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_delete_credential ~112

Delete a SIP credential and cascade removal from Redis + Kamailio usrloc. Idempotent (returns 204 when already gone). Use trunk_list_credentials first to find the credential id. Step-up MFA required. Errors: INVALID_ID, NO_ACTIVE_CUSTOMER, TRUNK_UNOWNED, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
cred_idstringyesSIP credential UUID (find it with trunk_list_credentials)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_delete_endpoint ~96

Remove a dispatcher endpoint from an owned trunk and drop it from Kamailio. Use trunk_list_endpoints first to find the endpoint id. Step-up MFA required. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
endpoint_idintegeryesEndpoint ID (integer, find it with trunk_list_endpoints)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_delete_ip_acl ~101

Remove an IP ACL entry from an owned trunk; that source IP can no longer send calls via IP auth. Use trunk_list_ips first to find the ip_id. Step-up MFA required. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
ip_idstringyesIP ACL entry UUID (find it with trunk_list_ips)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_get ~60

Get one trunk group you own, including its IP ACL entries. Use trunk_list first to find the trunk id. Errors: UNAUTHORIZED, INVALID_ID, NOT_FOUND.

NameTypeReqDescription
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_get_cascade_preview ~93

Get per-trunk cascade-preview counts (src_ips, tns_routed_here, active_calls, cdr_count) for an owned trunk. Use before trunk_delete to see what would be affected; active_calls is read live from Redis. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_get_endpoint ~84

Get one dispatcher endpoint on an owned trunk. Use trunk_list_endpoints first to find the endpoint id. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
endpoint_idintegeryesEndpoint ID (integer, find it with trunk_list_endpoints)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_get_throttle_state ~89

Get an owned trunk's configured capacity plus live CPS/channel counters. Use to check current load before draining, deleting, or resizing a trunk. On a Redis read failure the counters are null and counters_available=false (still HTTP 200). Errors: INVALID_ID, NO_ACTIVE_CUSTOMER, NOT_FOUND.

NameTypeReqDescription
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_list ~45

List all of your trunk groups, each with its IP ACL entries. Use this first to find a trunk_id for the other trunk_* tools. Errors: UNAUTHORIZED, INTERNAL_ERROR.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

trunk_list_credential_calls ~111

List active SIP dialogs for a credential's AOR. Note: the dialog-tracking store is not yet live, so this currently returns an empty array. Use trunk_list_credentials first to find the credential id. Errors: INVALID_ID, NO_ACTIVE_CUSTOMER, TRUNK_UNOWNED, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
cred_idstringyesSIP credential UUID (find it with trunk_list_credentials)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_list_credential_registrations ~116

List the current Kamailio usrloc bindings (live SIP registrations) for a credential's AOR. Use to see which devices are registered, or to find a contact_id for trunk_revoke_registration. Errors: INVALID_ID, NO_ACTIVE_CUSTOMER, TRUNK_UNOWNED, NOT_FOUND, GATEWAY_UNAVAILABLE.

NameTypeReqDescription
cred_idstringyesSIP credential UUID (find it with trunk_list_credentials)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_list_credentials ~83

List SIP Digest credentials for an owned trunk (no HA1, no password), each enriched with live registration_count and active_call_count. Use trunk_list first to find the trunk id. Errors: INVALID_ID, NO_ACTIVE_CUSTOMER, TRUNK_UNOWNED, INTERNAL_ERROR.

NameTypeReqDescription
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_list_endpoints ~73

List the dispatcher endpoints (SIP destinations WARP delivers calls to) for an owned trunk. Use trunk_list first to find the trunk id. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_list_ips ~81

List all IP ACL entries for an owned trunk. Use to audit which source IPs may send calls, or to find an ip_id for trunk_update_ip_acl / trunk_delete_ip_acl. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_revoke_registration ~143

Evict one SIP contact binding from Kamailio usrloc for a credential's AOR. Use trunk_list_credential_registrations first to find the contact_id. Step-up MFA required. Errors: INVALID_ID, MISSING_ID, NO_ACTIVE_CUSTOMER, TRUNK_UNOWNED, NOT_FOUND, GATEWAY_UNAVAILABLE.

NameTypeReqDescription
contact_idstringyesusrloc contact ID of the registration binding to revoke (from trunk_list_credential_registrations)
cred_idstringyesSIP credential UUID (find it with trunk_list_credentials)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_rotate_credential ~110

Generate a new password + HA1 for a SIP credential (username and realm unchanged). The old password stops working immediately and the new plaintext password is returned exactly once — save it immediately. Step-up MFA required. Errors: INVALID_ID, NO_ACTIVE_CUSTOMER, TRUNK_UNOWNED, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
cred_idstringyesSIP credential UUID (find it with trunk_list_credentials)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_update ~303

Update an owned trunk's settings (name, auth type, capacities, SIP config). The trunk being updated is excluded from the account capacity-sum check. POI assignment is silently ignored (admin-only). Step-up MFA required. Use trunk_list first to find the trunk id. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INVALID_PAYLOAD, VALIDATION_ERROR, INTERNAL_ERROR.

NameTypeReqDescription
allowed_number_classesarrayNumber classes this trunk may carry
auth_typestringAuthentication mode: IP_ACL, DIGEST, EITHER, or BOTH
capacity_channels_inboundintegerMax concurrent inbound channels; 0 disables inbound
capacity_channels_outboundintegerMax concurrent outbound channels; 0 disables outbound
capacity_cps_inboundintegerMax inbound calls-per-second; 0 disables inbound (503 + Retry-After at runtime)
capacity_cps_outboundintegerMax outbound calls-per-second; 0 disables outbound
descriptionstringFree-text description of the trunk
namestringTrunk name
sip_configobjectSIP config object persisted as JSONB (e.g. { codecs: [...], dtmf_mode: '...' }). The customer portal only writes codecs and dtmf_mode; other keys are admin-surface.
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_update_credential ~140

Toggle a SIP credential's enabled flag. Disabling drops the Redis HA1 + AOR and tears down active registrations (in-progress dialogs are NOT terminated); enabling restores them. Use trunk_list_credentials first to find the credential id. Step-up MFA required. Errors: INVALID_ID, NO_ACTIVE_CUSTOMER, TRUNK_UNOWNED, INVALID_PAYLOAD, NOT_FOUND, INTERNAL_ERROR.

NameTypeReqDescription
cred_idstringyesSIP credential UUID (find it with trunk_list_credentials)
enabledbooleantrue to enable the credential, false to disable it
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

trunk_update_endpoint ~270

Update a dispatcher endpoint on an owned trunk (structured host/port/transport fields or a raw_uri). Returns HTTP 207 with a warning when the Kamailio sync is deferred. Use trunk_list_endpoints first to find the endpoint id. Step-up MFA required. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INVALID_PAYLOAD, VALIDATION_ERROR, INTERNAL_ERROR.

NameTypeReqDescription
descriptionstringFree-text label for the endpoint
enabledbooleanWhether the endpoint is active in the dispatcher
endpoint_idintegeryesEndpoint ID (integer, find it with trunk_list_endpoints)
hoststringSIP destination hostname or IP (structured form; mutually alternative to raw_uri)
portintegerSIP destination port (e.g. 5060)
priorityintegerFailover priority (lower is tried first)
raw_uristringRaw SIP URI (alternative to structured host/port/transport, e.g. sip:pbx.example.com:5061;transport=tls)
transportstringSIP transport protocol
trunk_idstringyesTrunk group UUID (find it with trunk_list)
weightintegerLoad-balancing weight among endpoints of the same priority

No output schema declared.

No examples provided.

trunk_update_ip_acl ~132

Update the description and/or enabled flag of an owned trunk's IP ACL entry. Use trunk_list_ips first to find the ip_id. Step-up MFA required. Errors: NO_ACTIVE_CUSTOMER, INVALID_ID, NOT_FOUND, INVALID_PAYLOAD, INTERNAL_ERROR.

NameTypeReqDescription
descriptionstringNew free-text label for the ACL entry
enabledbooleantrue to enable the ACL entry, false to disable it
ip_idstringyesIP ACL entry UUID (find it with trunk_list_ips)
trunk_idstringyesTrunk group UUID (find it with trunk_list)

No output schema declared.

No examples provided.

warp_status ~62

Check warp-mcp configuration and API connectivity. Use this first when any other tool returns an auth error, or to confirm the server is set up correctly. Reports the server version, API base URL, whether an API key is configured, and whether the API accepts it.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.