Contract Template
>
MCP get_skill({ skillId: "contract-template-skill-e1419cc1" })Use this skill with your agent
Create a free account and connect via MCP
# Contract Template Skill
## Overview
This skill enables creation of smart contract templates using **Accord Project** - an open-source framework for legally enforceable, machine-readable contracts. Create templates with embedded logic that can automate contract execution.
## How to Use
1. Describe the contract type and terms
2. Specify variables and logic rules
3. I'll generate Accord Project template
**Example prompts:**
- "Create an NDA template with variable terms"
- "Build a service agreement with payment milestones"
- "Generate a rental agreement template"
- "Design a consulting contract with termination clauses"
## Domain Knowledge
### Template Structure
```
contract-template/
├── package.json # Metadata
├── grammar/
│ └── template.tem.md # Natural language template
├── model/
│ └── model.cto # Data model
├── logic/
│ └── logic.ergo # Business logic
└── text/
└── sample.md # Sample contract
```
### Template Syntax (TemplateMark)
```markdown
# Service Agreement
This Agreement is made between [{supplier}] ("Supplier")
and [{buyer}] ("Buyer").
## Services
The Supplier agrees to provide [{serviceDescription}].
## Payment
The Buyer shall pay [{paymentAmount}] within
[{paymentDays}] days of invoice.
## Term
This Agreement begins on [{startDate as "MMMM DD, YYYY"}]
and continues for [{termMonths}] months.
{{#if latePenalty}}
## Late Payment
A penalty of [{penaltyPercent}]% applies to late payments.
{{/if}}
```
### Data Model (Concerto)
```cto
namespace org.example.service
import org.accordproject.time.*
asset ServiceAgreement extends Contract {
o String supplier
o String buyer
o String serviceDescription
o Double paymentAmount
o Integer paymentDays
o DateTime startDate
o Integer termMonths
o Boolean latePenalty optional
o Double penaltyPercent optional
}
transaction PaymentRequest {
o Double amount
o DateTime dueDate
}
transaction PaymentResponse {
o Double amount
o Double penalty
o DateTime paymentDue
}
```
### Business Logic (Ergo)
```ergo
namespace org.example.service
import org.accordproject.time.*
contract ServiceContract over ServiceAgreement {
clause payment(request : PaymentRequest) : PaymentResponse {
let dueDate = addDuration(request.dueDate,
Duration{ amount: contract.paymentDays, unit: ~org.accordproject.time.TemporalUnit.days });
let penalty =
if contract.latePenalty
then request.amount * contract.penaltyPercent / 100.0
else 0.0;
return PaymentResponse{
amount: request.amount,
penalty: penalty,
paymentDue: dueDate
}
}
}
```
### Using Cicero CLI
```bash
# Install
npm install -g @accordproject/cicero-cli
# Parse contract
cicero parse --template ./contract-template --sample ./text/sample.md
# Execute logic
cicero trigger --template ./contract-template \
--sample ./text/sample.md \
--request ./request.json
# Draft new contract
cicero draft --template ./contract-template --data ./data.json
```
## Example: NDA Template
### template.tem.md
```markdown
# Non-Disclosure Agreement
This Non-Disclosure Agreement ("Agreement") is entered into
as of [{effectiveDate as "MMMM DD, YYYY"}] by and between:
**Disclosing Party:** [{disclosingParty}]
**Receiving Party:** [{receivingParty}]
## 1. Confidential Information
"Confidential Information" means all non-public information
disclosed by the Disclosing Party, including but not limited to:
[{confidentialScope}].
## 2. Obligations
The Receiving Party agrees to:
- Maintain confidentiality for [{termYears}] years
- Use information only for [{permittedPurpose}]
- Not disclose to third parties without written consent
## 3. Exclusions
This Agreement does not apply to information that:
{{#if hasExclusions}}
[{exclusions}]
{{else}}
- Is or becomes publicly available
- Was known prior to disclosure
- Is independently developed
{{/if}}
## 4. Return of Materials
Upon termination, the Receiving Party shall return or destroy
all Confidential Information within [{returnDays}] days.
## 5. Remedies
{{#if monetaryPenalty}}
Breach of this Agreement shall result in liquidated damages
of [{penaltyAmount}].
{{else}}
The Disclosing Party shall be entitled to seek injunctive relief.
{{/if}}
**SIGNATURES**
Disclosing Party: ____________________
Date: ____________________
Receiving Party: ____________________
Date: ____________________
```
### data.json
```json
{
"effectiveDate": "2024-01-15",
"disclosingParty": "Tech Corp",
"receivingParty": "Consultant LLC",
"confidentialScope": "trade secrets, customer lists, and technical specifications",
"termYears": 3,
"permittedPurpose": "evaluating a potential business relationship",
"hasExclusions": false,
"returnDays": 30,
"monetaryPenalty": true,
"penaltyAmount": "$50,000"
}
```
## Resources
- [Accord Project](https://accordproject.org/)
- [GitHub Organization](https://github.com/accordproject)
- [Template Library](https://templates.accordproject.org/)Related Skills
More skills in Presentations & Documents
AI Slides
Generate complete presentations with AI - from outline to polished slides
Analyzing Malicious PDF With Peepdf
Perform static analysis of malicious PDF documents using peepdf, pdfid, and pdf-parser to extract embedded JavaScript, shellcode, and suspicious objects.
Analyzing PDF Malware With Pdfid
Analyzes malicious PDF files using PDFiD, pdf-parser, and peepdf to identify embedded JavaScript, shellcode, exploits, and suspicious objects without opening the document. Determines the attack vector and extracts embedded payloads for further analysis. Activates for requests involving PDF malware analysis, malicious document analysis, PDF exploit investigation, or suspicious attachment triage.
Apple Reminders
Apple Reminders via remindctl: add, list, complete.
Batch Convert
Batch convert documents between multiple formats using a unified pipeline
Board Deck Builder
Assembles comprehensive board and investor update decks by pulling perspectives from all C-suite roles. Use when preparing board meetings, investor updates, quarterly business reviews, or fundraising narratives. Covers structure, narrative framework, bad news delivery, and common mistakes.
Explore Other Categories
Skills from other categories with shared topics
Academic Search
Search and analyze academic literature. Find papers, understand research methodologies, and synthesize academic findings for research projects.
Ads Copywriter
Multi-platform ad copy generation for Google Ads, Meta/Facebook, TikTok, LinkedIn with A/B testing variants
AI Agent Builder
Build AI agents with tools, memory, and multi-step reasoning - ChatGPT, Claude, Gemini integration patterns