{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-06T04:06:33.900Z","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql","markdownUrl":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql.md","server":{"slug":"org-lsposed-dexsql","name":"DexSQL","registryName":"org.lsposed/dexsql","description":"SQL for Android APK and DEX files: classes, methods, strings, references and smali.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"dexsql","type":"mcpb","identifier":"https://github.com/LSPosed/dexsql-release/releases/download/v0.1.1/dexsql.mcpb","withdrawn":false,"url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql","version":null,"transport":"stdio","scoredAt":"2026-11-06T00:39:32.482Z"},"score":{"total":39,"tier":"low","status":"scored","weekDelta":3,"history":[{"date":"2026-11-06","total":39},{"date":"2026-11-05","total":39},{"date":"2026-11-04","total":38},{"date":"2026-11-03","total":38},{"date":"2026-11-02","total":37},{"date":"2026-11-01","total":37},{"date":"2026-10-31","total":36},{"date":"2026-10-30","total":36},{"date":"2026-10-29","total":36},{"date":"2026-10-28","total":35},{"date":"2026-10-27","total":35},{"date":"2026-10-26","total":34},{"date":"2026-10-25","total":34},{"date":"2026-10-24","total":33},{"date":"2026-10-23","total":33},{"date":"2026-10-22","total":32},{"date":"2026-10-21","total":32},{"date":"2026-10-20","total":31},{"date":"2026-10-19","total":31},{"date":"2026-10-18","total":30}]},"categories":[{"name":"Supply Chain Security","score":0,"verdict":"unverified","reasons":["No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.","Known CVEs could not be checked: we found no dependency list to check in this bundle: either it runs a compiled binary, whose bundled manifests we do not read, or none of the package.json, requirements.txt, pyproject.toml or uv.lock files it ships for its runtime declares a dependency we can read (a requirements.txt that only points at a setup.py project, a local path, or a nested requirements file we cannot follow counts as none).","Install-script risk not yet assessed.","Dependency health could not be checked: we found no dependency list to check in this bundle: either it runs a compiled binary, whose bundled manifests we do not read, or none of the package.json, requirements.txt, pyproject.toml or uv.lock files it ships for its runtime declares a dependency we can read (a requirements.txt that only points at a setup.py project, a local path, or a nested requirements file we cannot follow counts as none)."],"codes":[{"code":"supplychain.malware_inconclusive","args":{"reason":"ecosystem_unsupported"}},{"code":"cve.inconclusive","args":{"reason":"no_manifest_bundled"}},{"code":"installscript.inconclusive","args":{"reason":"no_install_concept"}},{"code":"dephealth.inconclusive","args":{"reason":"no_manifest_bundled"}}]},{"name":"Provenance & Transparency","score":32,"verdict":"fail","reasons":["Source repository is publicly reachable at the declared URL.","Provenance check failed: no build-provenance attestation is published.","License check failed: the license (LicenseRef-DexSQL-Binary) isn't a recognized OSI-approved license.","Actively maintained (last published 18 days ago).","Disclosure check failed: no security disclosure policy was found in the source repository."],"codes":[{"code":"provenance.repo_verified","args":{}},{"code":"provenance.none","args":{}},{"code":"license.non_osi","args":{"spdx":"LicenseRef-DexSQL-Binary"}},{"code":"maintenance.recent","args":{"age_days":"18"}},{"code":"disclosure.absent","args":{}}]},{"name":"Schema Quality & AI Usability","score":40,"verdict":"fail","reasons":["0% of prompts and resources have a non-trivial description (not blank, and not just the item's name).","AI-judged instruction clarity (good).","Tool/resource definitions use about 2053 tokens (~68/item across 30 items; 12 tools + 18 resources), lean.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.descriptions","args":{"pct":"0"}},{"code":"schema.ai_quality","args":{"band":"good"}},{"code":"schema.footprint_lean","args":{"avg":"68","items":"30","tools":"12","tokens":"2053","resources":"18"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":63,"verdict":"partial","reasons":["Stability observed for 19 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"19"}}]},{"name":"Tool Coverage","score":85,"verdict":"partial","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","46% of tool parameters carry a description.","Structured output schemas are declared (17% of tools); any adoption earns full credit."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"46"}},{"code":"toolquality.output_present","args":{"pct":"17"}}]},{"name":"Tool Safety","score":100,"verdict":"pass","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","We read all 12 captured tool definition(s), and no name or description among them implies an irreversible operation.","An AI judge read all 14 captured unit(s) of tool text and found none that tries to manipulate the model reading it."],"codes":[{"code":"toolsafety.injection_clean","args":{}},{"code":"toolsafety.destructive_none","args":{"tools":"12"}},{"code":"toolsafety.manipulation_clean","args":{"units":"14","judged":"14"}}]},{"name":"Capabilities","score":100,"verdict":"pass","reasons":["Implements a current MCP spec version (2026-07-28)."],"codes":[{"code":"protocol.current","args":{"version":"2026-07-28"}}]}],"inconclusive":["No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.","Known CVEs could not be checked: we found no dependency list to check in this bundle: either it runs a compiled binary, whose bundled manifests we do not read, or none of the package.json, requirements.txt, pyproject.toml or uv.lock files it ships for its runtime declares a dependency we can read (a requirements.txt that only points at a setup.py project, a local path, or a nested requirements file we cannot follow counts as none).","Install-script risk not yet assessed.","Dependency health could not be checked: we found no dependency list to check in this bundle: either it runs a compiled binary, whose bundled manifests we do not read, or none of the package.json, requirements.txt, pyproject.toml or uv.lock files it ships for its runtime declares a dependency we can read (a requirements.txt that only points at a setup.py project, a local path, or a nested requirements file we cannot follow counts as none)."],"malware":[],"components":[{"slug":"dexsql","type":"mcpb","identifier":"https://github.com/LSPosed/dexsql-release/releases/download/v0.1.1/dexsql.mcpb","withdrawn":false,"score":39,"current":true,"url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql","markdownUrl":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql.md"}],"facts":[{"label":"Registry","value":"mcpb"},{"label":"Package","value":"https://github.com/LSPosed/dexsql-release/releases/download/v0.1.1/dexsql.mcpb"},{"label":"Transport","value":"stdio"},{"label":"SHA-256","value":"b751989b902bc6fb75422aa5bc4384235ea02a29edb8d61a6f3ec55aeedf44f1"}],"install":{"available":true,"bundleSha256":"b751989b902bc6fb75422aa5bc4384235ea02a29edb8d61a6f3ec55aeedf44f1"},"tools":[{"name":"close_dataset","title":null,"description":"Close a dataset and release its worker. New requests fail; already accepted requests may finish, with deadlines still enforced.","inputs":[{"name":"dataset_id","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":39},{"name":"decode","title":null,"description":"Inspect a method or class. Exactly one method descriptor, method_idx (with file_id), or class descriptor is required. Classes default to paginated summaries; methods default to paginated smali. Follow next_offset for exact text continuation; context mode lists original line numbers for labels and catch directives. Query SQL tables for annotations and debug metadata.","inputs":[{"name":"class","type":"string|null","required":false,"description":null},{"name":"compact","type":"boolean","required":false,"description":"Opt in to one structuredContent representation (content is empty). Query columns become\nnames and cells use null/string/number or [i|u|b|f, string]; SQL is omitted. Default false."},{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"file_id","type":"integer|null","required":false,"description":null},{"name":"max_bytes","type":"integer|null","required":false,"description":null},{"name":"max_lines","type":"integer|null","required":false,"description":"Maximum lines in one text page, default 200, maximum 1000."},{"name":"method","type":"string|null","required":false,"description":"Exact DEX descriptor. Supply exactly one of method, method_idx, or class."},{"name":"method_idx","type":"integer|null","required":false,"description":"DEX-local method index; requires file_id."},{"name":"method_limit","type":"integer|null","required":false,"description":"Methods per class page, default 20, maximum 50."},{"name":"method_offset","type":"integer","required":false,"description":"Class method-list offset, ordered by method_idx."},{"name":"mode","type":null,"required":false,"description":"Defaults to summary for a class, smali for a method. Context lists original label/catch lines."},{"name":"offset","type":"integer","required":false,"description":"UTF-8 byte offset into one method's smali/context text; continue with next_offset."},{"name":"timeout_ms","type":"integer|null","required":false,"description":null}],"outputs":[{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"method_offset","type":"integer","required":true,"description":null},{"name":"methods","type":"array","required":true,"description":null},{"name":"mode","type":null,"required":true,"description":null},{"name":"next_method_offset","type":"integer|null","required":false,"description":null},{"name":"total_methods","type":"integer","required":true,"description":null}],"hasOutputSchema":true,"hasExamples":false,"tokenEstimate":321},{"name":"describe_table","title":null,"description":"Describe a built-in SQL table or view; no dataset is needed.","inputs":[{"name":"name","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":29},{"name":"get_manifest","title":null,"description":"Read an APK Manifest as a summary (including paged permissions) or paged decoded XML. input_index refers to open_dataset.inputs; choose it when several archives are open. Does not require DEX or Java decompilation.","inputs":[{"name":"compact","type":"boolean","required":false,"description":"Opt in to one structuredContent representation (content is empty). Query columns become\nnames and cells use null/string/number or [i|u|b|f, string]; SQL is omitted. Default false."},{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"input_index","type":"integer|null","required":false,"description":"Index in open_dataset.inputs; required when several archive inputs are present."},{"name":"limit","type":"integer|null","required":false,"description":null},{"name":"max_bytes","type":"integer|null","required":false,"description":null},{"name":"mode","type":null,"required":false,"description":null},{"name":"offset","type":"integer","required":false,"description":"Permission-row offset in summary mode, UTF-8 byte offset in XML mode."},{"name":"timeout_ms","type":"integer|null","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":186},{"name":"get_manifest_components","title":null,"description":"Page Manifest components, names/descriptors, launcher intent filters, aliases and exported configuration. Exported state is manifest-derived and is not a claim of runtime accessibility. Includes explicit and SDK-dependent default states.","inputs":[{"name":"compact","type":"boolean","required":false,"description":"Opt in to one structuredContent representation (content is empty). Query columns become\nnames and cells use null/string/number or [i|u|b|f, string]; SQL is omitted. Default false."},{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"input_index","type":"integer|null","required":false,"description":null},{"name":"kind","type":"string|null","required":false,"description":"Optional activity, activity-alias, service, receiver, or provider filter."},{"name":"limit","type":"integer|null","required":false,"description":null},{"name":"max_bytes","type":"integer|null","required":false,"description":null},{"name":"offset","type":"integer","required":false,"description":null},{"name":"only_exported","type":"boolean","required":false,"description":"Filter by manifest-derived exported state; does not imply runtime accessibility."},{"name":"timeout_ms","type":"integer|null","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":191},{"name":"list_datasets","title":null,"description":"List open datasets and server quotas/usage. Counts include opening datasets and accepted work still holding a closed dataset.","inputs":[],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":31},{"name":"list_resource_files","title":null,"description":"Page archive entry names and sizes, optionally filtered by prefix (res/, assets/, lib/). Names identify entries for read_resource; files are never extracted.","inputs":[{"name":"compact","type":"boolean","required":false,"description":"Opt in to one structuredContent representation (content is empty). Query columns become\nnames and cells use null/string/number or [i|u|b|f, string]; SQL is omitted. Default false."},{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"input_index","type":"integer|null","required":false,"description":null},{"name":"limit","type":"integer|null","required":false,"description":null},{"name":"max_bytes","type":"integer|null","required":false,"description":null},{"name":"offset","type":"integer","required":false,"description":null},{"name":"prefix","type":"string|null","required":false,"description":"Case-sensitive archive-entry prefix, for example res/layout/ or assets/."},{"name":"timeout_ms","type":"integer|null","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":160},{"name":"list_tables","title":null,"description":"List all built-in SQL tables and views; no dataset is needed.","inputs":[],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":22},{"name":"open_dataset","title":null,"description":"Open local DEX/APK/JAR/ZIP paths as an isolated reusable dataset. Resource-only archives are supported. Input/session quotas and operation deadlines apply. Close unused datasets to release memory.","inputs":[{"name":"inputs","type":"array","required":true,"description":"Local DEX/APK/JAR/ZIP paths, resolved relative to the server working directory."},{"name":"timeout_ms","type":"integer|null","required":false,"description":"Optional shorter operation deadline; cannot exceed the server's timeout."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":91},{"name":"query","title":null,"description":"Run a read-only SQL batch with exact typed cells, byte/row budgets and per-statement next_offset. Use stable ORDER BY when paging; SQL is re-executed against the current lazy session definitions on each page; CREATE definitions persist until DROP, replacement or dataset close. Running timeout/cancellation closes only this dataset. Use resources/list to discover the documentation.","inputs":[{"name":"compact","type":"boolean","required":false,"description":"Opt in to one structuredContent representation (content is empty). Query columns become\nnames and cells use null/string/number or [i|u|b|f, string]; SQL is omitted. Default false."},{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"limit","type":"integer|null","required":false,"description":"Returned rows per statement, default 200; use a deterministic ORDER BY when paging."},{"name":"max_bytes","type":"integer|null","required":false,"description":"Optional lower serialized result-byte budget; rows are never silently clipped."},{"name":"named_temp_queries","type":"array","required":false,"description":"Lazy named SELECT definitions, retained in this dataset with the same lifetime as TEMP tables."},{"name":"offset","type":"integer","required":false,"description":"Rows to skip in each statement's result, default 0. offset + limit is at most 100000."},{"name":"sql","type":"array","required":true,"description":"Read-only SQL statements. VIEW and TEMP definitions are lazy and persist in this dataset\nuntil DROP, redefinition, or close_dataset; results are not cached across calls."},{"name":"timeout_ms","type":"integer|null","required":false,"description":null},{"name":"timing","type":"boolean","required":false,"description":null}],"outputs":[{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"diagnostics","type":"array","required":true,"description":null},{"name":"statements","type":null,"required":true,"description":null},{"name":"timing","type":null,"required":false,"description":null}],"hasOutputSchema":true,"hasExamples":false,"tokenEstimate":292},{"name":"query_resources","title":null,"description":"Query resources.arsc by numeric ID, exact type/name, type, name substring or configuration. Returns matching configurations with raw values and named references; complex resources are flattened into ordered map items. Separate from DEX strings.","inputs":[{"name":"compact","type":"boolean","required":false,"description":"Opt in to one structuredContent representation (content is empty). Query columns become\nnames and cells use null/string/number or [i|u|b|f, string]; SQL is omitted. Default false."},{"name":"configuration","type":"string|null","required":false,"description":"Exact qualifier string from a previous result. Empty string selects the default config."},{"name":"contains","type":"string|null","required":false,"description":"Case-sensitive substring of the resource name."},{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"input_index","type":"integer|null","required":false,"description":null},{"name":"limit","type":"integer|null","required":false,"description":null},{"name":"max_bytes","type":"integer|null","required":false,"description":null},{"name":"name","type":"string|null","required":false,"description":"Exact type/name or package:type/name, for example string/app_name."},{"name":"offset","type":"integer","required":false,"description":null},{"name":"resource_id","type":"integer|null","required":false,"description":"Resource ID, for example 2130771968 (0x7f010000)."},{"name":"resource_type","type":"string|null","required":false,"description":"Resource type, for example string, layout, id, style, or array."},{"name":"timeout_ms","type":"integer|null","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":260},{"name":"read_resource","title":null,"description":"Read one exact APK archive entry in bounded pages. Binary Android XML is decoded; UTF-8 text is preserved; other bytes use hex. Follow next_offset in page (text) or the result (hex). The resource-entry size quota applies before decompression.","inputs":[{"name":"compact","type":"boolean","required":false,"description":"Opt in to one structuredContent representation (content is empty). Query columns become\nnames and cells use null/string/number or [i|u|b|f, string]; SQL is omitted. Default false."},{"name":"dataset_id","type":"string","required":true,"description":null},{"name":"format","type":null,"required":false,"description":null},{"name":"input_index","type":"integer|null","required":false,"description":null},{"name":"max_bytes","type":"integer|null","required":false,"description":null},{"name":"name","type":"string","required":true,"description":"Exact archive entry name. No files are extracted to the filesystem."},{"name":"offset","type":"integer","required":false,"description":"Byte offset in decoded UTF-8 text, or original bytes when encoding is hex."},{"name":"timeout_ms","type":"integer|null","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":191}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-06T00:39:32.000Z","track":"package","endpoint":null,"declaredUrl":null,"truncated":false,"tls":null,"dnssec":null,"auth":null,"httpsRedirect":null,"transports":[],"provenance":{"outcome":"none","label":"No attestation","reason":"no_attestation","reasonLabel":"No attestation published","discovery":null,"discoveryLabel":null,"sourceRepo":null,"attestationSkipped":null,"attestationSkippedLabel":null},"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":null},"mismatches":[],"changelog":{"trackingSince":"2026-10-18","recent":[{"id":"chg_01a1a912-0db6-760d-abc7-9765218110d0","kind":"score.total_changed","summary":"Trust score (38 → 39)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a1a912-0db6-760d-abc7-9765218110d0"},{"id":"chg_01a19eba-e85e-7a2c-9dcf-51f40578cb00","kind":"score.total_changed","summary":"Trust score (37 → 38)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-03","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a19eba-e85e-7a2c-9dcf-51f40578cb00"},{"id":"chg_01a1946d-0589-7f17-850a-ea910f5b5492","kind":"score.total_changed","summary":"Trust score (36 → 37)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-01","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a1946d-0589-7f17-850a-ea910f5b5492"},{"id":"chg_01a184ff-e644-773e-95b8-2e7d02805d14","kind":"score.total_changed","summary":"Trust score (35 → 36)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-29","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a184ff-e644-773e-95b8-2e7d02805d14"},{"id":"chg_01a17ab9-4df3-7c67-bf8b-f42369071f34","kind":"score.total_changed","summary":"Trust score (34 → 35)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-27","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a17ab9-4df3-7c67-bf8b-f42369071f34"},{"id":"chg_01a17063-b937-71af-a6e8-a5f4ce1f5adf","kind":"score.total_changed","summary":"Trust score (33 → 34)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-25","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a17063-b937-71af-a6e8-a5f4ce1f5adf"},{"id":"chg_01a16613-141d-7055-81a8-561c322c4131","kind":"score.total_changed","summary":"Trust score (32 → 33)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-23","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a16613-141d-7055-81a8-561c322c4131"},{"id":"chg_01a15bc5-1d58-767d-824f-240480dd299a","kind":"score.total_changed","summary":"Trust score (31 → 32)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-21","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a15bc5-1d58-767d-824f-240480dd299a"},{"id":"chg_01a15176-f0a0-719b-bc68-653a532712b2","kind":"score.total_changed","summary":"Trust score (30 → 31)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-19","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a15176-f0a0-719b-bc68-653a532712b2"},{"id":"chg_01a14ebc-5292-7d1d-9124-a292394edd94","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-18","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a14ebc-5292-7d1d-9124-a292394edd94"},{"id":"chg_01a14ead-bf58-7363-aab8-ed930537aaf2","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-18","url":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql#chg-chg_01a14ead-bf58-7363-aab8-ed930537aaf2"}],"truncated":false,"feedUrl":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql/changelog.json"},"links":{"html":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql","markdown":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql.md","changelogJson":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql/changelog.json","changelogRss":"https://verifymcp.io/servers/org-lsposed-dexsql/dexsql.xml","external":[{"label":"Repository","href":"https://github.com/LSPosed/dexsql-release"},{"label":"Website","href":"https://dexsql.lsposed.org/"}]}}