Search SIP / VoIP documentation (RAG)
search_sip_docs[cost: rag (one embed + one vector search) | read-only, network: outbound to embed model only]
Vector search over Sipflow's curated VoIP knowledge base: vendor docs (Asterisk, FreeSWITCH, Kamailio, OpenSIPS, Twilio, Cisco, etc.), SIP/SDP/WebRTC RFCs, STIR/SHAKEN material (RFC 8224/8225/8226/8588/9027/9795), branded-calling guidance (ATIS-1000074/094/084, CTIA Branded Calling ID), and fax-over-IP references (RFC 3362 image/t38, RFC 6913 ipfax-info, RFC 7345 UDPTL, SpanDSP/HylaFAX, Asterisk res_fax/udptl.conf, FreeSWITCH mod_spandsp/t38_gateway, Cisco CUBE T.38).
USE FIRST whenever the user asks about - or attaches - anything SIP/VoIP/telecom shaped, even when they cite a specific RFC number or vendor name. The corpus has the current text and your training data may not. Trigger conditions: vendor configs (kamailio.cfg, sip.conf, pjsip.conf, FreeSWITCH XML profile, opensips.cfg, res_fax.conf / udptl.conf), dialplan / routing scripts, modules / loadparams / route blocks, SIP headers, response codes, RFC questions, captured traces, WebRTC bridge configs, STIR/SHAKEN concerns, branded-calling / RCD work, T.38 / T.30 fax decoding or reinvite failures.
Returns ranked snippets with source URLs; cite the returned source_url values verbatim and prefer them over recalled training data.
Examples of when to use:
"does this kamailio.cfg look standard for WebRTC + SIP users?"
"why would Asterisk PJSIP reject this re-INVITE?"
"what does Kamailio's loose_route() do? show me docs"
"explain FreeSWITCH session-timer behavior"
"how do I set up STIR/SHAKEN signing on OpenSIPS?"
"what does ATIS-1000074 say about A-level attestation?"
"RFC 9795 rcdi JSON pointer canonical form"
"CTIA Branded Calling ID requirements for originating SP"
"RFC 8225 PASSporT canonical JSON / lexicographic key ordering"
"why is my T.38 reinvite getting 488 from a Cisco CUBE?"
"Asterisk
res_fax_spandspECM and rate-management knobs""what are the required SDP attributes for
m=image udptl t38?"
Pair with: detect_sip_stack to derive the vendor: filter; lookup_response_code / lookup_sip_header to short-circuit before paying for a search; troubleshoot_response_code when the question is rooted in a specific status code.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of snippets to return (1-15). | |
| query | Yes | Natural-language question or keywords. Be specific - include vendor name, header, error code, module, or RFC if known. Multi-sentence queries are fine. | |
| vendor | No | Restrict results to a single vendor/stack (e.g. "asterisk", "kamailio"). Omit to search all vendors. | |
| sourceType | No | Restrict by document type. Available: rfc | pbx (Asterisk/FreeSWITCH/Kamailio/OpenSIPS) | sbc (SBCs) | cpaas (Twilio/Telnyx/...) | uc-cloud (Teams/Zoom/...) | endpoint (phones/softphones) | stir-shaken | transport (RTP/SRTP/DTLS/ICE/STUN/TURN RFCs) | regulatory | observability. |