NOTICKET Publish five public Apollo skills v0.2 - #9
Conversation
Kodem Security Scan Summary
Note: Kai marked all findings as likely false positives. |
There was a problem hiding this comment.
Orca Security Scan Summary
| Status | Check | Issues by priority | |
|---|---|---|---|
| Infrastructure as Code | View in Orca | ||
| Secrets | View in Orca | ||
| Vulnerabilities | View in Orca |
| In Claude Code, run: | ||
|
|
||
| ``` | ||
| /plugin marketplace add apolloio/apollo-mcp-plugin |
There was a problem hiding this comment.
Don't our users need to know this command? Why do we remove it and all other instructions?
There was a problem hiding this comment.
+1, and note it's not just removed, the new validator actively forbids adding these commands back (see my comment on validate-skills.mjs). Needs to be restored.
There was a problem hiding this comment.
You're right here. I restored the Claude Code, Cowork, and Cursor setup in this branch, but main has since picked up a much stronger README through #12 and #13. I'm going to rebase this without replacing those install, OAuth, registry, and troubleshooting sections, then add only the public-skill guidance.
There was a problem hiding this comment.
This is fixed now. The root README keeps the current Claude Code, Cowork, Cursor, Copilot/VS Code, OAuth, registry, and troubleshooting instructions, and adds the public-skill guidance without replacing them.
Use apollo_organizations_lookup for free name/domain resolution, keep filtered company search on the confirmed one-credit tool, restore verified Claude/Cowork/Cursor setup, and remove the volatile public platform matrix.
marcus-gomes-v
left a comment
There was a problem hiding this comment.
Really like the staged-approval safety model, separate gates for credits/reveal/writes/enroll/send is the right shape.
But requesting changes on three things: prospect depends on a tool that doesn't exist on production MCP yet, the install instructions were removed and the validator forbids adding them back, and analytics dropped its whole metric catalog with no end-to-end run as evidence.
Happy to approve once those land.
| "summary": "Build a ranked search-first prospect list and gate enrichment, private data, and saves.", | ||
| "required_tools": [ | ||
| "apollo_mixed_people_api_search", | ||
| "apollo_organizations_lookup", |
There was a problem hiding this comment.
Don't know if this tool exstis in the production MCP surface today — I checked the live tool list and there's no apollo_organizations_organization_lookup.
The PR body says we only publish after this contract exists, but nothing in the repo enforces that gate, what is the plan for this?
There was a problem hiding this comment.
You were right to flag this. #97251 has since merged the canonical apollo_organizations_lookup name, but as of today it still isn't present in the authenticated production tool list I checked. I'm keeping this release blocked until tools/list shows it and a read-only name/domain smoke test passes. I won't silently fall back to paid company search.
There was a problem hiding this comment.
I kept this fail-closed. The catalog now uses the canonical apollo_organizations_lookup name, but the PR remains draft because that tool still was not present in the authenticated production tool list I checked. Since this is a content-only repo, I did not add a pretend runtime check; publishing is blocked until tools/list and a read-only name/domain smoke test both pass.
There was a problem hiding this comment.
apollo_organizations_lookup is now present in the tools
| In Claude Code, run: | ||
|
|
||
| ``` | ||
| /plugin marketplace add apolloio/apollo-mcp-plugin |
There was a problem hiding this comment.
+1, and note it's not just removed, the new validator actively forbids adding these commands back (see my comment on validate-skills.mjs). Needs to be restored.
| [/"visibility"\s*:\s*"private"/i, "private visibility"], | ||
| [/\bevals?\b/i, "evaluation artifact reference"], | ||
| [/\$ARGUMENTS/, "client-specific argument placeholder"], | ||
| [/\/apollo:/, "client-specific slash command"], |
There was a problem hiding this comment.
This validator hard-bans /apollo: and /plugin in all public content, which means the install instructions Alexander asked about can never come back without editing the validator too?
There was a problem hiding this comment.
Good callout. The portability check belongs on the portable SKILL.md files, not the user-facing README. /plugin is currently allowed in the README, but /apollo:* is still blocked too broadly. I'm going to scope that rule to skill content so the README can document verified client commands.
There was a problem hiding this comment.
Fixed. The portability restriction is scoped to the portable skill files, so the README can document verified /plugin and other client setup commands. The dependency-free validator passes on both Windows and WSL.
|
|
||
| **Contact attributes** | ||
| `contact_stage_id`, `contact_label_ids`, `contact_owner_id`, `persona`, `person_title_unanalyzed`, `person_seniority`, `person_location_country`, `person_location_state`, `person_location_city` | ||
| Follow the parameter types exposed by the tools. For sequence paging, start with page 1 and a small page size. If the server rejects the visible schema, report a tool/schema blocker instead of retrying with guessed parameter shapes. If the report tool is absent, stop and do not invent data. |
There was a problem hiding this comment.
This drops the entire documented metric catalog (all the num_/percent_ names, group_by dimensions, filters: { user_ids: ["current"] }, sort rules). Was any skill actually run end-to-end against production MCP?
There was a problem hiding this comment.
You're right. We did not run the analytics skill end to end against production, and the broader matrix does not justify removing this catalog. I'm going to restore the metric, grouping, filter, and sorting guidance and add a few focused read-only checks before asking for another review.
There was a problem hiding this comment.
Fixed. I restored the metric catalog, groupings, current-user filter, and sorting guidance. I also ran three OAuth, read-only production examples: current-user email metrics, team call outcomes by user, and rep email metrics ranked by replies. All three returned successfully; no customer output is included in the public PR.
…kills-v0.2-rebuild # Conflicts: # README.md
Preserve the current multi-client README while adding the five-skill catalog and release gate. Align enrichment, waterfall polling, credit balance, ten-person batching, contact writes, and sequence removal with the live Apollo tool contracts. Keep canonical skills on standard Agent Skills frontmatter, restore manifest parity with server.json, and narrow validation to public skill portability and safety.
Purpose
Publish five public Apollo workflow skills from one lean source while preserving the current multi-client MCP setup guidance.
Scope
Exactly eight files in the final diff:
SKILL.mdfiles: onboarding, analytics, enrich-lead, prospect, and sequence-loadcatalog/skills.jsonThe Claude, Cursor, and MCP manifests remain aligned at
0.1.1; release versioning stays with the team-owned registry work.Why these changes exist
name/descriptionfrontmatter and unqualified Apollo tool names.main.apollo_organizations_lookupfor shallow organization discovery by name, domain, or supported filters.apollo_mixed_companies_searchfor requests that explicitly require full organization details in search results.Deliberately excluded
No installer, public platform matrix, private Replit skill, internal eval, workflow, contract package, lockfile, customer data, credential, local path, or unpublished evidence.
Verification
node scripts/validate-skills.mjs: pass on Windows and Linux/WSL.git diff --check: pass; committed content is LF with no local-machine markers.Release gates
Leadgenie PR #97251 merged the canonical
apollo_organizations_lookupcontract. Vinayak confirmed the tool is visible for at least one rollout-enabled team, but GA PR #99335 remains open and the tool is still absent from another authenticated production Apollo MCP tool list.Keep this PR draft and do not publish
v0.2.0until:tools/listincludesapollo_organizations_lookupfor a representative intended workspaceDo not silently substitute paid company search.
Registry PR #10 is merged. Registry PR #5 remains a separate owner decision. MCP connectivity does not prove that any client installed or discovered these skills.
This PR supersedes closed PRs #7 and #8.