
BeVigil OSINT
io.github.santhosh-005Published by GitHub account santhosh-005v1.1.0Updated Oct 24, 2026
Discover mobile app attack surfaces via BeVigil OSINT — hosts, subdomains, URLs, and more.
The publisher's own server: osint.foundation
Overview
A local MCP server that queries BeVigil's mobile app OSINT database so an assistant can map hosts, subdomains, URLs and storage exposed in Android app code.
- What you can do
- Look up hosts, S3 buckets, wordlists and full investigation reports for an Android package ID, including a combined report of hosts, buckets, parameters and paths for one app. Retrieve subdomains and full URLs seen across indexed apps for a domain. Reverse-lookup which apps reference a given hostname. Page through large result sets with limit and offset, with next-offset hints when results are truncated.
- When to use it
- Useful for bug bounty, penetration testing, red team and appsec reconnaissance where you want to pivot from a domain or package ID to mobile app infrastructure. It suits conversational recon sessions where an assistant chains several lookups and correlates shared backends.
- Requirements
- Runs locally over stdio via npx (Node.js 20.12+), or from a built source checkout. Requires a BeVigil API key supplied in the BEVIGIL_API_KEY environment variable, and network access to BeVigil's OSINT endpoints. An MCP-compatible client is needed.
Installation
In SourceWeft
- Open BeVigil OSINT in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
BeVigil MCP Server
[npm] [CI] [License: MIT] [M8ven Score] [bevigil-mcp-server MCP server]
Map a company's mobile attack surface from your AI assistant.
BeVigil has scanned millions of Android apps and extracted the infrastructure hiding
inside them — backend hosts, staging subdomains, S3 buckets, API paths, and query
parameters that never appear in DNS or search engines. This server puts that data
behind seven MCP tools, so you can ask for it in plain language instead of
stitching together curl calls.
Built for bug bounty hunters, pentesters, red teamers, and appsec engineers doing recon.
Tested with Claude Code, Claude Desktop, Codex, Cursor, and VS Code.
Quick start (2 minutes)
1. Get a free API key
Sign up at bevigil.com/osint-api. Free accounts get 25 credits, or 200 if you register with a work email. One lookup = one credit.
2. Add the server
No clone, no build — npx fetches and runs it.
Claude Code
Check it registered with claude mcp list.
Claude Desktop
Edit claude_desktop_config.json (Settings → Developer → Edit Config):
Restart Claude Desktop.
Codex
Check it registered with codex mcp list.
Cursor
Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project):
VS Code (Copilot)
Add to your VS Code MCP settings:
3. Ask your first question
Investigate com.whatsapp with BeVigil and summarise the infrastructure it exposes.
You should get back something like this — real hostnames pulled out of the app's code:
That's it — you're doing OSINT from the chat window.
What you can ask
Recon a company's mobile footprint
Which Android apps talk to
api.acme.com? Then pull the hosts out of each one.
Find staging and internal endpoints
Get subdomains for
acme.comfrom BeVigil and flag anything that looks like dev, staging, or internal.
Hunt for exposed storage
What S3 buckets does
com.acme.mobilereference?
Build a target-specific fuzzing wordlist
Pull the BeVigil wordlist for
com.acme.mobileand save the API paths topaths.txt.
Pivot from a single domain
Find apps referencing
acme.com, then investigate the three most interesting ones and tell me which backends they share.
The last one is where an agent earns its keep — that's a dozen API calls and a correlation pass that you'd otherwise do by hand.
Tools
Pagination
Every list-returning tool takes optional limit and offset (default 100, max
500). When results are truncated the response says so and gives the exact offset
to continue from:
Credits
Responses are not cached. Every tool call — including each extra page — is one
API request and one credit. bevigil_investigate_app makes four calls per run, so
it costs four. When credits run out you get a clear message rather than a silent
empty result.
Apps that aren't indexed yet
BeVigil only answers for apps it has already scanned. If a package isn't in the index, the tools tell you how to fix that:
This is deliberately distinguished from "app is indexed but has no S3 buckets" — only the first case is something you can act on.
Configuration reference
API key
Preferred: set it in your MCP client config (as shown in the quick start), which passes it to the server as an environment variable. For shell use:
A .env file in the package root also works. Note that it's resolved relative
to the installed package rather than your working directory, since MCP clients
launch servers from arbitrary places. Real environment variables always win over
.env, and .env is gitignored — never commit it.
Running from source
For local development, or to pin a specific commit:
Then point your client at the built entry point instead of npx:
Requirements: Node.js 20.12+, a BeVigil API key, and an MCP-compatible client.
How it works
The server is a thin, well-defended layer: it validates inputs, keeps responses inside a sensible context budget, and turns the API's several different ways of saying "nothing here" into one consistent, actionable message.
Design decisions worth knowing about:
- Seven task-shaped tools, not raw endpoint wrappers — each maps to something a researcher actually wants.
- Paginated results with next-offset hints, so large result sets stay reachable without flooding the context window.
- Concurrent lookups in the investigation workflow.
- Partial failure handling — a broken lookup doesn't sink the whole report.
- Findings are labelled observed data, never asserted as vulnerabilities. A bucket name is a lead, not a finding.
Limitations
- Mobile app data only — this reflects what's embedded in Android app code, not DNS enumeration or internet-wide scanning. Use it alongside your usual tooling, not instead of it.
- Index-only coverage — only apps BeVigil has scanned. Unindexed apps can be submitted at bevigil.com/scanApp.
- No app search — you need a package ID or domain up front; there's no endpoint to discover apps by name.
- Limited app metadata — reverse hostname lookups return app name and version; otherwise you get security-relevant assets only.
- Data freshness — results reflect BeVigil's most recent scan of each app, which may not be current.
- Credit-based — see Credits above.
Security
- API keys are read from the environment (or a package-root
.env) — never hardcoded, never logged - Error messages never expose credentials, and a test asserts this
- The server only talks to known BeVigil endpoints — no arbitrary URL fetching
- Path parameters are URL-encoded, so a crafted package ID can't escape the intended endpoint
- All tool inputs are validated with Zod schemas
- Request timeouts prevent hanging connections
- Page sizes are bounded (max 500) to prevent context overflow
- A pre-commit hook and a CI job both check that no credential reaches the repo
- Every tool is annotated read-only and non-destructive — nothing this server exposes can modify data
- No telemetry, no analytics, no stored queries — see PRIVACY.md
Use responsibly. This tool queries a public OSINT database. What you do with the results is your responsibility — only test systems you're authorised to test.
Development
Tests use Node's built-in runner with mocked API responses — no live calls, no credits spent. Coverage spans the API client (auth headers, every HTTP error path, timeouts, malformed and enveloped responses, and a check that errors never leak the key) and all seven tool handlers, including the investigation workflow's partial-failure behaviour. A registration contract test also asserts that every tool declares an input schema and all four MCP behaviour hints.
To enable the pre-commit hook that blocks committing credentials:
It refuses any commit that stages a .env file or puts a non-placeholder value in
.env.example, and runs gitleaks on staged
changes when installed.
Project structure
Contributing
Issues and PRs welcome — bug reports, new BeVigil endpoints, and client configurations for MCP hosts not listed above are all useful.
License
MIT — see LICENSE. Privacy policy: PRIVACY.md.
Not affiliated with or endorsed by CloudSEK. BeVigil is a CloudSEK product; this is an independent open-source client for their public OSINT API.
Source: README.md at commit c0945e0
Tools
0Version history
1- v1.1.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Osint integrations
osint.foundation
foundation.osintOfficial publisher
osint.foundation's hosted MCP server, published by osint.foundation; credential required; Streamable HTTP; 51 tools.

OSINT.SX
Published by GitHub account osintsx
Runs OSINT.SX people and account lookups from an assistant: one search across all sources, plus Google, Microsoft, Epic, X, Steam, Instagram and TikTok tools.

Domain Osint Mcp
Published by GitHub account robertoyanguas-ops
A remote MCP server that lets an assistant run domain OSINT checks: live DNS resolution, TLS certificate details and an HTTP security grade.

OSINT
Published by GitHub account robyroro
Local MCP server for OSINT-style domain and website investigations: recon, WHOIS/RDAP, DNS, certificates, archive and infrastructure comparison from public…

Robin: AI-Powered Dark Web OSINT
Published by GitHub account apurvsinghgautam
Robin runs dark web OSINT investigations over Tor, letting an assistant search onion search engines, scrape pages and save reports using the agent's own model.