Use the file in your home directory if the key should not live in the repository. A project-level .cursor/mcp.json containing a key belongs in .gitignore.
02Check the connection
Open Cursor Settings and find the MCP section. nordva should be listed with its tools and a green status. In Agent mode, ask it to run setup_check.
Notes for Cursor
Cursor's agent decides when to call a tool from the tool descriptions; naming the tool in the prompt ("use publish_changelog_entry") removes the guesswork.
Tools that send email or remove content are flagged destructive by the server, and their descriptions tell the agent to confirm with you first.
If the connection fails with 401, the Authorization header is missing or malformed. If a tool answers INVALID_API_KEY or KEY_REVOKED, the header arrived but the key is wrong.
Tools you get
Changelog
publish_changelog_entry
Publish or schedule a changelog entry
All plans
list_changelog_entries
List recent changelog entries
All plans
archive_changelog_entry
Remove a changelog entry from public view
All plans
Waitlist
add_to_waitlist
Add an email to a waitlist
All plans
import_waitlist
Import an existing list into the waitlist
All plans
get_waitlist_stats
Get waitlist stats and top referrers (admin view)
All plans
get_waitlist_leaderboard
Get the public-safe waitlist leaderboard
Indie and Builder
invite_from_waitlist
Invite people from the waitlist
Indie and Builder
export_waitlist
Export waitlist to CSV or JSON
Indie and Builder
get_waitlist_settings
Get current waitlist pause state and custom copy
All plans
update_waitlist_settings
Pause/resume waitlist or set custom landing-page copy
All plans
get_waitlist_embed_snippet
Get HTML snippet to embed the waitlist on the developer's site
All plans
Feedback
submit_feedback
Submit, classify, and route user feedback
Indie and Builder
list_feedback
List recent feedback submissions
All plans
update_feedback
Mark feedback reviewed or resolved, or fix its category
All plans
configure_feedback_routing
Configure a feedback routing destination (email/linear/github/slack)
All plans
Notifications
send_notification
Send an in-app notification to one of your users
Builder
get_unread_notifications
List unread notifications
Builder
mark_notifications_read
Mark notifications as read
Builder
Revenue
get_stripe_connection_status
Check whether Stripe is connected and syncing
All plans
get_revenue_summary
Get MRR, subscriptions, growth and churn from Stripe
Indie and Builder
get_revenue_series
Get revenue over time from Stripe
Indie and Builder
list_recent_payments
List recent payments and cancellations from Stripe
Indie and Builder
Contacts
list_contacts
List people across waitlist, feedback, subscribers and Stripe
All plans
get_contact
Get one person across every primitive
All plans
update_contact
Set a contact's stage or note
All plans
Attribution
get_attribution_report
See which signup sources produce paying customers
Indie and Builder
Project and domains
get_insights
Get a summary of the project over a period
All plans
setup_check
Verify Nordva Launch auth and report plan
All plans
get_project
Read current project name and slug
All plans
update_project
Rename project or change its public URL slug
All plans
register_allowed_origin
Add a CORS-allowed origin to the project
All plans
list_allowed_origins
List the project's CORS-allowed origins
All plans
register_custom_domain
Add a custom hostname for the project's widget (Builder only)
Builder
list_custom_domains
List the project's custom hostnames
All plans
get_custom_domain_status
Force-refresh a custom domain's verification status