A skill your agent uses whenever the user wants to find, shortlist, vet, or enrich US public-relations and communications agencies — media relations, crisis comms, investor relations (IR)…

MITAuto-check: notesWriting & Content

Install Find PR Agency

skills CLI
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill find-pr-agency -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jeremylongshore/tons-of-skills-marketplace find-pr-agency --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/mcp/servicegraph/skills/find-pr-agency .claude/skills/find-pr-agency && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
find-pr-agency
GitHub stars
2.8k
Token cost
~3.7k tokens
SKILL.md length
1,328 words
Files
1
Skills in repo
3,342
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses whenever the user wants to find, shortlist, vet, or enrich US public-relations and communications agencies — media relations, crisis comms, investor relations (IR)…

  • Works in 7 steps: Pick the call path — the ServiceGraph… → GET… → Build the filter (Filter DSL below) and… → …
  • The user wants to find
  • SKILL.md covers Overview, Sibling skills — defer when…, When NOT to use this skill and Prerequisites, plus 7 more sections
  • Calls curl; reaches api.servicegraph.co and mcp.servicegraph.co; needs SERVICEGRAPH_API_KEY

What it does

Find PR Agency is an agent skill from jeremylongshore/tons-of-skills-marketplace. Use whenever the user wants to find, shortlist, vet, or enrich US public-relations and communications agencies — media relations, crisis comms, investor relations (IR), product-launch PR, tech/startup PR, healthcare PR, B2B PR, public affairs, brand reputation, and internal communications. Triggers on "find me a tech PR agency in NY", "shortlist three IR firms for our IPO", "we need crisis comms help for a brand reputation issue", or "pull contact info for these 10 PR firm domains", even when described indirectly…

Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Designed for Claude Code

It sits in Writing & Content, covering Copywriting, Internal communications and Influencer and creator marketing. It works with Model Context Protocol. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.

When your agent uses it

  • The user wants to find
  • Enrich US public-relations and communications agencies — media relations
  • Investor relations (IR)
  • Product-launch PR

Example prompts

  • “find me a tech PR agency in NY”
  • “shortlist three IR firms for our IPO”
  • “we need crisis comms help for a brand reputation issue”
  • “/find-pr-agency”

Requirements

  • A credential in SERVICEGRAPH_API_KEY
  • Compatibility (from SKILL.md): Designed for Claude Code
  • Pre-approved tools (allowed-tools): Bash(curl:*), mcp__servicegraph__list_fields, mcp__servicegraph__list_field_values, mcp__servicegraph__check_filter, mcp__servicegraph__translate_intent, mcp__servicegraph__search_dataset, mcp__servicegraph__get_row, mcp__servicegraph__unlock_rows, mcp__servicegraph__get_credit_balance

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Pick the call path — the ServiceGraph MCP tools if loaded, otherwise the
  2. GET /v1/datasets/pro_services/fields?include_values=1 — confirm the
  3. Build the filter (Filter DSL below) and validate it with
  4. GET /v1/datasets/pro_services/search — present the free brief cards and
  5. Quote the unlock cost (10 credits per row, 30-day TTL) and get an explicit
  6. POST /v1/datasets/pro_services/unlocks with the chosen apexes; report the
  7. GET /v1/me/credits to report the remaining balance when asked.

What it can do on your machine

Read from SKILL.md and the folder at commit cfae287. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash(curl:*)
    • mcp__servicegraph__list_fields
    • mcp__servicegraph__list_field_values
    • mcp__servicegraph__check_filter
    • mcp__servicegraph__translate_intent
    • mcp__servicegraph__search_dataset
    • mcp__servicegraph__get_row
    • mcp__servicegraph__unlock_rows
    • mcp__servicegraph__get_credit_balance

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.servicegraph.co
    • mcp.servicegraph.co

    Also links to:

    • servicegraph.co
    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • SERVICEGRAPH_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code

    From compatibility in the SKILL.md frontmatter.

Context cost

Find PR Agency loads about 3.7k tokens when it runs. Until then it costs about 253 tokens; SKILL.md has 1,328 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~253
When it runs · the whole SKILL.md, loaded when a task matches
~3.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:73
    ICEGRAPH_API_KEY` in the environment or `.env.local` for the REST
  • NoteMentions a .env fileSKILL.md:126
    out of the LLM context** — never read `.env*` files; dispatch every
  • NoteMentions a .env fileSKILL.md:130
    `.env.local`:
  • NoteMentions a .env fileSKILL.md:133
    ( set -a; [ -f .env.local ] && . ./.env.local; set +a;
  • NoteMentions a .env fileSKILL.md:141
    and add `SERVICEGRAPH_API_KEY=vk_…` to `.env.local` here

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jeremylongshore/tons-of-skills-marketplace at commit cfae287, republished under its MIT licence (© jeremylongshore). 1,328 words, ~3,740 tokens.

Download SKILL.mdSave it as .claude/skills/find-pr-agency/SKILL.md (or your agent's skills folder).
name
find-pr-agency
description
Use whenever the user wants to find, shortlist, vet, or enrich US public-relations and communications agencies — media relations, crisis comms, investor relations (IR), product-launch PR, tech/startup PR, healthcare PR, B2B PR, public affairs, brand reputation, and internal communications. Triggers on "find me a tech PR agency in NY", "shortlist three IR firms for our IPO", "we need crisis comms help for a brand reputation issue", or "pull contact info for these 10 PR firm domains", even when described indirectly (we need press, get us into TechCrunch, manage our brand reputation). Drives the ServiceGraph API (api.servicegraph.co) — a 100k+ US firm catalog filterable by industry, services, location, size, ratings. Defer to find-marketing-agency when scope is broader marketing beyond PR/comms. Skip in-house PR/comms hires, "write me a press release" DIY asks, PR-software comparisons (Cision, Muck Rack), influencer-marketplace questions, non-US firms, individual freelance PR people.
allowed-tools
Bash(curl:*), mcp__servicegraph__list_fields, mcp__servicegraph__list_field_values, mcp__servicegraph__check_filter, mcp__servicegraph__translate_intent, mcp__servicegraph__search_dataset, mcp__servicegraph__get_row, mcp__servicegraph__unlock_rows, mcp__servicegraph__get_credit_balance
compatibility
Designed for Claude Code
version
0.3.0
author
Artur Briugeman <artur@nostr.band>
license
MIT
tags
public-relations, agencies, service-providers, lead-generation, servicegraph
metadata.api_base
https://api.servicegraph.co
metadata.dataset_id
pro_services
metadata.service
public-relations

find-pr-agency

Overview

Drive the ServiceGraph API (https://api.servicegraph.co) to find, shortlist, and enrich US PR and communications agencies via the pro_services dataset.

Always pin service_provided:public-relations. Note: the catalog's nominal industry:pr_comms value returns zero firms in the live release — PR/comms firms are tagged with service_provided:public-relations instead, typically under adjacent industries (marketing_agency, other_pro_services). Pin the service tag, not the industry. Sub-types (media relations, crisis, IR, public affairs, healthcare PR, tech PR, B2B PR, internal comms, brand reputation) are NOT separate tags — sub-type specialization is a keyword substring search on firm text.

Any HTTP client works (curl, fetch, requests). Examples below use curl.

Sibling skills — defer when scope is broader

If the user wants a multi-service marketing engagement (PR plus content plus paid plus social), defer to find-marketing-agency — that skill covers full-service shops where PR is one of several service lines.

This skill is correct when PR/comms is the primary deliverable — launches, media relations, crisis, IR, public affairs.

When NOT to use this skill

  • "Write me a press release / draft these talking points" → DIY work.
  • In-house comms/PR hires (Head of Comms, PR Manager).
  • PR-software comparisons (Cision, Muck Rack, Prowly).
  • Influencer-marketplace asks — that's paid media; defer to find-marketing-agency or refuse for marketplace product questions.
  • "Explain how earned media works" → knowledge question.
  • Non-US firms.
  • Individual freelance PR people / publicists.

Prerequisites

  • ServiceGraph access, either:
    • the ServiceGraph MCP server (https://mcp.servicegraph.co) loaded in your harness — this plugin's .mcp.json wires it up; OAuth 2.1 + PKCE keeps credentials in the harness sandbox — or
    • a ServiceGraph API key (vk_…, minted at https://servicegraph.co/profile/api-keys) available as SERVICEGRAPH_API_KEY in the environment or .env.local for the REST path (setup steps under Auth below).
  • An HTTP client for the REST path — the examples use curl.

Instructions

The loop is free-first: discovery, validation, search, and brief reads cost nothing; only unlock after the user confirms the spend.

  1. Pick the call path — the ServiceGraph MCP tools if loaded, otherwise the REST flow (MCP server and Auth sections below).
  2. GET /v1/datasets/pro_services/fields?include_values=1 — confirm the fields and values you plan to filter on exist.
  3. Build the filter (Filter DSL below) and validate it with GET /v1/datasets/pro_services/check — or draft it from plain English via POST /v1/datasets/pro_services/translate-intent.
  4. GET /v1/datasets/pro_services/search — present the free brief cards and let the user pick.
  5. Quote the unlock cost (10 credits per row, 30-day TTL) and get an explicit go-ahead.
  6. POST /v1/datasets/pro_services/unlocks with the chosen apexes; report the revealed detail.
  7. GET /v1/me/credits to report the remaining balance when asked.
MCP server (preferred for authed calls)

If your harness has the ServiceGraph MCP server loaded (tools containing servicegraph in the name), prefer those — credentials stay in the harness's OAuth 2.1 + PKCE sandbox and no token enters LLM context. Otherwise use the REST flow below.

API surface (dataset id: pro_services)

Every endpoint requires the bearer (Authorization: Bearer vk_…). No anonymous tier.

EndpointCostUse it for
GET /v1/datasets/pro_services/fields[?include_values=1]freeConfirm public-relations is in the service_provided value list.
GET /v1/datasets/pro_services/check?filter=…freeValidate filter.
POST /v1/datasets/pro_services/translate-intentfree{intent} → LLM-generated DSL filter + sanity count.
GET /v1/datasets/pro_services/search?filter=…&limit=freeBrief firm cards + per-row unlock hint + total.
GET /v1/datasets/pro_services/:apexfreeOne row brief; detail only if unlocked.
POST /v1/datasets/pro_services/unlocks10 credits / firm{apexes:[...]} ≤100; atomic; 30-day TTL on detail.
GET /v1/me/creditsfreeBalance.

Cost model. Discovery / validation / search / brief reads are free. Detail (url, phone, email, social, address, full platforms map) costs 10 credits per firm and lasts 30 days.

Auth

Tokens are vk_* API keys minted in the dashboard. Keep the token out of the LLM context — never read .env* files; dispatch every authed call through a shell wrapper.

  1. Try the call first through a shell wrapper that sources .env.local:

    bash
    ( set -a; [ -f .env.local ] && . ./.env.local; set +a;
      curl -sS -H "Authorization: Bearer $SERVICEGRAPH_API_KEY" \
           'https://api.servicegraph.co/v1/datasets/pro_services/fields' )
  2. On 401 unauthorized, prompt the user:

    "Open https://servicegraph.co/profile/api-keys, create a key, and add SERVICEGRAPH_API_KEY=vk_… to .env.local here (or export it in your shell). Tell me when done. Please don't paste the key into chat."

  3. Retry after the user signals ready.

Filter DSL

GitHub-search-style.

filter   := orExpr
orExpr   := andExpr ("OR" andExpr)*
andExpr  := notExpr (("AND")? notExpr)*    # whitespace = implicit AND
notExpr  := ("NOT" | "-") notExpr | atom
atom     := "(" filter ")" | predicate
predicate:= IDENT op valueOrList | bareword
op       := ":" | "=" | ">=" | "<=" | ">" | "<"
valueOrList := value ("," value)*
value    := IDENT | NUMBER | tagAtEvidence
tagAtEvidence := IDENT "@" ("low"|"medium"|"high")
bareword := IDENT | NUMBER          # → keyword:<bareword>

Four rules that bite: AND binds tighter than OR (use parens); comma list = OR within one predicate; negation is -x or NOT x (no negative literals inside comma lists); bareword = keyword search (multi-word phrases must be quoted or split).

PR-flavored examples (validate yours with /check):

service_provided:public-relations tech state:NY
service_provided:public-relations healthcare
service_provided:public-relations b2b saas
service_provided:public-relations crisis
service_provided:public-relations "investor relations"
service_provided:public-relations ipo state:NY,CA
service_provided:public-relations "public affairs" state:DC
service_provided:public-relations rating>=4 has:clutch

Sub-type / vertical → keyword mapping:

User asks forAdd as keyword(s)
Tech / startup PRtech, startup, saas
Healthcare / pharma PRhealthcare, pharma, biotech
Crisis commscrisis
Investor relations / IR"investor relations", ir, ipo
B2B PRb2b
Public affairs"public affairs"
Brand reputation"brand reputation", reputation
Internal communications"internal communications", "internal comms"
Earned media / media relations"earned media", "media relations"
Identifying firms — apex

Firms are identified by their apex domain (edelman.com, not www.edelman.com/about).

Show full SKILL.md (566 more words)Show less

Output

All responses are JSON.

  • Search returns free brief firm cards — apex, name, location, and rating signals — plus a per-row unlock hint and the match total. Briefs never include url, phone_primary, email_primary, legal_name, address_full, or the full platforms map.
  • Unlock (POST …/unlocks) returns each unlocked firm's detail block — contact fields, address, socials, the platforms map — plus per-item billing; detail stays readable for 30 days.
  • Errors arrive as a JSON envelope {"error": {"code": "…", "message": "…"}} — see Errors below.

Examples

A. Tech PR for a Series-B announcement

User: "Tech PR agency in NY for our Series-B announcement."

GET /v1/datasets/pro_services/search?filter=service_provided:public-relations+tech+state:NY&limit=10
# → 10 brief cards + total + per-row unlock.status

# Present, get pick of 3. "Unlocking 3 = 30 credits, 30-day TTL."
POST /v1/datasets/pro_services/unlocks
  { "apexes": ["firm-a.com", "firm-b.com", "firm-c.com"] }
B. IR firms for an IPO

User: "Three IR firms for our upcoming IPO roadshow."

GET /v1/datasets/pro_services/search?filter=service_provided:public-relations+("investor relations" OR ir)+ipo&limit=10
C. Crisis comms (urgent)

User: "Crisis comms help — brand reputation issue blowing up online."

GET /v1/datasets/pro_services/search?filter=service_provided:public-relations+crisis&limit=10

Skip the validation hop and present briefs immediately given the urgency.

D. Healthcare / regulatory PR

User: "Healthcare PR agency familiar with FDA regulatory comms."

GET /v1/datasets/pro_services/search?filter=service_provided:public-relations+healthcare+(fda OR regulatory)&limit=10
E. Indirect intent — "we need press"

User: "We need press for our Series-B — get us into TechCrunch, WSJ, and the trade press."

That's product-launch / tech PR. Either translate by hand:

GET /v1/datasets/pro_services/search?filter=service_provided:public-relations+(tech OR startup)+(launch OR series-b)&limit=10

…or hand the intent off:

POST /v1/datasets/pro_services/translate-intent
  { "intent": "PR agency to get our Series-B into TechCrunch and trade press" }

If thin, drop the launch/series-b keyword — most tech PR firms run launches as a default deliverable.

F. Public affairs (state government)

User: "Public affairs firms with state-government experience in California."

GET /v1/datasets/pro_services/search?filter=service_provided:public-relations+"public affairs"+state:CA&limit=10
G. BYO apex list — enrich domains

User pastes 8–20 PR-firm domains:

  1. GET /v1/datasets/pro_services/:apex per domain — free brief (404 = not in catalog, no charge). Flag misses.
  2. User picks N to fully enrich. POST /unlocks with all of them = 10×N credits, atomic, detail returned.
  3. Re-runs within 30-day TTL are free.

Gotchas

  • Pin service_provided:public-relations, not industry:pr_comms. The industry value is empty in the live catalog; PR firms sit under adjacent industries. Without the service pin, "tech PR" / "crisis" / "investor relations" keywords leak into general marketing.
  • Defer to find-marketing-agency for full-service marketing. When PR is one of several service lines (PR + content + paid + social), the marketing-agency skill is the right fire.
  • Sub-types are keyword-only. Multi-word sub-types split into ANDed barewords unless quoted (investor relations → investor AND relations; "investor relations" → one phrase).
  • "Write me a press release" / "draft talking points" is do-the-work. Refuse and offer to find a firm if the user wants to engage one.
  • Influencer marketing is NOT PR. Influencer marketplaces (Aspire, Grin) and influencer outreach are paid-media work; defer to find-marketing-agency or refuse for marketplace product questions.
  • PR-software comparisons (Cision, Muck Rack, Prowly) are NOT procurement.
  • Briefs DO include apex, name, location, ratings. They DON'T include url, phone_primary, email_primary, legal_name, address_full, full platforms — those require an unlock.
  • not_found / not_in_dataset 404 = not in pro_services. Not charged. Skip.
  • Unlock is atomic. 5 apexes either all charge (up to 50 credits) or none charge on 402.
  • Within-TTL re-views are free (was_cached:true).

Errors

JSON envelope: {"error": {"code": "...", "message": "..."}}.

StatusCodeWhat to do
400filter_parse_errorposition included; fix and re-validate with /check.
400kind_in_filterStrip any kind: from filter — URL is authoritative.
400field_not_in_datasetDrop the disallowed field.
400invalid_apexRe-normalize to apex domain.
401unauthorized / invalid_audienceRe-prompt for fresh vk_….
402insufficient_creditsneeded and balance in payload; nothing charged.
404not_found / not_in_datasetSkip; not charged.
429rate_limitedHonor Retry-After.

End-to-end example

User: "Three tech PR agencies in NY for a Series-B announcement, ideally with 4-star ratings and Fortune 500 client experience."

GET /v1/datasets/pro_services/fields?include_values=1
GET /v1/datasets/pro_services/check?filter=service_provided:public-relations+tech+state:NY+rating>=4
GET /v1/datasets/pro_services/search?filter=...&limit=10
# Present briefs. "Unlocking 3 = 30 credits, 30-day TTL."
POST /v1/datasets/pro_services/unlocks
  { "apexes": ["firm-a.com", "firm-b.com", "firm-c.com"] }
GET /v1/me/credits

Resources

© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/mcp/servicegraph/skills/find-pr-agency of jeremylongshore/tons-of-skills-marketplace.

Open the folder on GitHubat commit cfae287

Compare with similar skills

Find PR Agency next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Find PR Agency compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Find PR Agency this skilljeremylongshore/tons-of-skills-marketplace2.8k—~3.7kAutomated safety check: NotesMIT
Afa PRafadtc/afa-dtc-skills168—~3kAutomated safety check: PassCustom licence
Sealeap Hundun Amazon Trend Scout Sourcing Validationxjli360/sealeap-amazon-skills251—~836Automated safety check: PassMIT
Public Relationscoreyhaines31/marketingskills54k—~2.4kAutomated safety check: PassMIT
Launch ItAIDevGTM/gtm-cofounder310—~1.4kAutomated safety check: PassMIT
Insurgent Campaignbencium/bencium-marketplace446—~12kAutomated safety check: PassMIT

Similar skills

  • Afa PR

    afadtc/afa-dtc-skills

    DTC 公关与声誉管理——媒体权威、UGC 循环、危机响应、品牌保护、GEO 友好新闻稿。触发词: 公关, PR, 媒体报道, 新闻稿, 危机公关, 声誉管理, 舆情, UGC, media kit, press release, media coverage, reputation management, crisis pr。复杂问题先经 afa。

    168 GitHub stars~3k tokensUpdated 2 days ago
    Writing & ContentAuto-check passed
  • Mine overseas social content and comment sections for small, trend-driven, non-seasonal product leads, validate the opportunity by checking seller count, market-wide listing freshness and traffic…

    251 GitHub stars~836 tokensUpdated 13 days ago
    Writing & ContentAuto-check passed
  • Public Relations

    coreyhaines31/marketingskills

    When the user wants help with public relations, earned media, press coverage, journalist outreach, or media strategy (not pull requests).

    54k GitHub stars~2.4k tokensUpdated 2 days ago
    Writing & ContentAuto-check passed
  • Launch It

    AIDevGTM/gtm-cofounder

    Plan a developer launch (Show HN, Reddit, Product Hunt) that earns goodwill instead of a flaming.

    310 GitHub stars~1.4k tokensUpdated 5 days ago
    Marketing & SEOAuto-check passed
  • Insurgent Campaign

    bencium/bencium-marketplace

    Grassroots-first campaign design for anyone being outspent — startups vs.

    446 GitHub stars~12k tokensUpdated 7 days ago
    Marketing & SEOAuto-check passed
  • Outreach Manager

    aaron-he-zhu/aaron-marketing-skills

    A skill your agent uses when the user asks to "write influencer outreach", "follow up with a creator", "pitch a journalist, hunter, or launch partner", or "negotiate partnership terms"; produces…

    2.9k GitHub starsUsed in 1 repo~5.4k tokens
    Marketing & SEOAuto-check passed

More from jeremylongshore/tons-of-skills-marketplace

All 3,342 skills in this repo
  • Performing Security Code Review

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.

    2.8k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check: notes
  • Adapting Transfer Learning Models

    jeremylongshore/tons-of-skills-marketplace

    Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Agent Context Loader

    jeremylongshore/tons-of-skills-marketplace

    Execute proactive auto-loading: automatically detects and loads agents.md files.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Aggregating Performance Metrics

    jeremylongshore/tons-of-skills-marketplace

    Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.

    2.8k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Analyzing Capacity Planning

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.

    2.8k GitHub stars~947 tokensUpdated today
    Auto-check passed
  • Analyzing Database Indexes

    jeremylongshore/tons-of-skills-marketplace

    Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.

    2.8k GitHub stars~2k tokensUpdated today
    Auto-check passed

Questions about Find PR Agency

What does Find PR Agency do?

A skill your agent uses whenever the user wants to find, shortlist, vet, or enrich US public-relations and communications agencies — media relations, crisis comms, investor relations (IR)…. Find PR Agency is an agent skill from jeremylongshore/tons-of-skills-marketplace. Use whenever the user wants to find, shortlist, vet, or enrich US public-relations and communications agencies — media relations, crisis comms, investor relations (IR), product-launch PR, tech/startup PR, healthcare PR, B2B PR, public affairs, brand reputation, and internal communications.

When should I use Find PR Agency?

Find PR Agency fits situations like: the user wants to find; enrich US public-relations and communications agencies — media relations; investor relations (IR); product-launch PR.

How do I install Find PR Agency in Claude Code?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill find-pr-agency -a claude-code`. Or copy the skill folder (plugins/mcp/servicegraph/skills/find-pr-agency in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/find-pr-agency in your project. Claude Code loads it when a task matches its description.

How do I install Find PR Agency in Codex?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill find-pr-agency -a codex`. Or copy the skill folder (plugins/mcp/servicegraph/skills/find-pr-agency in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/find-pr-agency in your project. Codex loads it when a task matches its description.

Can I use Find PR Agency in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill find-pr-agency -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/find-pr-agency, .gemini/skills/find-pr-agency, .github/skills/find-pr-agency and .opencode/skills/find-pr-agency in your project.

What does Find PR Agency need to run?

Going by SKILL.md and its folder, Find PR Agency needs the command-line tools its instructions call (curl) and credentials named SERVICEGRAPH_API_KEY. Our summary lists: A credential in SERVICEGRAPH_API_KEY. Its frontmatter pre-approves these tools: Bash(curl:*), mcp__servicegraph__list_fields, mcp__servicegraph__list_field_values, mcp__servicegraph__check_filter, mcp__servicegraph__translate_intent, mcp__servicegraph__search_dataset, mcp__servicegraph__get_row, mcp__servicegraph__unlock_rows, mcp__servicegraph__get_credit_balance. Compatibility (from SKILL.md): Designed for Claude Code.

Does Find PR Agency access the network?

SKILL.md names 4 domains. In commands or code: api.servicegraph.co and mcp.servicegraph.co; the agent is likely to contact these when it follows the instructions. As links in the text: servicegraph.co and github.com. This is read from the text; nothing was executed.

Is Find PR Agency safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Find PR Agency use?

Find PR Agency is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Find PR Agency use?

About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Find PR Agency?

Skills that share tags, products or a category with Find PR Agency: Afa PR (afadtc/afa-dtc-skills, 168 stars), Sealeap Hundun Amazon Trend Scout Sourcing Validation (xjli360/sealeap-amazon-skills, 251 stars), Public Relations (coreyhaines31/marketingskills, 54k stars) and Launch It (AIDevGTM/gtm-cofounder, 310 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Find PR Agency?

jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,827 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 10, 2026.

Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.