Mcp Maltego

io.github.Data-Unix由 GitHub 帳號 Data-Unix 發布v0.2.0更新於 Nov 3, 2026

面向AI代理的Maltego OSINT:轉換、Machines、連結圖分析和原生.mtgx。

AI 翻譯由 AI 模型根據下方的原文描述翻譯,可能有誤。

原文描述

Maltego OSINT for AI agents: transforms, Machines, link-graph analysis and native .mtgx.

已驗證STDIO僅桌面AI 與機器學習

概覽

Mcp Maltego 的本機 MCP 服務;無需登入;STDIO。

暫無 AI 概覽:以下資訊來自註冊中心條目和服務本身。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Mcp Maltego,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

mcp-maltego

Maltego OSINT for AI agents.
Run transforms and Machines, build and analyse link graphs, and hand the result back to Maltego as a native .mtgx, from Claude, Gemini, Codex, Copilot, Cursor or any MCP client.

[MCP-MALTEGO — Model Context Protocol Intelligence Graph Integration]

[npm] [CI] [License: MIT] [MCP] [Tools] [Español]


mcp-maltego is a Model Context Protocol server that turns an AI agent into a Maltego operator. It runs real transforms (built-in, commercial providers or your own TRX/iTDS servers), chains them into Machines, keeps a persistent investigation graph with memory of every step, recommends the next pivot, and exports everything to Maltego Desktop. One graph is shared by every agent you use.

Key features

  • 20 tools, portable to every model. Flat JSON schemas validated against Gemini's strict function-calling subset; variants grouped with an action parameter so agents are not flooded with tools.
  • 38 real transforms out of the box. 26 without API keys (DNS over HTTPS, RDAP/WHOIS, certificate transparency via crt.sh and CertSpotter, HackerTarget, urlscan.io, Shodan InternetDB, Team Cymru & RIPE Stat ASN/netblocks, Gravatar, GitHub profile details, AlienVault OTX threat pulses, multi-network profile lookup, parsing) and 12 provider transforms that switch on when you set a key: VirusTotal, Shodan, SecurityTrails, Censys, Hunter.io, Have I Been Pwned, GreyNoise and Tatum.
  • Your Maltego transforms too. Speaks the Maltego TRX/iTDS XML protocol, so an agent can run the same transforms you use in Maltego.
  • Machines. DomainRecon, InfrastructureRecon, EmailRecon, CompanyFootprint, PersonalFootprint, PersonaFootprint, URLRecon, ThreatSweep, ASNToNetblocks and your own in TOML, with recursive rounds and cost budgets.
  • HUMINT, Breach Router & Multi-Agent Swarms. Native humint.* entity ontology (humint.Alias, humint.Organization, humint.LocationHistory, humint.PsychologicalTrait), cross-platform pseudonym correlation, subject behavioral profiling ([Hipótesis]), chronological anomaly detection, weighted relationships, a local SQLite
    • k-Anonymity/XposedOrNot breach router (BreachSemanticPivot), and multi-agent case fork/delegate/merge with optimistic locking.
  • An investigation copilot. osint_investigate does detection, case creation, the right Machine, scoring and recommendations in one call. Every step is remembered (what, on what, why, result), every entity has explainable provenance and a priority score, and next-best-action learns from how each transform performed.
  • Native Maltego round-trip. .mtgx export with hierarchical, radial or force-directed layout and the investigation memory embedded; .mtgx import; local transforms inside Maltego Desktop to open a case, expand neighbours and send entities back to the agents; import of your exact Maltego entity ontology.
  • Reports and CLI. Executive reports in Markdown or self-contained HTML, and maltegoctl for terminals and CI.
  • Safe by default. OSINT content is treated as untrusted data, XML is parsed with defusedxml, archives are read with bounds, agents cannot supply arbitrary URLs, and API keys are never logged.

Requirements

  • Node.js 18 or newer (for npx).
  • uv — manages the Python 3.12 runtime automatically (if uv is not installed yet, mcp-maltego installs it automatically into ~/.maltego-mcp/bin on first run).

Prepare the runtime, ~/.maltego-mcp/.env template, Maltego Desktop bridge .mtz, and global CLI launchers (mcp-maltego, maltego-mcp, maltegoctl, maltego-mcp-bridge in ~/.local/bin / %USERPROFILE%\.local\bin added to your PATH) in one command:

bash
npx -y mcp-maltego setup

You can also choose a specific deployment mode or client target on any OS / distribution (Windows PowerShell/CMD, macOS, Ubuntu/Debian, Kali, Fedora/RHEL, Arch, Alpine):

bash
npx -y mcp-maltego setup --mode global              # (Default) Global CLI in ~/.local/bin + PATH (run from any directory)npx -y mcp-maltego setup --mode local               # Isolated inside ~/.maltego-mcp without modifying PATHnpx -y mcp-maltego setup --mode http                # Prepare + print Streamable HTTP server startupnpx -y mcp-maltego setup --client claude            # Print ready-to-use config for a specific client (claude|gemini|codex|copilot|cursor|all)

Getting started

Standard configuration, valid for most MCP clients:

json
{  "mcpServers": {    "maltego": {      "command": "npx",      "args": ["-y", "mcp-maltego"]    }  }}

Then ask your agent:

Investigate example.com, give me the summary of the case and export it for Maltego.

Claude Code
bash
claude mcp add maltego -- npx -y mcp-maltego
Claude Desktop

Edit claude_desktop_config.json (Settings → Developer → Edit Config) and add the standard configuration above.

Gemini CLI

Add the standard configuration to ~/.gemini/settings.json (all projects) or .gemini/settings.json (one project).

Codex
bash
codex mcp add maltego -- npx -y mcp-maltego

or in ~/.codex/config.toml:

toml
[mcp_servers.maltego]command = "npx"args = ["-y", "mcp-maltego"]
GitHub Copilot CLI

Add the standard configuration to ~/.copilot/mcp-config.json, or to .mcp.json / .github/mcp.json in a repository.

VS Code

.vscode/mcp.json:

json
{ "servers": { "maltego": { "command": "npx", "args": ["-y", "mcp-maltego"] } } }
Cursor

Add the standard configuration to ~/.cursor/mcp.json or .cursor/mcp.json.

OpenCode

opencode.json:

json
{ "mcp": { "maltego": { "type": "local", "command": ["npx", "-y", "mcp-maltego"], "enabled": true } } }
Qwen Code

Add the standard configuration to ~/.qwen/settings.json or .qwen/settings.json.

Orca IDE and other multi-agent setups

Clone this repository and open it in Orca: it ships the project file each agent reads (.mcp.json, .gemini/settings.json, .codex/config.toml, .cursor/mcp.json, .qwen/settings.json, opencode.json), so every worktree gets the server without manual registration. All agents share one graph in ~/.maltego-mcp. See docs/ORCA.md.

Remote (Streamable HTTP)
bash
npx -y mcp-maltego --transport http --port 8000   # http://127.0.0.1:8000/mcp

The server binds to localhost only. It has no authentication yet, so do not expose it to a network.

Tools

GroupToolWhat it does
Catalogosint_list_entity_typesEntity ontology by category (standard + native humint.* + imported from your Maltego)
osint_list_transformsTransforms, Machines, provider keys and server status
Casesosint_manage_caseCreate, fork/delegate sub-cases for multi-agent swarms, merge (with optimistic locking) or delete
osint_list_casesPaginated list
osint_get_case_summaryCounts, priority entities and quality indicators
Entitiesosint_upsert_entityCreate or merge an entity (normalised value, deterministic id, notes)
osint_manage_entityEdit confidence/notes/properties, set .mtgx visual_style, run HUMINT analyze_behavior, or delete
osint_get_entityDetails, explained score, provenance, pending transforms
osint_search_entitiesSearch a case or across cases; sort by priority
Linksosint_link_entitiesLink/unlink entities, analyze HUMINT role/sentiment/weight, or correlate cross-platform identities
osint_get_neighborsRelated entities with direction and link type
osint_find_pathsPaths between two entities
Transformsosint_run_transformOne transform on one entity
osint_expand_entityEvery applicable transform ("Run All")
osint_run_machineA Machine or an ad-hoc chain, with rounds and budgets
Copilotosint_investigateEverything in one call: detect, case, Machine, score, recommend, report
osint_suggest_next_stepsDeterministic next-best-action with transform performance history
osint_get_timelineInvestigation procedural memory (steps) or subject chronological timeline & anomalies (subject)
Exchangeosint_export_casemtgx (with layout and memory), json, graphml, csv, report_md, report_html
osint_import_graphImport a .mtgx saved in Maltego (with its memory) or a CSV

entity_type accepts any Maltego type, your own prefix.Name, or "auto" to detect it from the value.

Transforms

CategoryTransformsAPI key
DNS (over HTTPS + passive)DNSToIP, DNSToIPv6, DomainToMX, DomainToNS, DomainToTXT, DNSToCNAME, IPToReverseDNS, HackerTargetSubdomains—
WHOIS (RDAP with ARIN fallback)DomainToWhois, IPToWhois—
Network & ExposureIPToAS, IPToNetblock (Team Cymru), RIPEStatASNToNetblocks, InternetDBIPToServices (ports, CPEs, CVEs)—
Certificates & WebDomainToSubdomains (crt.sh + CertSpotter fallback), CertSpotterSubdomains, URLScanDomainSearch—
Identity, Social & HUMINTAliasToProfiles (GitHub, GitLab, Hacker News, Keybase, DEV), GitHubAliasToDetails, GravatarEmailToProfile, EmailToAlias, AnalyzeSubjectBehavior—
Breach & Threat Intel (keyless)BreachSemanticPivot (local SQLite + HIBP Pwned Passwords k-Anonymity + XposedOrNot), OTXHashToThreatPulses—
ParsingEmailToDomain, URLToDomain, WebsiteToDomain, DomainToWebsite—
VirusTotalVTDomainToIP, VTIPToDomain, VTDomainToSubdomains, VTHashToDetectionVIRUSTOTAL_API_KEY
ShodanShodanIPToServices, ShodanDomainToSubdomainsSHODAN_API_KEY
SecurityTrailsSecurityTrailsSubdomainsSECURITYTRAILS_API_KEY
CensysCensysIPToServicesCENSYS_API_ID, CENSYS_API_SECRET
Hunter.ioHunterDomainToEmailsHUNTER_API_KEY
Have I Been PwnedHIBPEmailToBreachesHIBP_API_KEY
GreyNoiseGreyNoiseIPContextGREYNOISE_API_KEY
TatumTatumBTCAddressToTxTATUM_API_KEY

Pass keys through your client's configuration:

json
{ "mcpServers": { "maltego": { "command": "npx", "args": ["-y", "mcp-maltego"],  "env": { "SHODAN_API_KEY": "...", "VIRUSTOTAL_API_KEY": "..." } } } }

Your own Maltego transform servers (TRX / iTDS) are declared in ~/.maltego-mcp/transforms.toml; see config/transforms.example.toml. Custom Machines go in the same file.

Maltego Desktop integration

DirectionHow
Agent → Maltegoosint_export_case writes a .mtgx; open it with File → Open
Maltego → agentSave as .mtgx in ~/.maltego-mcp/imports/ and ask the agent to import it
Live, inside Maltegonpx mcp-maltego ctl mtz generates local transforms (MCP · Abrir caso, MCP · Vecinos en el caso, MCP · Guardar en el caso); import the file with Import | Export → Import Config
Your ontologyExport your config from Maltego and run npx mcp-maltego ctl import-entities config.mtz

Local transforms work in Maltego CE and the commercial editions, with no transform server. For the bridge, install the package globally (npm i -g mcp-maltego) so the command path stays stable. Details in docs/MALTEGO.md.

Configuration

VariableDefaultPurpose
MALTEGO_MCP_HOME~/.maltego-mcpShared state: graph, catalog, imports, exports, runtime
MALTEGO_MCP_TRANSFORMS_FILE<home>/transforms.tomlCatalog of your transform servers and Machines
MALTEGO_MCP_BACKENDmemorymemory (local JSON, multi-process safe) or gremlin (Azure Cosmos DB, experimental)
MCP_MALTEGO_UVauto-detectedFull path to uv if it is not on PATH

More in docs/USO.md (Spanish).

CLI

bash
npx mcp-maltego ctl inspect case.mtgx           # validate a .mtgxnpx mcp-maltego ctl lookup DomainToMX gmail.com  # quick lookup, nothing savednpx mcp-maltego ctl transforms --type maltego.Domainnpx mcp-maltego ctl export demo --format report_htmlnpx mcp-maltego ctl import-entities config.mtznpx mcp-maltego ctl mtz

Example prompts

  • Investigate [email protected] and tell me which pivots are worth running next.
  • Run DomainRecon on example.com with two rounds and a budget of 200 entities.
  • Find every path between the IP 93.184.216.34 and the email in case demo.
  • Export case demo for Maltego with a radial layout and write me an HTML report.
  • Import the graph I saved in Maltego as acme.mtgx into case acme and continue from there.

AI agents and skills for contributors and analysts

The repository ships 10 agents and 15 skills from a single source (.agents/), generated for Claude Code, Gemini CLI, Qwen Code, GitHub Copilot and Codex, with skills in the open Agent Skills format (also read by Cursor):

  • Investigation agents (use this MCP): osint-analyst (copilot with next-best-action loop and memory), cti-analyst (defensive exposure and IOC triage), ioc-composer (multi-MCP IOC graphs with MISP, ATT&CK, TheHive, Cortex), recon-toolchain-integrator (theHarvester, amass, recon-ng, SpiderFoot output into the graph).
  • Investigation skills: company footprint, identity footprint, infrastructure mapping, IOC graph composition, external OSINT tools, investigation methodology.
  • Development agents and skills: MCP tool design, transforms and custom providers, Machines, graph model, Maltego formats, non-standard entities, security review, tests, release and deployment.

Inspired by community work (SulimanAbdulrazzaq/maltego-mcp, lidless-labs/maltego-mcp, HexStrike AI, MCP-Kali-Rust); offensive capabilities (exploitation) are deliberately out of scope.

Security and responsible use

OSINT content is untrusted and is never followed as instructions. See SECURITY.md for the design and for how to report vulnerabilities. You are responsible for complying with the law, each provider's terms of service and data-protection rules (for example GDPR) in your jurisdiction.

Development

bash
git clone https://github.com/Data-Unix/MCP-MALTEGO.git && cd MCP-MALTEGOuv syncuv run pytest -q && uv run ruff check . && uv run mypy src   # Pythonnpm test                                                       # npm launchernpx @modelcontextprotocol/inspector uv run maltego-mcp        # inspect the server

Architecture, conventions for contributors and AI agents: AGENTS.md. Coverage of the functional specification: docs/COBERTURA.md. Changes: CHANGELOG.md.

License

MIT. Maltego is a trademark of Maltego Technologies GmbH. This project is independent and not affiliated with or endorsed by Maltego Technologies.

來源:README.md,提交 e308fbe

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.0最新Nov 3, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分