From 43f433c93426ad69a9aae01a0cdbf13f18a0af8e Mon Sep 17 00:00:00 2001 From: Justin Spahr-Summers Date: Tue, 18 Feb 2025 09:47:11 +0000 Subject: [PATCH] Match style for registration request handler --- src/server/auth/handlers/register.ts | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/src/server/auth/handlers/register.ts b/src/server/auth/handlers/register.ts index 5763f631..52ed3db2 100644 --- a/src/server/auth/handlers/register.ts +++ b/src/server/auth/handlers/register.ts @@ -32,12 +32,16 @@ export function clientRegistrationHandler({ clientsStore, clientSecretExpirySeco // Configure CORS to allow any origin, to make accessible to web-based MCP clients router.use(cors()); - async function register(requestBody: unknown): Promise { + router.post("/", async (req, res) => { let clientMetadata; try { - clientMetadata = OAuthClientMetadataSchema.parse(requestBody); + clientMetadata = OAuthClientMetadataSchema.parse(req.body); } catch (error) { - return { error: "invalid_client_metadata", error_description: String(error) }; + res.status(400).json({ + error: "invalid_client_metadata", + error_description: String(error), + }); + return; } const clientId = crypto.randomUUID(); @@ -55,21 +59,7 @@ export function clientRegistrationHandler({ clientsStore, clientSecretExpirySeco }; clientInfo = await clientsStore.registerClient!(clientInfo); - return clientInfo; - } - - // Actual request handler - router.post("/", (req, res) => { - register(req.body).then((result) => { - if ("error" in result) { - res.status(400).json(result); - } else { - res.status(201).json(result); - } - }, (error) => { - console.error("Uncaught error in client registration handler:", error); - res.status(500).end("Internal Server Error"); - }); + res.status(201).json(clientInfo); }); return router;