Skip to content

Tools

Every action our AI employees take goes through a tool server. Each server is a Python process that exposes typed tools with explicit parameters and structured responses.

Architecture

mcp-servers/
├── shared/              JWT caching and API helpers (used by all Varia servers)
├── varia-content/       Services + content CRUD, deploy, tags
├── varia-pages/         Intelligence landing pages
├── varia-platform/      Orgs, brands, config, users
├── varia-intelligence/  Leads from AI experiences
├── varia-outreach/      Campaigns, lists, leads, domains, inbox, LinkedIn, pipeline
├── linkedin/            Sales Navigator automation (Playwright)
├── snovio/              Email finding (Snov.io API)
├── lead-pipeline/       LinkedIn profile parsing + scoring (GPT-4.1-mini)
├── google-workspace/    Gmail API (OAuth 2.0)
└── slack/               Slack workspace messaging and management

Server Summary

ServerToolsAuthPurpose
varia-content17JWTServices and content CRUD, deployment, tagging
varia-pages11JWTIntelligence landing pages: create, configure, leads
varia-platform12JWT + MongoDB + CloudflareOrgs, brands, users, subdomains
varia-intelligence8JWTLeads from AI experiences
varia-outreach39NoneFull outreach pipeline
linkedin13Browser sessionSales Navigator automation
snovio6OAuthEmail finding from LinkedIn + name/domain
lead-pipeline1OpenAI APIProfile parsing and scoring
google-workspace13Google OAuth 2.0Gmail: search, read, send, reply, labels, attachments
slack16Bot TokenSlack workspace messaging and management

Authentication

Varia servers (content, pages, platform, intelligence) share a JWT caching layer via shared/auth.py. Login once, token is reused across servers (3500s TTL).

varia-outreach is unauthenticated. All endpoints are open.

linkedin uses a persistent Chrome profile. You log in manually once and the session persists.

snovio uses OAuth with client credentials. Token auto-refreshes on expiry.

google-workspace uses Google OAuth 2.0 with per-account token caching. Supports multiple Gmail accounts.

slack uses a Bot Token for Slack Web API access.

Configuration

All servers are configured in .mcp.json at the repo root. They start automatically when Claude Code launches.

Varia