Add comprehensive tests and documentation for Apps Script

Testing:
- Created unit tests with mocked API responses (test_apps_script_tools.py)
- 20+ test cases covering all 11 tools
- Tests for success cases, edge cases, and error handling
- Created manual test script for real API testing (manual_test.py)

Documentation:
- Created gappsscript module README with usage examples
- Updated main README.md with Apps Script section
- Added Apps Script to features list
- Added Apps Script API to enable links
- Added complete tool reference table
- No em dashes or emojis per requirements

All documentation follows existing codebase style and patterns.
This commit is contained in:
sam-ent
2026-01-13 19:29:44 +00:00
parent f5702b32b8
commit fb951d6314
6 changed files with 1244 additions and 0 deletions

View File

@@ -75,6 +75,14 @@ A production-ready MCP server that integrates all major Google Workspace service
- Spreadsheet operations with flexible cell management
- Presentation creation, updates & content manipulation
---
**<span style="color:#72898f">◆</span> Apps Script**
- Script project creation, reading & modification
- Function execution with parameters
- Deployment management & version control
- Execution monitoring & process history
</td>
<td width="50%" valign="top">
@@ -285,6 +293,7 @@ Forms, Tasks, Chat, Search
* [Enable Google Tasks API](https://console.cloud.google.com/flows/enableapi?apiid=tasks.googleapis.com)
* [Enable Google Chat API](https://console.cloud.google.com/flows/enableapi?apiid=chat.googleapis.com)
* [Enable Google Custom Search API](https://console.cloud.google.com/flows/enableapi?apiid=customsearch.googleapis.com)
* [Enable Google Apps Script API](https://console.cloud.google.com/flows/enableapi?apiid=script.googleapis.com)
</details>
@@ -846,6 +855,27 @@ cp .env.oauth21 .env
| `get_search_engine_info` | Complete | Retrieve search engine metadata |
| `search_custom_siterestrict` | Extended | Search within specific domains |
</td>
</tr>
<tr>
<td colspan="2" valign="top">
### **Google Apps Script** <sub>[`apps_script_tools.py`](gappsscript/apps_script_tools.py)</sub>
| Tool | Tier | Description |
|------|------|-------------|
| `list_script_projects` | **Core** | List accessible Apps Script projects |
| `get_script_project` | **Core** | Get complete project with all files |
| `get_script_content` | **Core** | Retrieve specific file content |
| `create_script_project` | **Core** | Create new standalone or bound project |
| `update_script_content` | **Core** | Update or create script files |
| `run_script_function` | **Core** | Execute function with parameters |
| `create_deployment` | Extended | Create new script deployment |
| `list_deployments` | Extended | List all project deployments |
| `update_deployment` | Extended | Update deployment configuration |
| `delete_deployment` | Extended | Remove deployment |
| `list_script_processes` | Extended | View recent executions and status |
</td>
</tr>
</table>