Faits:
A. Le 14 juillet 2011, la Cheffe du Département fédéral des finances a autorisé l'Administration fédérale des contributions (ACF) à mener une enquête spéciale pour des soupçons de graves infractions fiscales à l'encontre, notamment, de B._ et de C._. Le 31 août 2011, une perquisition a été effectuée dans les bureaux de l'étude A._ à Genève; les documents en relation avec le mandat confié à cette étude par B._ ont été saisis et mis sous scellés.
B. Le 29 novembre 2011, l'AFC a demandé à la Cour des plaintes du Tribunal pénal fédéral la levée des scellés, considérant que l'étude d'avocats était intervenue en tant que mandataire fiscal de B._.
Par arrêt du 22 mai 2012, la Cour des plaintes a rejeté la demande de levée des scellés et ordonné la restitution des documents à l'étude A._. Les soupçons de l'AFC étaient suffisants pour justifier une perquisition. Toutefois, l'étude A._ était intervenue sur mandat de B._ et de sa société pour répondre à une demande d'information de l'AFC du 20 avril 2010. Cette réponse avait été formée le 1er juillet 2010. Il s'agissait d'une activité typique d'avocat, couverte par le secret professionnel. Les classeurs contenant de la correspondance avec l'AFC - déjà en possession de cette dernière - devaient être restitués à leur détentrice, de même que l'intégralité des documents confiés à l'étude par B._.
C. Par acte du 22 juin 2012, l'AFC forme un recours en matière pénale par lequel elle demande l'annulation de l'arrêt de la Cour des plaintes et l'autorisation de procéder à la perquisition; subsidiairement, elle demande le renvoi de la cause à la Cour des plaintes pour nouvelle décision dans le sens des considérants.
La Cour des plaintes se réfère à sa décision. A._ conclut au rejet du recours. L'effet suspensif requis par la recourante a été accordé par ordonnance du 13 juillet 2012.
Considérant en droit:
1. Le recours est interjeté en temps utile contre un arrêt de la Cour des plaintes portant sur la saisie de documents et la levée de scellés, soit des mesures de contrainte au sens de l'art. 79 LTF.
1.1 L'AFC a participé à la procédure devant l'autorité précédente (art. 81 al. 1 let. a LTF); en tant qu'autorité chargée de la répression d'infractions de droit pénal administratif, elle dispose d'un intérêt juridique à l'annulation ou à la modification de l'arrêt attaqué, de la même manière que le ministère public dans le cadre d'une enquête pénale (art. 81 al. 1 let. b LTF; cf. arrêt 1B_288/2007 du 30 septembre 2008).
1.2 La décision attaquée est incidente, mais elle est susceptible de causer un préjudice irréparable au sens de l'art. 93 al. 1 let. a LTF, puisqu'en vertu de la décision attaquée, les moyens de preuve saisis devront être restitués à leur détenteur et ne pourront pas être utilisés dans la procédure.
2. Dans un premier grief, l'AFC reproche à la Cour des plaintes d'avoir considéré qu'il existait des soupçons suffisants d'infractions fiscales et que les documents 223002, 223003 et 223004 (correspondance échangée avec l'AFC) n'étaient pas couverts par le secret professionnel de l'avocat, et d'avoir malgré cela ordonné la restitution de ces documents à l'intimée.
La décision de la Cour des plaintes sur ce point est fondée sur le simple fait que l'AFC devait déjà avoir ses documents en sa possession (s'agissant de sa propre correspondance) et que leur production était dès lors inutile. La recourante ne prétend pas que cette appréciation serait manifestement inexacte au sens de l'art. 97 LTF, et on ne voit dès lors pas en quoi celle-ci pourrait violer le droit.
3. L'AFC reproche à la Cour des plaintes de s'être limitée à un examen superficiel des pièces mises sous scellés, alors qu'il conviendrait selon elle d'examiner en détail l'activité déployée par l'étude d'avocats en faveur de B._ et de sa société. En l'occurrence, il s'agissait de répondre à une demande de renseignements formulée par l'AFC; cette réponse, du 1er juillet 2010, dépourvue de toute considération juridique ou procédurale, reprenait les indications de B._. Il n'y avait pas d'enquête ouverte à l'encontre de ce dernier. Les avocats avaient par conséquent agi comme l'aurait fait un mandataire fiscal, de sorte que le secret professionnel n'était pas opposable.
3.1 Selon l'art. 50 DPA, la perquisition visant des papiers doit être opérée avec les plus grands égards pour les secrets privés; en particulier, les papiers ne seront examinés que s'ils contiennent apparemment des écrits importants pour l'enquête (al. 1). La perquisition doit être opérée de manière à sauvegarder le secret de fonction, ainsi que les secrets confiés notamment aux avocats en vertu de leur profession (al. 2). Aux termes de l'art. 13 al. 1 LLCA, l'avocat est soumis au secret professionnel pour toutes les affaires qui lui sont confiées par ses clients dans l'exercice de sa profession; cette obligation n'est pas limitée dans le temps et est applicable à l'égard des tiers; le fait d'être délié du secret professionnel n'oblige pas l'avocat à divulguer des faits qui lui ont été confiés.
Le secret professionnel couvre tous les faits et documents confiés à l'avocat qui présentent un rapport certain avec l'exercice de sa profession. Cette protection trouve sa raison d'être dans le rapport de confiance particulier liant l'avocat et son client, qui doit pouvoir se fier entièrement à la discrétion de son mandataire (ATF 117 Ia 341 consid. 6a/bb p. 349). Si le secret professionnel de l'avocat exclut la saisie de documents relatifs à l'exécution de son mandat d'avocat, il ne s'oppose pas en revanche à la saisie de pièces qui concernent une activité purement commerciale de l'avocat (ATF 130 II 193 consid. 5.1 in fine p. 200; 126 II 495 consid. 5e/aa p. 501; 117 Ia 341 consid. 6a/cc p. 349/350). Il a ainsi été jugé que ce qui était confié à un avocat en sa qualité d'administrateur de société, de gérant de fortune, ou en exécution d'un mandat de recouvrement n'est pas couvert par le secret professionnel (ATF 120 Ib 112 consid. 4 p. 119; 115 Ia 197 consid. 3d p. 199; 112 Ib 606; 114 III 105 consid. 3a p. 107).
3.2 En l'occurrence, B._ et sa société n'ont confié, préalablement à l'intervention de l'AFC, aucun mandat de conseil fiscal ou de gestion de patrimoine; ils n'ont mandaté l'étude d'avocats qu'au mois de mai 2010 pour répondre à la demande d'informations de l'AFC du 20 avril 2010. Il s'agissait de s'expliquer sur les revenus obtenus par une société soeur, sur l'actionnariat et les bénéficiaires de sociétés du groupe ainsi que sur la provenance et la destination effectives de certains fonds. Après avoir obtenu un délai supplémentaire pour ce faire, les avocats ont répondu à cette demande en fournissant des renseignements sur la société, en répondant à des allégations parues dans la presse et en s'exprimant plus précisément sur les questions posées. Dans un paragraphe intitulé "procédure", ils ont indiqué que leur client était disposé à collaborer, notamment avec les autorités fiscales cantonales. Il s'agit là typiquement d'une activité de conseil et de représentation, en l'occurrence auprès d'une autorité, dans un contexte pouvant aboutir au prononcé d'une décision; le fait que l'étude se soit fondée sur les indications de son client et qu'aucune procédure n'ait été formellement engagée, ne change rien à la nature de cette intervention. La Cour des plaintes indique avoir pris connaissance des documents mis sous scellés et il n'y a pas de motifs de mettre en cause les constatations faites à cette occasion. Dès lors que la documentation remise à l'étude était bien destinée à l'exécution de ce mandat, elle était couverte par le secret professionnel. L'autorité recourante ne soupçonne, au demeurant, aucune connivence de la part des avocats, ni aucun abus de droit de la part de leur client. L'arrêt attaqué ne prête dès lors pas le flanc à la critique.
4. Sur le vu de ce qui précède, le recours doit être rejeté. Conformément à l'art. 66 al. 4 LTF, il n'est pas perçu de frais judiciaires. L'AFC versera en revanche une indemnité de dépens à l'intimée, laquelle obtient gain de cause en ayant recouru à un mandataire extérieur (art. 68 al. 2 LTF).
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Une indemnité de dépens de 2'000 fr. est allouée à l'intimée, à la charge de l'Administration fédérale des contributions.
3. Le présent arrêt est communiqué aux parties et au Tribunal pénal fédéral, Cour des plaintes.
Lausanne, le 20 août 2012
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Fonjallaz
Le Greffier: Kurz