AegisMCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AegisMCPanalyze the risk note in Q3_2024.pdf"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AegisMCP
Local financial PDF risk notes — behind a default-deny MCP tool gateway.
Quickstart · What you get · Architecture · Use case · Docs
Disclaimer: Analyst assistant / research automation only. Not a certified audit opinion, regulatory filing, or legal advice. Human review required.
Why this exists
Most “finance agent” demos are thin wrappers around cloud APIs. That is a non-starter for board packs, M&A drafts, or internal MD&A.
AegisMCP is built for the opposite constraint:
Principle | What it means here |
Local by default | No cloud tools in the default path; OpenAI-compatible localhost inference |
Default-deny tools | PDF / SQLite only; roles cannot call what they are not allowlisted for |
Typed last mile | Pydantic |
Honest claims | Defense-in-depth gateway — not “absolute Zero-Trust” or “CVE eliminated” |
Primary target: Apple Silicon (16GB-class) via Rapid-MLX. Any OpenAI-compatible server (Ollama, vLLM, …) works by changing .env.
Related MCP server: Loki Mode
What ships today (Phases 0–4)
Capability | Status |
CLI golden path: PDF → | Done |
Heuristic mode (no LLM required) | Done |
LLM mode (Rapid-MLX / Ollama / OpenAI-compat) | Done |
Local PDF + read-only SQLite MCP tools | Done |
Default-deny role allowlists + path sandbox | Done |
FastMCP HTTP with explicit Host/Origin protection | Done |
LangGraph orchestration (ingest → extract → compliance → synthesize) | Done |
12-case golden eval (CI-safe, no Apple Silicon needed) | Done |
Optional local traces ( | Done |
Optional Langfuse Docker profile | Done (off by default) |
Product web UI / audit dashboard | Not in scope (deferred) |
Static marketing landing + launch VALIDATE | Phase 5 |
make setup && make demo && make eval && make checkQuickstart
Requirements: Python 3.11+, uv, macOS recommended for Rapid-MLX (optional).
git clone https://github.com/BennedictQuanTon/AegisMCP.git
cd AegisMCP
make setupRun without an LLM (fastest proof)
make demo # uses fixtures/pdfs/sample_fy2024_mdna.pdf
make eval # 12 golden cases
make check # ruff + mypy + pytestOpen the report:
ls outputs/*/report.mdRun with a local LLM
# Terminal A — one model only on 16GB machines
rapid-mlx serve qwen3.5-4b-4bit --port 8000
# Terminal B
cp -n .env.example .env
make doctor
make llm-smoke
make demo-llmOllama instead of Rapid-MLX — same code, different .env:
OPENAI_BASE_URL=http://localhost:11434/v1
OPENAI_API_KEY=ollama
OPENAI_MODEL=<your-tag>Run on your own PDF
cp /path/to/private.pdf ./fixtures/pdfs/
uv run aegis-mcp run fixtures/pdfs/private.pdf --mode heuristic
# or: --mode llmPaths must stay under AEGIS_WORKSPACE_ROOT (sandbox).
What you get
Input
One or more local PDFs
Mode:
heuristic(deterministic / CI) orllm(local model)
Output
outputs/<run_id>/
report.json # typed RiskReport (schema_version 1.0)
report.md # human-readable risk notes
chunks.json # optional debug
trace.json # if AEGIS_TRACE_ENABLED=truereport.md includes overall risk, executive summary, findings with page-level evidence quotes, compliance checklist results, extracted metrics, limitations, and the analyst disclaimer.
Use case
Scenario: You have a synthetic FY2024 MD&A PDF and want structured risk notes without uploading it anywhere.
uv run aegis-mcp run fixtures/pdfs/sample_fy2024_mdna.pdf --mode heuristicExample | |
In | Local PDF mentioning revenue, gross margin, liquidity, related-party, debt covenants |
Out |
|
That is a draft for a human analyst — not an audit sign-off.
Architecture
CLI
└─ LangGraph (ingest → condense → extract → compliance → synthesize)
├─ OpenAI-compat client → Rapid-MLX / Ollama / vLLM (localhost)
└─ DefaultDenyGateway
├─ pdf.* (sandboxed)
└─ sqlite.* (read-only checklist / run metadata)flowchart LR
user[CLI] --> lg[LangGraph]
lg --> llm[OpenAI_Compat_Local]
lg --> gw[DefaultDeny_Gateway]
gw --> pdf[PDF_MCP]
gw --> db[SQLite_MCP]
lg --> out[RiskReport_JSON_MD]Security posture (accurate wording):
Default deny + role allowlists
Typed tool arguments
Workspace path sandbox
No shell/exec / cloud scrape tools in v1
FastMCP Host/Origin protection explicitly enabled on HTTP serve
Useful commands
Command | Purpose |
| Fixture PDF → report (heuristic) |
| Same path via local LLM |
| 12 golden evaluation cases |
| Lint, types, tests |
| Config + optional LLM ping |
| Seed local SQLite checklist |
| Call tools through the gateway |
| Write |
Gateway deny example (should fail):
uv run aegis-mcp mcp call pdf.extract_meta --role synthesis --path fixtures/pdfs/sample_fy2024_mdna.pdfRepository layout
src/aegis_mcp/ # CLI, graph, agents, schemas, LLM, MCP gateway, eval, obs
tests/ # unit + integration
fixtures/ # sample PDF, checklist, golden eval cases
docs/ # inference, MCP, evaluation, observability
docker/ # optional Langfuse (--profile obs)
Makefile
pyproject.tomlDocumentation
Doc | Topic |
Rapid-MLX / OpenAI-compat setup & 16GB RAM envelope | |
Tool gateway, roles, FastMCP serve | |
Golden suite + optional DeepEval | |
Local traces + optional Langfuse |
Roadmap snapshot
Done: Phases 0–4 (scaffold, inference contract, MCP gateway, orchestration MVP, obs + eval)
Next (Phase 5): OSS ship surface — architecture visuals, static docs landing, demo recording, contributor issues, pre-launch VALIDATE checklist
Explicitly deferred: product audit dashboard UI, dual-model hot-swap, cloud tools, huge DeepEval CI on GitHub-hosted runners
License
MIT © Long Quan (Bennedict) Ton
Disclaimer (again, on purpose)
AegisMCP helps you draft structured risk notes from local PDFs. It does not produce certified audit opinions, regulatory filings, or legal advice. Always review outputs before any professional use.
This server cannot be deployed
Maintenance
Related MCP Connectors
AgentGuard — 20-tool AI safety MCP: policy preflight, risk scoring, audit logging, rate limits.
Zero-secret MCP gateway for AI agents: risk-scored, audited calls with human-in-the-loop approval.
Generate PDFs from templates via AI chat. Works with Claude, ChatGPT, Cursor, and any MCP client.
Generate PDF reports from Re:port Flow templates via Claude and other AI agents.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceQuantitative governance gate for AI agents. Six gates (risk, profit, novelty, complexity, quality, utility) return PROCEED/PAUSE/HALT/ESCALATE with confidence scores and hash-chained, tamper-evident audit trails. Generates NIST AI RMF and EU AI Act Annex IV artifacts. 10 MCP tools; local stdio and hosted Streamable HTTP with a free tier.MIT
- AlicenseNot gradedqualityAmaintenanceAutonomous spec-to-product coding-agent CLI. Its MCP server exposes 34 tools over stdio: project state and task-queue ops, memory retrieve/store, code search, quality and verification reports, repo hotspots/co-changes, and structured findings/learnings.4,923 npm1,059Business Source 1.1
- FlicenseNot gradedqualityBmaintenanceTurns financial documents into AI-generated investment briefs by exposing banking tools like search financials, compare companies, and risk flagging as an MCP server, allowing an LLM agent to discover and use them dynamically.3-
- AlicenseNot gradedqualityBmaintenanceA local-first MCP server for building and querying PDF knowledge bases. It indexes PDFs into DuckDB and exposes evidence-grounded retrieval tools to separate corpus-backed answers from independent reasoning.13 npm3MIT