Skip to content

Interface: CredentialDef

Defined in: packages/core/src/credentials/credentials.ts:155

Declaration of a single marketplace credential.

Properties

allowed?

ts
readonly optional allowed: readonly string[];

Defined in: packages/core/src/credentials/credentials.ts:211

Allowed values when type is 'select'. The marketplace renders this as a <select> dropdown.

Example

ts
{ type: 'select', allowed: ['us-east-1', 'eu-west-1', 'ap-southeast-1'] }

default_value?

ts
readonly optional default_value: string;

Defined in: packages/core/src/credentials/credentials.ts:224

Default value pre-filled in the marketplace form. For 'boolean' use 'true' or 'false' (strings). For 'number' use the value as a string, e.g. '3306'.

Example

ts
{ type: 'number', default_value: '3306' }   // MySQL default port
{ type: 'boolean', default_value: 'false' }  // SSL disabled by default

description

ts
readonly description: string;

Defined in: packages/core/src/credentials/credentials.ts:163

Short description of where the user can obtain this value. Displayed as helper text beneath the input field.


docs_url?

ts
readonly optional docs_url: string;

Defined in: packages/core/src/credentials/credentials.ts:200

URL to documentation for obtaining this credential.

Example

ts
'https://docs.upstash.com/redis/howto/connectwithupstashdataapi'

group?

ts
readonly optional group: string;

Defined in: packages/core/src/credentials/credentials.ts:194

Display group name for grouping related credentials in the UI.

Example

ts
'Upstash Connection'

label

ts
readonly label: string;

Defined in: packages/core/src/credentials/credentials.ts:157

Human-readable label shown in the marketplace UI.


oauth?

ts
readonly optional oauth: OAuthConfig;

Defined in: packages/core/src/credentials/credentials.ts:234

OAuth 2.0 BYOA configuration. Only valid when type is 'oauth2'.

Instructs the Vinkius Cloud how to orchestrate the OAuth flow using the buyer's own Client ID + Client Secret. The platform handles token exchange, storage, refresh — the MCP server just calls requireCredential() and receives a valid Bearer token.


placeholder?

ts
readonly optional placeholder: string;

Defined in: packages/core/src/credentials/credentials.ts:169

Placeholder text shown inside the empty input field.

Example

ts
'https://xxxx-xxxx-xxxx.upstash.io'

required?

ts
readonly optional required: boolean;

Defined in: packages/core/src/credentials/credentials.ts:181

Whether the marketplace must require this credential before activation.

Default

ts
true

sensitive?

ts
readonly optional sensitive: boolean;

Defined in: packages/core/src/credentials/credentials.ts:188

Whether the value is sensitive (masked in logs and inspector TUI). Always true for api_key and password types.

Default

ts
false

type?

ts
readonly optional type: CredentialType;

Defined in: packages/core/src/credentials/credentials.ts:175

Input type — controls masking and validation in the marketplace UI.

Default

ts
'string'