PollyHub

Grain Connector

Clean

Access Grain meeting recordings, transcripts, AI notes, highlights, and views via the Grain Public API. Use when querying meeting data from Grain. Authentication is managed automatically via Polly's API token system.

SKILL.md

---
name: grain-connector
description: >
  Access Grain meeting recordings, transcripts, AI notes, highlights, and views via the Grain Public API.
  Use when the user asks about Grain meetings, transcripts, action items, AI notes, or recordings.
  Keywords: grain, meeting, recordings, transcript, AI notes, action items, highlights.
metadata:
  polly:
    polly_managed_connector: true
    auth:
      - env: GRAIN_ACCESS_TOKEN
        type: api_key
        integration_id: grain-api-key
        description: Grain API access token
    primaryEnv: GRAIN_ACCESS_TOKEN
---

# Grain Connector

Access Grain meeting recordings, transcripts, AI notes, and highlights through the Grain Public API.

---

## Prerequisites

### Authentication

This skill uses **Polly-managed API token authentication**. The access token is automatically managed by Polly's auth system via the `GRAIN_ACCESS_TOKEN` environment variable.

On first use, if not connected, call:
```
manage_auth(action="connect", integration_id="grain-api-key", auth_env="GRAIN_ACCESS_TOKEN")
```

**Manual setup (alternative):**
1. Log into [grain.com](https://grain.com)
2. Go to Settings → API Access
3. Generate a Personal Access Token
4. Provide it via `manage_skills(action="config", skill_name="grain-connector", api_key="<token>")`

---

## Script

All API calls go through `scripts/grain_api.py`:

```bash
python3 /home/polly/skills/installed/grain-connector/scripts/grain_api.py <command> [args]
```

---

## Commands

### List recordings
```bash
python3 scripts/grain_api.py list-recordings --limit 10
```

### Get recording details with transcript and notes
```bash
python3 scripts/grain_api.py get-recording <id> --transcript vtt --notes md
```

### Get transcript only
```bash
python3 scripts/grain_api.py get-transcript <id> --format vtt
```

### Get AI notes only
```bash
python3 scripts/grain_api.py get-notes <id> --format md --sections "Action Items,Summary"
```

### List views
```bash
python3 scripts/grain_api.py list-views --type recordings
```

---

## Workflows

**List recent recordings:**
Present as numbered list with title and id.

**Get action items from last meeting:**
1. List recordings (limit 1)
2. Get notes with section "Action Items"

**Get transcript:**
1. If no id, list recordings first
2. Get transcript in vtt format

**Summarize meeting:**
1. Get recording id
2. Get notes in markdown format

---

## Notes

- PAT provides access to recordings the user owns or has been shared with
- Transcript/notes may be `null` if recording is still processing
- Common note sections: Summary, Action Items, Key Moments, Next Steps
- See `references/api.md` for full API documentation
Authorstella
Downloads3
Versions3
Published1d ago
Auth Requirements
GRAIN_ACCESS_TOKENapi_key

integration: grain-api-key

Version History

v1.2.0latest

Fixed integration_id to grain-api-key for proper Nango auth provider matching

Apr 9, 2026

Clean.zip
v1.1.0

Fixed integration_id to grain-api-key (was incorrectly set to 'grain')

Apr 9, 2026

Clean.zip
v1.0.0

Initial release of Grain connector with Polly-managed API token authentication

Apr 9, 2026

Clean.zip

SHA-256 (latest)

07954f544acbf465cf25f9a92460f6097f9f7f1ef78de021215ae3b1672d2e5a