Skip to content
DCS
PR

Agents and data sources

What Microsoft 365 agents can ask this platform, and where the answers come from.

Where data comes from

Each half of the platform connects separately

SourceStateDetail
Microsoft 365
Graph, through GDAP
Checking…
DCS SQL
Contracts, hardware, software, support
Checking…
Mode is set with DCS_SOURCE: demo (everything generated), hybrid (Graph live, DCS side generated) or live. Currently . Read models live in src/lib/sources/ — the SQL queries there are written against the columns on the DCS registers, so mapping them is a matter of confirming table names.

Authentication and schedule

Who can call this, and how often it collects

SettingStateDetail
AuthenticationChecking…
Scheduled collectionChecking…

Connecting an agent

A declarative agent consumes the OpenAPI description as an API plugin

Point the agent builder at the description below. Every action is read-only — nothing an agent can call changes a record, so an agent cannot move a lead, edit a contract or dismiss a finding.

Action catalogue/api/agent/manifest
OpenAPI description/api/agent/openapi

The platform runs on the DCS network, so an agent reaches it over the internal address. Agents authenticate with a bearer service token; people authenticate with Entra ID through the reverse proxy, which passes validated claims and maps the Entra group to a platform role. A service identity is always read-only.

Actions an agent can call

Each answers one question in a single call, with the arithmetic already done

QuestionEndpointParametersReturns
Brief me on this customer before my meeting
Someone is about to walk into a review and needs the position in one place.
/api/agent/customer-brief
  • accountrequired
Agreement, contract value, renewals due, support performance, open findings, maintenance not billed and open pipeline.
What renewals are coming up?
Weekly renewal planning, or an account manager asking what is on their desk.
/api/agent/renewals
  • daysoptional
  • owneroptional
Contract lines due inside the window, nearest first, with value, notice period and owner.
Where are we not billing maintenance?
Looking for revenue already sitting in the estate rather than new business.
/api/agent/maintenance-gaps
  • minValueoptional
  • owneroptional
Customers with in-service machines or software off contract, valued at standard rates.
How has support performed for this customer?
Preparing or running a service review.
/api/agent/support-review
  • accountrequired
  • monthsoptional
Call volume, response SLA against the 8-hour target, misses with hours over, and recurring problems by user and by device.
What in my pipeline needs chasing?
Monday morning, or a manager checking a patch is being worked.
/api/agent/pipeline-chase
  • owneroptional
  • quietDaysoptional
Open opportunities with no contact inside the window, with value, stage and last action.
What equipment does this customer have?
A customer asks for an audit, or a refresh conversation needs evidence.
/api/agent/equipment
  • accountrequired
  • filteroptional
In-service machines with age, warranty, operating system and contract cover.

Agents worth building

What each would do, and why it earns its place

AgentSomeone asksActions usedWhy
Account briefing"Brief me on Armstrong-Priestley before my 2pm"customerBriefReplaces fifteen minutes of clicking round tabs before every meeting.
Renewals desk"What renews in the next 60 days?"renewalsDue, customerBriefThe renewal book is the largest predictable revenue the business has, and it is currently tracked by memory.
Maintenance gap finder"Where are we not billing maintenance?"maintenanceGaps, equipmentAuditRevenue already sitting in the customer estate. No new business needed to win it.
Service review preparation"Prepare the support review for Hartlaw"supportReview, equipmentAuditTurns the KPI workbook into an answer, on the DCS methodology rather than a generic one.
Pipeline nudge"What have I let go quiet?"pipelineChaseInternal only. Values must never leave the building, which is why this one is separated from the rest.
iWhat agents deliberately cannot doShow
Every action is read-only. An agent can report that a renewal is due, that machines sit off maintenance or that an opportunity has gone quiet — it cannot change the renewal, add the machines to a contract or move the lead. Pipeline values are marked internal in the response so an agent drafting a customer-facing message has been told not to repeat them, and the customer brief omits them entirely.