Skill v1.0.1
currentAutomated scan100/1003 files
version: "1.0.1"
Setup Granola Integration Skill
Copy this to .claude/skills/setup-granola/SKILL.md to enable automatic installation.
---name: setup-granoladescription: Install and configure Granola MCP server for meeting sync. Use when user says "set up Granola", "install Granola integration", or "connect Granola".---# Setup Granola IntegrationAutomatically install and configure the Granola MCP server for syncing meetings to Personal OS.## Prerequisites CheckBefore starting, verify:1.User is on macOS (Granola is macOS only)2.User has Granola.ai installed3.Python 3.12+ is available4.uv is installed (or can be installed)## Instructions### Step 1: Check PrerequisitesRun these checks and report any issues:
Check OS
uname -s # Should be Darwin
Check Python version
python3 --version # Should be 3.12+
Check uv
uv --version # Install if missing: brew install uv
Check if Granola cache exists
ls ~/Library/Application\ Support/Granola/cache-v3.json
If uv is missing, offer to install it:
brew install uv
If Granola cache doesn't exist, inform user they need to:1. Install Granola from https://granola.ai2. Attend or record at least one meeting### Step 2: Clone MCP ServerAsk user where to clone (suggest ~/Projects):
cd ~/Projects # or user's preferred location git clone https://github.com/proofgeist/granola-ai-mcp-server.git cd granola-ai-mcp-server uv sync
### Step 3: Test ServerVerify installation works:
cd ~/Projects/granola-ai-mcp-server uv run python test_server.py
### Step 4: Create Transcripts Folder
mkdir -p Knowledge/Transcripts
### Step 5: Install SkillsCopy the Granola skills to the user's Claude skills folder:
mkdir -p .claude/skills/meeting-sync cp core/integrations/granola/skills/meeting-sync/SKILL.md .claude/skills/meeting-sync/
### Step 6: Update .mcp.jsonRead the current `.mcp.json` file and add the granola server config.The config should be:
{ "mcpServers": { "granola": { "command": "uv", "args": [ "--directory", "<GRANOLA_MCP_PATH>", "run", "granola-mcp-server" ], "env": { "KNOWLEDGE_PATH": "<PERSONAL_OS_PATH>/Knowledge" } } } }
Replace:- `<GRANOLA_MCP_PATH>` with absolute path to granola-ai-mcp-server- `<PERSONAL_OS_PATH>` with absolute path to personal-os workspace### Step 7: Verify SetupAsk user to restart Claude Code, then test:
Search my meetings for "test"
or
Check for new Granola meetings
## Success Criteria- [ ] Prerequisites verified- [ ] granola-ai-mcp-server cloned and dependencies installed- [ ] test_server.py passes- [ ] Knowledge/Transcripts folder exists- [ ] meeting-sync skill installed to .claude/skills/- [ ] .mcp.json updated with granola config- [ ] Claude Code restarted- [ ] Granola tools accessible (search_meetings works)## Troubleshooting### Python version too old
brew install python@3.12
### uv sync fails
pip install uv # Alternative installation
### Permission denied on cacheGranola must be running with proper permissions. User should open Granola app once.### MCP not loadingCheck .mcp.json syntax and ensure paths are absolute (not relative).## After SetupInform user they can now:- Say "Sync my Granola meetings" to sync new meetings- Morning planning will automatically check for new meetings- Search across all meeting content