agenda-mcp-google-workspace
Version:
MCP Server para integração com Google Workspace (Gmail, Calendar, Meet)
50 lines (45 loc) • 1.64 kB
JavaScript
import { config } from 'dotenv';
import { parseArgs } from 'node:util';
export function getCredentials() {
// Primeiro tenta ler do .env
config();
// Depois tenta ler dos argumentos da linha de comando
const { values } = parseArgs({
options: {
'client-id': { type: 'string' },
'client-secret': { type: 'string' },
'refresh-token': { type: 'string' },
'ignore-robots-txt': { type: 'boolean' },
},
});
const clientId = values['client-id'] || process.env.GOOGLE_CLIENT_ID;
const clientSecret = values['client-secret'] || process.env.GOOGLE_CLIENT_SECRET;
const refreshToken = values['refresh-token'] || process.env.GOOGLE_REFRESH_TOKEN;
if (!clientId || !clientSecret || !refreshToken) {
console.error(`
Credenciais do Google OAuth não encontradas!
Você pode fornecer as credenciais de duas maneiras:
1. Via arquivo .env:
GOOGLE_CLIENT_ID=seu_client_id
GOOGLE_CLIENT_SECRET=seu_client_secret
GOOGLE_REFRESH_TOKEN=seu_refresh_token
2. Via argumentos de linha de comando:
npx agenda-mcp-google-workspace \\
--client-id=seu_client_id \\
--client-secret=seu_client_secret \\
--refresh-token=seu_refresh_token \\
--ignore-robots-txt
Para obter suas credenciais:
1. Acesse https://console.cloud.google.com
2. Crie um projeto e habilite as APIs do Google Workspace
3. Configure as credenciais OAuth2.0
4. Obtenha o refresh token usando o script get-refresh-token.js
`);
process.exit(1);
}
return {
clientId,
clientSecret,
refreshToken,
};
}