sipflow

sipflow

Enables AI agents to access curated SIP/VoIP documentation, troubleshoot traces, and analyze telecom configurations with 20+ read-only tools.

Category
Visit Server

README

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.

smithery badge

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.

Install

Cursor (one-click)

Install Sipflow in Cursor

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/mcp

Codex 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/mcp

Windsurf - ~/.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: true

Generic / 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
server.json Official MCP Registry Canonical server descriptor. PulseMCP auto-ingests from here.
smithery.yaml Smithery Remote HTTP listing.
.cursor-plugin/plugin.json Cursor Marketplace Plugin manifest.
mcp.json Cursor plugin auto-discovery Points the plugin at the remote endpoint.
skills/sip-debugger/ Cursor plugin "When to use Sipflow" playbook surfaced as /sip-debugger.
rules/sip-grounding.mdc Cursor plugin Auto-attaches when editing .pcap, kamailio/opensips/freeswitch/asterisk configs, dialplans, .sdp.
assets/logo.svg 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/sipflow

Run Developer: Reload Window in Cursor. You should see:

  • sipflow server in Settings -> Features -> Model Context Protocol
  • sip-debugger skill under Settings -> Rules (Agent Decides)
  • sip-grounding rule 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 Marketplace
  • The 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.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured