@chinchillaenterprises/mcp-discord
Version:
Modular Discord MCP server with 45+ tools for comprehensive server management, featuring clean architecture and discord_ prefixed tools
43 lines • 3.13 kB
JavaScript
export const toolDefinition = {
name: "discord_set_default_account",
description: "Set an account as the default for new sessions",
inputSchema: {
type: "object",
properties: {
accountId: {
type: "string",
description: "Account ID to set as default",
},
},
required: ["accountId"],
}
};
export const handler = async (args, services) => {
const { accountId } = args;
const accountState = services.getAccountState();
const credentialManager = services.getCredentialManager();
const account = accountState.accounts.get(accountId);
if (!account) {
throw new Error(`Account '${accountId}' not found.`);
}
// Update default status for all accounts
for (const [, acc] of accountState.accounts) {
acc.isDefault = acc.id === accountId;
try {
await credentialManager.updateAccount(acc);
}
catch (error) {
console.error(`[DiscordMCP] Failed to update account ${acc.id}:`, error);
}
}
return {
content: [
{
type: "text",
text: `Account '${account.name}' (${accountId}) is now the default Discord account.`,
},
],
};
};
export { SetDefaultAccountArgsSchema as schema } from "../../schemas/account.js";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWRlZmF1bHQtYWNjb3VudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9hY2NvdW50L3NldC1kZWZhdWx0LWFjY291bnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFTO0lBQ2xDLElBQUksRUFBRSw2QkFBNkI7SUFDbkMsV0FBVyxFQUFFLGdEQUFnRDtJQUM3RCxXQUFXLEVBQUU7UUFDWCxJQUFJLEVBQUUsUUFBUTtRQUNkLFVBQVUsRUFBRTtZQUNWLFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsUUFBUTtnQkFDZCxXQUFXLEVBQUUsOEJBQThCO2FBQzVDO1NBQ0Y7UUFDRCxRQUFRLEVBQUUsQ0FBQyxXQUFXLENBQUM7S0FDeEI7Q0FDRixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLEtBQUssRUFBRSxJQUEyQixFQUFFLFFBQTBCLEVBQUUsRUFBRTtJQUN2RixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBQzNCLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUNoRCxNQUFNLGlCQUFpQixHQUFHLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBRTFELE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsWUFBWSxTQUFTLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCx5Q0FBeUM7SUFDekMsS0FBSyxNQUFNLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDNUMsR0FBRyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsRUFBRSxLQUFLLFNBQVMsQ0FBQztRQUNyQyxJQUFJLENBQUM7WUFDSCxNQUFNLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMseUNBQXlDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRSxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLEVBQUU7WUFDUDtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixJQUFJLEVBQUUsWUFBWSxPQUFPLENBQUMsSUFBSSxNQUFNLFNBQVMsdUNBQXVDO2FBQ3JGO1NBQ0Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsT0FBTyxFQUFFLDJCQUEyQixJQUFJLE1BQU0sRUFBRSxNQUFNLDBCQUEwQixDQUFDIn0=