Having read your new comments on Herbert's answer, I came up with the following
\newcounter{mymaxcitenames}
\AtBeginDocument{%
\setcounter{mymaxcitenames}{\value{maxnames}}%
}
\makeatletter
\renewbibmacro*{begentry}{%
\begingroup
\undef\cbx@lasthash
\undef\cbx@lastyear
\defcounter{maxnames}{\value{mymaxcitenames}}%
\parencite{\thefield{entrykey}}%
\endgroup
\addspace
}
\makeatother
Similar to what Lockstep did in Adding an [AuthorYear] block at the beginning of bibliography entries, but shorter. (Of course you can use \cite or any other cite command instead of \parencite above.)
The delimiter between name and year is changed with
\renewcommand*{\nameyeardelim}{\addcomma\space}
So we have
The MWE
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[british]{babel}
\usepackage{csquotes}
\usepackage[style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}
\DeclareCiteCommand{\parencite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{cite}}
{\multicitedelim}
{\usebibmacro{postnote}}
\DeclareCiteCommand*{\parencite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{citeyear}}
{\multicitedelim}
{\usebibmacro{postnote}}
\newcounter{mymaxcitenames}
\AtBeginDocument{%
\setcounter{mymaxcitenames}{\value{maxnames}}%
}
\makeatletter
\renewbibmacro*{begentry}{%
\begingroup
\undef\cbx@lasthash
\undef\cbx@lastyear
\defcounter{maxnames}{\value{mymaxcitenames}}%
\parencite{\thefield{entrykey}}%
\endgroup
\addspace
}
\makeatother
\renewcommand*{\nameyeardelim}{\addcomma\space}
\begin{document}
foo~\parencite{baez/article,wilde}
\printbibliography
\end{document}

If you only want the comma locally (why would you though?), you can use
\makeatletter
\renewbibmacro*{begentry}{%
\begingroup
\undef\cbx@lasthash
\undef\cbx@lastyear
\renewcommand*{\nameyeardelim}{\addcomma\space}
\parencite{\thefield{entrykey}}%
\endgroup
\addspace
}
\makeatother
Old answer
Instead of redefining the very fundamental \mkbibparens, I would go with a redefinition of \parencite to use \mkbibbrackets instead of \mkbibparens:
\DeclareCiteCommand{\parencite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{cite}}
{\multicitedelim}
{\usebibmacro{postnote}}
\DeclareCiteCommand*{\parencite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{citeyear}}
{\multicitedelim}
{\usebibmacro{postnote}}
Of course you could also redefine \cite:
\DeclareCiteCommand{\cite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{cite}}
{\multicitedelim}
{\usebibmacro{postnote}}
\DeclareCiteCommand*{\cite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{citeyear}}
{\multicitedelim}
{\usebibmacro{postnote}}
or define a new command \brackcite
\DeclareCiteCommand{\brackcite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{cite}}
{\multicitedelim}
{\usebibmacro{postnote}}
\DeclareCiteCommand*{\brackcite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{citeyear}}
{\multicitedelim}
{\usebibmacro{postnote}}
Even though this is slightly more code than Herbert's solution to me it seems more robust.
MWE
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[british]{babel}
\usepackage{csquotes}
\usepackage[style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}
\DeclareCiteCommand{\parencite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{cite}}
{\multicitedelim}
{\usebibmacro{postnote}}
\DeclareCiteCommand*{\parencite}[\mkbibbrackets]
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{citeyear}}
{\multicitedelim}
{\usebibmacro{postnote}}
\begin{document}
foo~\parencite{baez/article,wilde}
\printbibliography
\end{document}

After you comments on Herbert's answer.
I'm not entirely sure what you're after, you can change the separator between name and year in the citation with
\newcommand*{\nameyeardelim}{\addcomma\space}
for example.
The way the names are displayed in citations is controlled by the name format labeldate.
To always get last name initials, no matter what, try
\DeclareNameFormat{labelname}{%
\ifcase\value{uniquename}%
\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}%
\or
\ifuseprefix
{\usebibmacro{name:last-first}{#1}{#4}{#5}{#8}}
{\usebibmacro{name:last-first}{#1}{#4}{#6}{#8}}%
\or
\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}%
\fi
\usebibmacro{name:andothers}}
[MacRae and Pattison 2002]to the bibliographic entry? Please advise. – Mico May 18 '14 at 16:20