user.ts•901 B
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { GraphQLClient } from "../graphqlClient.js";
import { z } from "zod";
import { text } from "../util/mcp.js";
export function registerUserTools(server: McpServer, gql: GraphQLClient) {
const currentUserHandler = async () => {
const query = `query Me { currentUser { id name email emailVerified avatarUrl disabled } }`;
const data = await gql.request<{ currentUser: any }>(query);
return text(data.currentUser);
};
server.registerTool(
"affine_current_user",
{
title: "Current User",
description: "Get current signed-in user.",
inputSchema: {}
},
currentUserHandler as any
);
server.registerTool(
"current_user",
{
title: "Current User",
description: "Get current signed-in user.",
inputSchema: {}
},
currentUserHandler as any
);
}