Your code snippet looks correct but it's hard to tell without more context. Here is the full package.json file for an add-on I wrote that works fine for me on Firefox 29+:
{
"name": "transmission-web-helper",
"license": "MPL 2.0",
"author": "Jeff Griffiths",
"version": "0.4",
"fullName": "transmission-web-helper",
"id": "transmission-web-helper@canuckistani.ca",
"description": "a basic add-on",
"icon": "data/icon48.png",
"icon64": "data/icon64.png",
"preferences": [{
"name": "transmissionUrl",
"title": "URL for Transmission RPC",
"type": "string",
"value": "http://localhost:9091/transmission/rpc"
},
{
"description": "If selected, torrents will start automatically.",
"type": "bool",
"name": "transmissionAutostart",
"value": true,
"title": "Auto-start?"
},
{
"description": "If selected, this add-on will print debug .",
"type": "bool",
"name": "transmissionDebug",
"value": false,
"title": "Debug"
}
]
}
Full source for the add-on is on github