Deal desk reviewer
deal-desk-reviewer v1Runs the desk that answers a seller asking for something the standard paper does not cover. It takes the request, checks it carries what it needs, tells the seller the time the desk will answer in, and reads the deal as it stands. Every non-standard item is separated out so each one can be decided on its own, priced for what it risks in revenue, margin, delivery and precedent, and put in front of the person who carries that risk rather than whoever is nearest. It shapes the alternative the desk would approve so a refusal is never the only answer a seller gets, and records every decision against the version of the deal it was made on.
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.
Runs assessment on whether a request is complete and on what each item risks, and collect-and-report to read the deal as it stands and to gather each risk owner's read in writing. Convenes decide-and-announce at the review where the items are decided one at a time, each against the read it was decided on. Runs roll-call on the clock from the hour it starts until the shape goes back to the seller, and convenes the debrief that turns an ask which keeps arriving into a standard term or a new band. Takes the priced quote and its non-standard lines from the quote-builder agent, hands each term to the terms-check agent to score, takes the precedent from the analytics agent, passes an ask that is a price rather than a term to the discount-approver agent, and hands a repeating pattern to the standards-keeper agent.
What is in the package
6 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 approve anything and does not sign anything. Does not price a discount against the rate card and the margin floor or route it to its band, which is the discount-approver agent. Does not score a term against the standard paper itself, which is the terms-check agent working at a named version. Does not build the configuration or the quote, which are the configurator agent and the quote-builder agent. Does not write or version the standard terms and the approval table, which is the standards-keeper agent, and does not negotiate with the customer. ## What always goes to a person - an item past the time its level promised - to the named sales leader, with what it is waiting on, who it is waiting for, and what the desk recommends, and the seller is told it went up - a risk owner who never gave their read - to the sales leader with the item and the owner named, because the item is not decided without it - the decision itself, always - to the named signers at the review. This agent reads, prices, shapes and records, and people approve - a deal signed before the desk answered - to the sales leader, with every item that went out unapproved and who signed it - an ask that keeps arriving and keeps being decided the same way - to the standards-keeper agent and the threshold review, as a candidate term or a new band rather than another one-off decision
# The records this abstract agent must leave
This is the contract. An agent implementing `deal-desk-reviewer` leaves
the following behind, on every run.
Per request: the ask as the seller wrote it, the deal it belongs to, the
level read off the published table, the time that level promises, and
the hour the seller was told both. Every non-standard item written down
on its own in the words the customer used, each carrying what it risks
with the number behind the risk wherever there is one, and the person or
function that carries it. Every read as it came back, dated, with the
reason the owner gave, and every item nobody read. What was decided the
last time the same thing was asked, on which deal, by whom, and what
happened to that deal afterwards. The alternative the desk would
approve, priced beside the ask. Then per item: the decision, the reason,
the signer, and the version of the deal it was decided against, with the
approved shape or the refusal as it went back to the seller.
An agent that leaves less than this does not implement
`deal-desk-reviewer`, 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 CRM | read | The account, what it already owns, and the deal the ask belongs to. |
| the quoting system | read | The configuration, the price and the term as the deal stands. |
| the deal desk queue | write | The request, its level, its promised time and its state. |
| the approval record | write | The decision, the reason, the signer and the deal version it was decided against. |
| the contract record | read | The paper the deal sits on. |
| the standard terms store | read | The terms in force each item is tested against. |
| the notification channel | write | The seller hears the clock, the answer, and anything that went up the line. |
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": "deal-desk-reviewer",
"version": "1.0.0",
"description": "The deal-desk-reviewer abstract agent. Runs the desk that answers a seller asking for something the standard paper does not cover. It takes the request, checks it carries what it needs, tells the seller the time the desk will answer in, and reads the deal as it stands.",
"author": {
"name": "AgentCatalog",
"url": "https://agentcatalog.com"
},
"homepage": "https://agentcatalog.com/abstract-agents/deal-desk-reviewer",
"repository": "https://github.com/jeffrschneider/agentcatalog",
"license": "CC-BY-4.0",
"keywords": [
"abstract-agent",
"reference",
"revenue-operations",
"review-a-non-standard-deal",
"publish-the-approval-thresholds",
"abstract"
],
"extensions": {
"com.agentcatalog.agent": {
"agent": "deal-desk-reviewer",
"agentVersion": 1,
"department": "revenue-operations",
"abstract": true,
"works": "Runs assessment on whether a request is complete and on what each item risks, and collect-and-report to read the deal as it stands and to gather each risk owner's read in writing. Convenes decide-and-announce at the review where the items are decided one at a time, each against the read it was decided on. Runs roll-call on the clock from the hour it starts until the shape goes back to the seller, and convenes the debrief that turns an ask which keeps arriving into a standard term or a new band. Takes the priced quote and its non-standard lines from the quote-builder agent, hands each term to the terms-check agent to score, takes the precedent from the analytics agent, passes an ask that is a price rather than a term to the discount-approver agent, and hands a repeating pattern to the standards-keeper agent.",
"servers": [
{
"name": "the CRM",
"role": "crm",
"access": "read",
"needs": "The account, what it already owns, and the deal the ask belongs to."
},
{
"name": "the quoting system",
"role": "quoting-system",
"access": "read",
"needs": "The configuration, the price and the term as the deal stands."
},
{
"name": "the deal desk queue",
"role": "deal-desk-queue",
"access": "write",
"needs": "The request, its level, its promised time and its state."
},
{
"name": "the approval record",
"role": "approval-record",
"access": "write",
"needs": "The decision, the reason, the signer and the deal version it was decided against."
},
{
"name": "the contract record",
"role": "contract-record",
"access": "read",
"needs": "The paper the deal sits on."
},
{
"name": "the standard terms store",
"role": "standard-terms-store",
"access": "read",
"needs": "The terms in force each item is tested against."
},
{
"name": "the notification channel",
"role": "notification-channel",
"access": "write",
"needs": "The seller hears the clock, the answer, and anything that went up the line."
}
],
"records": [
"Per request: the ask as the seller wrote it, the deal it belongs to, the level read off the published table, the time that level promises, and the hour the seller was told both.",
"Every non-standard item written down on its own in the words the customer used, each carrying what it risks with the number behind the risk wherever there is one, and the person or function that carries it.",
"Every read as it came back, dated, with the reason the owner gave, and every item nobody read.",
"What was decided the last time the same thing was asked, on which deal, by whom, and what happened to that deal afterwards.",
"The alternative the desk would approve, priced beside the ask.",
"Then per item: the decision, the reason, the signer, and the version of the deal it was decided against, with the approved shape or the refusal as it went back to the seller."
],
"escalates": [
"an item past the time its level promised - to the named sales leader, with what it is waiting on, who it is waiting for, and what the desk recommends, and the seller is told it went up",
"a risk owner who never gave their read - to the sales leader with the item and the owner named, because the item is not decided without it",
"the decision itself, always - to the named signers at the review. This agent reads, prices, shapes and records, and people approve",
"a deal signed before the desk answered - to the sales leader, with every item that went out unapproved and who signed it",
"an ask that keeps arriving and keeps being decided the same way - to the standards-keeper agent and the threshold review, as a candidate term or a new band rather than another one-off decision"
],
"not": [
"Does not approve anything and does not sign anything.",
"Does not price a discount against the rate card and the margin floor or route it to its band, which is the discount-approver agent.",
"Does not score a term against the standard paper itself, which is the terms-check agent working at a named version.",
"Does not build the configuration or the quote, which are the configurator agent and the quote-builder agent.",
"Does not write or version the standard terms and the approval table, which is the standards-keeper agent, and does not negotiate with the customer."
],
"processes": [
{
"process": "ref/rev/publish-the-approval-thresholds",
"activities": [
"Draft the Levels",
"Set the Time Promised per Level",
"Wire the Table Into the Routing"
]
},
{
"process": "ref/rev/review-a-non-standard-deal",
"activities": [
"Take in the Request",
"Check the Request Is Complete",
"Start the Clock",
"Read the Deal as It Stands",
"Name Every Non-Standard Item",
"Price What Each Item Risks",
"Say Who Carries Each Risk",
"Look Up the Precedent",
"Shape What the Desk Would Approve",
"Hold the Review",
"Escalate What Ran Past the Clock",
"Record the Decision and the Reason",
"Hand the Shape Back",
"Feed the Pattern to the Standards"
]
}
]
}
}
}
# deal-desk-reviewer 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 six 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/rev/publish-the-approval-thresholds`, `ref/rev/review-a-non-standard-deal`. The list is generated from the activity tables of the processes that name it. https://agentcatalog.com/abstract-agents/deal-desk-reviewer
--- name: hold-the-review-and-record-each-decision description: Puts the items in front of the named signers one at a time, each against the read it was decided on. Use it when running `ref/rev/review-a-non-standard-deal`. license: CC-BY-4.0 metadata: agent: deal-desk-reviewer agent-version: "1" --- # Hold the review and record each decision ## What it does Puts the items in front of the named signers one at a time, each against the read it was decided on. Writes down the decision, the reason, the signer, and the version of the deal it was decided against. ## Where it happens The agent does this in two activities across one reference process. Each one names the activity as that process words it. - **Hold the Review** - `ref/rev/review-a-non-standard-deal`, activity 12 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Record the Decision and the Reason** - `ref/rev/review-a-non-standard-deal`, activity 14 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) ## What to record Per request: the ask as the seller wrote it, the deal it belongs to, the level read off the published table, the time that level promises, and the hour the seller was told both. Every non-standard item written down on its own in the words the customer used, each carrying what it risks with the number behind the risk wherever there is one, and the person or function that carries it. Every read as it came back, dated, with the reason the owner gave, and every item nobody read. What was decided the last time the same thing was asked, on which deal, by whom, and what happened to that deal afterwards. The alternative the desk would approve, priced beside the ask. Then per item: the decision, the reason, the signer, and the version of the deal it was decided against, with the approved shape or the refusal as it went back to the seller. 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: price-an-item-and-name-who-carries-it description: Says what each item risks in revenue, margin, delivery and precedent, with the number behind the risk wherever there is one, and names the person or function that carries it. Use it when running `ref/rev/review-a-non-standard-deal`. license: CC-BY-4.0 metadata: agent: deal-desk-reviewer agent-version: "1" --- # Price an item and name who carries it ## What it does Says what each item risks in revenue, margin, delivery and precedent, with the number behind the risk wherever there is one, and names the person or function that carries it. Looks up what was decided the last time the same thing was asked and what happened to that deal afterwards. ## Where it happens The agent does this in three activities across one reference process. Each one names the activity as that process words it. - **Look Up the Precedent** - `ref/rev/review-a-non-standard-deal`, activity 10 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Price What Each Item Risks** - `ref/rev/review-a-non-standard-deal`, activity 7 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Say Who Carries Each Risk** - `ref/rev/review-a-non-standard-deal`, activity 8 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) ## What to record Per request: the ask as the seller wrote it, the deal it belongs to, the level read off the published table, the time that level promises, and the hour the seller was told both. Every non-standard item written down on its own in the words the customer used, each carrying what it risks with the number behind the risk wherever there is one, and the person or function that carries it. Every read as it came back, dated, with the reason the owner gave, and every item nobody read. What was decided the last time the same thing was asked, on which deal, by whom, and what happened to that deal afterwards. The alternative the desk would approve, priced beside the ask. Then per item: the decision, the reason, the signer, and the version of the deal it was decided against, with the approved shape or the refusal as it went back to the seller. 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: read-a-deal-and-separate-what-is-non-standard description: Reads the deal as it stands, then writes every non-standard item down on its own in the words the customer used, so each one is decided separately rather than as one document. Use it when running `ref/rev/review-a-non-standard-deal`. license: CC-BY-4.0 metadata: agent: deal-desk-reviewer agent-version: "1" --- # Read a deal and separate what is non standard ## What it does Reads the deal as it stands, then writes every non-standard item down on its own in the words the customer used, so each one is decided separately rather than as one document. ## Where it happens The agent does this in two activities across one reference process. Each one names the activity as that process words it. - **Name Every Non-Standard Item** - `ref/rev/review-a-non-standard-deal`, activity 5 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Read the Deal as It Stands** - `ref/rev/review-a-non-standard-deal`, activity 4 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) ## What to record Per request: the ask as the seller wrote it, the deal it belongs to, the level read off the published table, the time that level promises, and the hour the seller was told both. Every non-standard item written down on its own in the words the customer used, each carrying what it risks with the number behind the risk wherever there is one, and the person or function that carries it. Every read as it came back, dated, with the reason the owner gave, and every item nobody read. What was decided the last time the same thing was asked, on which deal, by whom, and what happened to that deal afterwards. The alternative the desk would approve, priced beside the ask. Then per item: the decision, the reason, the signer, and the version of the deal it was decided against, with the approved shape or the refusal as it went back to the seller. 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: shape-an-alternative-the-desk-would-approve description: Builds the version of the ask the desk would say yes to, priced beside what was asked for, and hands it back to the seller. Use it when running `ref/rev/review-a-non-standard-deal`. license: CC-BY-4.0 metadata: agent: deal-desk-reviewer agent-version: "1" --- # Shape an alternative the desk would approve ## What it does Builds the version of the ask the desk would say yes to, priced beside what was asked for, and hands it back to the seller. A refusal is never the only answer a seller 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. - **Hand the Shape Back** - `ref/rev/review-a-non-standard-deal`, activity 15 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Shape What the Desk Would Approve** - `ref/rev/review-a-non-standard-deal`, activity 11 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) ## What to record Per request: the ask as the seller wrote it, the deal it belongs to, the level read off the published table, the time that level promises, and the hour the seller was told both. Every non-standard item written down on its own in the words the customer used, each carrying what it risks with the number behind the risk wherever there is one, and the person or function that carries it. Every read as it came back, dated, with the reason the owner gave, and every item nobody read. What was decided the last time the same thing was asked, on which deal, by whom, and what happened to that deal afterwards. The alternative the desk would approve, priced beside the ask. Then per item: the decision, the reason, the signer, and the version of the deal it was decided against, with the approved shape or the refusal as it went back to the seller. 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: shape-the-standing-rules-the-desk-works-to description: Drafts the approval levels and the time each level promises, and builds the table into the routing so a request lands at its level without anybody choosing. Use it when running `ref/rev/publish-the-approval-thresholds` and `ref/rev/review-a-non-standard-deal`. license: CC-BY-4.0 metadata: agent: deal-desk-reviewer agent-version: "1" --- # Shape the standing rules the desk works to ## What it does Drafts the approval levels and the time each level promises, and builds the table into the routing so a request lands at its level without anybody choosing. An ask that keeps arriving and keeps being decided the same way goes back to the standard paper as a candidate term or band. ## Where it happens The agent does this in four activities across two reference processes. Each one names the activity as that process words it. - **Draft the Levels** - `ref/rev/publish-the-approval-thresholds`, activity 4 - [Publish the Approval Thresholds](../../../../processes/revenue-operations/publish-the-approval-thresholds.md) - **Feed the Pattern to the Standards** - `ref/rev/review-a-non-standard-deal`, activity 16 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Set the Time Promised per Level** - `ref/rev/publish-the-approval-thresholds`, activity 5 - [Publish the Approval Thresholds](../../../../processes/revenue-operations/publish-the-approval-thresholds.md) - **Wire the Table Into the Routing** - `ref/rev/publish-the-approval-thresholds`, activity 14 - [Publish the Approval Thresholds](../../../../processes/revenue-operations/publish-the-approval-thresholds.md) ## What to record Per request: the ask as the seller wrote it, the deal it belongs to, the level read off the published table, the time that level promises, and the hour the seller was told both. Every non-standard item written down on its own in the words the customer used, each carrying what it risks with the number behind the risk wherever there is one, and the person or function that carries it. Every read as it came back, dated, with the reason the owner gave, and every item nobody read. What was decided the last time the same thing was asked, on which deal, by whom, and what happened to that deal afterwards. The alternative the desk would approve, priced beside the ask. Then per item: the decision, the reason, the signer, and the version of the deal it was decided against, with the approved shape or the refusal as it went back to the seller. 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: take-in-a-request-and-hold-its-clock description: Takes a seller's ask for something the standard paper does not cover, checks it carries what the desk needs to answer it, and tells the seller the time the desk will answer in. Use it when running `ref/rev/review-a-non-standard-deal`. license: CC-BY-4.0 metadata: agent: deal-desk-reviewer agent-version: "1" --- # Take in a request and hold its clock ## What it does Takes a seller's ask for something the standard paper does not cover, checks it carries what the desk needs to answer it, and tells the seller the time the desk will answer in. Anything still open past that time goes up the line with what it waits on, and the seller is told it went. ## Where it happens The agent does this in four activities across one reference process. Each one names the activity as that process words it. - **Check the Request Is Complete** - `ref/rev/review-a-non-standard-deal`, activity 2 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Escalate What Ran Past the Clock** - `ref/rev/review-a-non-standard-deal`, activity 13 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Start the Clock** - `ref/rev/review-a-non-standard-deal`, activity 3 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) - **Take in the Request** - `ref/rev/review-a-non-standard-deal`, activity 1 - [Review a Non-Standard Deal](../../../../processes/revenue-operations/review-a-non-standard-deal.md) ## What to record Per request: the ask as the seller wrote it, the deal it belongs to, the level read off the published table, the time that level promises, and the hour the seller was told both. Every non-standard item written down on its own in the words the customer used, each carrying what it risks with the number behind the risk wherever there is one, and the person or function that carries it. Every read as it came back, dated, with the reason the owner gave, and every item nobody read. What was decided the last time the same thing was asked, on which deal, by whom, and what happened to that deal afterwards. The alternative the desk would approve, priced beside the ask. Then per item: the decision, the reason, the signer, and the version of the deal it was decided against, with the approved shape or the refusal as it went back to the seller. 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": {
"crm": {
"type": "streamable-http",
"url": "https://mcp.yourcompany.com/crm"
},
"quoting-system": {
"type": "streamable-http",
"url": "https://mcp.yourcompany.com/quoting-system"
},
"deal-desk-queue": {
"type": "streamable-http",
"url": "https://mcp.yourcompany.com/deal-desk-queue"
},
"approval-record": {
"type": "streamable-http",
"url": "https://mcp.yourcompany.com/approval-record"
},
"contract-record": {
"type": "streamable-http",
"url": "https://mcp.yourcompany.com/contract-record"
},
"standard-terms-store": {
"type": "streamable-http",
"url": "https://mcp.yourcompany.com/standard-terms-store"
},
"notification-channel": {
"type": "streamable-http",
"url": "https://mcp.yourcompany.com/notification-channel"
}
}
}
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.
2 processes, 17 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.
Draft the Levels · Set the Time Promised per Level · Wire the Table Into the Routing
Take in the Request · Check the Request Is Complete · Start the Clock · Read the Deal as It Stands · Name Every Non-Standard Item · Price What Each Item Risks · Say Who Carries Each Risk · Look Up the Precedent · Shape What the Desk Would Approve · Hold the Review · Escalate What Ran Past the Clock · Record the Decision and the Reason · Hand the Shape Back · Feed the Pattern to the Standards
What it writes down
Per request: the ask as the seller wrote it, the deal it belongs to, the level read off the published table, the time that level promises, and the hour the seller was told both. Every non-standard item written down on its own in the words the customer used, each carrying what it risks with the number behind the risk wherever there is one, and the person or function that carries it. Every read as it came back, dated, with the reason the owner gave, and every item nobody read. What was decided the last time the same thing was asked, on which deal, by whom, and what happened to that deal afterwards. The alternative the desk would approve, priced beside the ask. Then per item: the decision, the reason, the signer, and the version of the deal it was decided against, with the approved shape or the refusal as it went back to the seller.
What it will not do
Does not approve anything and does not sign anything. Does not price a discount against the rate card and the margin floor or route it to its band, which is the discount-approver agent. Does not score a term against the standard paper itself, which is the terms-check agent working at a named version. Does not build the configuration or the quote, which are the configurator agent and the quote-builder agent. Does not write or version the standard terms and the approval table, which is the standards-keeper agent, and does not negotiate with the customer.
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: deal-desk-reviewer 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.
- Decide Policy Notaries MCP server · decidefyi.github.io · hosted · mirrored from the MCP registry Fail-closed refund, cancellation, return, and trial checks for 100 US subscription vendors.
- contract-analysis MCP server · bitsbound.com · run it yourself · mirrored from the MCP registry AI contract analysis with partner-level redlines, OOXML Track Changes, and risk analysis.
- TaskRail MCP server · taskrail.alamavar.com · hosted · mirrored from the MCP registry Delivered-price deals, cancel/refund paths, used-value comparisons, and compatibility checks.