Reliability gateway for AI tool output: schema-stable, secret-safe, pagination-complete JSON for MCP and CLI agents.
Drift inferred · capture-to-capture
- HIGH code analysis flagged dynamic code execution ×2 in lourencomaciel/sift-gateway
transport stdio · streamable-http · http counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
no tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 87293b5 · analyzer v18 · 7h ago
skills & prompt files 3
danger signals3
- dynamic code execution__import__()lourencomaciel-sift-gateway-87293b5/src/sift_gateway/codegen/worker_main.py:72
imported = _builtins.__import__(name, globals, locals, fromlist, level) - dynamic code executioneval()/exec()lourencomaciel-sift-gateway-87293b5/src/sift_gateway/codegen/worker_main.py:332
exec(compiled, globals_dict, globals_dict) - over-broad OAuth scopehttps://www.googleapis.com/auth/cloud-platformlourencomaciel-sift-gateway-87293b5/src/sift_gateway/auth/config.py:50
"https://www.googleapis.com/auth/cloud-platform",
evidence-backed
findings quoted directly from the published source artifact — not inferred
filesystem 37
- fs lourencomaciel-sift-gateway-87293b5/scripts/benchmark_large_payloads.py :18
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/scripts/check_docs_consistency.py :18
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/scripts/smoke_cli_behavior.py :11
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/app.py :20
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/artifacts/create.py :15
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/cli/parse.py :9
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/cli_main.py :9
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/codegen/worker_main.py :11
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/init.py :23
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/init_source.py :6
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/mcp_servers.py :25
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/package_install.py :13
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/settings.py :21
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/shared.py :8
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/sync.py :15
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/upstream_add.py :14
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/upstream_admin.py :16
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/upstream_registry.py :13
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/upstream_registry_convert.py :7
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/upstream_registry_repo.py :7
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/upstream_secrets.py :15
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/db/backend.py :14
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/db/migrate.py :6
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/fs/blob_store.py :15
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/fs/resource_store.py :16
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/jobs/hard_delete.py :14
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/jobs/quota.py :16
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/jobs/reconcile_fs.py :14
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/lifecycle.py :20
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/main.py :19
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/mapping/partial.py :689
# root only if the root's array was still open (being - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/mcp/handlers/artifact_blob.py :11
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/mcp/server_helpers.py :10
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/mcp/upstream.py :23
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/openclaw/cli.py :6
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/storage/payload_store.py :15
from pathlib import Path - fs lourencomaciel-sift-gateway-87293b5/src/sift_gateway/tools/status.py :18
from pathlib import Path
shell / exec 6
- shell lourencomaciel-sift-gateway-87293b5/scripts/compare_sift_vs_plain.py :21
import subprocess - shell lourencomaciel-sift-gateway-87293b5/scripts/run_rc_preflight.py :11
import subprocess - shell lourencomaciel-sift-gateway-87293b5/scripts/smoke_cli_behavior.py :14
import subprocess - shell lourencomaciel-sift-gateway-87293b5/src/sift_gateway/cli_main.py :10
import subprocess - shell lourencomaciel-sift-gateway-87293b5/src/sift_gateway/codegen/runtime.py :9
import subprocess - shell lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/package_install.py :14
import subprocess
network 7
- net lourencomaciel-sift-gateway-87293b5/scripts/compare_sift_vs_plain.py :24
import urllib.error - net lourencomaciel-sift-gateway-87293b5/src/sift_gateway/auth/oauth_login.py :8
from urllib.parse import parse_qs, urlparse - net lourencomaciel-sift-gateway-87293b5/src/sift_gateway/codegen/ast_guard.py :187
module_path: Full dotted module path (e.g. ``urllib.request``). - net lourencomaciel-sift-gateway-87293b5/src/sift_gateway/config/upstream_admin.py :20
from urllib.parse import urljoin, urlparse - net lourencomaciel-sift-gateway-87293b5/src/sift_gateway/mcp/upstream.py :592
import httpx - net lourencomaciel-sift-gateway-87293b5/src/sift_gateway/mcp/upstream_errors.py :9
import socket - net lourencomaciel-sift-gateway-87293b5/src/sift_gateway/pagination/discovery.py :24
from urllib.parse import parse_qsl, urlparse
database 3
- db lourencomaciel-sift-gateway-87293b5/src/sift_gateway/db/backend.py :15
import sqlite3 - db lourencomaciel-sift-gateway-87293b5/src/sift_gateway/lifecycle.py :148
import sqlite3 - db lourencomaciel-sift-gateway-87293b5/src/sift_gateway/mcp/handlers/mirrored_tool.py :12
import sqlite3
declared dependencies 4
- fastmcp@>=2.0.0
- pandas@>=2.2.0
- numpy@>=1.26.0
- jmespath@>=1.0.1