Skip to main content

A structured career profile that AI tools can query. Local-first vault with MCP server.

Project description

Traitprint

A structured career profile that AI tools can query.

Your resume is a lossy snapshot. Your Traitprint is a live, queryable record of your skills, experience, stories, and philosophy — kept on your laptop, shared on your terms.

Traitprint ships as two products:

  • Traitprint Local (pip install traitprint) — a local-first vault and MCP server. Zero accounts, zero network calls, MIT-licensed.
  • Traitprint Cloud (pip install 'traitprint[cloud]') — opt-in cloud sync on top of Local: a public profile at traitprint.com/profile/you, a hosted MCP endpoint, and cross-device sync.

Traitprint Local

pip install traitprint
traitprint init
traitprint mcp-serve

Point Claude Desktop (or any MCP client) at traitprint mcp-serve and any AI assistant you use can answer questions about your career: which projects used Postgres, what your management philosophy is, the story behind a job change. No account. No cloud. No vendor lock-in. Your vault is a file on your machine.

A fresh pip install traitprint ships with no networking dependencyhttpx is not even installed. The base CLI cannot make a network request.

Traitprint Cloud (opt-in)

When you want a public profile, job matching, or a chat-ready twin that recruiters can talk to, install the cloud extras:

pip install 'traitprint[cloud]'
traitprint login
traitprint push

…and you're live at traitprint.com/profile/you. Without the [cloud] extras, traitprint login / logout / push / pull print:

Error: Cloud sync requires: pip install traitprint[cloud]

Who it's for

Traitprint is useful if you want your career data to be structured, portable, and queryable — not locked inside a PDF or a recruiter platform. Three concrete examples:

🎯 The job seeker

"I'm tired of rewriting my resume for every application, and I want recruiters who use AI tools to actually find me."

Build your vault once with traitprint init and vault add-*. Run traitprint push to publish a profile at traitprint.com/profile/you. Recruiters' agents query your structured profile directly — skills, dates, stories — instead of guessing from keyword-matched PDFs.

🧑‍💻 The developer using Claude Desktop / Cursor / any MCP client

"I want my AI assistant to know my actual stack, projects, and decisions — not generic advice."

Run traitprint mcp-serve and add it to your MCP client config. Your assistant can now call search_skills, find_story, and get_philosophy to ground its suggestions in your real history. Ask "draft a cover letter for this role" and it pulls from the vault, not a hallucinated resume.

🧭 The career coach

"I work with a dozen clients and I need their career data structured the same way so I can compare, advise, and produce portfolios."

Use traitprint import-resume (BYOK LLM) to pull each client's resume into a structured vault. Edit, version, and export polished portfolios. Same schema for every client means coaching workflows compose instead of starting from scratch each time.

What's in the box

  • Local vault — versioned, SQL-queryable storage on your laptop.
  • MCP server (stdio)get_profile_summary, search_skills, find_story, get_philosophy.
  • CLItraitprint init, traitprint vault add-skill, add-experience, add-story, add-philosophy, add-education, remove, history, diff, rollback, export, import-resume.
  • Resume import with BYOK LLM (Anthropic, OpenAI, Ollama, OpenRouter) — install with pip install 'traitprint[import]'.
  • Optional cloud synclogin, logout, push, pull. Install with pip install 'traitprint[cloud]'.

Local vs Cloud

Traitprint is local-first. Everything below runs on your laptop with no account, no network calls, and no paywall.

Capability Free forever, no account Requires traitprint.com account
Create + edit your vault (init, vault add-*, remove)
Version history, diff, rollback
MCP server for Claude Desktop / any MCP client (stdio)
Resume import via BYOK LLM (Anthropic, OpenAI, Ollama, OpenRouter)
SQL-queryable Dolt-backed storage
MIT-licensed source, fork and self-host
Public profile at traitprint.com/profile/you
Hosted MCP endpoint reachable by recruiter agents
Job matching against a shared job index
Digital-twin chat
Cross-device sync

A fresh install never talks to traitprint.com. Cloud features are opt-in via traitprint login and traitprint push.

Full details and migration guide: docs/why-local.md

Privacy commitment (what leaves your machine on push, what we store, what we don't do, how to delete everything): docs/privacy.md

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

traitprint-0.6.0.tar.gz (78.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

traitprint-0.6.0-py3-none-any.whl (55.2 kB view details)

Uploaded Python 3

File details

Details for the file traitprint-0.6.0.tar.gz.

File metadata

  • Download URL: traitprint-0.6.0.tar.gz
  • Upload date:
  • Size: 78.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for traitprint-0.6.0.tar.gz
Algorithm Hash digest
SHA256 59cac1d9513e085b13c2e828143030e27a1980008bb21a0425e19d155ec8f862
MD5 ce3052cf81c3c4b75e6696e95c05d8c4
BLAKE2b-256 10f312d1679073d02552d612532f7241e4bd1bf11d5df64856b9cb3243a3ec3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for traitprint-0.6.0.tar.gz:

Publisher: publish.yml on DataViking-Tech/traitprint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file traitprint-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: traitprint-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 55.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for traitprint-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 76c9f65a788258ed4e89b5f22f7f1cbfbba3c2fd598c07dab58ee41cdd934ce1
MD5 b6d7e757f78e97f18fad356e450d2815
BLAKE2b-256 7b08fc4a0eb40a62f4bc8863f2c8332b1f63bdeedaf1c36a84fc8cc38a4d17d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for traitprint-0.6.0-py3-none-any.whl:

Publisher: publish.yml on DataViking-Tech/traitprint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page