You're viewing a demo portfolio

Join the waitlist
PRSM

submit_sipflow_feedback

Active

Tool of Sipflow

declared in 0.2.0

[cost: write (single MongoDB row) | rate-limited per IP: 3/min, 20/day] Send the Sipflow team feedback when something doesn't work, a vendor or RFC isn't covered, or a tool produced a wrong/incomplete answer. Categories: - docs_gap: search_sip_docs returned nothing useful, vendor missing, coverage incomplete - tool_bug: a tool errored, returned garbage, or behaved unexpectedly on a real input - wrong_answer: the answer it produced was incorrect for the SIP/VoIP question asked - feature_request: a new tool, dataset, or behavior the user wants - general: anything else PRIVACY CONTRACT (MUST FOLLOW): 1. Use this tool only when the user explicitly asks to send feedback, OR when you have completed the user's primary task and there is a clear, actionable gap worth reporting. 2. ALWAYS show the user the exact `summary` + `details` + other fields you plan to send and wait for an explicit yes before calling this tool. Set `userConsent: true` only after that confirmation. 3. NEVER include raw SIP traces, INVITE/REGISTER bodies, SDP, phone numbers, IP addresses, Call-IDs, or any other PII. Summarize in your own words instead. The server runs a sanitizer as a backstop, but you are the first line of defense. 4. The `contact` field is optional and may only be filled when the user explicitly provides an email and asks you to include it. 5. The `traceExcerpt` field is optional and accepts a sanitized SIP message text block (Via/From/To/Call-ID, optional minimal SDP) the user explicitly approved attaching. Pipe `minimize_sip_trace` output here, NEVER raw INVITE / REGISTER bodies or full pcap text. Phone numbers, IPs, and emails are scrubbed server-side as a backstop; the agent must still summarize / minimize first. The same `userConsent: true` covers both the text fields and the excerpt - if the user wants the excerpt included you must show it to them before sending. The tool returns a ticket id (fb_xxxxxxxx) and stores one anonymous row keyed by your daily-rotating IP hash (no raw IP, no account). Rate-limited at 3/min and 20/day per IP hash.

Parameters schema

{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "category",
    "summary",
    "userConsent"
  ],
  "properties": {
    "contact": {
      "type": "string",
      "maxLength": 200,
      "description": "Optional email the user can be reached at. Only include when the user explicitly provides one and asks you to attach it."
    },
    "details": {
      "type": "string",
      "maxLength": 4000,
      "description": "Longer description: what the user was trying to do, what happened, what they expected. PII-free."
    },
    "summary": {
      "type": "string",
      "maxLength": 500,
      "minLength": 1,
      "description": "Short one-line description of the feedback. Will be shown to humans triaging. PII-free."
    },
    "category": {
      "enum": [
        "docs_gap",
        "tool_bug",
        "wrong_answer",
        "feature_request",
        "general"
      ],
      "type": "string",
      "description": "Bucket. Use docs_gap for missing RAG coverage, tool_bug for broken behavior, wrong_answer for incorrect output, feature_request for new asks, general for anything else."
    },
    "relatedTool": {
      "type": "string",
      "maxLength": 200,
      "description": "Name of the Sipflow MCP tool the feedback relates to, if any (e.g. `search_sip_docs`, `troubleshoot_response_code`)."
    },
    "userConsent": {
      "type": "boolean",
      "const": true,
      "description": "MUST be true. Set this only after you have shown the user the exact payload above (including any `traceExcerpt`) and they have confirmed they want it sent."
    },
    "relatedQuery": {
      "type": "string",
      "maxLength": 200,
      "description": "The search query / question that failed or returned poor results. PII-free."
    },
    "traceExcerpt": {
      "type": "string",
      "maxLength": 32000,
      "description": "Optional sanitized SIP message text the user explicitly approved attaching. Use the output of `minimize_sip_trace` (or a hand-scrubbed Via/From/To/Call-ID/CSeq block, optionally with minimal SDP). NEVER paste raw INVITE / REGISTER bodies, full pcap text, or anything containing phone numbers / IPs / Call-IDs you have not already redacted. The server runs a backstop sanitizer that redacts phones, IPs, and emails. Hard cap 32 kB."
    },
    "vendorOrTopic": {
      "type": "string",
      "maxLength": 200,
      "description": "Vendor slug, RFC number, or topic the feedback relates to (e.g. 'freeswitch', 'RFC 3261', 'fax-over-IP')."
    }
  },
  "additionalProperties": false
}

What this tool wraps· 1 endpoint

min confidence0.700.50

Parent server

Sipflow

https://github.com/cmendes0101/sipflow-cursor-plugin

1/7 registries
View full server →