systemprompt-mcp-gmail
Version:
A specialized Model Context Protocol (MCP) server that enables you to search, read, delete and send emails from your Gmail account, leveraging an AI Agent to help with each operation.
42 lines • 1.56 kB
JavaScript
import { validateRequest } from "../utils/validation.js";
import { server } from "../server.js";
import { handleSendEmailCallback, handleReplyEmailCallback, handleReplyDraftCallback, handleEditDraftCallback, } from "./callbacks.js";
export async function sendSamplingRequest(request) {
try {
validateRequest(request);
const result = await server.createMessage(request.params);
const callback = request.params._meta?.callback;
if (callback && typeof callback === "string") {
await handleCallback(callback, result);
}
return result;
}
catch (error) {
console.error("Sampling request failed:", error instanceof Error ? error.message : error);
if (error instanceof Error) {
throw error;
}
throw new Error(`Failed to process sampling request: ${error || "Unknown error"}`);
}
}
/**
* Handles a callback based on its type
* @param callback The callback type
* @param result The LLM result
* @returns The tool response
*/
async function handleCallback(callback, result) {
switch (callback) {
case "send_email":
return handleSendEmailCallback(result);
case "reply_email":
return handleReplyEmailCallback(result);
case "reply_draft":
return handleReplyDraftCallback(result);
case "edit_draft":
return handleEditDraftCallback(result);
default:
throw new Error(`Unknown callback type: ${callback}`);
}
}
//# sourceMappingURL=sampling.js.map