Skip to main content
Glama

Claude TypeScript MCP Servers

by ukkz
cookie.ts1.84 kB
/** * Cookie・認証系ハンドラー */ import { CallToolResult } from "@modelcontextprotocol/sdk/types.js"; import { Server } from "@modelcontextprotocol/sdk/server/index.js"; import { createErrorResponse, createSuccessResponse, ensureBrowser } from "../utils.js"; import { SetCookiesArgs, AuthenticateArgs } from "../types.js"; /** * Cookieを設定する処理 */ export async function handleSetCookies( args: SetCookiesArgs, server: Server, ): Promise<CallToolResult> { try { const page = await ensureBrowser(server); await page.setCookie(...args.cookies); return createSuccessResponse( `Set ${args.cookies.length} cookie(s):\n` + args.cookies.map((c) => `- ${c.name}=${c.value}`).join("\n"), ); } catch (error) { return createErrorResponse(`Failed to set cookies: ${(error as Error).message}`); } } /** * Cookieを取得する処理 */ export async function handleGetCookies(server: Server): Promise<CallToolResult> { try { const page = await ensureBrowser(server); const cookies = await page.cookies(); return createSuccessResponse( `Found ${cookies.length} cookie(s):\n` + JSON.stringify(cookies, null, 2), ); } catch (error) { return createErrorResponse(`Failed to get cookies: ${(error as Error).message}`); } } /** * HTTP認証情報を設定する処理 */ export async function handleAuthenticate( args: AuthenticateArgs, server: Server, ): Promise<CallToolResult> { try { const page = await ensureBrowser(server); await page.authenticate({ username: args.username, password: args.password, }); return createSuccessResponse(`HTTP authentication set for user: ${args.username}`); } catch (error) { return createErrorResponse(`Failed to set authentication: ${(error as Error).message}`); } }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ukkz/claude-ts-mcps'

If you have feedback or need assistance with the MCP directory API, please join our Discord server