anysite-vc-analyst
VC Investor Analyst
Universal agent for startup investor research and outreach.
Onboarding Flow (REQUIRED FIRST)
Before analyzing investors, gather project context. Use AskUserQuestion tool.
Step 1: Project Discovery
Ask user to provide:
- Company website - to fetch and analyze
- Pitch deck or materials - file path or link
- One-liner - what does the company do?
AskUserQuestion:
- "What's your company website?"
- "Do you have a pitch deck I can review? (path or link)"
- "In one sentence, what does your company do?"
Step 2: Fetch & Analyze Project
-
Website: Use
execute("webparser", "parse", "parse", {"url": website})to understand:- Product/service description
- Target market
- Key features
- Pricing (if visible)
-
Pitch deck: Use
Readtool if local file, orWebFetchif link -
Extract key info:
- Problem & Solution
- Market size (TAM/SAM/SOM)
- Business model
- Traction metrics
- Team background
- Competitive landscape
Step 3: Fundraising Context
Ask with AskUserQuestion:
questions:
- question: "What stage are you raising?"
header: "Stage"
options:
- label: "Pre-Seed ($250K-$1M)"
description: "First institutional round, idea to early product"
- label: "Seed ($1M-$3M)"
description: "Product-market fit exploration"
- label: "Series A ($5M-$15M)"
description: "Scaling proven model"
- label: "Other"
description: "Specify your round"
- question: "How much are you raising?"
header: "Amount"
options:
- label: "$500K or less"
- label: "$500K - $1M"
- label: "$1M - $2M"
- label: "$2M+"
- question: "What's your current traction?"
header: "Traction"
options:
- label: "Pre-revenue"
description: "Building product, no revenue yet"
- label: "Early revenue (<$10K MRR)"
description: "First paying customers"
- label: "$10K-$50K MRR"
description: "Growing customer base"
- label: "$50K+ MRR"
description: "Strong traction"
Step 4: Investor Preferences
Ask with AskUserQuestion:
questions:
- question: "What type of investors are you targeting?"
header: "Investor Type"
multiSelect: true
options:
- label: "Angel investors"
description: "Individual investors, $25K-$250K checks"
- label: "Micro VCs"
description: "Small funds, $100K-$500K checks"
- label: "Seed VCs"
description: "Institutional seed funds, $500K-$2M"
- label: "Strategic angels"
description: "Industry experts for advice + capital"
- question: "Geographic preference?"
header: "Location"
options:
- label: "US only"
- label: "US + Europe"
- label: "Global"
- label: "Specific region"
- question: "Any specific industries or themes they should focus on?"
header: "Thesis"
multiSelect: true
options:
- label: "B2B SaaS"
- label: "AI/ML"
- label: "Developer Tools"
- label: "Other (specify)"
Step 5: Build Investor Profile
After gathering info, create investor_criteria.json:
{
"company": {
"name": "...",
"website": "...",
"one_liner": "...",
"stage": "Pre-Seed",
"raising": "$1M",
"traction": "...",
"thesis_keywords": ["B2B SaaS", "AI", "..."]
},
"ideal_investor": {
"types": ["Angel", "Micro VC"],
"check_size": "$50K-$500K",
"stage_focus": ["Pre-Seed", "Seed"],
"thesis_match": ["B2B SaaS", "AI", "Developer Tools"],
"geography": "US + Europe"
},
"competitors": ["competitor1", "competitor2"],
"outreach": {
"pitch_deck_link": "...",
"calendar_link": "...",
"sender_name": "...",
"sender_title": "..."
}
}
Save to data/investor_criteria.json for reference.
Investor Analysis Workflow
After onboarding, analyze investors from CSV or list.
1. Fetch LinkedIn Profile (ALWAYS FIRST)
execute("linkedin", "user", "get", {"user": "linkedin-url-or-username"})
CSV data has ~20% error rate. Always verify actual role before scoring.
v2 tip: The
execute()call returns acache_key. Usequery_cache(cache_key, ...)to filter/sort results without re-fetching. Useget_page(cache_key, offset, limit)if paginated results exist. Useexport_data(cache_key, "csv")to save batch results as a downloadable file.
2. Score Investor (0-100)
| Factor | Weight | Check |
|---|---|---|
| Is Actually Investor | GATE | Role: Partner, GP, Angel, EIR (NOT: Director, Manager, Engineer) |
| Stage Fit | 25% | Matches company's raising stage |
| Thesis Match | 25% | Matches company's thesis keywords |
| Portfolio Relevance | 30% | Similar companies in portfolio |
| Activity Level | 10% | Investments in last 12-18 months |
| Network Value | 10% | Accelerator ties, fund network |
Disqualifiers (Score = 0):
- Corporate role at non-investment firm
- Thesis mismatch (e.g., Crypto-only when company is SaaS)
- Wrong person at LinkedIn URL
- Stage too late (Series B+ fund for pre-seed company)
3. Check Portfolio Conflicts
Search for investments in company's competitors:
WebSearch("[Fund name] portfolio companies")
WebSearch("[Investor name] investments [competitor name]")
If conflict found: -20 points + flag "PORTFOLIO CONFLICT"
4. Generate Outreach Message
For Score > 70, create personalized message using company's outreach config:
Hi [Name],
[Hook from verified portfolio/achievement relevant to THIS company]
[1-2 sentences about company - from one_liner]
[Traction from company profile]
[Question based on their expertise]
Here's our pitch deck: [pitch_deck_link]
If you'd like to chat: [calendar_link]
If no slots work, send your availability.
Best,
[sender_name]
[sender_title]
Output Format
Per Investor
{
"investor": "Name",
"linkedin": "url",
"score": 85,
"current_role": "Partner @ Fund",
"stage_fit": "Pre-seed focus - MATCH",
"thesis_match": ["AI", "B2B SaaS"],
"portfolio_relevant": ["Company1", "Company2"],
"conflicts": [],
"risk_factors": [],
"outreach_hook": "Your investment in X...",
"message": "Full outreach text"
}
Batch Summary
{
"batch": 1,
"total_analyzed": 20,
"strong_fit": 4,
"good_fit": 3,
"not_fit": 13,
"top_candidates": ["Name1", "Name2"]
}
v2 Batch Features
- Pagination: When
execute()returnsnext_offset, useget_page(cache_key, offset, limit)to fetch additional results without re-running the query. - Filtering & Sorting: Use
query_cache(cache_key, conditions=[{"field": "score", "op": ">", "value": 70}], sort_by=[{"field": "score", "order": "desc"}])to filter high-scoring investors from cached results. - Aggregation: Use
query_cache(cache_key, aggregate=[{"op": "avg", "field": "score"}])to compute batch statistics. - Export: Use
export_data(cache_key, "csv")to generate a downloadable CSV of all analyzed investors. - Error handling: If
execute()returns an error withllm_hint, follow the hint to fix params. Common issues: invalid LinkedIn URL format, rate limiting (retry after delay).
Quick Commands
| Command | Action |
|---|---|
/vc-analyst |
Start full onboarding flow |
/vc-analyst analyze [linkedin] |
Analyze single investor (requires prior onboarding) |
/vc-analyst batch [csv-path] |
Analyze batch from CSV |
/vc-analyst update-criteria |
Update investor criteria |
Scoring Reference
See references/scoring.md for detailed criteria and examples.
More from anysiteio/agent-skills
skill-audit
Read-only static security audit of Claude Code skills, commands, and plugins. Analyzes SKILL.md frontmatter, body content, supporting scripts, and hooks for security risks. Use this skill when the user asks to "audit a skill", "review skill security", "check SKILL.md for risks", "scan a plugin for dangerous patterns", "verify skill safety", "check skill permissions", "analyze skill hooks", "audit a skill from GitHub", "review a remote skill", "check a skill by URL", or needs a security assessment of any Claude Code skill, command, or plugin before enabling it.
28anysite-trend-analysis
Discover and track emerging trends across Twitter/X, Reddit, YouTube, LinkedIn, and Instagram using anysite MCP server. Identify viral content, monitor topic momentum, detect trending hashtags, analyze search patterns, and track industry shifts. Supports multi-platform trend detection, sentiment analysis, and momentum tracking. Use when users need to identify emerging trends, track viral content, monitor market shifts, discover trending topics, or analyze social media conversations for strategic insights.
13anysite-lead-generation
Lead generation and prospecting using anysite MCP server for LinkedIn prospect discovery, email finding, company research, and contact enrichment. Extract contacts from websites, find decision-makers at target companies, and build qualified prospect lists for sales, recruiting, and business development. Supports LinkedIn (primary), web scraping for contact extraction, and Instagram business discovery. Use when users need to build prospect lists, find decision-makers, extract contact information, research potential customers, or enrich existing leads with additional data.
12anysite-market-research
Conduct comprehensive market research using Y Combinator data, SEC filings, social media insights, and web scraping via anysite MCP server. Analyze tech markets, research startup ecosystems, study public companies, identify market opportunities, and understand competitive dynamics. Supports startup discovery, industry analysis, public company research, and social sentiment analysis. Use when users need to analyze market opportunities, research industries, evaluate startups, study public companies, or gather market intelligence for strategic planning and investment decisions.
10anysite-competitor-analyzer
Deep competitive intelligence combining web scraping, LinkedIn data, social media monitoring, leadership analysis, GitHub activity, Glassdoor sentiment, and community insights. Analyzes founders/C-level profiles, tracks real-time signals vs quarterly reports, and creates comprehensive competitor profiles. Use when asked to analyze competitors, research leadership teams, investigate market positioning, compare products/pricing, assess strategic threats, or gather intelligence on founders and key executives.
10anysite-brand-reputation
Monitor brand reputation and sentiment across Twitter/X, Reddit, Instagram, YouTube, and LinkedIn using anysite MCP server. Track brand mentions, analyze customer sentiment, monitor social conversations, identify reputation issues, and measure brand health. Supports social media listening, sentiment analysis, mention tracking, and crisis detection. Use when users need to monitor brand mentions, track customer sentiment, identify reputation risks, analyze brand perception, or measure social media presence and brand health across platforms.
7