Bulge-tier Excel financial model factory — every cell live-formulated, every number traceable
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · http
verified
reported
listed in the official MCP registry counts 25 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
audit_conservation
-
audit_schedule
-
build_model
-
certify
-
compute_tax
-
data_providers_status
-
entity_lookup
-
export_deck
-
export_docx
-
export_pptx
-
fundamentals
-
get_spec_schema
-
history
-
ingest_dataroom
-
lineage_walk
-
list_sources
-
list_templates
-
perturb_replay
-
qc_workbook
-
quote
-
screen_deals
-
search_filings
-
search_securities
-
spec_guide
-
validate_spec
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 3aeef69 · analyzer v33 · 6d ago
skills & prompt files 21
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/classifier_system.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/extractor_system.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_bank_fig.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_credit_memo.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_dcf.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_development_re.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_fairness.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_hgb_carveout.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_ipo.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_loan_tape_securitization.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_merger.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_minibond.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_npl.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_portfolio_review.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_project_finance.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_real_estate.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_restructuring.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_sponsor_lbo.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_structured_credit.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_three_statement.md
- prompt-file Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/prompts/template_unitranche.md
danger signals4
- dynamic code execution __import__() Whatsonyourmind-modelforge-3aeef69/modelforge/templates/dcf.py :32
qc_ws.cell(row=1, column=1, value="QC Checks").font = __import__( - dynamic code execution __import__() Whatsonyourmind-modelforge-3aeef69/tests/test_reverse.py :47
SC = getattr(__import__(spec_module, fromlist=[cls_name]), cls_name) - dynamic code execution __import__() Whatsonyourmind-modelforge-3aeef69/tests/test_risk_sheet.py :119
SC = getattr(__import__(cls_mod, fromlist=[cls_name]), cls_name) - dynamic code execution __import__() Whatsonyourmind-modelforge-3aeef69/tests/test_shadow.py :52
SC = getattr(__import__(mod, fromlist=[name]), name)
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 458
filesystem 151
- fs Whatsonyourmind-modelforge-3aeef69/adversarial_audit.py :7
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/audit_compute.py :45
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/audit_suite.py :25
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/benchmarks/artifacts/agent/build_BM-LBO-001_run2.py :571
# Force Excel/LibreOffice to recalculate on open (openpyxl stores no cache) - fs (weak) Whatsonyourmind-modelforge-3aeef69/benchmarks/harness/ground_truth.py :351
with open(args.out, "w", encoding="utf-8") as fh: - fs (weak) Whatsonyourmind-modelforge-3aeef69/benchmarks/harness/score.py :37
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/gold_standard_audit.py :15
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/hardtest_bank_fig.py :18
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/hardtest_credit_leverage.py :67
with open(SPEC_PATH, "r", encoding="utf-8") as f: - fs Whatsonyourmind-modelforge-3aeef69/hardtest_hgb_carveout.py :55
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/hardtest_lbo_full.py :77
with open(SPEC_PATH, "r", encoding="utf-8") as fh: - fs Whatsonyourmind-modelforge-3aeef69/hardtest_loan_tape_securitization.py :15
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/hardtest_portfolio_review.py :38
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/hardtest_project_finance.py :320
spec = yaml.safe_load(open(SPEC, "rb").read()) - fs Whatsonyourmind-modelforge-3aeef69/hardtest_structured_credit.py :39
spec = yaml.safe_load(open("examples/structured_credit_pmi.yaml")) - fs Whatsonyourmind-modelforge-3aeef69/hardtest_three_statement.py :32
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/analytics/manifest.py :39
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/analytics/monte_carlo.py :54
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/analytics/reproducibility.py :49
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/analytics/risk_sheet.py :29
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/analytics/sensitivity.py :50
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/audit_log.py :33
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/builder/base_workbook.py :16
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/builder/workbook.py :11
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/chat/context.py :18
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/chat/session.py :18
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/cli.py :13
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/collab/comments.py :41
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/collab/diff.py :12
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/deck/adapter.py :36
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/deck/determinism.py :33
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/deck/layout/text_measurer.py :7
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/deck/pipeline.py :21
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/deck/qa/ppteval.py :29
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/deck/rendering/element_renderers/image.py :92
img = Image.open(image_stream) - fs Whatsonyourmind-modelforge-3aeef69/modelforge/deck/rendering/thumbnail.py :11
import shutil - fs Whatsonyourmind-modelforge-3aeef69/modelforge/deck/themes/registry.py :6
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/diff/engine.py :24
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/dossier/generator.py :27
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/drift/watcher.py :17
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/exporters/docx.py :18
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/exporters/pptx.py :28
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/cache.py :26
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/graph/comments.py :27
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/graph/store.py :11
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/classifier.py :11
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/extractor.py :12
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/ocr_backend.py :21
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/pipeline.py :14
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/readers/base.py :16
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/readers/csv_reader.py :11
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/readers/discovery.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/readers/pdf_reader.py :11
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/readers/xlsx_reader.py :9
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/reporter.py :6
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :53
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/moat/gate.py :7
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/moat/sheet.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/oracert/emit.py :12
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/oracert/verify.py :25
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/qc/conservation_audit.py :35
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/qc/perturb_replay.py :36
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/qc/runner.py :19
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/qc/schedule_audit.py :32
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/qc/workbook_audit.py :26
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/reverse/engine.py :35
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/saas/tenant.py :28
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/screening/engine.py :32
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/modelforge/spec/scaffold.py :20
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/__init__.py :14
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/bank_fig.py :21
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/credit_memo.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/dcf.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/development_re.py :19
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/fairness.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/hgb_carveout.py :27
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/ipo.py :15
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/loan_tape_securitization.py :30
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/merger.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/minibond.py :16
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/npl.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/portfolio_review.py :15
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/project_finance.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/real_estate.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/restructuring.py :13
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/sponsor_lbo.py :13
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/structured_credit.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/three_statement.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/templates/unitranche.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/trust/engine.py :5
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/trust/red_flag_sheet.py :9
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/trust/rules.py :6
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/watch/scanner.py :30
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/web/app.py :9
from pathlib import Path - fs Whatsonyourmind-modelforge-3aeef69/modelforge/web/saas_routes.py :19
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/scripts/audit_listed.py :25
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/scripts/generate_sbom.py :34
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/scripts/inspect_workbook.py :3
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/scripts/moat_sweep.py :18
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/stress_test.py :18
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/deck/layout/test_text_measure.py :12
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/deck/qa/test_ppteval.py :16
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/deck/test_adapter_development_re.py :21
import shutil - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/deck/test_adapter_real_estate.py :20
import shutil - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/deck/test_grounding.py :18
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/deck/test_pipeline.py :18
import shutil - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/deck/test_slide_content.py :22
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/fixtures/dataroom_enfinity_synth/_generate.py :13
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/oracert/test_oracert.py :19
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_bank_fig.py :11
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_certify_schedule.py :11
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_chat.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_collab.py :4
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_conservation_audit.py :12
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_debt_rollforward.py :20
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_deck_named_facts.py :13
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_development_re.py :19
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_diff.py :6
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_dossier.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_drift.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_hardtests.py :26
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_ifrs9_pd_bounds.py :29
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_ingest_classifier.py :6
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_ingest_pipeline.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_ingest_readers.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_ingest_wide.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_loan_tape_securitization.py :12
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_manifest.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_mcp_conversational.py :16
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_monte_carlo.py :6
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_ocr.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_perturb_replay.py :11
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_pf_solver.py :134
with open("examples/minibond_logistics.yaml") as _: # existence check - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_portfolio_drift.py :5
import shutil - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_qc_integrity.py :27
import shutil - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_reproducibility.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_reverse.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_risk_cli.py :6
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_risk_sheet.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_roi.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_saas.py :10
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_schedule_audit.py :11
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_screen_cli.py :10
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_sensitivity.py :18
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_shadow.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_trust.py :5
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_v010_foreign_markets.py :15
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_v0111_contextvar_render.py :15
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_v011_quality_lift.py :12
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_watch.py :6
from pathlib import Path - fs (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_web.py :5
from pathlib import Path
shell / exec 12
- shell (weak) Whatsonyourmind-modelforge-3aeef69/benchmarks/harness/score.py :33
import subprocess - shell Whatsonyourmind-modelforge-3aeef69/hardtest_dcf_enterprise.py :24
import subprocess - shell Whatsonyourmind-modelforge-3aeef69/hardtest_development_re.py :62
import subprocess - shell Whatsonyourmind-modelforge-3aeef69/hardtest_npl_portfolio.py :20
import subprocess - shell Whatsonyourmind-modelforge-3aeef69/hardtest_project_finance.py :20
import subprocess - shell Whatsonyourmind-modelforge-3aeef69/hardtest_real_estate.py :31
import subprocess - shell Whatsonyourmind-modelforge-3aeef69/hardtest_structured_credit.py :36
subprocess.run([sys.executable, "-m", "modelforge.cli", "build", - shell Whatsonyourmind-modelforge-3aeef69/hardtest_three_statement.py :23
import subprocess - shell Whatsonyourmind-modelforge-3aeef69/modelforge/deck/rendering/thumbnail.py :12
import subprocess - shell Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/llm.py :17
import subprocess - shell (weak) Whatsonyourmind-modelforge-3aeef69/scripts/generate_sbom.py :29
import subprocess - shell (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_hardtests.py :24
import subprocess
network 22
- net Whatsonyourmind-modelforge-3aeef69/modelforge/audit_log.py :29
import socket - net Whatsonyourmind-modelforge-3aeef69/modelforge/collab/realtime.py :27
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/deck/rendering/element_renderers/image.py :48
import httpx - net Whatsonyourmind-modelforge-3aeef69/modelforge/deck/security/url_guard.py :23
import socket - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/alphavantage.py :22
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/ecb.py :92
import urllib.request - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/edgar.py :26
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/finnhub.py :25
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/fmp.py :24
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/fred.py :23
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/gleif.py :20
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/openfigi.py :24
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/polygon.py :20
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/spcapiq.py :34
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/tiingo.py :20
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/worldbank.py :20
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/yahoo.py :24
import urllib.error - net Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/edgar.py :21
import urllib.error - net (weak) Whatsonyourmind-modelforge-3aeef69/tests/deck/security/test_url_guard.py :9
import socket - net (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_collab_realtime.py :6
import urllib.error - net (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_feeds.py :82
with patch("urllib.request.urlopen", side_effect=ConnectionError("test")): - net (weak) Whatsonyourmind-modelforge-3aeef69/tests/test_feeds_providers.py :164
with patch("urllib.request.urlopen", return_value=_http_mock(payload)):
secrets 16
- secrets Whatsonyourmind-modelforge-3aeef69/modelforge/audit_log.py :23
import getpass - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/chat/session.py :74
api_key = os.environ.get("ANTHROPIC_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/collab/realtime.py :14
jwt_token=os.environ["SUPABASE_JWT_TOKEN"], - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/alphavantage.py :35
key = os.environ.get("ALPHAVANTAGE_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/factset.py :70
key = os.environ.get("FACTSET_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/finnhub.py :46
key = os.environ.get("FINNHUB_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/fmp.py :45
key = os.environ.get("FMP_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/openfigi.py :40
key = api_key or os.environ.get("OPENFIGI_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/polygon.py :41
key = os.environ.get("POLYGON_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/refinitiv.py :66
app_key = os.environ.get("REFINITIV_APP_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/spcapiq.py :56
key = os.environ.get("SPGLOBAL_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/feeds/tiingo.py :40
key = os.environ.get("TIINGO_API_KEY") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/ingest/llm.py :53
if not os.getenv("ANTHROPIC_API_KEY"): - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/saas/auth.py :73
secret = os.environ.get("SUPABASE_JWT_SECRET") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/saas/billing.py :108
actual_secret = secret or os.environ.get("STRIPE_WEBHOOK_SECRET") - secrets Whatsonyourmind-modelforge-3aeef69/modelforge/web/saas_routes.py :117
"supabase_jwt_configured": bool(os.environ.get("SUPABASE_JWT_SECRET")),
database 9
- db Whatsonyourmind-modelforge-3aeef69/modelforge/audit_log.py :28
import sqlite3 - db Whatsonyourmind-modelforge-3aeef69/modelforge/chat/context.py :16
import sqlite3 - db Whatsonyourmind-modelforge-3aeef69/modelforge/cli.py :934
import sqlite3 - db Whatsonyourmind-modelforge-3aeef69/modelforge/collab/comments.py :36
import sqlite3 - db Whatsonyourmind-modelforge-3aeef69/modelforge/dossier/generator.py :24
import sqlite3 - db Whatsonyourmind-modelforge-3aeef69/modelforge/graph/comments.py :23
import sqlite3 - db Whatsonyourmind-modelforge-3aeef69/modelforge/graph/store.py :9
import sqlite3 - db Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :782
import sqlite3, json as _json - db Whatsonyourmind-modelforge-3aeef69/modelforge/saas/tenant.py :23
import sqlite3
tool registrations 25
- list_templates Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :276
- spec_guide Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :297
- get_spec_schema Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :381
- validate_spec Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :412
- certify Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :435
- build_model Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :544
- qc_workbook Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :604
- audit_schedule Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :630
- audit_conservation Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :670
- perturb_replay Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :713
- list_sources Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :758
- lineage_walk Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :801
- ingest_dataroom Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :835
- export_pptx Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :883
- export_deck Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :917
- screen_deals Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1009
- compute_tax Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1054
- export_docx Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1105
- data_providers_status Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1143
- quote Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1164
- history Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1184
- fundamentals Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1212
- search_filings Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1244
- entity_lookup Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1264
- search_securities Whatsonyourmind-modelforge-3aeef69/modelforge/mcp_server.py :1288
declared dependencies 25
- mcp@>=1.12.0,<2
- pydantic@>=2.6
- openpyxl@>=3.1.2
- pyyaml@>=6.0.1
- rich@>=13.7
- click@>=8.1
- formulas@>=1.2.7
- reportlab@>=4.0
- numpy@>=1.26
- requests@>=2.31
- pandas@>=2.2
- anthropic@>=0.89
- pdfplumber@>=0.11
- pypdf@>=5.0
- pytesseract@>=0.3.10
- pdf2image@>=1.17
- Pillow@>=10.0
- fastapi@>=0.100
- uvicorn@>=0.20
- python-multipart@>=0.0.9
- python-pptx@>=1.0
- python-docx@>=1.1
- kiwisolver@>=1.4
- pytest@>=8
- ruff@>=0.3