Back to Browse

Laddro Career MCP Server

Developer ToolsModerate6.8MCP RegistryLocalRemote
Free

Server data from the Official MCP Registry

Tailor resumes, generate cover letters, render CVs as PDF, and browse 22+ templates.

About

Tailor resumes, generate cover letters, render CVs as PDF, and browse 22+ templates.

Remote endpoints: streamable-http: https://mcp.laddro.com/mcp

Security Report

6.8
Moderate6.8Moderate Risk

This MCP server for the Laddro Career API demonstrates solid security practices with proper OAuth2 authentication, scope-based authorization filtering, and no hardcoded credentials. The server acts as a thin wrapper around a backend API and does not perform dangerous operations locally. Minor code quality observations exist around error handling and input validation, but these are typical for an MCP server of this category and do not constitute security vulnerabilities. Supply chain analysis found 1 known vulnerability in dependencies (0 critical, 1 high severity). Package verification found 1 issue.

6 files analyzed · 6 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

env_vars

Check that this permission is expected for this type of plugin.

What You'll Need

Set these up before or after installing:

Your Laddro Career API key from console.laddro.comRequired

Environment variable: LADDRO_API_KEY

How to Install & Connect

Available as Local & Remote

This plugin can run on your machine or connect to a hosted endpoint. during install.

Documentation

View on GitHub

From the project's GitHub README.

@laddro/career-mcp

smithery badge

MCP server for the Laddro Career API. Gives AI agents access to resume tailoring, cover letter generation, PDF export, and template browsing.

Setup

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "laddro-career": {
      "command": "npx",
      "args": ["@laddro/career-mcp"],
      "env": {
        "LADDRO_API_KEY": "laddro_live_..."
      }
    }
  }
}

Claude Code

claude mcp add laddro-career -- npx @laddro/career-mcp

Set the environment variable LADDRO_API_KEY before running.

Remote HTTP

Use the hosted Streamable HTTP endpoint:

https://mcp.laddro.com/mcp

Send your Laddro API key on the MCP initialize request:

Authorization: Bearer laddro_live_...

or:

x-api-key: laddro_live_...

Available tools

ToolDescription
laddro.templates.listBrowse all 22 resume templates
laddro.templates.getGet template colors and fonts
laddro.fonts.listAll available font families
laddro.languages.listAll 14 supported locales
laddro.models.listAI providers for BYOK
laddro.resumes.listUser's resumes
laddro.resumes.getResume metadata
laddro.resumes.renderRe-render with new template settings
laddro.resumes.tailorAI-tailor resume for a job
laddro.resumes.exportExport as PDF
laddro.coverLetters.listUser's cover letters
laddro.coverLetters.getCover letter metadata
laddro.coverLetters.createCreate manually
laddro.coverLetters.generateAI-generate from resume + job
laddro.coverLetters.renderRender with template settings
laddro.settings.getCurrent AI provider config
laddro.settings.updateModelSet BYOK provider
laddro.settings.deleteModelRemove BYOK config

Connector (OAuth) mode

Behind the MCP_CONNECTOR_ENABLED flag (default off). When enabled and a request carries Authorization: Bearer lad_at_* (a Laddro OAuth access token), the server runs an OAuth connector session that forwards the token to laddro-backend (service.laddro.com) instead of career-api. It also serves GET /.well-known/oauth-protected-resource (RFC 9728) and answers unauthenticated /mcp calls with 401 + WWW-Authenticate: Bearer resource_metadata=... so OAuth clients can discover the authorization server. With the flag off, behaviour is unchanged (no discovery route, no 401 enforcement, all 18 tools via career-api).

Connector tools (OAuth sessions only): "You write the content. Laddro stores it and renders the PDF."

ToolScopeDescription
laddro.resume.schemaJSON Schema for resume content
laddro.resume.createresumes:writeCreate a resume, returns { resumeId }
laddro.resume.updateresumes:writeFull-replace a resume, returns { resumeId, updatedAt }
laddro.coverLetter.schemaJSON Schema for cover-letter content

Environment variables

VariableRequiredDescription
LADDRO_API_KEYYes for stdio; optional fallback for HTTPYour Laddro API key
LADDRO_BASE_URLNoOverride API URL (default: https://api.laddro.com)
MCP_CONNECTOR_ENABLEDNotrue enables OAuth connector mode (default off)
LADDRO_BACKEND_URLNoBackend base URL for connector tools (default: https://service.laddro.com)
MCP_PUBLIC_URLNoThis server's public URL for OAuth metadata (else derived from forwarded headers)

Development

npm ci
npm test

npm test builds the TypeScript package and runs MCP contract tests for auth handling, tool metadata, and handler routing.

Releases

This package uses Changesets and SemVer.

  • Patch: bug fixes, docs, tests, internal hardening.
  • Minor: new backwards-compatible MCP tools or capabilities.
  • Major: breaking tool names, schemas, auth, or transport behavior.

Every PR that changes the published package should include a changeset:

npm run changeset

After the PR merges to main, GitHub Actions opens a release PR with the version bump and changelog. Merging that release PR publishes the package to npm and creates the GitHub release. The Cloud Run deploy workflow also runs on main, so hosted MCP updates automatically after release merges.

MCP registry

This server is listed in the official MCP registry as com.laddro/career. server.json is the registry manifest; scripts/sync-version-metadata.mjs keeps its version in sync with the npm package on every release.

Publishing is automated: .github/workflows/publish-registry.yml runs whenever a release changes server.json on main and pushes the new version to the registry. Auth is DNS-based — the Ed25519 public key lives in the laddro.com TXT record, and the matching private key (hex) is stored as the MCP_PUBLISHER_ED25519_KEY repo secret.

To publish (or catch up) manually:

MCP_PUBLISHER_ED25519_KEY=<hex-private-key> ./scripts/publish-registry.sh

Links

License

MIT

Reviews

No reviews yet

Be the first to review this server!

Laddro Career MCP Server - Tailor resumes, generate cover letters, render CVs as PDF, | MCP Marketplace