get_dossierGenerate a full dossier on any subject.
A vet is a paragraph. A dossier is a document. get_dossier takes a subject and a depth setting and assembles a multi-source profile — bio, employment, recent activity, mentions, comp signal, sentiment, network, risks — into a single structured object the agent can hand to a human or paste into a CRM. Fifteen credits. About fifteen seconds. Designed for the moments when "find out everything we can" is the actual brief.
When to call this tool
An agent should reach for get_dossier when the downstream consumer is a human reading a document, not the agent itself reasoning over a small object. Investor diligence calls. Pre-meeting briefs for an exec. A journalist's source-check. A recruiter's full read on a finalist before reference calls. The tool returns a structure that maps cleanly onto a one-page brief, including a synthesised narrative section that reads like an analyst wrote it. Every claim cites its source.
Compared to vet_person, the dossier is roughly three times the depth and triggers an internal mention-scan, a comp-signal pull, and a sentiment pass over the last 90 days of activity. It is the right tool whenever you would otherwise tell a junior person to "spend an hour on this".
Input schema
{ "subject": "string // name, handle, or domain", "subject_kind": "enum: 'person' | 'company' | 'auto'", "depth": "enum: 'standard' | 'deep' | 'forensic' // default 'standard'", "sections": ["string // optional, restrict to subset"], "include_network": "boolean // default false; adds 5 cr" }
Output schema
{ "subject": { "name", "resolved", "confidence" }, "narrative": "string // 6-12 paragraph synthesis", "bio": { "role", "company", "location", "tenure" }, "employment_history": [{ "company", "role", "start", "end" }], "recent_activity": [{ "date", "platform", "summary", "link" }], "mentions_summary": { "count_90d", "top_platforms", "sentiment" }, "comp_signal": { "band", "basis" }, "network": [{ "name", "relation", "strength" }], "risks": [{ "type", "severity", "detail", "source" }], "sources": ["url"], "credits_used": 15 }
Example invocations
1. Claude Desktop
// User prompt
Build me a full dossier on the founder of Stripe before
my 9am with him tomorrow. Deep depth, include network.
2. ChatGPT custom GPT
// GPT instructions
For any "brief me on X" or "tell me everything about X"
prompt, call get_dossier with depth: 'deep'. Open your
reply with the narrative section.
3. Cursor MCP
// In Cursor
Use get_dossier to write a markdown one-pager for
"Patrick Collison". Save to ./briefs/collison.md.
4. n8n
{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "get_dossier", "arguments": { "subject": "Vercel", "subject_kind": "company", "depth": "deep" } } }
5. Raw curl
curl -X POST https://www.mentionfox.com/mcp \ -H "Authorization: Bearer $FOXAPIS_KEY" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_dossier","arguments":{"subject":"Naval Ravikant","depth":"standard"}}}'
Sample output (real, redacted)
{ "subject": { "name": "Naval Ravikant", "confidence": 0.99 }, "narrative": "Founder of AngelList. Investor in 200+ companies including Twitter, Uber, Stripe...", "bio": { "role": "Founder, AngelList", "location": "San Francisco" }, "recent_activity": [{ "date": "2026-04-22", "platform": "x", "summary": "Thread on AI as a creative partner..." }], "mentions_summary": { "count_90d": 3417, "sentiment": "positive" }, "credits_used": 15 }
Credit cost & rate limits
Standard depth costs 15 credits. Deep is 25. Forensic is 40. Adding include_network: true adds 5. Rate limit is 15 per minute, with a daily soft cap of 200 dossiers per key.
Error codes & recovery
404 NOT_RESOLVEDSubject couldn't be uniquely identified. Pass a domain or handle to disambiguate.422 NOT_ENOUGH_SIGNALPublic footprint too thin for a dossier. Fall back to vet_person.429 RATE_LIMITEDUse the retry-after header.503 PARTIALSome sub-sources timed out. Response is partial; sections array notes which are missing.