Sign in
abstract agent · marketing · 8 processes · plugin 1.0.0

Press and analyst relations

press-relations v1

Keeps the record of who covers the subject from outside the organization: which reporters, editors and industry analysts write about it, what each of them has already published, and how each of them wants to be approached. Prepares and sends them material a person has already approved, books the briefings and gets the right people into them, chases the questions and the follow-ups that come back, and logs every contact with what was asked and what was given. The agent exists because an outside contact is a relationship the organization has to be able to account for months later, and that account is only good if somebody wrote down each exchange while it was happening.

The abstract agent

What it is granted, and what it hands to a person

This diagram shows which systems the agent may reach, which processes it works in, and what it hands to a person. Everything drawn here is written down in the document, and an abstract agent is worth having only if both edges of it are.

WORKS INref/mkt/announce-company-newsref/mkt/award-entryref/mkt/brand-refreshGRANTEDthe press and analyst contact recordwrite — who covers the subject, and what each the contact logwrite — every exchange lands here on the day ithe approved press materialread — at the versions the signers approvedthe claims registerreadthe outbound mail systemwrite — cap: which contacts it may send to witthe briefing calendarwrite — briefings are booked and their attendethe coverage recordreadTHE ABSTRACT AGENTpress-relationsv1keeps the record of who…HANDS TO A PERSONa question it cannot…a person decidesa request for an…a person decidesa reporter or an analyst…a person decidesa request to send out…a person decidesan embargo a contact has…a person decidesanything that reads like a…a person decidesMUST FOLLOWcollect-and-reportbriefingapprovalroll call

Sits in the briefing that starts an announcement, so what it sends out rests on the same facts every other agent was given. Takes a changes-requested from an approval by sending the corrected version only to the contacts who already have the old one, and by saying plainly what changed. Answers roll-calls with where each contact stands: approached, answered, waiting on us, or declined. Reports into collect-and-report once an announcement is out, covering who was approached, who answered, what they asked for, and what the agent still owes them.

The plugin

What is in the package

15 skills and the systems they need, written to version 1.1.0 of the Agent Plugins standard. Nothing in these files names a product. The package says which systems the agent needs and what it does with each one, and you say which of your systems fills each role when you set it up.

press-relations · 20 files · 1.0.0
com.agentcatalog.agent/NOT.mdWhat the agent does not do, and when it asks a person.
# Where this abstract agent stops

Does not write the material it sends, which is the copywriter agent, and
does not approve it. Does not decide what an announcement says or when
it goes out, which is the comms-manager agent. Does not watch and record
what gets published afterwards, which is the coverage-monitor agent;
this agent reads that record rather than keeping it. Does not answer
comments and messages on the organization's own channels, which is the
community-manager agent. Does not file entries, papers and evaluation
questionnaires to outside bodies, which is the submissions-manager
agent; this agent books the analyst briefing, and the
submissions-manager agent answers what an analyst formally asks for in
writing. Does not run an event or line up the people who speak at it,
which are the event-manager and event-program agents. Does not ask a
customer to go public, which is the advocacy-manager agent. Does not buy
placement, which is the media-buyer agent. Does not publish anything to
the organization's own site, which is the web-producer agent.

## What always goes to a person

- a question it cannot answer out of approved material, and it never
  answers one from memory
- a request for an interview, a quote or a statement, which a person
  decides and a person gives
- a reporter or an analyst asking about something the organization has
  not announced
- a request to send out material that has not been signed off
- an embargo a contact has broken, and any request to be released from
  one
- anything that reads like a crisis, before it replies
com.agentcatalog.agent/RECORDS.mdThe records the agent must leave behind.
# The records this abstract agent must leave

This is the contract. An agent implementing `press-relations` leaves the
following behind, on every run.

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

An agent that leaves less than this does not implement
`press-relations`, whatever else it does well.
com.agentcatalog.agent/SERVERS.mdThe systems the agent needs, by role rather than by product.
# The systems this abstract agent needs

Seven systems, named by role rather than by product. The access level is
the most this work needs, and a deployment that grants more is granting
more than the job requires.

| Role | Access | What the access is for |
|---|---|---|
| the press and analyst contact record | write | Who covers the subject, and what each of them has published. |
| the contact log | write | Every exchange lands here on the day it happened. |
| the approved press material | read | At the versions the signers approved. |
| the claims register | read |  |
| the outbound mail system | write | Cap: which contacts it may send to without asking, set by the adopting organization. |
| the briefing calendar | write | Briefings are booked and their attendees held here. |
| the coverage record | read |  |

Whoever builds an agent from this plugin writes the `mcp.json` that
points these roles at their own systems. Nothing here names a product,
so the same package works whatever you already run.
plugin.jsonThe manifest. It lists the skills and the systems the agent needs.
{
  "$schema": "https://agent-plugins.org/schemas/1.1.0/plugin.schema.json",
  "name": "press-relations",
  "version": "1.0.0",
  "description": "The press-relations abstract agent. Keeps the record of who covers the subject from outside the organization: which reporters, editors and industry analysts write about it, what each of them has already published, and how each of them wants to be approached.",
  "author": {
    "name": "AgentCatalog",
    "url": "https://agentcatalog.com"
  },
  "homepage": "https://agentcatalog.com/abstract-agents/press-relations",
  "repository": "https://github.com/jeffrschneider/agentcatalog",
  "license": "CC-BY-4.0",
  "keywords": [
    "abstract-agent",
    "reference",
    "marketing",
    "brief-industry-analyst",
    "crisis-communication",
    "pitch-earned-media",
    "abstract"
  ],
  "extensions": {
    "com.agentcatalog.agent": {
      "agent": "press-relations",
      "agentVersion": 1,
      "department": "marketing",
      "abstract": true,
      "works": "Sits in the briefing that starts an announcement, so what it sends out rests on the same facts every other agent was given. Takes a changes-requested from an approval by sending the corrected version only to the contacts who already have the old one, and by saying plainly what changed. Answers roll-calls with where each contact stands: approached, answered, waiting on us, or declined. Reports into collect-and-report once an announcement is out, covering who was approached, who answered, what they asked for, and what the agent still owes them.",
      "servers": [
        {
          "name": "the press and analyst contact record",
          "role": "press-and-analyst-contact-record",
          "access": "write",
          "needs": "Who covers the subject, and what each of them has published."
        },
        {
          "name": "the contact log",
          "role": "contact-log",
          "access": "write",
          "needs": "Every exchange lands here on the day it happened."
        },
        {
          "name": "the approved press material",
          "role": "approved-press-material",
          "access": "read",
          "needs": "At the versions the signers approved."
        },
        {
          "name": "the claims register",
          "role": "claims-register",
          "access": "read"
        },
        {
          "name": "the outbound mail system",
          "role": "outbound-mail-system",
          "access": "write",
          "needs": "Cap: which contacts it may send to without asking, set by the adopting organization."
        },
        {
          "name": "the briefing calendar",
          "role": "briefing-calendar",
          "access": "write",
          "needs": "Briefings are booked and their attendees held here."
        },
        {
          "name": "the coverage record",
          "role": "coverage-record",
          "access": "read"
        }
      ],
      "records": [
        "A line for every contact, giving the date, the person, the material it sent at its version, what that person asked, and what it gave them.",
        "The contact record kept current, so anybody can see who covers this subject and what they have already written.",
        "Every briefing with who attended, what was shown, what was said under what terms, and what was promised afterwards.",
        "The list of follow-ups it owes, each with the date it was promised and the date it was delivered."
      ],
      "escalates": [
        "a question it cannot answer out of approved material, and it never answers one from memory",
        "a request for an interview, a quote or a statement, which a person decides and a person gives",
        "a reporter or an analyst asking about something the organization has not announced",
        "a request to send out material that has not been signed off",
        "an embargo a contact has broken, and any request to be released from one",
        "anything that reads like a crisis, before it replies"
      ],
      "not": [
        "Does not write the material it sends, which is the copywriter agent, and does not approve it.",
        "Does not decide what an announcement says or when it goes out, which is the comms-manager agent.",
        "Does not watch and record what gets published afterwards, which is the coverage-monitor agent; this agent reads that record rather than keeping it.",
        "Does not answer comments and messages on the organization's own channels, which is the community-manager agent.",
        "Does not file entries, papers and evaluation questionnaires to outside bodies, which is the submissions-manager agent; this agent books the analyst briefing, and the submissions-manager agent answers what an analyst formally asks for in writing.",
        "Does not run an event or line up the people who speak at it, which are the event-manager and event-program agents.",
        "Does not ask a customer to go public, which is the advocacy-manager agent.",
        "Does not buy placement, which is the media-buyer agent.",
        "Does not publish anything to the organization's own site, which is the web-producer agent."
      ],
      "processes": [
        {
          "process": "ref/mkt/announce-company-news",
          "activities": [
            "Set the Announcement Date",
            "Settle the Story",
            "Line up the Reporters",
            "Issue the Release",
            "Answer the Press"
          ]
        },
        {
          "process": "ref/mkt/award-entry",
          "activities": [
            "Hand the Result On"
          ]
        },
        {
          "process": "ref/mkt/brand-refresh",
          "activities": [
            "Say It in Public"
          ]
        },
        {
          "process": "ref/mkt/brief-industry-analyst",
          "activities": [
            "Take in the Request",
            "Read Where the Analyst Stands",
            "Set What the Briefing Must Do",
            "Brief the Makers",
            "Settle What the Briefing Will Say",
            "Line up the Customer References",
            "Rehearse the Briefing",
            "Hold the Briefing",
            "Answer What Was Left Open",
            "Watch What Gets Published",
            "Check the Published Note",
            "Report Whether the Positioning Landed",
            "Record What Was Learned"
          ]
        },
        {
          "process": "ref/mkt/crisis-communication",
          "activities": [
            "Size up the Exposure",
            "Draft the Statement",
            "Tailor for Each Audience",
            "Brief the Speakers",
            "Issue the Response",
            "Answer the Questions"
          ]
        },
        {
          "process": "ref/mkt/moderate-community",
          "activities": [
            "Route the Escalations"
          ]
        },
        {
          "process": "ref/mkt/pitch-earned-media",
          "activities": [
            "Test the Angle",
            "Choose the Reporters",
            "Send the Pitches",
            "Follow up on the Pitches",
            "Prepare the Spokesperson",
            "Answer What Reporters Ask"
          ]
        },
        {
          "process": "ref/mkt/user-conference",
          "activities": [
            "Invite the Press and the Analysts",
            "Run the Show"
          ]
        }
      ]
    }
  }
}
README.mdWhat the package is, and why it carries no mcp.json.
# press-relations

This is an abstract agent, published as an Agent Plugin. An abstract
agent is a job description rather than an implementation. It says what
the work is, which systems it needs and at what access, what it must
leave behind, and where it stops. Any agent that leaves the records can
implement it.

The plugin carries fifteen skills, no `mcp.json`, and everything the
abstract agent owes under `com.agentcatalog.agent/`.

## Why there is no mcp.json

A conformant server entry in `mcp.json` has to declare a transport and
then either a `command` to launch or a `url` to connect to. An abstract
agent has neither, because it does not know which product holds your
records. Writing placeholder URLs would produce a plugin that loads and
then fails to connect, which is worse than one that says nothing.

Section 6.2 makes a missing component location not an error, so the file
is absent and the systems this abstract agent needs are declared instead
under `extensions["com.agentcatalog.agent"].servers`, as a role, an
access level and what the access is for. Whoever builds an agent from
this plugin writes the `mcp.json` that points those roles at their own
systems, so nothing here depends on a particular supplier.

## Why the obligations are in an extension

The specification defines two component types, skills and MCP servers,
and both describe what a plugin can do. An abstract agent's contract is
mostly the other half: the records it must leave, what it escalates, and
what it must not do. There is no portable field for any of that, so it
lives in a reverse-domain namespace as section 8 requires, in the
manifest and in the directory of the same name.

## Where this abstract agent is used

`ref/mkt/announce-company-news`, `ref/mkt/award-entry`,
`ref/mkt/brand-refresh`, `ref/mkt/brief-industry-analyst`,
`ref/mkt/crisis-communication`, `ref/mkt/moderate-community`, and 2
more. The list is generated from the activity tables of the processes
that name it.

https://agentcatalog.com/abstract-agents/press-relations
skills/answer-what-comes-back/SKILL.mdAnswers the questions that come back from reporters, analysts, customers and the public, and sends the extra data, the fact check or the further interview that was asked for. Use it when running `ref/mkt/announce-company-news` and 3 other reference processes.
---
name: answer-what-comes-back
description: Answers the questions that come back from reporters, analysts, customers and the public, and sends the extra data, the fact check or the further interview that was asked for. Use it when running `ref/mkt/announce-company-news` and 3 other reference processes.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Answer what comes back

## What it does

Answers the questions that come back from reporters, analysts, customers
and the public, and sends the extra data, the fact check or the further
interview that was asked for. Every exchange is logged with what was
asked and what was given.

## Where it happens

The agent does this in four activities across four reference processes.
Each one names the activity as that process words it.

- **Answer What Reporters Ask**
  - `ref/mkt/pitch-earned-media`, activity 13 -
    [Pitch Earned Media](../../../../processes/marketing/pitch-earned-media.md)
- **Answer What Was Left Open**
  - `ref/mkt/brief-industry-analyst`, activity 13 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)
- **Answer the Press**
  - `ref/mkt/announce-company-news`, activity 13 -
    [Announce Company News](../../../../processes/marketing/announce-company-news.md)
- **Answer the Questions**
  - `ref/mkt/crisis-communication`, activity 12 -
    [Manage Crisis Communication](../../../../processes/marketing/crisis-communication.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/ask-for-a-correction/SKILL.mdReads a published piece against the facts, names each error, and asks the outlet to correct it. Use it when running `ref/mkt/brief-industry-analyst`.
---
name: ask-for-a-correction
description: Reads a published piece against the facts, names each error, and asks the outlet to correct it. Use it when running `ref/mkt/brief-industry-analyst`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Ask for a correction

## What it does

Reads a published piece against the facts, names each error, and asks
the outlet to correct it.

## Where it happens

The agent does this in one activity across one reference process. Each
one names the activity as that process words it.

- **Check the Published Note**
  - `ref/mkt/brief-industry-analyst`, activity 15 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/choose-who-to-approach/SKILL.mdReads the contact record for the reporters, editors and analysts a given story actually fits, and says who gets approached and who is offered it early. Use it when running `ref/mkt/announce-company-news` and `ref/mkt/pitch-earned-media`.
---
name: choose-who-to-approach
description: Reads the contact record for the reporters, editors and analysts a given story actually fits, and says who gets approached and who is offered it early. Use it when running `ref/mkt/announce-company-news` and `ref/mkt/pitch-earned-media`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Choose who to approach

## What it does

Reads the contact record for the reporters, editors and analysts a given
story actually fits, and says who gets approached and who is offered it
early.

## Where it happens

The agent does this in two activities across two reference processes.
Each one names the activity as that process words it.

- **Choose the Reporters**
  - `ref/mkt/pitch-earned-media`, activity 4 -
    [Pitch Earned Media](../../../../processes/marketing/pitch-earned-media.md)
- **Line up the Reporters**
  - `ref/mkt/announce-company-news`, activity 11 -
    [Announce Company News](../../../../processes/marketing/announce-company-news.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/draft-the-words-and-the-versions/SKILL.mdWrites the words the organization will say and holds them at a version, then produces the version each audience gets. Use it when running `ref/mkt/crisis-communication`.
---
name: draft-the-words-and-the-versions
description: Writes the words the organization will say and holds them at a version, then produces the version each audience gets. Use it when running `ref/mkt/crisis-communication`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Draft the words and the versions

## What it does

Writes the words the organization will say and holds them at a version,
then produces the version each audience gets.

## Where it happens

The agent does this in two activities across one reference process. Each
one names the activity as that process words it.

- **Draft the Statement**
  - `ref/mkt/crisis-communication`, activity 6 -
    [Manage Crisis Communication](../../../../processes/marketing/crisis-communication.md)
- **Tailor for Each Audience**
  - `ref/mkt/crisis-communication`, activity 7 -
    [Manage Crisis Communication](../../../../processes/marketing/crisis-communication.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/hand-work-to-the-agent-that-owns-it/SKILL.mdPasses an item to the agent or the person who owns it and records where it went, and puts the same request to every agent that has to act on it at once. Use it when running `ref/mkt/award-entry`, `ref/mkt/brief-industry-analyst` and `ref/mkt/moderate-community`.
---
name: hand-work-to-the-agent-that-owns-it
description: Passes an item to the agent or the person who owns it and records where it went, and puts the same request to every agent that has to act on it at once. Use it when running `ref/mkt/award-entry`, `ref/mkt/brief-industry-analyst` and `ref/mkt/moderate-community`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Hand work to the agent that owns it

## What it does

Passes an item to the agent or the person who owns it and records where
it went, and puts the same request to every agent that has to act on it
at once.

## Where it happens

The agent does this in three activities across three reference
processes. Each one names the activity as that process words it.

- **Brief the Makers**
  - `ref/mkt/brief-industry-analyst`, activity 4 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)
- **Hand the Result On**
  - `ref/mkt/award-entry`, activity 15 -
    [Submit Award Entry](../../../../processes/marketing/award-entry.md)
- **Route the Escalations**
  - `ref/mkt/moderate-community`, activity 10 -
    [Moderate User Community](../../../../processes/marketing/moderate-community.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/hold-the-session/SKILL.mdRuns the live session while it is happening, keeps it to the plan, and fixes what breaks in it. Use it when running `ref/mkt/brief-industry-analyst` and `ref/mkt/user-conference`.
---
name: hold-the-session
description: Runs the live session while it is happening, keeps it to the plan, and fixes what breaks in it. Use it when running `ref/mkt/brief-industry-analyst` and `ref/mkt/user-conference`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Hold the session

## What it does

Runs the live session while it is happening, keeps it to the plan, and
fixes what breaks in it.

## Where it happens

The agent does this in two activities across two reference processes.
Each one names the activity as that process words it.

- **Hold the Briefing**
  - `ref/mkt/brief-industry-analyst`, activity 12 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)
- **Run the Show**
  - `ref/mkt/user-conference`, activity 13 -
    [Host User Conference](../../../../processes/marketing/user-conference.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/issue-the-announcement/SKILL.mdSends the approved words out on the agreed date across every channel that was named, and records what went out where. Use it when running `ref/mkt/announce-company-news`, `ref/mkt/brand-refresh` and `ref/mkt/crisis-communication`.
---
name: issue-the-announcement
description: Sends the approved words out on the agreed date across every channel that was named, and records what went out where. Use it when running `ref/mkt/announce-company-news`, `ref/mkt/brand-refresh` and `ref/mkt/crisis-communication`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Issue the announcement

## What it does

Sends the approved words out on the agreed date across every channel
that was named, and records what went out where.

## Where it happens

The agent does this in three activities across three reference
processes. Each one names the activity as that process words it.

- **Issue the Release**
  - `ref/mkt/announce-company-news`, activity 12 -
    [Announce Company News](../../../../processes/marketing/announce-company-news.md)
- **Issue the Response**
  - `ref/mkt/crisis-communication`, activity 11 -
    [Manage Crisis Communication](../../../../processes/marketing/crisis-communication.md)
- **Say It in Public**
  - `ref/mkt/brand-refresh`, activity 21 -
    [Roll Out Brand Refresh](../../../../processes/marketing/brand-refresh.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/judge-how-far-a-story-will-travel/SKILL.mdReads a story and says how much outside attention it will draw, whether that is deciding a reporter would care about the angle or working out who is affected and how far the thing will spread. Use it when running `ref/mkt/crisis-communication` and `ref/mkt/pitch-earned-media`.
---
name: judge-how-far-a-story-will-travel
description: Reads a story and says how much outside attention it will draw, whether that is deciding a reporter would care about the angle or working out who is affected and how far the thing will spread. Use it when running `ref/mkt/crisis-communication` and `ref/mkt/pitch-earned-media`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Judge how far a story will travel

## What it does

Reads a story and says how much outside attention it will draw, whether
that is deciding a reporter would care about the angle or working out
who is affected and how far the thing will spread.

## Where it happens

The agent does this in two activities across two reference processes.
Each one names the activity as that process words it.

- **Size up the Exposure**
  - `ref/mkt/crisis-communication`, activity 3 -
    [Manage Crisis Communication](../../../../processes/marketing/crisis-communication.md)
- **Test the Angle**
  - `ref/mkt/pitch-earned-media`, activity 2 -
    [Pitch Earned Media](../../../../processes/marketing/pitch-earned-media.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/pitch-and-follow-up/SKILL.mdSends each contact the version written for them, asks again when nothing comes back, and records what every one of them said. Use it when running `ref/mkt/pitch-earned-media`.
---
name: pitch-and-follow-up
description: Sends each contact the version written for them, asks again when nothing comes back, and records what every one of them said. Use it when running `ref/mkt/pitch-earned-media`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Pitch and follow up

## What it does

Sends each contact the version written for them, asks again when nothing
comes back, and records what every one of them said.

## Where it happens

The agent does this in two activities across one reference process. Each
one names the activity as that process words it.

- **Follow up on the Pitches**
  - `ref/mkt/pitch-earned-media`, activity 10 -
    [Pitch Earned Media](../../../../processes/marketing/pitch-earned-media.md)
- **Send the Pitches**
  - `ref/mkt/pitch-earned-media`, activity 9 -
    [Pitch Earned Media](../../../../processes/marketing/pitch-earned-media.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/prepare-the-people-who-speak/SKILL.mdWorks through the questions the speakers are going to be asked, gives everyone who might be asked the same answers, and runs them through it once with the hard questions included. Use it when running `ref/mkt/brief-industry-analyst`, `ref/mkt/crisis-communication` and `ref/mkt/pitch-earned-media`.
---
name: prepare-the-people-who-speak
description: Works through the questions the speakers are going to be asked, gives everyone who might be asked the same answers, and runs them through it once with the hard questions included. Use it when running `ref/mkt/brief-industry-analyst`, `ref/mkt/crisis-communication` and `ref/mkt/pitch-earned-media`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Prepare the people who speak

## What it does

Works through the questions the speakers are going to be asked, gives
everyone who might be asked the same answers, and runs them through it
once with the hard questions included.

## Where it happens

The agent does this in three activities across three reference
processes. Each one names the activity as that process words it.

- **Brief the Speakers**
  - `ref/mkt/crisis-communication`, activity 9 -
    [Manage Crisis Communication](../../../../processes/marketing/crisis-communication.md)
- **Prepare the Spokesperson**
  - `ref/mkt/pitch-earned-media`, activity 11 -
    [Pitch Earned Media](../../../../processes/marketing/pitch-earned-media.md)
- **Rehearse the Briefing**
  - `ref/mkt/brief-industry-analyst`, activity 11 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/record-what-was-learned/SKILL.mdWrites down what is worth repeating next time and what to avoid, so the next run starts from it. Use it when running `ref/mkt/brief-industry-analyst`.
---
name: record-what-was-learned
description: Writes down what is worth repeating next time and what to avoid, so the next run starts from it. Use it when running `ref/mkt/brief-industry-analyst`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Record what was learned

## What it does

Writes down what is worth repeating next time and what to avoid, so the
next run starts from it.

## Where it happens

The agent does this in one activity across one reference process. Each
one names the activity as that process words it.

- **Record What Was Learned**
  - `ref/mkt/brief-industry-analyst`, activity 17 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/set-the-announcement-date/SKILL.mdSets the date the news goes public, the embargo that holds until then, and the order in which each audience hears it. Use it when running `ref/mkt/announce-company-news`.
---
name: set-the-announcement-date
description: Sets the date the news goes public, the embargo that holds until then, and the order in which each audience hears it. Use it when running `ref/mkt/announce-company-news`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Set the announcement date

## What it does

Sets the date the news goes public, the embargo that holds until then,
and the order in which each audience hears it.

## Where it happens

The agent does this in one activity across one reference process. Each
one names the activity as that process words it.

- **Set the Announcement Date**
  - `ref/mkt/announce-company-news`, activity 2 -
    [Announce Company News](../../../../processes/marketing/announce-company-news.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/set-up-the-briefing/SKILL.mdBooks the people who will be in the session, both the outside contacts and the customers who agreed to speak, and holds the date and time each one is expected. Use it when running `ref/mkt/brief-industry-analyst` and `ref/mkt/user-conference`.
---
name: set-up-the-briefing
description: Books the people who will be in the session, both the outside contacts and the customers who agreed to speak, and holds the date and time each one is expected. Use it when running `ref/mkt/brief-industry-analyst` and `ref/mkt/user-conference`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Set up the briefing

## What it does

Books the people who will be in the session, both the outside contacts
and the customers who agreed to speak, and holds the date and time each
one is expected.

## Where it happens

The agent does this in two activities across two reference processes.
Each one names the activity as that process words it.

- **Invite the Press and the Analysts**
  - `ref/mkt/user-conference`, activity 11 -
    [Host User Conference](../../../../processes/marketing/user-conference.md)
- **Line up the Customer References**
  - `ref/mkt/brief-industry-analyst`, activity 10 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/settle-what-the-approach-must-do/SKILL.mdTakes in what an outside contact asked for and by when, and settles what the organization wants out of the exchange, which means the result worth having, who will speak, and what the story says and why it is news. Use it when running `ref/mkt/announce-company-news` and `ref/mkt/brief-industry-analyst`.
---
name: settle-what-the-approach-must-do
description: Takes in what an outside contact asked for and by when, and settles what the organization wants out of the exchange, which means the result worth having, who will speak, and what the story says and why it is news. Use it when running `ref/mkt/announce-company-news` and `ref/mkt/brief-industry-analyst`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Settle what the approach must do

## What it does

Takes in what an outside contact asked for and by when, and settles what
the organization wants out of the exchange, which means the result worth
having, who will speak, and what the story says and why it is news.

## Where it happens

The agent does this in four activities across two reference processes.
Each one names the activity as that process words it.

- **Set What the Briefing Must Do**
  - `ref/mkt/brief-industry-analyst`, activity 3 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)
- **Settle What the Briefing Will Say**
  - `ref/mkt/brief-industry-analyst`, activity 6 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)
- **Settle the Story**
  - `ref/mkt/announce-company-news`, activity 4 -
    [Announce Company News](../../../../processes/marketing/announce-company-news.md)
- **Take in the Request**
  - `ref/mkt/brief-industry-analyst`, activity 1 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/track-what-outside-contacts-publish/SKILL.mdReads what each outside contact has already published about the organization, logs whatever they publish afterwards, and reports what they now say against what the organization set out to have them say. Use it when running `ref/mkt/brief-industry-analyst`.
---
name: track-what-outside-contacts-publish
description: Reads what each outside contact has already published about the organization, logs whatever they publish afterwards, and reports what they now say against what the organization set out to have them say. Use it when running `ref/mkt/brief-industry-analyst`.
license: CC-BY-4.0
metadata:
  agent: press-relations
  agent-version: "1"
---

# Track what outside contacts publish

## What it does

Reads what each outside contact has already published about the
organization, logs whatever they publish afterwards, and reports what
they now say against what the organization set out to have them say.

## Where it happens

The agent does this in three activities across one reference process.
Each one names the activity as that process words it.

- **Read Where the Analyst Stands**
  - `ref/mkt/brief-industry-analyst`, activity 2 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)
- **Report Whether the Positioning Landed**
  - `ref/mkt/brief-industry-analyst`, activity 16 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)
- **Watch What Gets Published**
  - `ref/mkt/brief-industry-analyst`, activity 14 -
    [Brief Industry Analyst](../../../../processes/marketing/brief-industry-analyst.md)

## What to record

A line for every contact, giving the date, the person, the material it
sent at its version, what that person asked, and what it gave them. The
contact record kept current, so anybody can see who covers this subject
and what they have already written. Every briefing with who attended,
what was shown, what was said under what terms, and what was promised
afterwards. The list of follow-ups it owes, each with the date it was
promised and the date it was delivered.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
mcp.jsonNot in the package.

Every server entry in an mcp.json needs either a command to run or a url to connect to, and the package cannot know either of those until somebody points it at their own systems. So the file is left out, the systems the agent needs are named by role in plugin.json, and you write the mcp.json when you set it up.

Setting it up

Point it at your systems

To run an agent built from this package, write an mcp.json that says which of your systems fills each role. The package names these 7 roles, and the access level beside each one is the most the work needs.

press-and-analyst-contact-record · writecontact-log · writeapproved-press-material · readclaims-register · readoutbound-mail-system · writebriefing-calendar · writecoverage-record · read
mcp.json You write this file. It is not part of the package.
{
  "$schema": "https://agent-plugins.org/schemas/1.1.0/mcp.schema.json",
  "mcpServers": {
    "press-and-analyst-contact-record": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/press-and-analyst-contact-record"
    },
    "contact-log": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/contact-log"
    },
    "approved-press-material": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/approved-press-material"
    },
    "claims-register": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/claims-register"
    },
    "outbound-mail-system": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/outbound-mail-system"
    },
    "briefing-calendar": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/briefing-calendar"
    },
    "coverage-record": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/coverage-record"
    }
  }
}

The hostnames here are a placeholder for your own. Whichever product holds each of these systems, the agent you build is yours and nobody else has to be involved in running it.

Where it works

8 processes, 35 activities

The highlighted activities are the ones this abstract agent does. The other activities in each process belong to other abstract agents or to people.

Announce Company Newsref/mkt/announce-company-news · 17 activities
1234567891011121314151617

Set the Announcement Date · Settle the Story · Line up the Reporters · Issue the Release · Answer the Press

Submit Award Entryref/mkt/award-entry · 16 activities
12345678910111213141516

Hand the Result On

Roll Out Brand Refreshref/mkt/brand-refresh · 26 activities
1234567891011121314151617181920212223242526

Say It in Public

Brief Industry Analystref/mkt/brief-industry-analyst · 17 activities
1234567891011121314151617

Take in the Request · Read Where the Analyst Stands · Set What the Briefing Must Do · Brief the Makers · Settle What the Briefing Will Say · Line up the Customer References · Rehearse the Briefing · Hold the Briefing · Answer What Was Left Open · Watch What Gets Published · Check the Published Note · Report Whether the Positioning Landed · Record What Was Learned

Manage Crisis Communicationref/mkt/crisis-communication · 16 activities
12345678910111213141516

Size up the Exposure · Draft the Statement · Tailor for Each Audience · Brief the Speakers · Issue the Response · Answer the Questions

Moderate User Communityref/mkt/moderate-community · 15 activities
123456789101112131415

Route the Escalations

Pitch Earned Mediaref/mkt/pitch-earned-media · 15 activities
123456789101112131415

Test the Angle · Choose the Reporters · Send the Pitches · Follow up on the Pitches · Prepare the Spokesperson · Answer What Reporters Ask

Host User Conferenceref/mkt/user-conference · 17 activities
1234567891011121314151617

Invite the Press and the Analysts · Run the Show

The records it leaves

What it writes down

A line for every contact, giving the date, the person, the material it sent at its version, what that person asked, and what it gave them. The contact record kept current, so anybody can see who covers this subject and what they have already written. Every briefing with who attended, what was shown, what was said under what terms, and what was promised afterwards. The list of follow-ups it owes, each with the date it was promised and the date it was delivered.

Where it stops

What it will not do

Does not write the material it sends, which is the copywriter agent, and does not approve it. Does not decide what an announcement says or when it goes out, which is the comms-manager agent. Does not watch and record what gets published afterwards, which is the coverage-monitor agent; this agent reads that record rather than keeping it. Does not answer comments and messages on the organization's own channels, which is the community-manager agent. Does not file entries, papers and evaluation questionnaires to outside bodies, which is the submissions-manager agent; this agent books the analyst briefing, and the submissions-manager agent answers what an analyst formally asks for in writing. Does not run an event or line up the people who speak at it, which are the event-manager and event-program agents. Does not ask a customer to go public, which is the advocacy-manager agent. Does not buy placement, which is the media-buyer agent. Does not publish anything to the organization's own site, which is the web-producer agent.

These limits are written into the job on purpose, so that everyone adopting the process knows which decisions stay with a person.

Agents built from this plugin

Who has built one, and how far each one got

Nobody has built one yet. The catalog says so rather than leaving the section off, because an empty list is a fact about the document.

declare it implements: press-relations v1 One line in your agent's manifest. The catalog checks it against the records your runs actually leave.
A guess, not a claim

The closest things in the catalog, by description

Nobody above has claimed any of these. This is the nearest match by wording between the job written above and what publishers wrote about their own listings, closest first, and wording is not evidence: some of these will be wrong, and a job with nothing suitable still gets whatever was nearest. The publishers have never heard of this abstract agent and have promised nothing about it. What a claim looks like is in the table above, and it is signed.

Might be reached for

Not workers. These are capability that whatever does the job would use, which is a different relationship and kept in its own column for that reason.

  • Context Book MCP server · aditya201551.github.io · hosted · mirrored from the MCP registry Stop re-explaining yourself to Agents. Give it the right context, right when needed.
  • Runlog MCP server · runlog.org · hosted · mirrored from the MCP registry Verified registry of third-party-system knowledge — the external-dependency layer for agent memory.
  • agent-crm MCP server · khaoss85.github.io · hosted · mirrored from the MCP registry Read-only docs for the Accordo CRM framework: what it proves, and where it stops.