I would declare a new arrow tip based on the old one but setting \pgfarrowsleftextend to 0pt.
The syntax for defining arrow tips is explained in section 74 "Arrow Tips" of the PGF manual.

\documentclass{article}
\usepackage{tikz,amssymb}
\usetikzlibrary{arrows}
\makeatletter
\pgfarrowsdeclare{[*}{]*}
{
\pgfarrowsleftextend{0pt}
\pgfarrowsrightextend{0pt}
}
{
\pgfutil@tempdima=2pt%
\advance\pgfutil@tempdima by1.5\pgflinewidth%
\pgfutil@tempdimb=\pgfutil@tempdima%
\advance\pgfutil@tempdimb by\pgflinewidth%
\pgfsetdash{}{+0pt}
\pgfsetmiterjoin
\pgfsetbuttcap
\pgfpathmoveto{\pgfqpoint{-.5\pgfutil@tempdimb}{-1\pgfutil@tempdima}}
\pgfpathlineto{\pgfqpoint{0pt}{-1\pgfutil@tempdima}}
\pgfpathlineto{\pgfqpoint{0pt}{\pgfutil@tempdima}}
\pgfpathlineto{\pgfqpoint{-.5\pgfutil@tempdimb}{\pgfutil@tempdima}}
\pgfusepathqstroke
}
\pgfarrowsdeclarereversed{]*}{[*}{[*}{]*}
\makeatother
\begin{document}
\begin{tikzpicture}
\draw (-3,0) -- (3,0) node[anchor=south] {$\mathbb{R}$};
\foreach \x in {-1,0,1} \draw (\x,2pt) -- (\x, -2pt) node[anchor=north] {$\x$};
\draw[thick,blue,[*-[*] (-1,0) -- (1,0);
\end{tikzpicture}
\end{document}
For use in a plot (either using PGFPlots or the \draw plot command), you might want a plot mark instead of an arrow tip:

\documentclass{standalone}
\usepackage{pgfplots}
\makeatletter
\pgfdeclareplotmark{]}
{%
\pgfpathmoveto{\pgfqpoint{-0.65\pgfplotmarksize}{\pgfplotmarksize}}
\pgfpathlineto{\pgfqpoint{0pt}{\pgfplotmarksize}}
\pgfpathlineto{\pgfqpoint{0pt}{-\pgfplotmarksize}}
\pgfpathlineto{\pgfqpoint{-0.65\pgfplotmarksize}{-\pgfplotmarksize}}
\pgfusepathqstroke
}
\pgfdeclareplotmark{[}
{%
\pgfpathmoveto{\pgfqpoint{0.65\pgfplotmarksize}{\pgfplotmarksize}}
\pgfpathlineto{\pgfqpoint{0pt}{\pgfplotmarksize}}
\pgfpathlineto{\pgfqpoint{0pt}{-\pgfplotmarksize}}
\pgfpathlineto{\pgfqpoint{0.65\pgfplotmarksize}{-\pgfplotmarksize}}
\pgfusepathqstroke
}
\makeatother
\begin{document}
\begin{tikzpicture}
\begin{axis}[
yshift=4cm,
y = 1cm,
xmin = -2, xmax = 2,
ymin = -1, ymax = 1,
hide y axis,
axis x line* = middle,
disabledatascaling
]
\addplot [thick, blue, mark={[}, mark size=1mm] coordinates {(-1,0) (1,0)};
\end{axis}
\end{tikzpicture}
\end{document}
\pgfarrowsleftextend{+0.5\pgflinewidth}would be better if you have a large line width, otherwise the line could be shortened by half the line thickness (but in this case I think it's all right). – Luigi Nov 13 '12 at 19:20line width=4ptfor the arrow and draw the thin tick marks on top of the arrow, the vertical arrow line is exactly centered with respect to the tick mark. I guess which approach to take depends on whether you want the tick mark to be aligned with the center or one of the edges of the vertical line. – Jake Nov 13 '12 at 19:29