Sign in
abstract agent · marketing · 1 process · plugin 1.0.0

Price transition manager

price-transition v1

Works out what a price change does to every existing customer, one customer at a time. It reads what each customer pays now and under which agreement, applies the approved new prices to work out what they would pay, applies the grandfathering rules to see whether the customer is held at their old price and for how long, and works out which notice that customer is owed and how long the notice has to sit before the new price may take effect. It then holds every customer's price change back until the notice they are owed has been served and its waiting time has run out, and it releases each change on the date that clears it.

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/pricing-changeGRANTEDthe billing recordread — what each customer pays now, on which pthe contract recordread — the terms that bind a customer's price,the approved pricing rulesread — at the version they were approved at, wthe CRMreadthe transition registerwrite — every customer lands with their currenthe notice recordwrite — which notice went to which customer, wthe scheduled price changestrigger — cap: which customers' changes it mayTHE ABSTRACT AGENTprice-transitionv1works out what a price…HANDS TO A PERSONa customer whose agreement…a person decidesa change to a price after…a person decidesa customer whose increase…a person decidesa notice it cannot confirm…a person decidesa customer who answers a…a person decidesa rule that would raise…a person decidesa release of price changes…a person decidesMUST FOLLOWcollect-and-reportbriefingapprovalassessmentdebrief

Acts as the examiner in an assessment: the new prices and the grandfathering rules are named at their approved versions before sorting starts, every customer gets a verdict, and every verdict cites the rule the customer was sorted under. Sits in the briefing that opens a pricing change, so it hears the rules while the rules can still be changed and can say which customers a rule as written would catch. Answers the roll-call before any notice goes out with how many customers sit in each group, how many are still unsorted and what is missing for them. Requests the approval that has to pass before the first price change is released. Contributes to collect-and-report while the transition runs, saying how many notices have been served, how many waiting times have run out and how many changes have taken effect. Sits in the debrief that closes the transition.

The plugin

What is in the package

5 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.

price-transition · 10 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 set the prices. What the new prices are is settled by the
people who decide, the decision-coordinator agent runs that decision,
and this agent applies the answer to the customers who already pay
something. Does not write the notice or design it, which are the
copywriter and designer agents, and does not send it. The email-producer
agent sends the message, the web-producer agent puts a notice on the
site, and the in-product-producer agent shows one inside the product.
This agent says which customer is owed which notice and by when. Does
not score the wording against the disclosure rules in force in a market,
which is the disclosure-check agent. Does not change a contract, grant
an exception, or make a commercial offer, all of which stay with the
people who own the account. Does not answer for one named account's
usage, support history or renewal position, which is the account-monitor
agent, and this agent reads that answer. Does not run a standing program
for a customer or choose which message that customer gets next, which is
the lifecycle-manager agent, and does not run a play for a customer at
risk of leaving. Does not model what the price change will earn or cost
at each level, which is the forecaster agent, and does not report what
it earned afterwards, which are the analytics and reporting-manager
agents. Does not own the announcement of the pricing change, which is
the comms-manager agent. Does not hold the record of who has agreed to
be contacted, which is the consent-manager agent, and it never treats a
marketing opt-out as a reason to withhold a notice the agreement
requires. Does not sign anything.

## What always goes to a person

- a customer whose agreement the rules do not settle, where reading the
  contract either way changes what that customer pays. The agent records
  the customer as unsorted and puts the question to a person.
- a change to a price after a notice carrying that price has already
  been served, because the notice has to run again from the beginning
- a customer whose increase is larger than the threshold the process
  sets
- a notice it cannot confirm reached the customer by the route the
  agreement requires
- a customer who answers a notice by disputing the price, asking to
  cancel or asking to renegotiate, handed to the people who own the
  account with everything the customer has been sent attached
- a rule that would raise the price of a customer whose agreement
  forbids the raise, on the day the agent finds it
- a release of price changes that would go ahead while notices for the
  same group are still outstanding
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 `price-transition` leaves
the following behind, on every run.

The register at a version, giving for each customer what they pay now,
what the new prices make them pay, the amount and the share of the
change, the grandfathering rule that caught them and the date that rule
runs out, the notice they are owed, and the earliest date their change
may take effect. A dated line for every notice served, naming the
customer, the version of the wording that went, the date it went, the
route it went by, and the date its waiting time runs out. A dated line
for every price change released, naming the customer, the date the new
price takes effect, and the notice record that cleared it. A customer it
could not sort is recorded as unsorted, with what is missing, rather
than being left out of the register. A change it is holding back is
recorded as held, with the reason and the number of days it has been
held.

An agent that leaves less than this does not implement
`price-transition`, 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 billing record | read | What each customer pays now, on which plan, and since when. |
| the contract record | read | The terms that bind a customer's price, at their versions. |
| the approved pricing rules | read | At the version they were approved at, with every grandfathering rule and every notice period. |
| the CRM | read |  |
| the transition register | write | Every customer lands with their current price, their new price, the rule that caught them, the notice they are owed and the date their change may take effect. |
| the notice record | write | Which notice went to which customer, when it went and by which route. |
| the scheduled price changes | trigger | Cap: which customers' changes it may release without asking, set by the adopting organization. |

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": "price-transition",
  "version": "1.0.0",
  "description": "The price-transition abstract agent. Works out what a price change does to every existing customer, one customer at a time.",
  "author": {
    "name": "AgentCatalog",
    "url": "https://agentcatalog.com"
  },
  "homepage": "https://agentcatalog.com/abstract-agents/price-transition",
  "repository": "https://github.com/jeffrschneider/agentcatalog",
  "license": "CC-BY-4.0",
  "keywords": [
    "abstract-agent",
    "reference",
    "marketing",
    "pricing-change",
    "abstract"
  ],
  "extensions": {
    "com.agentcatalog.agent": {
      "agent": "price-transition",
      "agentVersion": 1,
      "department": "marketing",
      "abstract": true,
      "works": "Acts as the examiner in an assessment: the new prices and the grandfathering rules are named at their approved versions before sorting starts, every customer gets a verdict, and every verdict cites the rule the customer was sorted under. Sits in the briefing that opens a pricing change, so it hears the rules while the rules can still be changed and can say which customers a rule as written would catch. Answers the roll-call before any notice goes out with how many customers sit in each group, how many are still unsorted and what is missing for them. Requests the approval that has to pass before the first price change is released. Contributes to collect-and-report while the transition runs, saying how many notices have been served, how many waiting times have run out and how many changes have taken effect. Sits in the debrief that closes the transition.",
      "servers": [
        {
          "name": "the billing record",
          "role": "billing-record",
          "access": "read",
          "needs": "What each customer pays now, on which plan, and since when."
        },
        {
          "name": "the contract record",
          "role": "contract-record",
          "access": "read",
          "needs": "The terms that bind a customer's price, at their versions."
        },
        {
          "name": "the approved pricing rules",
          "role": "approved-pricing-rules",
          "access": "read",
          "needs": "At the version they were approved at, with every grandfathering rule and every notice period."
        },
        {
          "name": "the CRM",
          "role": "crm",
          "access": "read"
        },
        {
          "name": "the transition register",
          "role": "transition-register",
          "access": "write",
          "needs": "Every customer lands with their current price, their new price, the rule that caught them, the notice they are owed and the date their change may take effect."
        },
        {
          "name": "the notice record",
          "role": "notice-record",
          "access": "write",
          "needs": "Which notice went to which customer, when it went and by which route."
        },
        {
          "name": "the scheduled price changes",
          "role": "scheduled-price-changes",
          "access": "trigger",
          "needs": "Cap: which customers' changes it may release without asking, set by the adopting organization."
        }
      ],
      "records": [
        "The register at a version, giving for each customer what they pay now, what the new prices make them pay, the amount and the share of the change, the grandfathering rule that caught them and the date that rule runs out, the notice they are owed, and the earliest date their change may take effect.",
        "A dated line for every notice served, naming the customer, the version of the wording that went, the date it went, the route it went by, and the date its waiting time runs out.",
        "A dated line for every price change released, naming the customer, the date the new price takes effect, and the notice record that cleared it.",
        "A customer it could not sort is recorded as unsorted, with what is missing, rather than being left out of the register.",
        "A change it is holding back is recorded as held, with the reason and the number of days it has been held."
      ],
      "escalates": [
        "a customer whose agreement the rules do not settle, where reading the contract either way changes what that customer pays. The agent records the customer as unsorted and puts the question to a person.",
        "a change to a price after a notice carrying that price has already been served, because the notice has to run again from the beginning",
        "a customer whose increase is larger than the threshold the process sets",
        "a notice it cannot confirm reached the customer by the route the agreement requires",
        "a customer who answers a notice by disputing the price, asking to cancel or asking to renegotiate, handed to the people who own the account with everything the customer has been sent attached",
        "a rule that would raise the price of a customer whose agreement forbids the raise, on the day the agent finds it",
        "a release of price changes that would go ahead while notices for the same group are still outstanding"
      ],
      "not": [
        "Does not set the prices.",
        "What the new prices are is settled by the people who decide, the decision-coordinator agent runs that decision, and this agent applies the answer to the customers who already pay something.",
        "Does not write the notice or design it, which are the copywriter and designer agents, and does not send it.",
        "The email-producer agent sends the message, the web-producer agent puts a notice on the site, and the in-product-producer agent shows one inside the product.",
        "This agent says which customer is owed which notice and by when.",
        "Does not score the wording against the disclosure rules in force in a market, which is the disclosure-check agent.",
        "Does not change a contract, grant an exception, or make a commercial offer, all of which stay with the people who own the account.",
        "Does not answer for one named account's usage, support history or renewal position, which is the account-monitor agent, and this agent reads that answer.",
        "Does not run a standing program for a customer or choose which message that customer gets next, which is the lifecycle-manager agent, and does not run a play for a customer at risk of leaving.",
        "Does not model what the price change will earn or cost at each level, which is the forecaster agent, and does not report what it earned afterwards, which are the analytics and reporting-manager agents.",
        "Does not own the announcement of the pricing change, which is the comms-manager agent.",
        "Does not hold the record of who has agreed to be contacted, which is the consent-manager agent, and it never treats a marketing opt-out as a reason to withhold a notice the agreement requires.",
        "Does not sign anything."
      ],
      "processes": [
        {
          "process": "ref/mkt/pricing-change",
          "activities": [
            "Read the Affected Customers",
            "Set the Terms of the Change",
            "Build the Notice Lists",
            "Serve the Notice",
            "Move the Served Customers",
            "Watch the Transition",
            "Report the Transition"
          ]
        }
      ]
    }
  }
}
README.mdWhat the package is, and why it carries no mcp.json.
# price-transition

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 five 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/pricing-change`. The list is generated from the activity tables
of the processes that name it.

https://agentcatalog.com/abstract-agents/price-transition
skills/change-release/SKILL.mdHolds every customer's price change back until the notice they were owed has been served and its waiting time has run out, then releases each change on the date that clears it. Use it when running `ref/mkt/pricing-change`.
---
name: change-release
description: Holds every customer's price change back until the notice they were owed has been served and its waiting time has run out, then releases each change on the date that clears it. Use it when running `ref/mkt/pricing-change`.
license: CC-BY-4.0
metadata:
  agent: price-transition
  agent-version: "1"
---

# Change release

## What it does

Holds every customer's price change back until the notice they were owed
has been served and its waiting time has run out, then releases each
change on the date that clears 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.

- **Move the Served Customers**
  - `ref/mkt/pricing-change`, activity 13 -
    [Launch Pricing Change](../../../../processes/marketing/pricing-change.md)

## What to record

The register at a version, giving for each customer what they pay now,
what the new prices make them pay, the amount and the share of the
change, the grandfathering rule that caught them and the date that rule
runs out, the notice they are owed, and the earliest date their change
may take effect. A dated line for every notice served, naming the
customer, the version of the wording that went, the date it went, the
route it went by, and the date its waiting time runs out. A dated line
for every price change released, naming the customer, the date the new
price takes effect, and the notice record that cleared it. A customer it
could not sort is recorded as unsorted, with what is missing, rather
than being left out of the register. A change it is holding back is
recorded as held, with the reason and the number of days it has been
held.

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/change-terms/SKILL.md"Records the terms the change runs under before any customer is sorted: the approved new prices, the grandfathering rules that hold a customer at an old price, and the notice period each customer is owed. Use it when running `ref/mkt/pricing-change`."
---
name: change-terms
description: "Records the terms the change runs under before any customer is sorted: the approved new prices, the grandfathering rules that hold a customer at an old price, and the notice period each customer is owed. Use it when running `ref/mkt/pricing-change`."
license: CC-BY-4.0
metadata:
  agent: price-transition
  agent-version: "1"
---

# Change terms

## What it does

Records the terms the change runs under before any customer is sorted:
the approved new prices, the grandfathering rules that hold a customer
at an old price, and the notice period each customer is owed.

## 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 Terms of the Change**
  - `ref/mkt/pricing-change`, activity 3 -
    [Launch Pricing Change](../../../../processes/marketing/pricing-change.md)

## What to record

The register at a version, giving for each customer what they pay now,
what the new prices make them pay, the amount and the share of the
change, the grandfathering rule that caught them and the date that rule
runs out, the notice they are owed, and the earliest date their change
may take effect. A dated line for every notice served, naming the
customer, the version of the wording that went, the date it went, the
route it went by, and the date its waiting time runs out. A dated line
for every price change released, naming the customer, the date the new
price takes effect, and the notice record that cleared it. A customer it
could not sort is recorded as unsorted, with what is missing, rather
than being left out of the register. A change it is holding back is
recorded as held, with the reason and the number of days it has been
held.

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/customer-sorting/SKILL.mdGoes through the customers a change affects one at a time, works out what each pays now and what the new prices make them pay, and applies the rules to say which group the customer falls in and which notice they are owed. Use it when running `ref/mkt/pricing-change`.
---
name: customer-sorting
description: Goes through the customers a change affects one at a time, works out what each pays now and what the new prices make them pay, and applies the rules to say which group the customer falls in and which notice they are owed. Use it when running `ref/mkt/pricing-change`.
license: CC-BY-4.0
metadata:
  agent: price-transition
  agent-version: "1"
---

# Customer sorting

## What it does

Goes through the customers a change affects one at a time, works out
what each pays now and what the new prices make them pay, and applies
the rules to say which group the customer falls in and which notice they
are owed. The result is one register and one list per treatment.

## Where it happens

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

- **Build the Notice Lists**
  - `ref/mkt/pricing-change`, activity 9 -
    [Launch Pricing Change](../../../../processes/marketing/pricing-change.md)
- **Read the Affected Customers**
  - `ref/mkt/pricing-change`, activity 2 -
    [Launch Pricing Change](../../../../processes/marketing/pricing-change.md)

## What to record

The register at a version, giving for each customer what they pay now,
what the new prices make them pay, the amount and the share of the
change, the grandfathering rule that caught them and the date that rule
runs out, the notice they are owed, and the earliest date their change
may take effect. A dated line for every notice served, naming the
customer, the version of the wording that went, the date it went, the
route it went by, and the date its waiting time runs out. A dated line
for every price change released, naming the customer, the date the new
price takes effect, and the notice record that cleared it. A customer it
could not sort is recorded as unsorted, with what is missing, rather
than being left out of the register. A change it is holding back is
recorded as held, with the reason and the number of days it has been
held.

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/notice-service/SKILL.mdSends each customer the notice their agreement requires, by the route it requires, and keeps the proof that it went. Use it when running `ref/mkt/pricing-change`.
---
name: notice-service
description: Sends each customer the notice their agreement requires, by the route it requires, and keeps the proof that it went. Use it when running `ref/mkt/pricing-change`.
license: CC-BY-4.0
metadata:
  agent: price-transition
  agent-version: "1"
---

# Notice service

## What it does

Sends each customer the notice their agreement requires, by the route it
requires, and keeps the proof that it went. The date it went starts the
waiting time that has to run out before the price may change.

## Where it happens

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

- **Serve the Notice**
  - `ref/mkt/pricing-change`, activity 10 -
    [Launch Pricing Change](../../../../processes/marketing/pricing-change.md)

## What to record

The register at a version, giving for each customer what they pay now,
what the new prices make them pay, the amount and the share of the
change, the grandfathering rule that caught them and the date that rule
runs out, the notice they are owed, and the earliest date their change
may take effect. A dated line for every notice served, naming the
customer, the version of the wording that went, the date it went, the
route it went by, and the date its waiting time runs out. A dated line
for every price change released, naming the customer, the date the new
price takes effect, and the notice record that cleared it. A customer it
could not sort is recorded as unsorted, with what is missing, rather
than being left out of the register. A change it is holding back is
recorded as held, with the reason and the number of days it has been
held.

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/transition-outcome/SKILL.mdReads what customers did as the change took effect, such as who accepted, who left and what new sales did, and reports the result against what the change was meant to achieve. Use it when running `ref/mkt/pricing-change`.
---
name: transition-outcome
description: Reads what customers did as the change took effect, such as who accepted, who left and what new sales did, and reports the result against what the change was meant to achieve. Use it when running `ref/mkt/pricing-change`.
license: CC-BY-4.0
metadata:
  agent: price-transition
  agent-version: "1"
---

# Transition outcome

## What it does

Reads what customers did as the change took effect, such as who
accepted, who left and what new sales did, and reports the result
against what the change was meant to achieve.

## Where it happens

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

- **Report the Transition**
  - `ref/mkt/pricing-change`, activity 15 -
    [Launch Pricing Change](../../../../processes/marketing/pricing-change.md)
- **Watch the Transition**
  - `ref/mkt/pricing-change`, activity 14 -
    [Launch Pricing Change](../../../../processes/marketing/pricing-change.md)

## What to record

The register at a version, giving for each customer what they pay now,
what the new prices make them pay, the amount and the share of the
change, the grandfathering rule that caught them and the date that rule
runs out, the notice they are owed, and the earliest date their change
may take effect. A dated line for every notice served, naming the
customer, the version of the wording that went, the date it went, the
route it went by, and the date its waiting time runs out. A dated line
for every price change released, naming the customer, the date the new
price takes effect, and the notice record that cleared it. A customer it
could not sort is recorded as unsorted, with what is missing, rather
than being left out of the register. A change it is holding back is
recorded as held, with the reason and the number of days it has been
held.

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.

billing-record · readcontract-record · readapproved-pricing-rules · readcrm · readtransition-register · writenotice-record · writescheduled-price-changes · trigger
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": {
    "billing-record": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/billing-record"
    },
    "contract-record": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/contract-record"
    },
    "approved-pricing-rules": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/approved-pricing-rules"
    },
    "crm": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/crm"
    },
    "transition-register": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/transition-register"
    },
    "notice-record": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/notice-record"
    },
    "scheduled-price-changes": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/scheduled-price-changes"
    }
  }
}

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

One process, 7 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.

Launch Pricing Changeref/mkt/pricing-change · 16 activities
12345678910111213141516

Read the Affected Customers · Set the Terms of the Change · Build the Notice Lists · Serve the Notice · Move the Served Customers · Watch the Transition · Report the Transition

The records it leaves

What it writes down

The register at a version, giving for each customer what they pay now, what the new prices make them pay, the amount and the share of the change, the grandfathering rule that caught them and the date that rule runs out, the notice they are owed, and the earliest date their change may take effect. A dated line for every notice served, naming the customer, the version of the wording that went, the date it went, the route it went by, and the date its waiting time runs out. A dated line for every price change released, naming the customer, the date the new price takes effect, and the notice record that cleared it. A customer it could not sort is recorded as unsorted, with what is missing, rather than being left out of the register. A change it is holding back is recorded as held, with the reason and the number of days it has been held.

Where it stops

What it will not do

Does not set the prices. What the new prices are is settled by the people who decide, the decision-coordinator agent runs that decision, and this agent applies the answer to the customers who already pay something. Does not write the notice or design it, which are the copywriter and designer agents, and does not send it. The email-producer agent sends the message, the web-producer agent puts a notice on the site, and the in-product-producer agent shows one inside the product. This agent says which customer is owed which notice and by when. Does not score the wording against the disclosure rules in force in a market, which is the disclosure-check agent. Does not change a contract, grant an exception, or make a commercial offer, all of which stay with the people who own the account. Does not answer for one named account's usage, support history or renewal position, which is the account-monitor agent, and this agent reads that answer. Does not run a standing program for a customer or choose which message that customer gets next, which is the lifecycle-manager agent, and does not run a play for a customer at risk of leaving. Does not model what the price change will earn or cost at each level, which is the forecaster agent, and does not report what it earned afterwards, which are the analytics and reporting-manager agents. Does not own the announcement of the pricing change, which is the comms-manager agent. Does not hold the record of who has agreed to be contacted, which is the consent-manager agent, and it never treats a marketing opt-out as a reason to withhold a notice the agreement requires. Does not sign anything.

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: price-transition 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.

  • TaskRail MCP server · taskrail.alamavar.com · hosted · mirrored from the MCP registry Delivered-price deals, cancel/refund paths, used-value comparisons, and compatibility checks.
  • Upshift MCP server · upshiftsites.com · hosted · run it yourself · mirrored from the MCP registry Audit a site's structured data and llms.txt, match a trade to a template, and quote real prices.
  • energyai MCP server · energyaisolution.com · hosted · mirrored from the MCP registry One-call installer quote review plus energy incentives, estimates, scores, and routing for agents.