@hlao-mcp/appsheet
v0.1.0
Published
HLAO MCP server wrapping the Google AppSheet REST API (find/add/update/delete records, invoke predefined actions). Write tools gated through the HLAO passport gate.
Downloads
18
Readme
@hlao-mcp/appsheet
MCP server that wraps the Google AppSheet REST API and exposes it as typed tools for HLAO agents.
What this MCP connects to
AppSheet is Google's no-code app platform; this server lets an agent read and write rows in any AppSheet-backed table the credentials authorize.
Tools
Read tools (safe; do not mutate AppSheet state):
| Tool | What it does |
| --------------- | ------------------------------------------------------------------ |
| find_records | Find rows in a table by key or by AppSheet selector expression. |
Write tools (mutate AppSheet; require HLAO authority gate):
| Tool | Required passport scope | What it does |
| ---------------- | ------------------------------- | ----------------------------------------------------- |
| add_record | appsheet:add_record | Add a new row to a table. |
| update_record | appsheet:update_record | Update an existing row by key. |
| delete_record | appsheet:delete_record | Delete a row by key. |
| invoke_action | appsheet:invoke_action | Run a predefined AppSheet action against rows. |
All write tools are gated through the HLAO passport: a missing or under-scoped
passport returns a structured gate_required / gate_denied error before any
upstream call is made.
Credentials
| Variable | What it is |
| ---------------------- | ---------------------------------------------------------------------------- |
| APPSHEET_APP_ID | AppSheet application id (UUID). Required. |
| APPSHEET_ACCESS_KEY | Application Access Key (sent as header ApplicationAccessKey). Required.|
| APPSHEET_LOCALE | Optional locale (default en-US). |
| APPSHEET_TIMEZONE | Optional timezone (default Pacific Standard Time). |
How to get credentials
Plan requirement: AppSheet API access requires the Core plan or above. Confirm your AppSheet workspace is on Core or higher before generating keys.
- Open your app in the AppSheet editor.
- Manage → Integrations → IN (incoming): enable the IN section.
- Click Create Application Access Key and copy the key.
- The App ID is shown on the same Manage → Integrations page (or in the app's URL).
- Store both in your
.env(this directory).
Local development
cp .env.example .env
pnpm install
pnpm --filter @hlao-mcp/appsheet build
# Streamable HTTP (production-shaped)
HLAO_MCP_HTTP_PORT=3002 node dist/server.js
# stdio (for local MCP-client testing)
HLAO_MCP_TRANSPORT=stdio node dist/server.jsHLAO wrapping
The HLAO @hlao/mcp-gateway calls this server with the verified passport
forwarded as x-hlao-authority (JSON). The server uses that header to gate
all write tools; the gateway logs every call through the audit substrate.
