Quickstart
Create a project, send your first event, and get a simple dashboard plus optional AI review.
1. Get a token
Sign in, create or use your default project, then create an ingest token from the dashboard.
It looks like slf_pub_01H…
2. Send your first event
Any HTTP client works. The simplest form needs no headers — sulfur infers severity from the body text.
Plain text (no headers required)
curl -X POST https://sulfur.sh/e/$SULFUR_TOKEN/my-app \
-d "DB connection failed after 3 retries" JSON body (structured — Claude can describe individual fields)
curl -X POST https://sulfur.sh/e/$SULFUR_TOKEN/my-app \
-H "Content-Type: application/json" \
-H "X-Severity: error" \
-d '{"message":"Connection timeout","endpoint":"/api/checkout","latency_ms":5200}' PowerShell
Invoke-RestMethod -Uri "https://sulfur.sh/e/$env:SULFUR_TOKEN/my-app" `
-Method POST -Body "DB connection failed after 3 retries"
Replace $SULFUR_TOKEN with your token.
Response: {"id":"…","signature":"abc123def456","received_at":…}
3. Add to your application
For a Cloudflare Worker, wrap it in a fire-and-forget helper so it never blocks your main request path:
// In your existing Worker's catch block
async function logToSulfur(env, severity, payload) {
await fetch(`https://sulfur.sh/e/${env.SULFUR_TOKEN}/my-worker`, {
method: 'POST',
headers: { 'content-type': 'application/json', 'x-severity': severity },
body: JSON.stringify(payload),
}).catch(() => {/* fire and forget */});
} For Python, AWS Lambda, or other environments, see the full examples in the docs.
4. Connect Claude Desktop
Create an MCP token from the dashboard if you want Claude to read your project data directly, then add to
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"sulfur": {
"url": "https://mcp.sulfur.sh",
"transport": "streamable-http",
"headers": {
"Authorization": "Bearer slf_mcp_YOUR_TOKEN_HERE"
}
}
}
} This local bearer-token setup works today for manual MCP use. sulfur is being updated toward newer remote MCP authorization flows, so expect the long-term setup path to evolve.
5. Connect Cursor
Add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"sulfur": {
"url": "https://mcp.sulfur.sh",
"headers": { "Authorization": "Bearer slf_mcp_YOUR_TOKEN_HERE" }
}
}
}