Spike: Inventory Penny's MCP services + OAuth wiring #133

Closed
opened 2026-03-21 14:41:15 +00:00 by forgejo_admin · 4 comments
Contributor

Type

Spike

Lineage

Board item #227 on board-claude-custom. Labels: story:superuser-manage, arch:mcp-tools.
Dependency: depends:132 (claude-custom#132, closed — Penny agent type added to spawn schema).

Repo

forgejo_admin/claude-custom (agent config, MCP wiring, agents/penny.md)

Question

What MCP services does Penny need, what is their current deployment state, and what OAuth/credential wiring is required to close the gaps?

What to Explore

Current state (verified 2026-03-27):

  • ~/.mcp.json has 8 MCP servers wired: chrome-devtools, forgejo, gmail, groupme, notion, pal-e-docs, playwright, woodpecker
  • Gmail MCP is deployed and active (41 mcp__gmail__* tools). agents/penny.md incorrectly says "NOT DEPLOYED" — this is stale.
  • Notion MCP is deployed and active. Listed correctly in penny.md mcpServers.
  • GroupMe MCP is deployed and active in ~/.mcp.json but not mentioned in agents/penny.md at all.

Gaps to investigate:

  • GCal MCP — repos exist on Forgejo (gcal-mcp, gcal-mcp-remote) but NOT wired in ~/.mcp.json. Credentials at ~/secrets/google-oauth/gcal-mcp-remote.json. Determine: what's needed to wire it.
  • LinkedIn MCP — repo exists on Forgejo (linkedin-mcp-scheduler) but NOT wired in ~/.mcp.json. Credentials at ~/secrets/linkedin/credentials.env. Determine: what's needed to wire it.
  • agents/penny.md mcpServers frontmatter lists only pal-e-docs and notion — missing gmail and groupme even though those MCP servers are active. This frontmatter gap needs a fix ticket.
  • Plugins directory at plugins/marketplaces/claude-plugins-official/external_plugins/ — contains Slack, Discord, Telegram, iMessage, and 13 others. Assess relevance to Penny's communication role.

Success Criteria

  • Complete inventory of MCP services with auth type (OAuth, API key, token) and deployment status (deployed/gap)
  • OAuth tokens inventoried — which exist in ~/secrets/, which need refresh, which need initial auth
  • Follow-up tickets created for each wiring gap (GCal, LinkedIn, penny.md frontmatter fix)
  • Or: "not ready" conclusion documented with specific blockers

Time-box

1 session. If time-box expires without answer: close spike, document findings, escalate to Lucas.

  • pal-e-agency — project this affects
  • forgejo_admin/claude-custom#132 — Penny agent type fix (closed, dependency satisfied)
  • agent-penny — Penny's agent definition in pal-e-docs
  • ~/.mcp.json — MCP server configuration
  • ~/claude-custom/agents/penny.md — Penny agent frontmatter and role definition

Body restored 2026-03-27 by Dottie. Original was clobbered to literal $NEW_BODY by a botched variable expansion. Reconstructed from review notes review-227-2026-03-27 and review-227-2026-03-27-v2 plus spike template.

### Type Spike ### Lineage Board item #227 on board-claude-custom. Labels: `story:superuser-manage`, `arch:mcp-tools`. Dependency: `depends:132` (claude-custom#132, closed — Penny agent type added to spawn schema). ### Repo `forgejo_admin/claude-custom` (agent config, MCP wiring, agents/penny.md) ### Question What MCP services does Penny need, what is their current deployment state, and what OAuth/credential wiring is required to close the gaps? ### What to Explore **Current state (verified 2026-03-27):** - `~/.mcp.json` has 8 MCP servers wired: chrome-devtools, forgejo, gmail, groupme, notion, pal-e-docs, playwright, woodpecker - Gmail MCP is **deployed and active** (41 `mcp__gmail__*` tools). `agents/penny.md` incorrectly says "NOT DEPLOYED" — this is stale. - Notion MCP is **deployed and active**. Listed correctly in penny.md mcpServers. - GroupMe MCP is **deployed and active** in `~/.mcp.json` but **not mentioned** in `agents/penny.md` at all. **Gaps to investigate:** - **GCal MCP** — repos exist on Forgejo (`gcal-mcp`, `gcal-mcp-remote`) but NOT wired in `~/.mcp.json`. Credentials at `~/secrets/google-oauth/gcal-mcp-remote.json`. Determine: what's needed to wire it. - **LinkedIn MCP** — repo exists on Forgejo (`linkedin-mcp-scheduler`) but NOT wired in `~/.mcp.json`. Credentials at `~/secrets/linkedin/credentials.env`. Determine: what's needed to wire it. - **agents/penny.md mcpServers frontmatter** lists only `pal-e-docs` and `notion` — missing `gmail` and `groupme` even though those MCP servers are active. This frontmatter gap needs a fix ticket. - **Plugins directory** at `plugins/marketplaces/claude-plugins-official/external_plugins/` — contains Slack, Discord, Telegram, iMessage, and 13 others. Assess relevance to Penny's communication role. ### Success Criteria - [ ] Complete inventory of MCP services with auth type (OAuth, API key, token) and deployment status (deployed/gap) - [ ] OAuth tokens inventoried — which exist in `~/secrets/`, which need refresh, which need initial auth - [ ] Follow-up tickets created for each wiring gap (GCal, LinkedIn, penny.md frontmatter fix) - [ ] Or: "not ready" conclusion documented with specific blockers ### Time-box 1 session. If time-box expires without answer: close spike, document findings, escalate to Lucas. ### Related - `pal-e-agency` — project this affects - `forgejo_admin/claude-custom#132` — Penny agent type fix (closed, dependency satisfied) - `agent-penny` — Penny's agent definition in pal-e-docs - `~/.mcp.json` — MCP server configuration - `~/claude-custom/agents/penny.md` — Penny agent frontmatter and role definition --- *Body restored 2026-03-27 by Dottie. Original was clobbered to literal `$NEW_BODY` by a botched variable expansion. Reconstructed from review notes `review-227-2026-03-27` and `review-227-2026-03-27-v2` plus spike template.*
Author
Contributor

Scope Review: NEEDS_REFINEMENT

Review note: review-227-2026-03-27
Spike structure is solid — all template sections present, dependency #132 resolved, acceptance criteria verifiable. Two issues found:

  • Stale "What to Explore" section: Gmail MCP and Notion MCP are already deployed and active in ~/.mcp.json. agents/penny.md says "NOT DEPLOYED" for gmail — this is wrong. The real gaps are GCal MCP and LinkedIn MCP (repos exist on Forgejo but not wired locally). GroupMe MCP is also deployed but not mentioned. Update the exploration scope to match current reality.
  • Missing arch: label on board item #227. Recommend arch:mcp-tools.

After these two fixes, ticket is READY.

## Scope Review: NEEDS_REFINEMENT Review note: `review-227-2026-03-27` Spike structure is solid — all template sections present, dependency #132 resolved, acceptance criteria verifiable. Two issues found: - **Stale "What to Explore" section**: Gmail MCP and Notion MCP are already deployed and active in `~/.mcp.json`. `agents/penny.md` says "NOT DEPLOYED" for gmail — this is wrong. The real gaps are GCal MCP and LinkedIn MCP (repos exist on Forgejo but not wired locally). GroupMe MCP is also deployed but not mentioned. Update the exploration scope to match current reality. - **Missing `arch:` label** on board item #227. Recommend `arch:mcp-tools`. After these two fixes, ticket is READY.
Author
Contributor

Issue body updated per scope review corrections.

Issue body updated per scope review corrections.
Author
Contributor

Scope Review: BLOCK

Review note: review-227-2026-03-27-v2
Issue body was destroyed — current body is the literal string $NEW_BODY (unexpanded shell variable from a botched update script). All 8 spike template sections are missing.

  • [BODY] Restore the issue body using: (a) previous review note review-227-2026-03-27 which documents original sections, (b) template-issue-spike structure, (c) stale-fact corrections (Gmail/GroupMe MCP are deployed, GCal/LinkedIn are the real gaps)
  • [SCOPE] Audit the update script that wrote $NEW_BODY — variable expansion bug may have damaged other issues

Traceability is complete (story:superuser-manage, arch:mcp-tools both present). Dependency #132 is satisfied. Once body is restored with corrected facts, ticket is READY.

## Scope Review: BLOCK Review note: `review-227-2026-03-27-v2` Issue body was destroyed — current body is the literal string `$NEW_BODY` (unexpanded shell variable from a botched update script). All 8 spike template sections are missing. - **[BODY]** Restore the issue body using: (a) previous review note `review-227-2026-03-27` which documents original sections, (b) `template-issue-spike` structure, (c) stale-fact corrections (Gmail/GroupMe MCP are deployed, GCal/LinkedIn are the real gaps) - **[SCOPE]** Audit the update script that wrote `$NEW_BODY` — variable expansion bug may have damaged other issues Traceability is complete (story:superuser-manage, arch:mcp-tools both present). Dependency #132 is satisfied. Once body is restored with corrected facts, ticket is READY.
Author
Contributor

Scope Review: READY

Review note: review-227-2026-03-27-v3
Re-review after body restoration. All 8 spike template sections present and verified. Traceability triangle complete (story:superuser-manage, arch:mcp-tools, issue open). All contextual file references confirmed against filesystem and Forgejo. Dependency #132 satisfied (closed). 4 acceptance criteria are agent-verifiable. No decomposition needed — single-session investigation spike. Ready for next_up.

## Scope Review: READY Review note: `review-227-2026-03-27-v3` Re-review after body restoration. All 8 spike template sections present and verified. Traceability triangle complete (story:superuser-manage, arch:mcp-tools, issue open). All contextual file references confirmed against filesystem and Forgejo. Dependency #132 satisfied (closed). 4 acceptance criteria are agent-verifiable. No decomposition needed — single-session investigation spike. Ready for next_up.
forgejo_admin 2026-03-28 11:29:17 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/claude-custom#133
No description provided.