---
title: "AI contract management agent with Hermes Agent"
description: "Build an AI contract management agent with Hermes Agent that fills your contract repository, tracks renewals and reviews risk on cron."
canonical: "https://contracko.com/blog/ai-contract-management-agent-hermes"
---
# AI contract management agent with Hermes Agent

Source: https://contracko.com/blog/ai-contract-management-agent-hermes

This HTML page may register the in-tab WebMCP tool `search_site_content` in supporting browsers while the tab is open. That is not hosted MCP.

[Blog](https://contracko.com/blog)

[AI contract management agent with Hermes Agent](https://contracko.com/blog/ai-contract-management-agent-hermes)

# AI contract management agent with Hermes Agent

Budi Voogt Nov 06, 2026

Copy for LLM

You can run an artificial intelligence (AI) contract management agent with Hermes Agent, from Nous Research, once you give it the right connection. In an illustrative case with fictional data, an agency's order form for Vantage, its customer relationship management (CRM) system, renews on 1 February with 60 days' notice. The agent's weekly digest warns that the decision is due by 2 December. The agent finds contracts in your folders and inbox, loads them into one contract repository and keeps that repository current on a schedule. Contracko does the expert part: AI contract analysis of every document, the dates, the reminders and the risk review. Hermes does the legwork.

Hermes Agent is Nous Research's open-source agent [1]. You run it yourself, on a laptop, a small server or a cloud machine, with the model provider you choose, and talk to it from the terminal or from chat apps such as Telegram and Slack [1]. This guide gives Hermes its own contract profile, connects the Contracko Model Context Protocol (MCP) server and sets up cron jobs that run on a schedule.

## Why contracts deserve their own profile

A Hermes profile is a separate agent on the same install, with its own configuration, personality file, memory, skills and cron jobs [1]. Contract work has its own sources, rhythm and mistakes to avoid, so it deserves its own profile.

For a person, that profile keeps track of subscriptions, the lease, the mortgage and the insurance policy. For a business, it acts as an in-house contract manager: it collects every signed agreement, files it, completes the details and flags each notice date before it passes.

In AI contract management, the split of work matters most. Hermes and the model behind it should not be reading contracts and extracting terms. Contracko does the AI extraction and analysis itself: parties, dates, renewal and notice terms, value, liability, obligations and risk [4]. Hermes does what a good assistant does:

- finds documents on disk, in synced cloud storage folders or in email
- uploads them to Contracko and checks when each import is done
- checks each contract landed under the right contract type, and when it did not, fixes the type and asks Contracko to read the document again
- files contracts in folders and fills in missing counterparty contacts
- sets reminders, builds reports and tells you what needs attention

How the connection works in general is covered in [what a contract management MCP server is](https://contracko.com/blog/what-is-a-contract-management-mcp-server).

## What a Hermes contract agent looks like

The folder holds a data processing agreement (DPA) and an order form for a CRM system, among other files. An illustrative exchange in Telegram, with fictional companies and data. The operator asks the contract profile to work through a folder of scans:

```
Import everything in ~/Contracts/2025-archive into Contracko. Wait for each import, check the contract types and file each contract under its client or supplier.
```

| File | Contract type | Folder | Status |
| --- | --- | --- | --- |
| Marlow Logistics framework.pdf | Framework agreement | Suppliers / Marlow | Imported |
| Pinecrest Clinic DPA.pdf | Data processing agreement | Clients / Pinecrest | Imported, type changed from "Other" |
| Harbour St sublease.docx | Office lease | Facilities | Imported |
| Vantage CRM order form.pdf | Software subscription | Suppliers / Vantage | Imported, auto-renews 1 February |

Hermes adds that the Pinecrest agreement first landed as "Other", so it changed the type and asked Contracko to analyse it again. The new field values from that second read wait for your approval in Contracko [5]. It also notes that the Vantage order form renews on 1 February with 60 days' notice, so the decision is due by 2 December.

## Set up your contract agent

Hermes is free and open source under the Massachusetts Institute of Technology (MIT) licence [1]. Model and hosting costs depend on your setup. Providers such as OpenRouter or OpenAI, or a Nous Portal subscription, charge for model use, and a cloud machine costs money. A model endpoint you run yourself, or a laptop you already own, may cost nothing extra [1]. If you have not installed Hermes yet, follow the steps in Nous Research's Hermes Agent repository on GitHub.

### Create a contract profile

Create a profile called contracts:

```
hermes profile create contracts
```

It gets its own config.yaml, memory, skills, cron jobs and gateway [1]. Then describe the job in the profile's SOUL.md. Keep it about the work:

```
You run our contracts in Contracko. Keep the contract repository complete, filed and up to date. Import new signed agreements as they appear, check contract types, set reminders and tell me what needs attention. Quote the clause behind each finding, and never delete anything.
```

You do not need a long list of approval rules. Contracko asks for a person's approval before new field values from a re-read are applied and before a report's sharing changes. It also asks before a report or report block is deleted, or a contract share link is created or revoked [5]. The Contracko skill also has the agent confirm bulk changes and their cost against your plan's allowance first [2].

### Connect the Contracko MCP server

Hermes talks to Contracko over the Model Context Protocol (MCP), the open standard AI agents use to work with other software. There is no one-click button for Hermes, but the shortest route comes close: Contracko publishes a Hermes package with setup instructions, and Hermes can install it for you [2]. These steps follow those published instructions. Start the profile with hermes -p contracts and paste the prompt from the [Contracko MCP page](https://contracko.com/mcp/contract-management):

```
Fetch and follow the setup instructions for Contracko MCP at https://contracko.com/mcp/install/prompt.md
```

Hermes installs the contracko-hermes package from the releases of Contracko's open skills library and asks you to enable it. It then asks before it adds the Contracko MCP server to the profile's config.yaml [2]:

```
mcp_servers:
  contracko:
    url: "https://app.contracko.com/mcp"
    auth: oauth
```

Then it starts the login. You can also run it yourself for the contract profile and sign in to Contracko in the browser:

```
hermes -p contracts mcp login contracko
```

On a server without a browser, run the login over Secure Shell (SSH). Hermes shows how to reach its sign-in callback or paste the redirected address back [1]. Once you are signed in, reload MCP or restart Hermes [2]. Then ask the profile to check its Contracko connection; it should name the workspace you signed in to.

When Contracko's consent screen asks what to allow, keep both View contracts and Add and edit contracts selected [2]. Add and edit is offered only when your workspace role allows it. Without it the agent can answer questions but cannot import, file or set reminders.

Contracko has two products:

- Contract management is your contract repository: contracts, dates, reminders, folders, analysis and reports. This is what Hermes uses, and it never spends Parser credits [2].
- Contracko Parser is a separate tool for processing documents in bulk without adding them to your repository. Your contract agent does not need it.

No account yet? The sign-in lets you start a free trial with no credit card, or start from [pricing](https://contracko.com/pricing).

### The Contracko skill comes with it

Hermes supports skills, the instruction folders that teach an agent to use a tool well. The Contracko package carries Contracko's one skill, contracko, so your profile already knows how imports work, when to wait for them and how to check types and dates. If you connected by hand, install the skill from Contracko's open skills library on GitHub [1]:

```
hermes -p contracts skills install contracko/contracko-skills/skills/contracko
```

## Build a contract repository with tracking

A central contract repository with tracking is where a Hermes agent earns its keep. Every agreement sits in one workspace, with dates and reminders that keep running when Hermes is idle. If the idea is new to you, start with [what a contract repository is](https://contracko.com/blog/contract-repository-guide).

### Bring the whole pile in

Hermes reads and writes files on the machine it runs on. Point it at a local folder, or a Google Drive, Dropbox or OneDrive folder synced to that machine. For mail, add an email MCP server for your mailbox to the same mcp_servers block, one that can search messages and read attachments.

```
Find every signed contract under ~/Contracts and ~/Dropbox/Clients. Tell me how many files you found and wait for my go-ahead. Then import each one into Contracko, wait until every import has finished, and list any file that failed and why.
```

Hermes uploads each file and checks until the import is done [5]. Contracko reads the document and creates the contract record, matched to a new or existing counterparty. The longer version of this job is in [how to import and organise contracts with MCP](https://contracko.com/blog/extract-contract-data-with-mcp).

### Contracko knows what to extract

Contract tracking only works with the right fields. When a contract comes in, Contracko's AI extracts its key details, such as parties, dates and obligations [4]. The contract record holds fields for renewal and notice terms, annual and total value, liability caps and governing law, filled from that extraction [5]. Contract types can carry their own custom fields, which Contracko can read from the documents of that type [5].

The nuances are where spreadsheets fail. An end date does not tell you whether a contract renews. Contracko records auto-renewal and the renewal period separately, and tracks the termination notice as a period before the end date [3]. The details are in [contract dates and auto-renewals](https://contracko.com/docs/contract-dates).

### Fix types and folders

This is the step people skip. Hand it to the agent:

```
Check every contract imported today. If the contract type is wrong, change it and ask Contracko to read the document again. Then file each contract in the right client, supplier or facilities folder, creating folders where needed, and list the re-reads waiting for my approval.
```

After a type change, a fresh read proposes values for the new type's fields, so a data processing agreement gets processing terms rather than generic ones. You approve which proposals to apply in Contracko, and the saved fields stay as they are until you do [5].

### Reminders and your calendar

Once the dates are in, one message sets reminders across the contract repository:

```
Add a reminder 21 days before the notice deadline of every contract that renews automatically, sent to me and to each contract's owner.
```

The reminders live in Contracko and arrive by email, so they fire even if your Hermes gateway is down that week [5]. More prompts for this job are in [contract renewal reminders with MCP](https://contracko.com/blog/contract-renewal-reminders-with-mcp).

Contracko's [calendar feed](https://contracko.com/features/calendar-integration) puts start, end and notice dates and reminders into Google Calendar, Apple Calendar or Outlook [3]. You subscribe once: open Calendar in Contracko, copy the feed address and add it to your calendar app. The [calendar setup guide](https://contracko.com/docs/calendar-integration) has the steps.

## AI contract analysis for any agreement

Ask about a single agreement and you get a plain answer: what it commits you to, which dates matter, how money moves and what is unusual. Contracko has already analysed the contract, so Hermes answers from that analysis [4]. Because its SOUL.md asks for it, Hermes quotes the sentence behind each point, which you can check against the document in Contracko.

```
Give me the Vantage CRM order form in five lines: term, renewal, notice, price changes and anything unusual.
```

```
Under the Pinecrest data processing agreement, how fast do we have to report a data breach?
```

An illustrative answer to the first prompt, with fictional data:

| Point | What Contracko found | Clause |
| --- | --- | --- |
| Term | 12 months from 1 February, renews yearly | "This Order Form renews automatically for successive one-year terms." |
| Notice | 60 days before renewal, by email | "Customer may cancel by written notice at least 60 days before renewal." |
| Unusual | Seat count can never go down | "Seat quantities may not be reduced during or at the end of a term." |

This is AI to read contracts without pasting them anywhere. The chat-assistant version of the job is in [AI contract review with MCP](https://contracko.com/blog/ai-contract-review-with-mcp).

## AI contract review for risk and obligations

Portfolio-wide AI contract review asks the same questions of every agreement at once: where are we exposed, and what do we owe, to whom and when [4]?

```
Which supplier contracts have uncapped liability, one-sided indemnities or a termination right only for the supplier? Sort them by renewal date.
```

```
What do we owe clients in the next 60 days under our contracts: reports, audits, notices and payments?
```

An illustrative findings table for the second prompt, with fictional data:

| Obligation | Owed to | Due |
| --- | --- | --- |
| Annual security audit report | Pinecrest Clinic | 10 January |
| Updated insurance certificate | Harbour St landlord | 31 January |
| 30 days' notice of any subprocessor change | Pinecrest Clinic | Before the change |

Hermes reads Contracko's risk and obligations analysis per contract and, as its instructions ask, quotes the clause, so you can check the wording before you act. For the wider discipline, see [contract risk management](https://contracko.com/glossary/contract-risk-management).

## Reports your team actually reads

Contracko builds reports from the live data in your account, and they stay current as contracts change [3]. Your Hermes agent can create a report over MCP from a plain request, grouped by counterparty, contract type, status or contract owner, with measures such as annual value [5]. It can also share a report with your workspace or named colleagues once you approve, because new sharing settings replace the old ones [5].

```
Create a Contracko report of all contracts renewing next quarter, grouped by contract owner, with annual value.
```

Whoever opens it next month sees next month's numbers.

## Five workflows to run on cron

Hermes has a built-in cron scheduler. You can create jobs in plain language in chat, with /cron add, or with hermes cron create, and choose where results go: back to the chat they came from, to Telegram or another connected platform, or to a local file [1]. Jobs run inside the Hermes gateway, so keep the gateway running on a machine that stays on. Paste a prompt below into your contract profile and change the paths, times and channels to yours.

Jobs that write to Contracko still follow the Contracko skill, which has the agent confirm bulk changes and their cost before it makes them [2]. So the write jobs below post a plan first and act on your reply. Create them in the chat where you want to answer. Depending on your Hermes version and settings, a reply in the run's thread on Slack or Telegram topics continues the job with full context [1]. If it does not, ask the profile in a new message to carry out the posted plan. Jobs that only read, such as the digest, run straight through.

### Onboard everything once

Run this once on the full archive. It works for household paperwork as well as a company's back catalogue.

```
Find every signed contract under ~/Contracts, ~/Dropbox and ~/Google Drive, and in the attachments in my mailbox. Tell me how many you found and wait for my go-ahead. Then import each one into Contracko that is not already there and wait until every import has finished. Check each contract type; fix any that are wrong and ask Contracko to read those documents again. File each contract in a folder per client, supplier or household category. Then send me a summary: how many you imported, what you filed where, which re-reads wait for my approval, and anything you could not import.
```

### Watch a folder for new contracts

```
Create a cron job that runs every weekday at 07:00. Check ~/Dropbox/Signed agreements for files added since the last run and post the list, with the contract type you expect for each. When I reply to confirm, import each file into Contracko, wait for the import to finish, check the contract type and file it in the right folder. If there are no new files, post "No new files".
```

### Catch signed contracts in your inbox

Hermes's own email gateway receives mail sent to the agent; it does not search your existing mailbox [1]. So first add an email MCP server for your mailbox to the profile's mcp_servers, and check in its documentation that it can search past messages and download attachments. The first run audits the mailbox. After that, the job looks for signed agreements that arrive as attachments and enriches the counterparty from the email thread.

```
First, search my mailbox for emails with a signed contract attached. List them and wait for my go-ahead, then import each confirmed contract into Contracko that is not already there. Then create a cron job that runs every day at 18:00, finds signed contracts attached to mail received since the last run and posts the list. When I confirm, import them, and add the counterparty's contact person, email address and role from the email to the counterparty in Contracko.
```

### Get a weekly deadline digest

```
Create a cron job for every Monday at 08:00. List every contract with a notice deadline or end date in the next 60 days, with the date and the decision I need to make. Add any contract imported last week that has no end date or no contract type. Deliver it to Telegram.
```

### Share reports with your team

Connect Slack to the contract profile's gateway first. Hermes cron delivers to your Slack home channel, or to a channel by its Slack identifier (ID) [1].

```
Create a Contracko report of all contracts renewing in the next quarter, grouped by contract owner, with annual value. Then create a cron job for the first weekday of each month at 09:00 that posts to Slack the contracts renewing next month, with each one's owner and annual value, and the name of the report in Contracko.
```

Run each job once by hand and check the result in Contracko.

## What your agent can and cannot do

Hermes acts as you, inside the workspace you chose when you signed in, and can never open a contract you cannot open yourself [4]. Records it creates or updates appear in Contracko's activity history, labelled as coming from MCP [4]. Sharing works differently. With your approval, the agent can share a report with colleagues. It can also create a time-limited contract share link that anyone holding it can use, if you can manage that contract and your plan includes sharing [5]. A report share link made in the Contracko app also shows the report to anyone with the link [3].

It cannot delete your contracts. The Contracko MCP server has no tool to delete a contract, a document, a folder, a counterparty or a contract type; that happens only in the Contracko app [5]. What it can remove is limited to custom dates, reminders, reports, report blocks and contract share links, the last three only after your approval [5]. It can also edit contract details, take a contract out of a folder and change a contract type's list of custom fields, so ask it to show you a type change before it saves one.

You can disconnect Hermes at any time in Contracko under Settings, then Integrations, then MCP Connections. The [MCP server documentation](https://contracko.com/docs/mcp-server) covers the rest, including application programming interface (API) keys for setups that cannot use a browser sign-in [3].

One caveat is specific to Hermes. You host it, so the Contracko sign-in token sits on the machine that runs Hermes, next to whatever files the agent can read [1]. Treat that machine like anywhere else that holds a key to your contracts.

Contracko does not train models on your contracts [4]. Hermes sends contract text to whichever model provider you configure, so check that provider's data terms and turn off model training there where the provider offers it, before you connect real contracts [4].

## Why a connection beats pasting

An agent with no connection knows only the documents it was last given, and cannot tell a signed amendment from an old draft. Through Hermes MCP and Contracko, it works from the current records, dates and analysis every time. So a Monday cron job reports on today's portfolio.

## Frequently asked questions

How do I connect Hermes Agent to a contract management MCP server?

Paste Contracko's setup prompt into your contract profile. Hermes installs the package, asks before it adds the Contracko MCP server to config.yaml, and starts the sign-in. On a server without a browser, Hermes walks you through the sign-in over SSH. No code is needed, though you should be comfortable installing Hermes and editing a config file.

Do I need a particular plan or region?

No particular Contracko plan: every plan includes the MCP server at no extra cost [4]. Hermes has no plan of its own and runs on whatever machine you host it on, so model and hosting costs depend on your setup [1].

One agent or several?

One contract profile per Contracko workspace keeps it simple, because each sign-in connects to the workspace you pick [4]. Profiles are separate agents, so your other Hermes work keeps its own memory and instructions [1].

How do businesses track contract renewal dates automatically?

They keep every contract in a contract repository that knows each renewal and notice date, and let reminders do the remembering. With Hermes and Contracko, the agent imports the contracts, Contracko extracts the dates, the agent sets reminders in Contracko, and a weekly cron job tells you what is coming up.

Can I try free AI contract review before setting up the agent?

Yes. Contracko's [free AI contract review](https://contracko.com/tools/contract-review) tool checks a single document. It is separate from the agent, which works inside your Contracko account.

Is my contract data used to train AI models?

Not by Contracko [4]. On the Hermes side, it depends on the model provider you choose, so check its terms and turn off training where you can.

## Sources

[1] Nous Research. Hermes Agent repository and documentation (licence, model providers, profiles, MCP sign-in, skills, cron and the email gateway). github.com/NousResearch/hermes-agent and hermes-agent.nousresearch.com/docs

[2] Contracko. Skills library with the Hermes package, setup steps, consent screen and skill rules. github.com/contracko/contracko-skills

[3] Contracko. Help docs on the MCP server, reports, contract dates and the calendar feed. contracko.com/docs

[4] Contracko. Contract management MCP server and contract AI pages (access, activity history, plans, extraction and data use). contracko.com/mcp/contract-management and contracko.com/features/contract-ai

[5] Contracko. Tool descriptions published by the live Contracko MCP server (imports, re-reads, reminders, reports, sharing and approvals). app.contracko.com/mcp

## Get started with Contracko

Take the hassle out of contract management. Contracko empowers you to stay organized, on time, and in control. Start simplifying today.

[Start 7-day free trial](https://app.contracko.com/register?appLanguage=en)

Book demo
