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

io.github.werebear73/sipnav-mcp

NUGET · WARETECH.SIPNAVMCP

MCP server for the SIPNAV VOIP switch.

−3 this week 72 Trust /100

Last scanned (2 hours ago)

Scores higher than 47% of NuGet servers

Category Communication

Trust breakdown (7 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 → Why this is hard to score →

Supply Chain Security100
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency6
  • Repository check failed: the declared repository URL returned HTTP 404. See how to fix → View diagnostics → Fail
  • Build provenance not yet verified. View diagnostics → Unverified
  • Licence could not be checked: the licence is shipped as a file inside the package, not declared as a standard (SPDX) licence identifier, so we cannot tell whether it is OSI-approved.Unverified
  • Actively maintained (last published 127 days ago).Pass
  • Security-disclosure policy not yet verified: we couldn't inspect the source repository.Unverified
Schema Quality & AI Usability75
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 5168 tokens (~57/item across 90 items; 90 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management80
  • Stability observed for 24 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
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 6 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "user_permission_remove" implies "remove" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 90 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
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.

  • 5 Nov 26 −3
    • Stability: pass → 0.80 functional
  • 31 Oct 26 0
    • Source repository: unverified → fail ▼ security
  • 30 Oct 26 0
    • Provenance: fail → unverified ▼ security
    • Stability: 0.97 → pass security
  • 29 Oct 26 0
    • Stability: pass → 0.97 functional
  • 23 Oct 26 0
    • Stability: 0.97 → pass security
  • 22 Oct 26 0
    • Stability: pass → 0.97 functional
  • 16 Oct 26 0
    • Stability: 0.97 → pass security
  • 15 Oct 26 +1

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

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 5 Nov 2026 · Analysed nuget/Waretech.SipnavMcp@0.1.3

Provenance Inconclusive

We could not complete the check, so nothing is claimed either way. This is a gap on our side, not a finding about the package.

Result Inconclusive
Ecosystem nuget
Reason Signature present, unverified

Signer

Signed as Repository signature, names nuget.org
Subject CN=NuGet.org Repository by Microsoft,O=NuGet.org Repository by Microsoft,L=Redmond,ST=Washington,C=US
Issuer CN=DigiCert Trusted G4 Code Signing RSA4096 SHA384 2021 CA1,O=DigiCert\, Inc.,C=US
Valid from 23 Feb 2024
Valid until 18 May 2027
Service index https://api.nuget.org/v3/index.json
Owners werebear73

Background: How many MCP packages publish verified provenance →

Dependencies 0 packages
Packages resolved 0
Tree resolution Complete

Background: SBOMs and build attestations, explained →

Registry declarations For information only

What the registry and the package's own manifest say about this version. The publisher or the registry writes these, nothing here is verified, and none of it affects the score.

Repository https://github.com/werebear73/sipnav-mcp
Repository type git
Commit b9bc8abbb71843d7a42e0a263531da50afdbcb0e
Project URL https://github.com/werebear73/sipnav-mcp
MCP tools · 90 exposed · ~5,168 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. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
account_carriers_list ~52

List carriers for a specific account with detailed data.

NameTypeReqDescription
account_idintegeryesAccount ID
pageinteger|null–Page number
per_pageinteger|null–Items per page

No output schema declared.

No examples provided.

account_hosts_create ~82

Create a new account host endpoint. Requires account_id and ip_addr.

NameTypeReqDescription
json_bodystringyesJSON object. Required: account_id (int), ip_addr (string). Optional: port, enabled (0/1), bypass_media, b2bua, grp, mask, tech_prefix, limit_cps, limit_sessions, type, endpoint_name

No output schema declared.

No examples provided.

account_hosts_delete ~31

Delete an account host by its ah_id.

NameTypeReqDescription
idstringyesAccount host ID (ah_id)

No output schema declared.

No examples provided.

account_hosts_get ~32

Retrieve a specific account host by its ah_id.

NameTypeReqDescription
idstringyesAccount host ID (ah_id)

No output schema declared.

No examples provided.

account_hosts_list ~65

List account hosts with pagination. Filter by account_id.

NameTypeReqDescription
account_idinteger|null–Filter by account ID
pageinteger|null–Page number (default: 1)
per_pageinteger|null–Items per page (default: 15)

No output schema declared.

No examples provided.

account_hosts_update ~76

Update an existing account host.

NameTypeReqDescription
idstringyesAccount host ID (ah_id)
json_bodystringyesJSON object with fields to update: ip_addr, port, enabled, bypass_media, b2bua, grp, mask, tech_prefix, limit_cps, limit_sessions, type, endpoint_name

No output schema declared.

No examples provided.

account_rate_deck_download ~47

Get download link for an account rate deck file.

NameTypeReqDescription
idintegeryesRate deck ID
localinteger–1 for local, 0 for international

No output schema declared.

No examples provided.

account_rate_deck_list ~77

Get account rate decks. Filter by local/international and account_id.

NameTypeReqDescription
account_idinteger|null–Filter by account ID
enabledinteger|null–Filter enabled (1) or disabled (0) rate decks
localinteger|null–1 for local, 0 for international rate decks

No output schema declared.

No examples provided.

account_rate_deck_lookup ~103

Find destination pricing rows in an account rate deck CSV (for example, South Africa).

NameTypeReqDescription
account_idintegeryesAccount ID
destination_querystringyesDestination search text (for example: South Africa)
enabledinteger–Filter enabled (1) or disabled (0) rate decks
localinteger–1 for local, 0 for international
max_resultsinteger–Maximum matching rows to return

No output schema declared.

No examples provided.

account_rate_deck_process ~70

Initiate processing of an uploaded account rate deck CSV file.

NameTypeReqDescription
json_bodystringyesJSON object with processing parameters. Required: carrier_id, account_id, rdId, local, restrict_areas, maxEffectiveStart, effectiveStart, effectiveEnd, filename, type, fieldsmap

No output schema declared.

No examples provided.

account_rate_deck_upload ~85

Upload a CSV file for account rate deck. Provide a local file path to the CSV file (max 2MB).

NameTypeReqDescription
account_idintegeryesAccount ID to associate the rate deck with
file_pathstringyesAbsolute path to the CSV file on the local filesystem
localintegeryes1 for local, 0 for international

No output schema declared.

No examples provided.

accounts_create ~62

Create a new account. Requires account_name and customer_id at minimum.

NameTypeReqDescription
json_bodystringyesJSON object with account fields. Required: account_name, customer_id. Optional: status, limit_cps, limit_sessions, international, block_wireless, etc.

No output schema declared.

No examples provided.

accounts_get ~24

Retrieve a single account by ID.

NameTypeReqDescription
idintegeryesAccount ID

No output schema declared.

No examples provided.

accounts_list ~115

List accounts with pagination. System/platform admins see all accounts, others see only allowed accounts.

NameTypeReqDescription
columnsstring|null–Comma-separated columns to return
orderstring|null–Sort order: asc or desc (default: desc)
pageinteger|null–Page number (default: 1)
per_pageinteger|null–Items per page (default: 100)
sortstring|null–Sort column: account_id, account_name, limit_cps, limit_sessions, international

No output schema declared.

No examples provided.

accounts_update ~39

Update an existing account by ID.

NameTypeReqDescription
idintegeryesAccount ID
json_bodystringyesJSON object with account fields to update

No output schema declared.

No examples provided.

call_restrictions_history ~55

Retrieve call restriction change history. Supports paging via per_page + page_token.

NameTypeReqDescription
page_tokenstring|null–Opaque pagination cursor from a previous response
per_pageinteger|null–Items per page

No output schema declared.

No examples provided.

call_restrictions_num_create ~290

Create a number-based call restriction. Parameters are sent as query parameters. Dates are ISO-8601 (e.g. 2026-05-30T00:00:00Z). Known Delta API limitation: restriction_start must be in the future — the server rejects today/now and effectively forces a next-day floor (issue #24). To start a restriction today, create it with a next-day start, then call call_restrictions_num_update to backdate restriction_start to the true effective time (the update endpoint has no such restriction).

NameTypeReqDescription
account_idintegeryesAccount ID the restriction applies to
carrier_idintegeryesCarrier ID the restriction applies to
dst_numberstringyesDestination number to restrict
notestring|null–Free-text note (optional). Delta API caps this at 100 characters; longer values are rejected (issue #25) — keep it concise.
priorityintegeryesPriority (lower applies first)
restriction_endstringyesRestriction end (ISO-8601 date-time)
restriction_startstringyesRestriction start (ISO-8601 date-time). Delta API requires a future value; same-day/now is rejected (issue #24).
src_match_typeintegeryesSource match type
src_numberstring|null–Source number (optional)

No output schema declared.

No examples provided.

call_restrictions_num_disable ~67

Disable (deactivate) a number-based call restriction by ID. This is the removal operation — the API has no hard delete.

NameTypeReqDescription
idintegeryesRestriction ID
platform_idinteger|null–Platform ID (optional; only for non-default platforms)

No output schema declared.

No examples provided.

call_restrictions_num_get ~32

Retrieve a single number-based call restriction by ID.

NameTypeReqDescription
idintegeryesRestriction ID

No output schema declared.

No examples provided.

call_restrictions_num_list ~117

List number-based call restrictions. Supports paging via per_page + page_token (an opaque cursor returned by a prior call).

NameTypeReqDescription
account_idinteger|null–Filter by account ID
carrier_idinteger|null–Filter by carrier ID
dst_numberstring|null–Filter by destination number
page_tokenstring|null–Opaque pagination cursor from a previous response
per_pageinteger|null–Items per page
src_numberstring|null–Filter by source number

No output schema declared.

No examples provided.

call_restrictions_num_update ~258

Update a number-based call restriction (parameters sent as query params). IMPORTANT: the API applies an update only when the FULL field set is supplied — a partial update (restriction_id plus a few fields) returns success but silently changes nothing. Pass restriction_id together with priority, carrier_id, account_id, src_match_type, dst_number, restriction_start, restriction_end (and src_number/note if used), carrying over the current values for any field you are not changing. Tip: call call_restrictions_num_get first to read current values.

NameTypeReqDescription
account_idinteger|null–Account ID
carrier_idinteger|null–Carrier ID
dst_numberstring|null–Destination number
notestring|null–Free-text note (max 100 chars; #25)
priorityinteger|null–Priority
restriction_endstring|null–Restriction end (ISO-8601 date-time)
restriction_idintegeryesID of the restriction to update
restriction_startstring|null–Restriction start (ISO-8601 date-time)
src_match_typeinteger|null–Source match type
src_numberstring|null–Source number

No output schema declared.

No examples provided.

call_restrictions_ocn_create ~144

Create an OCN-based call restriction. Parameters are sent as query parameters. Dates are ISO-8601.

NameTypeReqDescription
account_idintegeryesAccount ID the restriction applies to
carrier_idintegeryesCarrier ID the restriction applies to
dst_ocnstringyesDestination OCN
notestring|null–Free-text note (optional; max 100 chars; #25)
restriction_endstringyesRestriction end (ISO-8601 date-time)
restriction_startstringyesRestriction start (ISO-8601 date-time)
src_ocnstringyesSource OCN

No output schema declared.

No examples provided.

call_restrictions_ocn_disable ~50

Disable (deactivate) an OCN-based call restriction by ID. This is the removal operation — the API has no hard delete.

NameTypeReqDescription
idintegeryesRestriction ID

No output schema declared.

No examples provided.

call_restrictions_ocn_get ~34

Retrieve a single OCN-based call restriction by ID.

NameTypeReqDescription
idintegeryesRestriction ID

No output schema declared.

No examples provided.

call_restrictions_ocn_list ~114

List OCN-based call restrictions. Supports paging via per_page + page_token.

NameTypeReqDescription
account_idinteger|null–Filter by account ID
carrier_idinteger|null–Filter by carrier ID
dst_ocninteger|null–Filter by destination OCN
page_tokenstring|null–Opaque pagination cursor from a previous response
per_pageinteger|null–Items per page
src_ocninteger|null–Filter by source OCN

No output schema declared.

No examples provided.

call_restrictions_ocn_update ~229

Update an OCN-based call restriction (parameters sent as query params). IMPORTANT: the API applies an update only when the FULL field set is supplied — a partial update returns success but silently changes nothing. Pass restriction_id together with carrier_id, account_id, src_ocn, dst_ocn, restriction_start, restriction_end (and note if used), carrying over the current values for any field you are not changing. Tip: call call_restrictions_ocn_get first to read current values.

NameTypeReqDescription
account_idinteger|null–Account ID
carrier_idinteger|null–Carrier ID
dst_ocnstringyesDestination OCN
notestring|null–Free-text note (max 100 chars; #25)
restriction_endstring|null–Restriction end (ISO-8601 date-time)
restriction_idintegeryesID of the restriction to update
restriction_startstring|null–Restriction start (ISO-8601 date-time)
src_ocnstringyesSource OCN

No output schema declared.

No examples provided.

carrier_account_disable ~26

Disable a carrier-account relationship.

NameTypeReqDescription
idintegeryesCarrier-account relationship ID

No output schema declared.

No examples provided.

carrier_account_enable ~44

Enable a carrier-account relationship.

NameTypeReqDescription
json_bodystringyesJSON object with carrier_id, account_id, and optional fields like limit_cps, limit_sessions, priority

No output schema declared.

No examples provided.

carrier_accounts_list ~26

List accounts for a specific carrier.

NameTypeReqDescription
carrier_idintegeryesCarrier ID

No output schema declared.

No examples provided.

carrier_gateway_create ~46

Create a new carrier gateway.

NameTypeReqDescription
json_bodystringyesJSON object with gateway fields. Required: carrier_id, ip_addr. Optional: port, enabled, description, etc.

No output schema declared.

No examples provided.

carrier_gateway_delete ~29

Delete a carrier gateway by ID.

NameTypeReqDescription
idstringyesCarrier gateway ID (cg_id)

No output schema declared.

No examples provided.

carrier_gateway_get ~30

Retrieve a specific carrier gateway by ID.

NameTypeReqDescription
idstringyesCarrier gateway ID (cg_id)

No output schema declared.

No examples provided.

carrier_gateway_list ~50

List carrier gateways with pagination.

NameTypeReqDescription
carrier_idinteger|null–Filter by carrier ID
pageinteger|null–Page number
per_pageinteger|null–Items per page

No output schema declared.

No examples provided.

carrier_gateway_update ~42

Update an existing carrier gateway.

NameTypeReqDescription
idstringyesCarrier gateway ID (cg_id)
json_bodystringyesJSON object with fields to update

No output schema declared.

No examples provided.

carrier_rate_deck_download ~76

Download a carrier rate deck file. The API returns a signed URL on an internal host that external automation often cannot reach, so this tool follows the URL server-side and returns the CSV content directly.

NameTypeReqDescription
idintegeryesRate deck ID
localinteger–1 for local, 0 for international

No output schema declared.

No examples provided.

carrier_rate_deck_failures ~88

Download the over-ceiling/failed rows from a processed carrier rate deck. Failures are per-deck, not per-carrier: pass the crd_id returned by carrier_rate_deck_process or carrier_rate_deck_list.

NameTypeReqDescription
crd_idintegeryesCRD ID (rate deck ID) returned by carrier_rate_deck_process or carrier_rate_deck_list

No output schema declared.

No examples provided.

carrier_rate_deck_list ~65

Get current carrier rate deck details.

NameTypeReqDescription
carrier_idinteger|null–Filter by carrier ID
enabledinteger|null–Filter enabled (1) or disabled (0)
localinteger|null–1 for local, 0 for international

No output schema declared.

No examples provided.

carrier_rate_deck_process ~67

Initiate processing of an uploaded carrier rate deck CSV file.

NameTypeReqDescription
json_bodystringyesJSON object with processing parameters. Required: carrier_id, crd_id, local, max_rate, restrict_areas, effectiveStart, effectiveEnd, negative, filename, fieldsmap

No output schema declared.

No examples provided.

carrier_rate_deck_status ~32

Check the status of an uploaded carrier rate deck.

NameTypeReqDescription
carrier_idinteger|null–Carrier ID

No output schema declared.

No examples provided.

carrier_rate_deck_upload ~70

Upload a CSV file for carrier rate deck.

NameTypeReqDescription
carrier_idintegeryesCarrier ID to associate the rate deck with
file_pathstringyesAbsolute path to the CSV file on the local filesystem
localintegeryes1 for local, 0 for international

No output schema declared.

No examples provided.

carriers_create ~63

Create a new carrier. Requires carrier_name and customer_id.

NameTypeReqDescription
json_bodystringyesJSON object. Required: carrier_name, customer_id. Optional: carrier_account_number, carrier_group, status, cps_limit, session_limit, international, billing_time_zone, etc.

No output schema declared.

No examples provided.

carriers_get ~26

Get details for a specific carrier by ID.

NameTypeReqDescription
idintegeryesCarrier ID

No output schema declared.

No examples provided.

carriers_list ~65

List carriers with pagination and detailed data for each carrier.

NameTypeReqDescription
orderstring|null–Sort order: asc or desc
pageinteger|null–Page number
per_pageinteger|null–Items per page
sortstring|null–Sort column

No output schema declared.

No examples provided.

carriers_update ~39

Update an existing carrier by ID.

NameTypeReqDescription
idintegeryesCarrier ID
json_bodystringyesJSON object with carrier fields to update

No output schema declared.

No examples provided.

cdr_search ~254

Search Call Detail Records (CDRs). The API caps the window at 24 hours. All arguments are optional filters; omitted ones are not sent. Dates are ISO-8601 (e.g. 2026-05-30T00:00:00Z).

NameTypeReqDescription
account_idstring|null–Account ID to filter by
carrier_idstring|null–Carrier ID to filter by. Known limitation: the Delta API currently ignores this filter and returns platform-wide results regardless (server-side issue #26).
dst_numberstring|null–Destination number
end_timestring|null–Window end (ISO-8601 date-time)
limitinteger|null–Maximum number of records to return
lrn_numberstring|null–LRN number to search for
max_durationinteger|null–Maximum call duration in seconds
min_durationinteger|null–Minimum call duration in seconds
search_completedinteger|null–Filter by completion status (1 = completed, 0 = not completed)
src_numberstring|null–Source number
start_datestring|null–Window start (ISO-8601 date-time)

No output schema declared.

No examples provided.

companies_get ~24

Retrieve a single company by ID.

NameTypeReqDescription
idintegeryesCompany ID

No output schema declared.

No examples provided.

companies_get_balance ~26

Get the balance for a specific company.

NameTypeReqDescription
idintegeryesCompany ID

No output schema declared.

No examples provided.

companies_list ~62

List companies with pagination and detailed data.

NameTypeReqDescription
orderstring|null–Sort order: asc or desc
pageinteger|null–Page number
per_pageinteger|null–Items per page
sortstring|null–Sort column

No output schema declared.

No examples provided.

companies_names ~21

Get a simple list of company names (id and name only).

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

companies_update ~38

Update a company by ID.

NameTypeReqDescription
idintegeryesCompany ID
json_bodystringyesJSON object with company fields to update

No output schema declared.

No examples provided.

Install

How do I install the io.github.werebear73/sipnav-mcp server?

io.github.werebear73/sipnav-mcp runs locally as a NuGet package, launched with dnx Waretech.SipnavMcp@0.1.3 --yes. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.

nuget · Waretech.SipnavMcp

# add to Claude Code
claude mcp add werebear73-sipnav-mcp -- dnx Waretech.SipnavMcp@0.1.3 --yes
Common questions

What is the io.github.werebear73/sipnav-mcp server?

io.github.werebear73/sipnav-mcp is listed in the public MCP registry as io.github.werebear73/sipnav-mcp. MCP server for the SIPNAV VOIP switch. This page covers its NuGet package (Waretech.SipnavMcp).

Is the io.github.werebear73/sipnav-mcp server safe to use?

io.github.werebear73/sipnav-mcp scores 72 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.werebear73/sipnav-mcp server expose?

io.github.werebear73/sipnav-mcp exposes 90 tools: static_states, file_download, accounts_list, user_permission_remove, carriers_update, and 85 more. Their descriptions and schemas cost roughly 5,168 tokens of context every time the server is loaded.

Is the io.github.werebear73/sipnav-mcp server still maintained?

io.github.werebear73/sipnav-mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.