MCPApp
@tanaikech
This text introduces the Model Context Protocol (MCP) for AI interaction, exploring Google Apps Script (GAS) as a server option. It shows feasibility with a sample but notes the lack of a GAS SDK, aiming to encourage understanding and development.
Overview
What is MCPApp?
MCPApp is a Google Apps Script library that implements a Model Context Protocol (MCP) server, allowing AI applications to securely access and leverage data from Google Workspace services (Drive, Calendar, Sheets, etc.) through a standardized protocol.
How to use MCPApp?
Create a standalone or container-bound Google Apps Script project, install the MCPApp library using its project key (1TlX_L9COAriBlAYvrMLiRFQ5WVf1n0jChB6zHamq2TNwuSbVlI5sBUzh), then write a doPost function that calls new MCPApp.mcpApp({ accessKey: "sample" }).server(object) with a custom server response and function definitions. The sample shows how to implement tools, resources, and prompts.
Key features of MCPApp
- Provides a GAS library to deploy MCP servers easily.
- Supports MCP tools, resources, and prompts.
- Enables AI to access Google Drive and Google Calendar data.
- Includes sample functions for file search and calendar schedule retrieval.
- Uses JSON-RPC 2.0 for client-server communication.
Use cases of MCPApp
- Build an MCP server that queries Google Drive files and returns metadata to an AI assistant.
- Let an AI retrieve today’s schedule from Google Calendar via a MCP resource.
- Create custom prompts that combine Google Workspace data for AI‑powered workflows.
- Enable internal AI tools to interact with Google Workspace without exposing raw APIs.
- Serve as a reference implementation for developing a dedicated GAS MCP SDK.
FAQ from MCPApp
How do I install the MCPApp library?
Add the library to your Google Apps Script project using the project key 1TlX_L9COAriBlAYvrMLiRFQ5WVf1n0jChB6zHamq2TNwuSbVlI5sBUzh. You can also copy and paste the library script directly.
What MCP features are implemented in the sample?
The sample implements tools/list, tools/call, resources/list, resources/read, prompts/list, and prompts/get capabilities.
Can I use MCPApp with container‑bound GAS projects?
Yes, both standalone and container‑bound script types are supported.
What runtime or dependencies are required?
MCPApp runs within Google Apps Script; no additional runtime or external dependencies are needed beyond the standard GAS services.
How are transport and authentication handled?
The server is exposed via a Google Web App (deployed as doPost). Authentication is handled by an accessKey passed to the mcpApp constructor; the sample uses "sample".