- Go to https://id.atlassian.com/manage-profile/security/api-tokens
- Click "Create API token"
- Name it "Revertly Demo"
- Copy the token (you won't see it again!)
- Open
mcp/main.py - Find lines 27-28 (near the top):
DEMO_CONFLUENCE_EMAIL = "siddharth@altorlab.com" # ← Change this to your email DEMO_CONFLUENCE_TOKEN = "" # ← Paste your API token here
- Replace with your email and token:
DEMO_CONFLUENCE_EMAIL = "your-email@altorlab.com" DEMO_CONFLUENCE_TOKEN = "ATATT3xFfGF0..." # Your actual token
- Save the file
cd mcp
uvicorn main:app --reloadYou should see:
============================================================
🚀 Revertly MCP Server Starting...
============================================================
📝 Using HARDCODED credentials from mcp/main.py
Email: your-email@altorlab.com
Token: ATAT...6ab
============================================================
✅ Database initialized at .../mcp/revertly.db
🔄 Fetching current state of page 622593...
Using email: your-email@altorlab.com
API token: **********6ab
✅ Page cache initialized: AI Agentic future (v12)
# In a new terminal
cd web
npm start# In a new terminal
ngrok http 8000Copy the HTTPS URL (e.g., https://abc123.ngrok.io)
- Go to https://altorlab.atlassian.net/wiki/settings/webhooks
- Click "Create a new webhook"
- Configure:
- Name: Revertly Tracker
- URL:
https://your-ngrok-url.ngrok.io/webhook/confluence - Events: Page → Updated
- Status: Enabled
- Save
- Open http://localhost:3000
- Edit the Confluence page: https://altorlab.atlassian.net/wiki/spaces/~712020a2d43ea4d5ac4f889a17ed23f13fb6ab/pages/622593/AI+Agentic+future
- See the change appear in the dashboard
- Click "Revert" to undo it
export CONFLUENCE_USER_EMAIL="your-email@altorlab.com"
export CONFLUENCE_API_TOKEN="your-token-here"echo $CONFLUENCE_USER_EMAIL
echo $CONFLUENCE_API_TOKENcd mcp
uvicorn main:app --reloadYou should see:
============================================================
🚀 Revertly MCP Server Starting...
============================================================
📝 Using ENVIRONMENT VARIABLE credentials
Email: your-email@altorlab.com
Token: ATAT...6ab
============================================================
# Make scripts executable
chmod +x *.sh
# Set up credentials (interactive)
source ./setup_env.sh
# Start everything
./start_demo.sh
# In another terminal, start webhook tunnel
./start_webhook.sh
# Check if everything is working
./diagnose.shProblem: Backend shows 401 Client Error: Unauthorized
Solution:
- Check your credentials in
mcp/main.py(lines 27-28) - Make sure your API token is correct
- Test manually:
curl -u "your-email@altorlab.com:your-token" \ "https://altorlab.atlassian.net/wiki/api/v2/pages/622593"
Problem: Dashboard loads but "AI Agents" section is empty
Solution:
- Check backend is running:
curl http://127.0.0.1:8000/api/agents - Check browser console (F12) for errors
- Refresh the page
Problem: Edit Confluence page but nothing happens
Solution:
- Check ngrok is running:
curl http://localhost:4040/api/tunnels - Check webhook is configured in Confluence
- Check you're editing the correct page (ID: 622593)
- Check backend logs for webhook events
Problem: Address already in use error
Solution:
# Find what's using port 8000
lsof -i :8000
# Kill it
kill -9 <PID>
# Or use a different port
uvicorn main:app --reload --port 8001- Backend: http://127.0.0.1:8000
- Frontend: http://localhost:3000
- ngrok Dashboard: http://localhost:4040
- Confluence Page: https://altorlab.atlassian.net/wiki/spaces/~712020a2d43ea4d5ac4f889a17ed23f13fb6ab/pages/622593/AI+Agentic+future
- Confluence Webhooks: https://altorlab.atlassian.net/wiki/settings/webhooks
# Start backend
cd mcp && uvicorn main:app --reload
# Start frontend
cd web && npm start
# Start ngrok
ngrok http 8000
# Test backend
curl http://127.0.0.1:8000/
# Test agents endpoint
curl http://127.0.0.1:8000/api/agents
# Test changes endpoint
curl http://127.0.0.1:8000/api/changes
# Reset database
curl -X POST http://127.0.0.1:8000/api/reset
# View database
sqlite3 mcp/revertly.db "SELECT * FROM changes;"- Credentials:
mcp/main.py(lines 27-28) - Target Page ID:
mcp/main.py(search forTARGET_PAGE_ID) - Agent Name:
mcp/main.py(search foragent_name)
- ✅ Get credentials working
- ✅ Start backend and frontend
- ✅ Configure webhook
- ✅ Test the demo flow
- 📖 Read
NEW_DEMO_GUIDE.mdfor presentation script - 🎯 Practice the 3-minute demo
- Diagnostics: Run
./diagnose.sh - Troubleshooting: See
TROUBLESHOOTING.md - Demo Script: See
NEW_DEMO_GUIDE.md - Quick Reference: See
DEMO_QUICK_START.md
You're ready to demo! 🚀