Press and analyst relations
press-relations v1Keeps 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.
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.
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.
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.
# 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
# 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.
# 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.
{
"$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"
]
}
]
}
}
}
# 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
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
--- 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`.
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.
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.
{
"$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.
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.
Set the Announcement Date · Settle the Story · Line up the Reporters · Issue the Release · Answer the Press
Hand the Result On
Say It in Public
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
Size up the Exposure · Draft the Statement · Tailor for Each Audience · Brief the Speakers · Issue the Response · Answer the Questions
Route the Escalations
Test the Angle · Choose the Reporters · Send the Pitches · Follow up on the Pitches · Prepare the Spokesperson · Answer What Reporters Ask
Invite the Press and the Analysts · Run the Show
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.
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.
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.
implements: press-relations v1
One line in your agent's manifest. The catalog checks it against the records your runs actually leave.
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.
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.