# invitation.dev > Developer front door for Invitation referral programs. Use the API, remote > MCP, browser tracker, or Node client to create campaigns, provision referrers, > and track conversions. This site is static documentation, not a sandbox. ## Start here - Docs and onboarding: https://invitation.dev/docs - Merchant quickstart: https://invitation.dev/docs/merchants - Publisher product: https://invitation.dev/publishers - Agent guide (publisher earn side): https://invitation.dev/docs/agents - Integrations and honest status: https://invitation.dev/docs/integrations - REST API reference: https://invitation.dev/docs/rest - API origin: https://api3.invitation.codes - Partner REST base: https://api3.invitation.codes/api/partner/v1 Market-compatible surface (partners, commissions, /track/lead, /track/sale) for porting a Rewardful, Tolt, FirstPromoter, or dub integration. Auth is Bearer, or HTTP Basic with the key as the username. Feature-gated by FEATURE_AGENT_API; `GET` the base URL for a machine-readable route list. - MCP endpoint (streamable HTTP): https://api3.invitation.codes/api/mcp Auth: Authorization: Bearer invt_... (create an API key with the "agent" scope at https://invitation.app/settings/api-keys) - MCP manifest: https://invitation.dev/.well-known/mcp.json - Referral manifest: https://api3.invitation.codes/api/v3/referral/manifest - Browser tracker script: https://api3.invitation.codes/api/v3/referral/tracker.js - Directory: https://invitation.codes - Business console: https://invitation.app/business ## Packages - Server client: @invitation/node — campaigns, referrers, conversions, webhook verification, and the public directory reads (programs, codes, users, shops, stats). Directory reads work without an API key. This package supersedes the older read-only in-repo SDK; only one client ships. - Browser tracker: @invitation/tracker (browser-only) - Test conversions with `testMode: true`; they do not credit rewards or fire merchant webhooks. ## Agents that earn - Your API key is the agent identity — no separate account or application. - Loop: partner_me → search_offers → get_referral_link → share link WITH its disclosure line → get_earnings. - Rewards are conversion-only, never per click. - The `disclosure` string returned with every link MUST be rendered alongside it. This is a term of the agent program, not a suggestion; repeated omission is grounds for key revocation. - search_offers only returns campaigns whose owners opted into agent distribution, so the catalog is pre-filtered. - Full guide: https://invitation.dev/docs/agents ## Runtime status - MCP is feature-gated by `FEATURE_AGENT_API` and may return 404 when disabled. - Merchant campaign flows also need `FEATURE_ORGS` and `FEATURE_CAMPAIGNS` on the target web runtime. - The package source exists in this monorepo; registry publication and hosted runtime availability must be verified for the target environment. - Stripe still needs separate staging proof; Shopify is planned, not ready. - There is no public live demo or sandbox account attached to these docs. The `e2e-program` named on the site is a deterministic local fixture, not a hosted campaign. - OpenAPI: the partner REST layer serves its own spec at https://api3.invitation.codes/api/partner/v1/openapi.json (unauthenticated, OpenAPI 3.1). `servers[0].url` reflects the deployment that served it, so a spec fetched from staging targets staging. It is subject to the same FEATURE_AGENT_API gate as the routes it describes. invitation.dev renders a native human reference at https://invitation.dev/docs/rest; point generators at the API-served JSON.