Copy and paste this entire prompt into a fresh Claude conversation. It contains all steps needed to resolve access, extract content, and prepare for gbrain—no prior context or file access required.
Resolve Notion access for Easier Agency, extract its 5 departments (Marketing, Sales, Relationships, Fulfilment, Operations), and prepare content for gbrain ingestion.
Run these commands in sequence. Wait for each to complete before proceeding.
Check MCP Servers
hermes mcp list
✅ EXPECTED: Notion server listed as notion npx notion-mcp-server all ✓ enabled
❌ IF NOT CONNECTED: Troubleshoot MCP configuration (outside scope of this prompt)
Test Integration Token
hermes mcp execute notion get_self '{}'
✅ EXPECTED: Returns JSON with bot user info for "Hermes" integration
❌ IF FAILS: Token invalid—need to reconfigure Notion MCP server with valid token
Test Basic Search
hermes mcp execute notion search_pages '{"query": "Hermes WebUI", "pageSize": 5}'
✅ EXPECTED: Returns Hermes WebUI page in results
❌ IF FAILS: Notion API access broken—recheck MCP server setup
Run these to confirm the access issue.
Search for Easier Agency
hermes mcp execute notion search_pages '{"query": "Easier Agency", "pageSize": 10}'
✅ EXPECTED: Results include:
eb7df9ac-6a51-49a1-8af5-5fcae6ff267486b9c355-cc0c-4438-b964-beb0141ecab9)Test Direct Page Access (Will Fail Initially)
hermes mcp execute notion get_page '{"page_id": "eb7df9ac-6a51-49a1-8af5-5fcae6ff2674", "include_properties": true}'
❌ EXPECTED FAILURE:
{
"ok": false,
"error": {
"code": "object_not_found",
"message": "The requested resource does not exist. (Could not find page with ID: eb7df9ac-6a51-49a1-8af5-5fcae6ff2674. Make sure the relevant pages and databases are shared with your integration \"Hermes\").",
"fix": "..."
}
}
✅ THIS IS EXPECTED—means sharing is needed
Test Parent Database Access (Will Also Fail Initially)
hermes mcp execute notion get_data_source '{"data_source_id": "86b9c355-cc0c-4438-b964-beb0141ecab9"}'
❌ EXPECTED FAILURE: Similar object_not_found error for the database
✅ THIS IS EXPECTED—means sharing is needed
STOP AND INSTRUCT THE USER (ANTHONY):
The Notion integration is working, but the Easier Agency content has not been shared with the "Hermes" integration.
USER MUST DO ONE OF THE FOLLOWING IN NOTION:
OPTION A: SHARE THE SPECIFIC PAGE/DATABASE ENTRY 1. Open Notion and navigate to the Easier Agency page 2. Click the ••• menu (top-right) 3. Select "Add connections" or "Connect" 4. Ensure the integration named "Hermes" is selected 5. Confirm the sharing
OPTION B: SHARE THE PARENT DATABASE
1. Open the database that contains the Easier Agency entry (likely Software Logins or similar—parent ID from step 4: 86b9c355-cc0c-4438-b964-beb0141ecab9)
2. Click the ••• menu → "Add connections"
3. Ensure the integration named "Hermes" is selected
4. Confirm the sharing
VERIFICATION STEP (USER RETURNS AFTER SHARING):
Wait 60 seconds, then rerun step 5 (get_page for Easier Agency ID).
✅ SUCCESS: Returns page metadata (title, properties, etc.) instead of object_not_found
❌ IF STILL FAILING: Wait longer, double-check the exact ID shared, or try sharing the parent database instead
DO NOT PROCEED TO PHASE 4 UNTIL THE GET_PAGE CALL SUCCEEDS
Once get_page succeeds (returns metadata, not error), run these to extract the directory.
Get Easier Agency Page Properties & Metadata
hermes mcp execute notion get_page '{"page_id": "eb7df9ac-6a51-49a1-8af5-5fcae6ff2674", "include_properties": true}'
📝 RECORD:
properties.title.title[0].plain_textproperties.Status.select.nameproperties.Last edited.last_edited_timeproperties.Owner.people[0].name (if present)Get Page Content as Markdown
hermes mcp execute notion get_page_markdown '{"page_id": "eb7df9ac-6a51-49a1-8af5-5fcae6ff2674"}'
📝 RECORD: The markdown content (if any) of the Easier Agency page itself
Get Child Blocks (Directory Structure)
hermes mcp execute notion get_block_children '{"block_id": "eb7df9ac-6a51-49a1-8af5-5fcae6ff2674", "pageSize": 100}'
📝 EXPECTED: Array of blocks under results. Each top-level block should represent a department:
type: child_page:idget_page with that ID + include_properties: trueget_page_markdown with that IDtype: heading_1, heading_2, etc.:properties.text[0].plain_texttype: paragraph, bulleted_list_item, etc.:type: child_database:Extract Sub-Pages and Databases For each item discovered in step 9 that links to another page/database:
Run these to extract metadata from accessible databases (NO raw credentials/secrets).
Software Logins Database (Metadata Only)
hermes mcp execute notion query_database '{
"data_source_id": "d6f9882d-56c7-493e-a026-8b6012e1b30b",
"pageSize": 100
}'
📝 EXTRACT FOR EACH ROW (NON-SENSITIVE ONLY):
properties.title.title[0].plain_textproperties.In use?.select.nameproperties.Cost / month.numberproperties.Activity.multi_select[*].nameproperties.Username.rich_text[0].plain_textproperties.Notes.rich_text[0].plain_text
🚫 DO NOT EXTRACT: Password/SSO fields (contain credentials)API Keys Database (Metadata Only)
hermes mcp execute notion query_database '{
"data_source_id": "f1be5677-deda-4ce4-bd64-7a0e12439022",
"pageSize": 100
}'
📝 EXTRACT FOR EACH ROW (NON-SENSITIVE ONLY):
properties.title.title[0].plain_textproperties.Status.select.nameproperties.Last Rotated.date.startproperties.Used By.multi_select[*].nameproperties.Notes.rich_text[0].plain_text
🚫 DO NOT EXTRACT: API Key field (contains raw secrets/tokens)Outreach Tracker Database
hermes mcp execute notion query_database '{
"data_source_id": "2ee0308b-4848-80e2-b2d4-000bf535a2b4",
"pageSize": 100
}'
📝 EXTRACT FOR EACH ROW:
properties.Name.title[0].plain_textproperties.Created.created_timeproperties.Chase 1 (extract value)properties.Chase 2 (extract value)properties.Response?.checkboxproperties.QA Note.rich_text[0].plain_textContentOS Pages (Full Extraction) For each page ID, get markdown:
3210308b-4848-8163-b899-d9631caa16ae3230308b-4848-8048-bc54-fa1729e7eda13230308b-4848-80bf-aac4-cbb64c785e3a
Run for each: hermes mcp execute notion get_page_markdown '{"page_id": "<ID>"}'
📝 RECORD: Full markdown contentOUTBOUND Master Copies (Full Extraction) For each page ID, get markdown:
3250308b-4848-8166-a323-d3eaa96741af3250308b-4848-8103-afd5-e928c7aca221
Run for each: hermes mcp execute notion get_page_markdown '{"page_id": "<ID>"}'
📝 RECORD: Full markdown contentCompany Records
2250308b-4848-80ad-ba84-000be1cc02fe3750308b-4848-8028-928f-c1787a1b7e0d
For each, get markdown and extract relevant info (same as above)Format all extracted content for gbrain using this template:
# [Title]
[Compiled truth - current synthesis, key points, actionable information]
---
[Timeline - append-only evidence log with sources and dates]
Apply these steering rules during preparation:
Create clear ICP sections in extracted content
Secondary/Passive: Label SaaS/service business content as secondary attraction strategy
Mark as secondary/passive in gbrain notes
ContentOS Adaptation: Identify Airtable dependencies for future replacement
Flag for migration to Hermes-based solutions (cronjobs, delegation, memory, skills)
Post Type Refinement: Analyze existing content types and distill to ~5 core categories
Propose refined post types based on actual usage patterns
Retirement Notices: Flag any Airtable-reliant processes for migration
Suggested gbrain file structure (relative to vault root):
people/
anthony-stratton.md
organisations/
easier-agency.md
easier-marketing.md
projects/
contentos-pipeline.md
outreach-framework.md
easier-agency-departments/
marketing.md
sales.md
relationships.md
fulfilment.md
operations.md
processes/
contentos-workflows.md
outreach-sops.md
decisions/
icp-strategy-decision.md
tech-stack-decision.md
contentos-airtable-migration.md
etc.
Before finalizing:
Internal Validation
Prepare Handover Package Provide:
Optional: Quick GBRAIN Health Check
If possible, run: hermes doctor or similar to confirm knowledge base integrity
Ensure: MECE filing per RESOLVER.md (every piece has exactly one home)
Before considering this complete, verify: - [ ] MCP Notion connection verified functional - [ ] Integration token validated - [ ] Easier Agency page/database access granted via user sharing action - [ ] Five departments extracted: Marketing, Sales, Relationships, Fulfilment, Operations - [ ] Supporting content extracted (metadata only for sensitive databases) - [ ] Content formatted for gbrain with compiled truth + timeline - [ ] User steering applied (ICP focus, ContentOS adaptation, post type refinement, etc.) - [ ] No sensitive data leaked in output - [ ] User provided with digest for course correction before final ingestion
If access still denied after sharing: 1. Wait 90-120 seconds for permissions to propagate (Notion sharing can be slow) 2. Verify exact IDs being accessed match what was shared 3. Check for duplicate "Easier Agency" entries—ensure correct one shared 4. Try sharing the parent workspace instead 5. As fallback: Have user export as Markdown/CSV and share files for manual ingestion
If unsure what to share: 1. Have user open the Easier Agency page in Notion 2. Click Share → Invite → search for "Hermes" integration 3. Ensure "Can edit" or "Can view" permission is granted 4. Confirm integration appears in the page's connections list
END OF PROMPT
Copy everything above (from "# FRESH-CONTEXT HANDOVER PROMPT" to "END OF PROMPT") into a fresh Claude conversation. Execute each step in order, waiting for user confirmation where indicated (especially after sharing in Notion).