Who is responsible
CVIndex is a project by Kira Kuzmenko.
Information you provide
When you create an account, CVIndex processes your sign-in email, name, account identifier and authentication information. Passwords are stored as hashes. Email sign-in uses a temporary verification code. Google or LinkedIn sign-in supplies profile information such as a provider identifier, name, email and profile picture.
A professional index can contain your role, location, photo URL, summary, work experience, projects, skills, supporting links and contact details you choose to publish. Publication confirmation and update times are recorded. Your sign-in email is not automatically displayed as a public contact. A Google or LinkedIn profile picture can be used on your public index when you have not supplied another photo.
Public profiles and AI access
Saving an index after confirming publication makes it publicly accessible. It can appear in the catalogue, search results, structured data, Markdown exports and responses to the public MCP interface. Anyone, including recruiters, search engines and AI systems, can access the published content.
Public availability does not mean that third parties have unrestricted legal rights to reuse personal data. However, CVIndex cannot guarantee how external recipients will process or retain copies. Only publish information you intend to share publicly. Do not include confidential work, sensitive personal information or another person’s private details without an appropriate basis.
Purposes and legal bases
The proposed basis for creating an account, authenticating you, providing your index and processing your instructions is performance of the service agreement (Article 6(1)(b) GDPR). Optional public disclosure is based on your publication consent (Article 6(1)(a)); you can withdraw it by removing your index. Security, abuse prevention and limited profile readership statistics are intended to rely on legitimate interests (Article 6(1)(f)), subject to a documented assessment and your right to object. Applicable statutory requirements may require processing under Article 6(1)(c).
Essential account information is required to provide an account; public profile details are provided by you. CVIndex does not make automated hiring or eligibility decisions. External users of a profile make their own decisions.
Readership statistics and technical data
Requests to published indexes can record the profile identifier, time, requested format, browser or agent identifier (User-Agent) and a classification such as human, search engine or AI agent. For human visits, a keyed daily hash derived from IP address and User-Agent distinguishes visitors within a day. The raw IP is not stored in this statistics collection; the hash is pseudonymous, not a guarantee of anonymity.
Profile owners can see readership totals and information about automated requests. The web server and infrastructure may separately process IP addresses and request logs for operation and security.
Service providers and recipients
Infrastructure providers process data needed to host and operate CVIndex. Resend handles authentication email delivery. Google and LinkedIn process requests when you choose their sign-in methods. YouTube receives connection information when an embedded video on the article page loads. External image hosts receive requests when a profile photo is displayed; the DiceBear avatar service receives a name-based seed for generated avatars, along with normal connection information.
An AI agent you connect with a personal MCP key may read, update or delete your index and retrieve its statistics. Share that key only with an agent you trust and revoke it in your account when access is no longer needed. The service stores a hash and a short prefix of the key, rather than the full key.
Where GDPR applies to transfers outside the EEA, the operator must establish an applicable adequacy decision or appropriate safeguards, such as standard contractual clauses.
Retention and deletion
Account data remains while your account is active, subject to an account deletion request and any lawful retention requirement. Removing an index removes its published content from the active profile record, but leaves the account, name, authentication data and potentially existing readership records. It does not delete copies held independently by search engines or other recipients.
Sign-in sessions are configured for up to 30 days. Email codes are valid for 15 minutes; expiry of a code is not a promise of deletion of its database record. Readership statistics have a configured 400-day expiry; the operator must ensure that the database expiry index is installed and operating. Browser preferences remain until site data is cleared.
Your choices and rights
You can edit your index, download it as Markdown, remove the public index and revoke a personal MCP key through your account. A Markdown download covers the profile, not necessarily all personal data held about you. Full account deletion is a separate request; removing the index is not the same action.
Where GDPR applies, you can request access, rectification, erasure, restriction and portability where the relevant conditions are met. You may object to processing based on legitimate interests, withdraw consent without affecting the lawfulness of earlier processing, and complain to a competent supervisory authority, including in your place of habitual residence, work or the alleged infringement.
Requests may require proportionate identity verification. GDPR requests are normally answered within one month; where a lawful extension applies, the requester must be informed within that first month.
Security and updates
The application uses measures including password hashing, protected sessions, checks on account-changing requests and hashed personal MCP keys. No service can guarantee absolute security. Keep your sign-in credentials and agent keys private.
Material changes to this policy should be clearly communicated before taking effect; new consent should be requested where required. The document version and revision date appear above.