Rack で利用できる汎用認証ミドルウェアである OmniAuth を活用した OAuth 2 認可サーバー & OIDC ID プロバイダ sorah/himari を結構前に作った。今回 MCP サーバーの認証を作る機会があり Himari からアクセストークンを出すことにしたため、MCP で必要な機能を追加で Himari へ実装したのでそれを紹介する。 Himari とは OmniAuth から受け取った情報を元にセッションを作り、OAuth クライアントへアクセストークンや ID トークンを発行する。OmniAuth での認証時、下流へのトークン発行時に Ruby コードで claim カスタマイズや認可を行えるシンプルな Authorization Server になっている。基本的には Dex みたいなものだが、サーバーレスで動かしたかったのと、GitHub のような OID

