+
    wi)                         ^ RI Ht ^ RIHt ^ RIHtHt ^ RIHtH	t	 ^ RI
Ht ^ RIHt ^ RIHt ^ RIHt ^ R	IHtHt ^ R
IHtHtHt  ! R R]4      t ! R R]4      t] ! R R4      4       tR# )    )	dataclass)partial)AnyLiteral)	BaseModelValidationError)Request)Response)stringify_pydantic_error)PydanticJSONResponse)AuthenticationErrorClientAuthenticator)AccessToken OAuthAuthorizationServerProviderRefreshTokenc                   4   a  ] tR t^t o RtRtV 3R ltRtV tR# )RevocationRequestzA
# See https://datatracker.ietf.org/doc/html/rfc7009#section-2.1
Nc                t   < V ^8  d   Qh/ S[ ;R&   S[R,          R,          ;R&   S[ ;R&   S[ R,          ;R&   # )   tokenNtoken_type_hint	client_idclient_secret)access_tokenrefresh_token)strr   )format__classdict__s   "S/home/ubuntu/.local/lib/python3.14/site-packages/mcp/server/auth/handlers/revoke.py__annotate__RevocationRequest.__annotate__   sF     
 J  <=DK  N  :      )	__name__
__module____qualname____firstlineno____doc__r   __annotate_func____static_attributes____classdictcell__r   s   @r   r   r      s     
 HLO  r"   r   c                   0   a  ] tR t^t o RtV 3R ltRtV tR# )RevocationErrorResponseNc                N   < V ^8  d   Qh/ S[ R,          ;R&   S[R,          ;R&   # )r   errorNerror_description)invalid_requestunauthorized_client)r   r   )r   r   s   "r   r    $RevocationErrorResponse.__annotate__   s%     ;<< Tz( r"   r#   )r$   r%   r&   r'   r1   r)   r*   r+   r,   s   @r   r.   r.      s     $(  r"   r.   c                   >   a  ] tR t^!t o V 3R lR ltV 3R ltRtV tR# )RevocationHandlerc                &   < V ^8  d   QhRS[ RS[/# )r   requestreturn)r	   r
   )r   r   s   "r   r    RevocationHandler.__annotate__&   s     5
 5
G 5
 5
r"   c           
     b  "    V P                   P                  V4      G Rj  xL
 p TP                  4       G Rj  xL
 p\        P                  \        T4      4      pT P                  P                  \        T P                  P                  T4      .pTP                   R8X  d   \#        T4      pRpT F#  pT! TP$                  4      G Rj  xL
 pTf   K#   M	  T'       d?   TP&                  TP&                  8X  d$   T P                  P)                  T4      G Rj  xL
  \+        ^R	R
RR/R7      #  EL  \         d-   p\        R\	        RTP
                  R7      R7      u Rp?# Rp?ii ; i EL4  \         d,   p\        R\	        R\        T4      R7      R7      u Rp?# Rp?ii ; i L L5i)z6
Handler for the OAuth 2.0 Token Revocation endpoint.
Ni  r3   )r0   r1   )status_codecontenti  r2   r   zCache-Controlzno-storePragmazno-cache)r<   headers)client_authenticatorauthenticate_requestr   r   r.   messageformr   model_validatedictr   r   providerload_access_tokenr   load_refresh_tokenr   reversedr   r   revoke_tokenr
   )	selfr8   cliente	form_datarevocation_requestloadersr   loaders	   &&       r   handleRevocationHandler.handle&   s    		44II'RRF
	%lln,I!2!A!A$y/!R MM++DMM44f=
 --@w'G37F !3!9!9::E   U__(8(88 --,,U333 *
 	
U S" 	'//&'ii 	 - 	'/+&>q&A 	$ ; 4s   F/D5 D2D5 E2 E/"E2 A.F/F+F/F/#9F/F-F/2D5 5E, !E'!E,"F/'E,,F//E2 2F(= F#F(F/#F((F/-F/c                L   < V ^8  d   Qh/ S[ S[S[S[3,          ;R&   S[;R&   # )r   rF   r@   )r   r   r   )r   r   s   "r   r    r:   !   s(     .sC}==  .- r"   r#   N)r$   r%   r&   r'   rR   r)   r*   r+   r,   s   @r   r6   r6   !   s     
5
 5
  r"   r6   N)dataclassesr   	functoolsr   typingr   r   pydanticr   r   starlette.requestsr	   starlette.responsesr
   mcp.server.auth.errorsr   mcp.server.auth.json_responser   &mcp.server.auth.middleware.client_authr   r   mcp.server.auth.providerr   r   r   r   r.   r6   r#   r"   r   <module>r_      s[    !   / & ( ? [ ` `	 )i )
 9
 9
 9
r"   