# Directory Structure ``` ├── .gitignore ├── package-lock.json ├── package.json ├── README.md ├── src │ ├── get-refresh-token.ts │ └── index.ts └── tsconfig.json ``` # Files -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- ``` node_modules/ build/ *.log .env* ``` -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- ```json { "compilerOptions": { "target": "ES2020", "module": "NodeNext", "moduleResolution": "NodeNext", "esModuleInterop": true, "outDir": "build", "strict": true, "skipLibCheck": true, "forceConsistentCasingInFileNames": true, "resolveJsonModule": true, "allowSyntheticDefaultImports": true, "noImplicitAny": false }, "include": ["src/**/*"], "exclude": ["node_modules", "build"] } ``` -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- ```json { "name": "google-forms-server", "version": "0.1.0", "description": "MCP server for Google Forms integration", "type": "module", "main": "build/index.js", "scripts": { "build": "tsc && node -e \"require('fs').chmodSync('build/index.js', '755')\"", "start": "node build/index.js", "build:token": "tsc src/get-refresh-token.ts --outDir build --target ES2020" }, "dependencies": { "@modelcontextprotocol/sdk": "^1.6.1", "axios": "^1.6.2", "googleapis": "^126.0.1", "open": "^9.1.0", "server-destroy": "^1.0.1" }, "devDependencies": { "@types/node": "^20.10.0", "@types/server-destroy": "^1.0.4", "typescript": "^5.3.2" } } ```