Sipp Server
FreeNot checkedEnables interaction with SIPp, a SIP protocol testing tool, allowing users to run SIPp scenarios, create custom XML scenarios, retrieve statistics, and verify S
About
Enables interaction with SIPp, a SIP protocol testing tool, allowing users to run SIPp scenarios, create custom XML scenarios, retrieve statistics, and verify SIPp installation through natural language queries.
README
License: MIT Node.js Version MCP
A Model Context Protocol (MCP) server for interacting with SIPp, the SIP protocol testing tool.
Use SIPp testing capabilities directly from Claude Desktop, VS Code, or any MCP-compatible client!
Quick Start
Install from npm
npm install -g sipp-mcp-server
Or install from source
# Clone the repository
git clone https://github.com/randybritsch/sipp-mcp-server.git
cd sipp-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Test with MCP Inspector
npx @modelcontextprotocol/inspector node build/index.js
Then configure in Claude Desktop or VS Code.
Features
This MCP server provides tools to:
- Run SIPp Scenarios: Execute SIPp tests in UAC (client) or UAS (server) mode
- Create Custom Scenarios: Generate custom XML scenario files for testing
- Get Statistics: Parse and display SIPp test statistics
- Check Version: Verify SIPp installation and version
Prerequisites
- Node.js 16 or higher
- SIPp installed and available in your PATH
- Download from: https://github.com/SIPp/sipp
- Or install via package manager:
- Ubuntu/Debian:
sudo apt-get install sipp - macOS:
brew install sipp - Windows: Download binary from releases
- Ubuntu/Debian:
Installation
If installed globally via npm, the server is automatically available as sipp-mcp-server.
If installed from source, use npm link to make it globally available, or reference the full path to build/index.js in your configuration.
Setup Instructions
Setup with Claude Desktop
Follow these steps to integrate the SIPp MCP server with Claude Desktop:
Step 1: Locate the Claude Desktop Configuration File
Open your Claude Desktop configuration file:
Windows:
# Open in notepad
notepad %APPDATA%\Claude\claude_desktop_config.json
# Or open in VS Code
code %APPDATA%\Claude\claude_desktop_config.json
macOS:
# Open in default editor
open ~/Library/Application\ Support/Claude/claude_desktop_config.json
# Or open in VS Code
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
Step 2: Add the SIPp MCP Server Configuration
Add the following configuration to your claude_desktop_config.json file:
Using global npm installation (recommended):
{
"mcpServers": {
"sipp": {
"command": "sipp-mcp-server"
}
}
}
Or using local installation:
Windows:
{
"mcpServers": {
"sipp": {
"command": "node",
"args": ["C:\\Users\\YOUR_USERNAME\\sipp-mcp-server\\build\\index.js"]
}
}
}
macOS/Linux:
{
"mcpServers": {
"sipp": {
"command": "node",
"args": ["/absolute/path/to/sipp-mcp-server/build/index.js"]
}
}
}
Important:
- If using local installation, replace
YOUR_USERNAMEor the path with your actual absolute path - On Windows, use double backslashes (
\\) in the JSON file - If you have other MCP servers, add the
sippentry to the existingmcpServersobject
Step 3: Restart Claude Desktop
- Completely quit Claude Desktop (not just close the window)
- Relaunch Claude Desktop
- The SIPp MCP server will start automatically
Step 4: Verify the Connection
- Look for the MCP icon (🔌) in the bottom-right corner of the Claude chat input
- Click the icon to see available tools
- You should see the SIPp tools:
run_sipp_scenario,create_sipp_scenario,get_sipp_statistics, andcheck_sipp_version
Step 5: Test the Server
Try asking Claude:
Check if SIPp is installed on my system
Claude should use the check_sipp_version tool to verify your SIPp installation.
Troubleshooting Claude Desktop
Server not appearing:
- Check that Node.js is installed:
node --version - Verify the path in your config file is correct and absolute
- Check Claude Desktop logs:
- Windows:
%APPDATA%\Claude\logs - macOS:
~/Library/Logs/Claude
- Windows:
Permission errors:
- Ensure the build/index.js file exists
- Run
npm run buildagain if needed
Setup with VS Code
The SIPp MCP server can be used with VS Code through GitHub Copilot's agent mode.
Step 1: Ensure Prerequisites
- Install the GitHub Copilot extension
- Ensure you have Copilot access with agent mode enabled
- Make sure the project is built:
npm run build
Step 2: Configure MCP in VS Code
Using global npm installation (recommended):
Create .vscode/mcp.json in your workspace:
{
"mcpServers": {
"sipp": {
"command": "sipp-mcp-server"
}
}
}
Or using local installation:
The MCP configuration file is already created at .vscode/mcp.json:
{
"mcpServers": {
"sipp": {
"command": "node",
"args": ["c:\\Users\\randy.britsch\\sipp-mcp-server\\build\\index.js"]
}
}
}
Update the path if your project is in a different location:
- Open
.vscode/mcp.json - Update the path in the
argsarray to match your project location - Use double backslashes on Windows:
c:\\Users\\...
Step 3: Alternative - User or Workspace Settings
You can also configure MCP servers in VS Code settings:
Option A: Workspace Settings (recommended for project-specific servers)
- Open VS Code Command Palette (
Ctrl+Shift+PorCmd+Shift+P) - Type "Preferences: Open Workspace Settings (JSON)"
- Add the MCP configuration:
{
"mcp.servers": {
"sipp": {
"command": "node",
"args": ["${workspaceFolder}/build/index.js"]
}
}
}
Option B: User Settings (for global access)
- Open VS Code Command Palette (
Ctrl+Shift+PorCmd+Shift+P) - Type "Preferences: Open User Settings (JSON)"
- Add the MCP configuration with absolute paths
Step 4: Enable and Use MCP Tools in Copilot
- Open GitHub Copilot Chat panel (
Ctrl+Alt+IorCmd+Alt+I) - Start agent mode by typing
@workspaceor using the agent selector - The SIPp MCP tools will be available to the agent
Step 5: Test the Integration
In the Copilot Chat panel, try:
Use the SIPp tools to check if SIPp is installed
Or:
Create a basic SIPp scenario file named test.xml
Step 6: Using MCP Tools in Copilot Sessions
You can reference MCP tools in your conversations:
- Check SIPp version: "Check if SIPp is installed"
- Create scenarios: "Create a register scenario for testing SIP registration"
- Run tests: "Run a SIPp UAC test with 10 calls to 192.168.1.100"
- Get statistics: "Show me the statistics from sipp_output.csv"
Troubleshooting VS Code
MCP tools not appearing:
- Verify the
.vscode/mcp.jsonpath is correct - Reload VS Code window (
Ctrl+Shift+P→ "Developer: Reload Window") - Check the Output panel (
View→Output) and select "MCP" from the dropdown
Build issues:
# Rebuild the project
npm run build
# Verify the output file exists
ls build/index.js # macOS/Linux
dir build\index.js # Windows
Node.js not found:
- Ensure Node.js is in your PATH
- Restart VS Code after installing Node.js
- Use absolute path to node:
"command": "C:\\Program Files\\nodejs\\node.exe"
Testing with MCP Inspector
For development and debugging, use the MCP Inspector:
npx @modelcontextprotocol/inspector node build/index.js
This opens a web interface where you can:
- View all available tools
- Test tool inputs and outputs
- See real-time request/response logs
- Debug tool behavior
Available Tools
1. run_sipp_scenario
Execute a SIPp scenario for SIP protocol testing.
Parameters:
mode: "uac" (client) or "uas" (server)remoteHost: Remote host IP (required for UAC mode)remotePort: Remote port (default: 5060)localPort: Local port to bind toscenarioFile: Path to custom XML scenario filecallCount: Number of calls to makecallRate: Call rate in calls per secondduration: Maximum test duration in secondstransport: "udp", "tcp", or "tls"timeout: Global timeout in seconds
Example:
Run a UAC scenario with 10 calls to 192.168.1.100:5060
2. create_sipp_scenario
Create a custom SIPp XML scenario file.
Parameters:
filename: Name of the scenario filescenarioType: "basic_call", "register", or "custom"customXml: Custom XML content (for custom type)
Example:
Create a basic call scenario named test.xml
3. get_sipp_statistics
Parse and display statistics from SIPp CSV output files.
Parameters:
csvFile: Path to the SIPp statistics CSV file
4. check_sipp_version
Check if SIPp is installed and display version information.
Development
# Install dependencies
npm install
# Build the project
npm run build
# Watch mode for development
npm run dev
# Test with MCP Inspector
npx @modelcontextprotocol/inspector node build/index.js
Project Structure
sipp-mcp-server/
├── src/
│ └── index.ts # Main server implementation
├── build/ # Compiled JavaScript output
├── package.json
├── tsconfig.json
└── README.md
Example Usage
Example 1: Check SIPp Installation
Ask Claude or Copilot:
Check if SIPp is installed and show me the version
Expected behavior:
- The
check_sipp_versiontool will be invoked - You'll see SIPp version information or an error if not installed
Example 2: Create a Basic Call Scenario
Ask Claude or Copilot:
Create a basic SIPp call scenario file named my_test.xml
Expected behavior:
- The
create_sipp_scenariotool will be invoked - A file named
my_test.xmlwill be created with a basic UAC call flow - The file contents will be displayed
Example 3: Run a Simple UAC Test
Ask Claude or Copilot:
Run a SIPp UAC test with 5 calls to 192.168.1.100 at a rate of 1 call per second
Expected behavior:
- The
run_sipp_scenariotool will be invoked with:- mode: "uac"
- remoteHost: "192.168.1.100"
- callCount: 5
- callRate: 1
- SIPp will execute the test
- Results and statistics will be shown
Example 4: Run a UAS (Server) Test
Ask Claude or Copilot:
Start SIPp in server mode on port 5060
Expected behavior:
- The
run_sipp_scenariotool will be invoked with:- mode: "uas"
- localPort: 5060
- SIPp will listen for incoming SIP calls
Example 5: Create and Use a REGISTER Scenario
Ask Claude or Copilot:
Create a REGISTER scenario file named register_test.xml, then run it against 192.168.1.100 with 10 registrations
Expected behavior:
- First,
create_sipp_scenariocreates the file - Then,
run_sipp_scenarioexecutes it - You'll see the registration test results
Example 6: Advanced Test with Custom Parameters
Ask Claude or Copilot:
Run a SIPp test against 10.0.0.50:5080 using TCP transport, with 100 calls at 10 calls per second, maximum duration of 60 seconds
Expected behavior:
- The
run_sipp_scenariotool will be invoked with:- mode: "uac"
- remoteHost: "10.0.0.50"
- remotePort: 5080
- transport: "tcp"
- callCount: 100
- callRate: 10
- duration: 60
Example 7: Analyze Test Results
Ask Claude or Copilot:
Show me the statistics from the last SIPp test in sipp_output.csv
Expected behavior:
- The
get_sipp_statisticstool will be invoked - CSV contents will be parsed and displayed
- You can ask follow-up questions about the results
Troubleshooting
SIPp not found
Make sure SIPp is installed and in your PATH:
sipp -v
If not installed, follow the installation instructions for your platform.
Permission Issues
On Linux/macOS, you may need to run SIPp with appropriate permissions for binding to ports below 1024.
Connection Issues
- Verify the remote host is reachable
- Check firewall settings
- Ensure the SIP port (default 5060) is not blocked
- Try using different transport protocols (UDP, TCP, TLS)
Resources
- SIPp Documentation
- SIPp GitHub Repository
- Model Context Protocol Documentation
- MCP Servers Repository
Contributing
Contributions are welcome! Here's how you can help:
Reporting Issues
- Use the GitHub issue tracker
- Check existing issues before creating a new one
- Include SIPp version, Node.js version, and OS details
- Provide clear steps to reproduce any bugs
Submitting Pull Requests
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run tests and build:
npm run build - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Development Guidelines
- Follow existing code style and TypeScript conventions
- Add appropriate error handling
- Update README.md if adding new features
- Test with MCP Inspector before submitting
Community
- Questions? Open a GitHub Discussion
- Bug Reports: Use GitHub Issues
- MCP Community: Join the MCP Discord
Roadmap
- Add support for more SIPp scenario templates
- Implement real-time statistics monitoring
- Add SIPp pcap file analysis tools
- Support for distributed SIPp testing
- Web-based scenario editor
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- SIPp Project - The excellent SIP testing tool
- Model Context Protocol - The protocol specification
- Anthropic - For Claude and MCP support
Made with ❤️ for the SIP testing community
Install Sipp Server in Claude Desktop, Claude Code & Cursor
unyly install sipp-mcp-serverInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add sipp-mcp-server -- npx -y sipp-mcp-serverFAQ
Is Sipp Server MCP free?
Yes, Sipp Server MCP is free — one-click install via Unyly at no cost.
Does Sipp Server need an API key?
No, Sipp Server runs without API keys or environment variables.
Is Sipp Server hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Sipp Server in Claude Desktop, Claude Code or Cursor?
Open Sipp Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Sipp Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
