The Cover Letter Engine for AI Agents
Your agent finds the jobs. StoryLenses writes the letters that get interviews. Add narrative-driven cover letter generation to any MCP-compatible agent in minutes.
Get Started5 Composable Tools
A complete cover letter workflow for your agent — from job analysis to quality assurance.
storylenses_analyze_jobExtract 15+ structured fields from a job posting — role requirements, company challenges, culture signals, recruiter priorities.
storylenses_match_profileMatch a candidate profile against job data — identifies fit score, matching skills, career gaps, and the strongest narrative angle.
storylenses_generate_letterGenerate a story-driven cover letter using matched data and a selected narrative archetype. Supports 4 languages.
storylenses_quality_checkScore and evaluate a cover letter for relevance, narrative strength, and completeness. Returns actionable feedback.
storylenses_list_archetypesReturn available narrative archetypes with descriptions so the agent or user can select a style.
Why StoryLenses, Not a Raw LLM Call?
Your agent can send a CV and job description to GPT with a prompt. The result reads like AI slop.
StoryLenses uses narrative science — 15+ structural archetypes, deep job posting analysis, and profile-to-role matching — to produce letters that read like a human strategist wrote them. The difference is not in the writing quality. It is in the thinking that happens before the writing starts.
Raw LLM Call
- ✗ Generic 3-paragraph structure
- ✗ No job posting analysis
- ✗ No profile matching
- ✗ Same output every time
- ✗ Sounds like a chatbot
StoryLenses MCP
- ✓ 15+ narrative archetypes
- ✓ 15+ structured job fields extracted
- ✓ CV-to-role matching with gap analysis
- ✓ Unique output per job/candidate pair
- ✓ Reads like a human strategist
Quickstart
Connect in under 2 minutes.
Claude Desktop
{
"mcpServers": {
"storylenses": {
"url": "https://mcp.storylenses.app/sse",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}Cursor / VS Code
{
"mcp": {
"servers": {
"storylenses": {
"url": "https://mcp.storylenses.app/sse",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
}TypeScript SDK
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";
const transport = new SSEClientTransport(
new URL("https://mcp.storylenses.app/sse"),
{ requestInit: { headers: { Authorization: "Bearer YOUR_API_KEY" } } }
);
const client = new Client({ name: "my-agent", version: "1.0" });
await client.connect(transport);Example Workflow
// 1. Analyze the job posting
const job = await client.callTool("storylenses_analyze_job", {
job_url: "https://linkedin.com/jobs/view/12345"
});
// 2. Match candidate profile
const match = await client.callTool("storylenses_match_profile", {
job_analysis_id: job.id,
candidate_profile: { cv_text: resumeText }
});
// 3. Generate cover letter
const letter = await client.callTool("storylenses_generate_letter", {
job_analysis_id: job.id,
match_id: match.id,
archetype: match.suggested_archetype,
locale: "en"
});
// 4. Quality check
const score = await client.callTool("storylenses_quality_check", {
letter_text: letter.letter_text,
job_analysis_id: job.id
});
console.log(letter.letter_text); // Story-driven cover letter
console.log(score.score); // 87/100Agent Pricing
Pay for what your agents use.
Developer
- ✓ 200 generations/month
- ✓ All 5 tools
- ✓ All 4 languages
- ✓ Priority support
- ✓ Usage analytics
Scale
- ✓ 1,000 generations/month
- ✓ All 5 tools
- ✓ All 4 languages
- ✓ Priority support
- ✓ SLA guarantee
- ✓ Dedicated onboarding
Enterprise
- ✓ Unlimited generations
- ✓ White-label option
- ✓ Custom archetypes
- ✓ Dedicated support
- ✓ Custom SLA
Overage: $0.15 per generation beyond plan limit
Works With Any MCP Client
Available On
Build the Career Agent Your Users Deserve
First 10 generations are free. No credit card required.
Get Your API Key