MCP server for Autodesk Flame — clip control, timelines, and effects with RAG search, anti-hallucination safety, and self-learning
Drift inferred · capture-to-capture
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution ×3 in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution ×3 in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution ×3 in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution ×3 in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution ×3 in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution ×3 in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution ×3 in abrahamADSK/flame-mcp
- HIGH code analysis flagged dynamic code execution ×4 in abrahamADSK/flame-mcp
transport stdio counts 33 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
collect_media_paths
-
create_sequence
-
execute_plan
-
execute_python
-
export_clip
-
flame_wiretap_tree
-
fpt_link
-
get_clip_metadata
-
get_flame_version
-
get_project_info
-
get_selected_clips
-
get_source_path
-
get_write_node_settings
-
learn_pattern
-
list_all_projects
-
list_batch_groups
-
list_clips
-
list_desktop_reels
-
list_flame_logs
-
list_libraries
-
list_reels
-
operation_history
-
ping
-
read_flame_log
-
rename_segments
-
render_batch
-
reset_session_stats
-
resolve_concept
-
search_flame_docs
-
session_stats
-
timeline_insert
-
timeline_overwrite
-
undo_last_operation
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 659283f · analyzer v33 · 2w ago
skills & prompt files 1
- agent-rules abrahamADSK-flame-mcp-659283f/CLAUDE.md
danger signals4
- dynamic code execution eval()/exec() abrahamADSK-flame-mcp-659283f/hooks/flame_mcp_bridge.py :608
exec(compile(code, '<flame_mcp>', 'exec'), local_ns) - dynamic code execution __import__() abrahamADSK-flame-mcp-659283f/scripts/wiretap_sdk_smoke.py :145
WT = __import__(MODULE_NAME) - dynamic code execution __import__ sink abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :4203
__import__('os').path.getmtime(__file__) - dynamic code execution eval()/exec() abrahamADSK-flame-mcp-659283f/tests/test_plan_schema.py :574
exec(compile(code, "fix", "exec"), {"__name__": "__main__"})
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 75
filesystem 40
- fs abrahamADSK-flame-mcp-659283f/hooks/flame_mcp_bridge.py :361
with open(CRASH_RECOVERY_FILE) as f: - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/check_adversarial_count.py :33
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/extract_patterns.py :20
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/fetch_github_patterns.py :27
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/fetch_transcripts.py :21
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/generate_settings.py :17
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/graphify/graphify_ast_build.py :15
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/graphify/graphify_autolabel.py :18
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/introspect_flame_api.py :77
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/invariant_types.py :37
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/scripts/verify_concepts.py :50
from pathlib import Path - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/_ast_validate.py :73
from pathlib import Path - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/_config.py :88
with open(config_path) as f: - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/_readonly.py :23
from pathlib import Path - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/_session_stats.py :68
from pathlib import Path - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/concept_map.py :273
"api_path": "seq.open()", - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/journal.py :176
" with open(result_file, 'w') as f:\n" - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/rag/build_index.py :270
with open(doc_path, 'r', encoding='utf-8') as f: - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/rag/search.py :58
os.remove(rotated) - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/rag/validate_index.py :26
from pathlib import Path - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/routing.py :52
from pathlib import Path - fs abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :24
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/conftest.py :453
with open(rag_corpus_json, "r", encoding="utf-8") as f: - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_ast_validate.py :25
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_bridge_connect.py :26
import shutil - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_concept_map.py :600
"""bg.open() is a silent no-op on Flame 2027 (Chat 98, falsified in-vivo: - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_config.py :18
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_cpp_corruption_sentinel.py :56
with open("hooks/flame_mcp_bridge.py", encoding="utf-8") as fh: - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_effort_config.py :38
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_golden.py :60
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_introspect_flame_api.py :23
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_journal.py :294
code = "os.remove('/path/to/file')" - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_live_optin.py :20
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_markdown_render.py :22
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_plan_schema.py :417
assert "bg.open(" not in fix and "go_to(" not in fix - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_rag_search.py :29
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_routing.py :25
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_session_continuity.py :27
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_session_stats.py :13
from pathlib import Path - fs (weak) abrahamADSK-flame-mcp-659283f/tests/test_tool_permissions.py :20
_SOURCE = open(server.__file__, encoding="utf-8").read()
shell / exec 4
- shell abrahamADSK-flame-mcp-659283f/hooks/flame_mcp_bridge.py :30
import subprocess - shell (weak) abrahamADSK-flame-mcp-659283f/scripts/fetch_transcripts.py :69
import subprocess - shell (weak) abrahamADSK-flame-mcp-659283f/scripts/invariant_types.py :35
import subprocess - shell abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :21
import subprocess
network 5
- net abrahamADSK-flame-mcp-659283f/hooks/flame_mcp_bridge.py :24
import socket - net (weak) abrahamADSK-flame-mcp-659283f/scripts/fetch_github_patterns.py :28
import urllib.request - net abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :16
import socket - net (weak) abrahamADSK-flame-mcp-659283f/tests/test_bridge_connect.py :27
import socket - net (weak) abrahamADSK-flame-mcp-659283f/tests/test_flame_live.py :22
import socket
secrets 2
- secrets (weak) abrahamADSK-flame-mcp-659283f/scripts/extract_patterns.py :147
api_key = os.environ.get("ANTHROPIC_API_KEY") - secrets (weak) abrahamADSK-flame-mcp-659283f/scripts/fetch_github_patterns.py :188
token = os.environ.get("GITHUB_TOKEN")
tool registrations 33
- execute_python abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :720
- get_project_info abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1020
- list_libraries abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1165
- list_reels abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1207
- list_clips abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1245
- list_desktop_reels abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1339
- list_batch_groups abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1374
- list_all_projects abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1455
- get_clip_metadata abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1511
- get_selected_clips abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1563
- flame_wiretap_tree abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1595
- get_flame_version abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1660
- ping abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1671
- search_flame_docs abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1690
- learn_pattern abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1779
- session_stats abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1902
- reset_session_stats abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :1955
- list_flame_logs abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2007
- read_flame_log abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2050
- execute_plan abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2185
- resolve_concept abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2294
- get_source_path abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2356
- rename_segments abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2423
- fpt_link abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2462
- create_sequence abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2522
- render_batch abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2561
- export_clip abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :2688
- timeline_insert abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :3819
- timeline_overwrite abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :3862
- get_write_node_settings abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :3929
- collect_media_paths abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :3956
- operation_history abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :4064
- undo_last_operation abrahamADSK-flame-mcp-659283f/src/flame_mcp/server.py :4083
declared dependencies 5
- mcp@>=1.26.0,<2
- chromadb@>=0.6.0
- sentence-transformers@>=2.7.0
- rank-bm25@>=0.2
- pydantic@>=2.0