sipflow
Sipflow MCP
SIP/VoIP/telecom grounding for AI agents. Vendor docs across ~40 stacks, 60+ RFCs, STIR/SHAKEN, trace and config analysis - every answer cites a verbatim
source_url.
Sipflow is a hosted, read-only Model Context Protocol server. It gives your editor or agent ~20 tools that ground SIP/VoIP answers in a curated corpus instead of training-data recall.
Live endpoint:
https://mcp.sipflow.dev/mcp(Streamable HTTP)Web app: https://www.sipflow.dev
Install page (one-click + all clients): https://www.sipflow.dev/tools/mcp
Install
Cursor (one-click)
Or from the Cursor Marketplace. This repo also ships as a Cursor plugin with a bundled Skill and Rule (see What's in this repo below).
Cursor (manual) - ~/.cursor/mcp.json
{
"mcpServers": {
"sipflow": { "url": "https://mcp.sipflow.dev/mcp" }
}
}VS Code - .vscode/mcp.json or user settings.json
{
"servers": {
"sipflow": {
"type": "http",
"url": "https://mcp.sipflow.dev/mcp"
}
}
}Requires VS Code 1.99+ with the GitHub Copilot extension.
Claude Desktop - claude_desktop_config.json
Claude Desktop is stdio-only, so use the mcp-remote shim:
{
"mcpServers": {
"sipflow": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.sipflow.dev/mcp"]
}
}
}Claude Code (CLI)
claude mcp add --transport http sipflow https://mcp.sipflow.dev/mcpCodex CLI - ~/.codex/config.toml
[mcp_servers.sipflow]
url = "https://mcp.sipflow.dev/mcp"Cline - Settings -> MCP Servers -> Edit JSON
{
"mcpServers": {
"sipflow": { "url": "https://mcp.sipflow.dev/mcp" }
}
}Continue - ~/.continue/config.yaml
mcpServers:
- name: sipflow
transport:
type: streamable-http
url: https://mcp.sipflow.dev/mcpWindsurf - ~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"sipflow": {
"serverUrl": "https://mcp.sipflow.dev/mcp"
}
}
}Goose - ~/.config/goose/config.yaml
extensions:
sipflow:
type: http
uri: https://mcp.sipflow.dev/mcp
enabled: trueGeneric / curl smoke-test
curl -sS -X POST https://mcp.sipflow.dev/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'What's in this repo
File / Folder | Marketplace | Purpose |
| Canonical server descriptor. PulseMCP auto-ingests from here. | |
| Remote HTTP listing. | |
| Plugin manifest. | |
| Cursor plugin auto-discovery | Points the plugin at the remote endpoint. |
| Cursor plugin | "When to use Sipflow" playbook surfaced as |
| Cursor plugin | Auto-attaches when editing |
| All | Logo. |
The Cursor-specific files (.cursor-plugin/, mcp.json, skills/, rules/)
are silently ignored by non-Cursor marketplaces - they only parse their own
manifest.
Tool catalog
All tools are read-only. The only outbound IO is dns_diagnose_sip_target
(DNS + TLS handshake) and validate_stir_shaken_identity (cert fetch).
Discovery / grounding - search_sip_docs, lookup_response_code,
lookup_sip_header
Detection - detect_sip_stack, detect_sip_vendor_from_config
Traces - minimize_sip_trace, render_sip_ladder,
sip_ladder_example, lint_sip_request, parse_sip_message,
diff_sip_messages
Config review - review_sip_config, webrtc_sip_checklist
SDP - parse_sdp, compare_sdp_offer_answer
STIR/SHAKEN - validate_stir_shaken_identity,
stir_attestation_explainer
Telecom - validate_e164_number, troubleshoot_response_code
Network - dns_diagnose_sip_target (rate-limited)
Share hydration - fetch_sipflow_share for sipflow.dev/share/<token> URLs
Resource - sipflow://docs/{vendor}/{id} for a single corpus chunk
Corpus coverage
~40 vendor stacks: Kamailio, OpenSIPS, FreeSWITCH, Asterisk (PJSIP + chan_sip), SIP.js, JsSIP, FreePBX, 3CX, OpenSER, Twilio, Cisco, ...
60+ RFCs: SIP, SDP, RTP, WebRTC core
STIR/SHAKEN: RFC 8224/8225/8226/8588/9027/9795
Branded calling: ATIS-1000074, ATIS-1000094, ATIS-1000084, CTIA BCID
Local development (Cursor plugin)
Test the plugin locally by symlinking this repo into Cursor's local plugin folder:
ln -s "$PWD" ~/.cursor/plugins/local/sipflowRun Developer: Reload Window in Cursor. You should see:
sipflowserver in Settings -> Features -> Model Context Protocolsip-debuggerskill under Settings -> Rules (Agent Decides)sip-groundingrule under Settings -> Rules
Submitting updates
When the MCP server changes, bump version in three places to keep
registries in sync:
server.json-> Official MCP Registry.cursor-plugin/plugin.json-> Cursor MarketplaceThe hosted server's
serverInfo.version
Then re-run mcp-publisher publish for the Official Registry. Cursor,
Smithery, and Glama auto-track the default branch.
License
MIT - see LICENSE.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cmendes0101/sipflow-cursor-plugin'
If you have feedback or need assistance with the MCP directory API, please join our Discord server