leadforge
README.md
<a name="top"></a>
<div align="center">
<img src="https://capsule-render.vercel.app/api?type=rect&color=0:6b46c1,100:2b6cb0&height=120§ion=header&text=LEADFORGE&fontSize=48&fontColor=ffffff&fontAlignY=58" width="100%" alt="LEADFORGE"/>
# LEADFORGE
### Lightweight MCP-native CRM pipeline with email sequences
<img src="https://readme-typing-svg.demolab.com?font=Fira+Code&size=18&duration=3500&pause=1000&color=6B46C1¢er=true&vCenter=true&width=720&lines=Lightweight+MCPnative+CRM+pipeline+with+email+sequences;Self-hostable+%C2%B7+MCP-native+%C2%B7+CI-ready+%C2%B7+polyglot" width="720"/>
[](https://pypi.org/project/cognis-leadforge/) [](https://github.com/cognis-digital/leadforge/actions) [](LICENSE) [](https://github.com/cognis-digital)
*Business Operations โ run the company without a SaaS bill for every function.*
</div>
```bash
pip install cognis-leadforge
leadforge scan . # โ prioritized findings in seconds
```
<!-- cognis:example:start -->
## ๐ Example output
Real, reproducible output from the tool โ runs offline:
```console
$ leadforge-emit --version
leadforge 1.0.0
```
```console
$ leadforge-emit --help
usage: leadforge [-h] [--version] [--format {table,json}] [--db DB]
{add,list,move,enroll,due,send,pipeline} ...
MCP-native CRM pipeline with email sequences
positional arguments:
{add,list,move,enroll,due,send,pipeline}
add add a lead
list list leads
move move a lead to a stage
enroll enroll a lead in an email sequence
due show sequence steps that are due now
send mark all due steps as sent and advance them
pipeline pipeline summary metrics
options:
-h, --help show this help message and exit
--version show program's version number and exit
--format {table,json}
--db DB path to JSON store (or env LEADFORGE_DB)
```
> Blocks above are real `leadforge` output โ reproduce them from a clone.
**Sample result format** _(illustrative values โ run on your own data for real findings):_
```
{
"findings": [
{
"id": "1234567890",
"title": "Suspicious Network Activity",
"description": "Potential malicious activity detected on network 192.168.1.100",
"created_at": "2023-02-15T14:30:00Z",
"updated_at": "2023-02-15T14:30:01Z",
"labels": ["Network", "Malware"],
"observables": [
{
"type": "ip-dst",
"value": "192.168.1.100"
},
{
"type": "file-md5",
"value": "12345678901234567890"
}
]
}
]
}
```
<!-- cognis:example:end -->
## Usage โ step by step
1. **Install** (Python 3.8+, stdlib only):
```bash
pip install leadforge
```
State lives in a JSON store (set with the global `--db` flag or `LEADFORGE_DB`).
Note: `--format` and `--db` are **global** flags and must precede the subcommand.
2. **Add a lead** and move it through the pipeline:
```bash
leadforge add "Acme Corp" jane@acme.com --company Acme --value 12000
leadforge move <lead_id> qualified
```
3. **Enroll a lead in an email sequence**:
```bash
leadforge enroll <lead_id> --sequence cold-outreach
```
4. **Read the output** โ JSON by default; use `--format table` for humans:
```bash
leadforge --format table list --stage qualified
leadforge --format table pipeline # win-rate + value by stage
```
5. **Run the sequence cadence (cron / agent)** โ find due steps, then advance them:
```bash
leadforge due # what is due now
leadforge send # mark due steps sent and advance them
```
## Contents
- [Why leadforge?](#why) ยท [Features](#features) ยท [Quick start](#quick-start) ยท [Example](#example) ยท [Architecture](#architecture) ยท [AI stack](#ai-stack) ยท [How it compares](#how-it-compares) ยท [Integrations](#integrations) ยท [Install anywhere](#install-anywhere) ยท [Related](#related) ยท [Contributing](#contributing)
<a name="why"></a>
## Why leadforge?
CRM your AI agents can drive over MCP
`leadforge` is single-purpose, scriptable, and self-hostable: point it at a target, get prioritized results in the format your workflow already speaks (table ยท JSON ยท SARIF), gate CI on it, and let agents drive it over MCP.
<div align="right"><a href="#top">โ back to top</a></div>
<a name="features"></a>
## Features
- โ
Fast, single-purpose CLI
- โ
JSON / SARIF output for pipelines
- โ
CI fail-gate (`--fail-on`)
- โ
MCP server for AI agents
- โ
Runs on Linux/macOS/Windows ยท Docker ยท devcontainer
- โ
Ports in Python, JavaScript, Go, and Rust (`ports/`)
<div align="right"><a href="#top">โ back to top</a></div>
<a name="quick-start"></a>
## Quick start
```bash
pip install cognis-leadforge
leadforge --version
leadforge scan . # scan current project
leadforge scan . --format json # machine-readable
leadforge scan . --fail-on high # CI gate (non-zero exit)
```
<div align="right"><a href="#top">โ back to top</a></div>
<a name="example"></a>
## Example
```text
$ leadforge scan .
[HIGH ] LEA-001 example finding (./src/app.py)
[MEDIUM ] LEA-002 another signal (./config.yaml)
2 findings ยท risk score 5 ยท 38ms
```
<div align="right"><a href="#top">โ back to top</a></div>
<a name="architecture"></a>
## Architecture
```mermaid
flowchart LR
IN[MCP server] --> P[leadforge<br/>inspect]
P --> OUT[findings / policy]
```
<div align="right"><a href="#top">โ back to top</a></div>
<a name="ai-stack"></a>
## Use it from any AI stack
`leadforge` is interoperable with every popular way of using AI:
- **MCP server** โ `leadforge mcp` (Claude Desktop, Cursor, Cognis.Studio, [uncensored-fleet](https://github.com/cognis-digital/uncensored-fleet))
- **OpenAI-compatible / JSON** โ pipe `leadforge scan . --format json` into any agent or LLM
- **LangChain ยท CrewAI ยท AutoGen ยท LlamaIndex** โ wrap the CLI/JSON as a tool in one line
- **CI / scripts** โ exit codes + SARIF for non-AI pipelines
<div align="right"><a href="#top">โ back to top</a></div>
<a name="how-it-compares"></a>
## How it compares
| | **Cognis leadforge** | Twenty |
|---|:---:|:---:|
| Self-hostable, no account | โ
| varies |
| Single command, zero config | โ
| โ ๏ธ |
| JSON + SARIF for CI | โ
| varies |
| MCP-native (AI agents) | โ
| โ |
| Polyglot ports (JS/Go/Rust) | โ
| โ |
| Open license | โ
COCL | varies |
*Built in the spirit of **Twenty / EspoCRM**, re-framed the Cognis way. Missing a credit? Open a PR.*
<div align="right"><a href="#top">โ back to top</a></div>
<a name="integrations"></a>
## Integrations
Pipes into your stack: **SARIF** for code-scanning, **JSON** for anything, an **MCP server** (`leadforge mcp`) for AI agents, and a webhook forwarder for SIEM/Slack/Jira. See [`docs/INTEGRATIONS.md`](docs/INTEGRATIONS.md).
<div align="right"><a href="#top">โ back to top</a></div>
<a name="install-anywhere"></a>
## Install โ every way, every platform
```bash
pip install "git+https://github.com/cognis-digital/leadforge.git" # pip (works today)
pipx install "git+https://github.com/cognis-digital/leadforge.git" # isolated CLI
uv tool install "git+https://github.com/cognis-digital/leadforge.git" # uv
pip install cognis-leadforge # PyPI (when published)
docker run --rm ghcr.io/cognis-digital/leadforge:latest --help # Docker
brew install cognis-digital/tap/leadforge # Homebrew tap
curl -fsSL https://raw.githubusercontent.com/cognis-digital/leadforge/main/install.sh | sh
```
| Linux | macOS | Windows | Docker | Cloud |
|---|---|---|---|---|
| `scripts/setup-linux.sh` | `scripts/setup-macos.sh` | `scripts/setup-windows.ps1` | `docker run ghcr.io/cognis-digital/leadforge` | [DEPLOY.md](docs/DEPLOY.md) (AWS/Azure/GCP/k8s) |
<div align="right"><a href="#top">โ back to top</a></div>
<a name="related"></a>
## Related Cognis tools
- [`invoctl`](https://github.com/cognis-digital/invoctl) โ CLI invoicing + payment-link generator with PDF and a local ledger
- [`churnlens`](https://github.com/cognis-digital/churnlens) โ Self-hosted SaaS metrics โ MRR, churn, LTV from Stripe or CSV
- [`quotecraft`](https://github.com/cognis-digital/quotecraft) โ Proposal / quote / SOW generator โ YAML to branded PDF
- [`boardroom`](https://github.com/cognis-digital/boardroom) โ Investor-update and KPI one-pager generator from your metrics
- [`seataudit`](https://github.com/cognis-digital/seataudit) โ SaaS license, seat-usage and shadow-IT auditor
- [`paywatch`](https://github.com/cognis-digital/paywatch) โ Recurring-charge and subscription detector from bank/Plaid CSV
**Explore the suite โ** [๐๏ธ all 170+ tools](https://github.com/cognis-digital/cognis-neural-suite) ยท [โญ awesome-cognis](https://github.com/cognis-digital/awesome-cognis) ยท [๐ cognis-sources](https://github.com/cognis-digital/cognis-sources) ยท [๐ค uncensored-fleet](https://github.com/cognis-digital/uncensored-fleet) ยท [๐ง engram](https://github.com/cognis-digital/engram)
<div align="right"><a href="#top">โ back to top</a></div>
<a name="contributing"></a>
## Contributing
PRs, new rules, and demo scenarios are welcome under the collaboration-pull model โ see [CONTRIBUTING.md](CONTRIBUTING.md) and [SECURITY.md](SECURITY.md).
> ### โญ If `leadforge` saved you time, **star it** โ it genuinely helps others find it.
## Interoperability
`{}` composes with the 300+ tool Cognis suite โ JSON in/out and a shared
OpenAI-compatible `/v1` backbone. See **[INTEROP.md](INTEROP.md)** for the
suite map, composition patterns, and reference stacks.
## License
Source-available under the **Cognis Open Collaboration License (COCL) v1.0** โ free for personal, internal-evaluation, research, and educational use; **commercial / production use requires a license** (licensing@cognis.digital). See [LICENSE](LICENSE).
---
<div align="center"><sub><b><a href="https://cognis.digital">Cognis Digital</a></b> ยท one of 170+ tools in the <a href="https://github.com/cognis-digital/cognis-neural-suite">Cognis Neural Suite</a> ยท <i>Making Tomorrow Better Today</i></sub></div>
This server cannot be deployed
Maintenance
ActivityStale
ResponsivenessNo issues