wixzel-voice-mcp 0.4.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +98 -0
- package/README.md +6 -2
- package/dist/client.d.ts +10 -2
- package/dist/client.js +11 -3
- package/dist/client.js.map +1 -1
- package/dist/guide.js +12 -3
- package/dist/guide.js.map +1 -1
- package/dist/http.d.ts +3 -1
- package/dist/http.js +44 -5
- package/dist/http.js.map +1 -1
- package/dist/schemas.d.ts +8 -1
- package/dist/schemas.js +9 -2
- package/dist/schemas.js.map +1 -1
- package/dist/server-card.d.ts +72 -0
- package/dist/server-card.js +76 -0
- package/dist/server-card.js.map +1 -0
- package/dist/server.d.ts +1 -1
- package/dist/tooling.d.ts +10 -0
- package/dist/tooling.js +19 -0
- package/dist/tooling.js.map +1 -1
- package/dist/tools/agents.d.ts +22 -0
- package/dist/tools/agents.js +107 -4
- package/dist/tools/agents.js.map +1 -1
- package/dist/tools/api-keys.d.ts +7 -0
- package/dist/tools/billing.d.ts +1 -0
- package/dist/tools/billing.js +1 -1
- package/dist/tools/billing.js.map +1 -1
- package/dist/tools/callers.d.ts +13 -0
- package/dist/tools/callers.js +49 -0
- package/dist/tools/callers.js.map +1 -0
- package/dist/tools/calls.d.ts +1 -0
- package/dist/tools/calls.js +3 -1
- package/dist/tools/calls.js.map +1 -1
- package/dist/tools/engines.js +1 -0
- package/dist/tools/engines.js.map +1 -1
- package/dist/tools/index.js +8 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/knowledge-bases.d.ts +11 -0
- package/dist/tools/knowledge-bases.js +78 -1
- package/dist/tools/knowledge-bases.js.map +1 -1
- package/dist/tools/mascots.d.ts +35 -0
- package/dist/tools/mascots.js +140 -0
- package/dist/tools/mascots.js.map +1 -0
- package/dist/tools/mcp-servers.d.ts +59 -0
- package/dist/tools/mcp-servers.js +105 -0
- package/dist/tools/mcp-servers.js.map +1 -0
- package/dist/tools/phone-numbers.d.ts +12 -0
- package/dist/tools/phone-numbers.js +26 -3
- package/dist/tools/phone-numbers.js.map +1 -1
- package/dist/tools/sip-trunks.d.ts +11 -0
- package/dist/tools/sip-trunks.js +30 -0
- package/dist/tools/sip-trunks.js.map +1 -1
- package/dist/tools/tools.d.ts +62 -0
- package/dist/tools/tools.js +102 -0
- package/dist/tools/tools.js.map +1 -0
- package/dist/tools/voices.d.ts +26 -0
- package/dist/tools/voices.js +121 -0
- package/dist/tools/voices.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,103 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.8.0 (2026-10-21)
|
|
4
|
+
|
|
5
|
+
Callers: who called the account's agents, and the blocklist.
|
|
6
|
+
|
|
7
|
+
- `list_callers` lists who has called the account's agents, one record per
|
|
8
|
+
person per agent, with `agent_id` and `blocked` filters. `blocked: true`
|
|
9
|
+
gives an agent's blocklist.
|
|
10
|
+
- `get_caller` fetches one caller: their name and contact, how those were
|
|
11
|
+
learned, where and on what they last called from, and how many calls
|
|
12
|
+
they made.
|
|
13
|
+
- `update_caller` blocks or unblocks a caller. Blocking stops that person
|
|
14
|
+
calling the agent from its share link, its website widget, the app, or
|
|
15
|
+
by phone. `blocked: false` lets them call again.
|
|
16
|
+
- `list_calls` takes `caller_id`, and calls carry `caller` (who called)
|
|
17
|
+
for inbound calls and calls through an agent's mascot.
|
|
18
|
+
- The caller tools use the `calls:read` and `calls:write` scopes.
|
|
19
|
+
|
|
20
|
+
## 0.7.0 (2026-10-21)
|
|
21
|
+
|
|
22
|
+
Mascots are part of agents. This is a breaking change.
|
|
23
|
+
|
|
24
|
+
Every agent now has exactly one mascot, shown in its `mascot` field. The
|
|
25
|
+
separate mascot API is gone, so its tools are gone too.
|
|
26
|
+
|
|
27
|
+
- Removed `list_mascots`, `get_mascot`, `generate_mascot`, `create_mascot`,
|
|
28
|
+
`update_mascot`, `delete_mascot`, `give_mascot_agent` and
|
|
29
|
+
`rotate_mascot_share_id`, and the `mascots:read` and `mascots:write`
|
|
30
|
+
scopes. Mascot tools now need `agents:write`.
|
|
31
|
+
- `generate_agent` builds an agent from a website, a description, or both,
|
|
32
|
+
waits up to 90 seconds for its mascot, and returns the agent.
|
|
33
|
+
- `update_agent_mascot` replaces a mascot's spec or changes its welcome
|
|
34
|
+
message. Sharing is still turned on in the console.
|
|
35
|
+
- `generate_agent_mascot` gives an agent's mascot a new look and waits for
|
|
36
|
+
it the same way.
|
|
37
|
+
- `rotate_agent_mascot_share_id` gives a mascot a new share link.
|
|
38
|
+
- `create_agent` takes an optional `mascot` with `spec` and
|
|
39
|
+
`welcome_message`. Without it the agent gets the default green Wixzel
|
|
40
|
+
mascot.
|
|
41
|
+
- `delete_agent` deletes the agent's mascot too.
|
|
42
|
+
|
|
43
|
+
## 0.6.0 (2026-10-20)
|
|
44
|
+
|
|
45
|
+
Agents can give a business a mascot, wire their own tools in, and teach an
|
|
46
|
+
agent from documents.
|
|
47
|
+
|
|
48
|
+
- Mascots: `list_mascots`, `get_mascot`, `generate_mascot` (from a website,
|
|
49
|
+
a description, or nothing), `create_mascot`, `update_mascot`,
|
|
50
|
+
`delete_mascot`, `give_mascot_agent` and `rotate_mascot_share_id`.
|
|
51
|
+
- Tools: `list_tools`, `get_tool`, `create_tool`, `update_tool`,
|
|
52
|
+
`delete_tool` and `test_tool`, for webhook tools an agent calls mid-call
|
|
53
|
+
and client tools a caller's app runs.
|
|
54
|
+
- Knowledge: `import_knowledge_base` and `import_knowledge_file` draft a
|
|
55
|
+
knowledge base from a website or a document without saving it, and
|
|
56
|
+
`list_knowledge_files`, `add_knowledge_file`, `get_knowledge_file` and
|
|
57
|
+
`delete_knowledge_file` manage the documents agents search during calls.
|
|
58
|
+
|
|
59
|
+
## 0.5.0 (2026-10-09)
|
|
60
|
+
|
|
61
|
+
Agents can find and buy phone numbers on the user's carrier account.
|
|
62
|
+
|
|
63
|
+
- `list_carrier_numbers` lists the numbers on the carrier account behind a
|
|
64
|
+
trunk connected in one step, and `search_available_numbers` finds numbers
|
|
65
|
+
the carrier will sell, with its prices. Both only read.
|
|
66
|
+
- `purchase_phone_number` buys one on the user's own carrier account, billed
|
|
67
|
+
by the carrier. It is annotated as a spend, and its description tells the
|
|
68
|
+
model to confirm the number and price with the user first. It needs the new
|
|
69
|
+
`phone_numbers:purchase` scope, which a connected AI client only gets when
|
|
70
|
+
the user ticks it.
|
|
71
|
+
- `create_phone_number` on a carrier-connected trunk now also points the
|
|
72
|
+
number at Wixzel Voice at the carrier.
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
Agents can now use other apps' MCP servers during a call.
|
|
76
|
+
|
|
77
|
+
- Seven new tools manage them: `list_mcp_servers`, `get_mcp_server`,
|
|
78
|
+
`create_mcp_server`, `update_mcp_server`, `delete_mcp_server`,
|
|
79
|
+
`refresh_mcp_server` and `connect_mcp_server_oauth`. They need the new
|
|
80
|
+
`mcp_servers:read` and `mcp_servers:write` scopes.
|
|
81
|
+
- `create_agent` and `update_agent` take `mcp_server_ids`, the servers whose
|
|
82
|
+
enabled tools the agent may use during calls.
|
|
83
|
+
|
|
84
|
+
Agents can speak in a cloned voice.
|
|
85
|
+
|
|
86
|
+
- Six new tools manage cloned voices: `list_voices`, `get_voice`,
|
|
87
|
+
`preview_voice`, `create_voice_clone`, `update_voice` and `delete_voice`.
|
|
88
|
+
They need the new `voices:read` and `voices:write` scopes. Put a voice's
|
|
89
|
+
`provider_voice_id` in an agent's `voice.tts.voice`.
|
|
90
|
+
- `create_voice_clone` charges a one-off fee ($1.00 on the hosted service), so
|
|
91
|
+
it is annotated as a spend, and its description tells the model to confirm
|
|
92
|
+
with the user first and to set `consent` only once the user has said the
|
|
93
|
+
voice is theirs or the speaker agreed. It takes the recordings as
|
|
94
|
+
`audio_urls`, public https links: an MCP client cannot upload files, so a
|
|
95
|
+
file on disk goes through the dashboard or the SDKs. It takes no
|
|
96
|
+
idempotency key, because the API does not honour one on this endpoint.
|
|
97
|
+
- `preview_voice` returns the clip as MCP audio content (`audio/mpeg`), with a
|
|
98
|
+
line of text for clients that cannot play it.
|
|
99
|
+
- `list_usage_events` accepts `voice_clone` as a component.
|
|
100
|
+
|
|
3
101
|
## 0.4.0 (2026-09-29)
|
|
4
102
|
|
|
5
103
|
Renamed from `wixzel-phone-mcp` to `wixzel-voice-mcp`, because the product is
|
package/README.md
CHANGED
|
@@ -64,11 +64,15 @@ Same shape as `.mcp.json` above: command `npx`, args `["-y", "wixzel-voice-mcp"]
|
|
|
64
64
|
| Engines | `list_engines` |
|
|
65
65
|
| Agents | `list_agents` `get_agent` `create_agent` `update_agent` `delete_agent` |
|
|
66
66
|
| Calls | `place_call` `list_calls` `get_call` `get_call_transcript` `hangup_call` `delete_call` |
|
|
67
|
+
| Callers | `list_callers` `get_caller` `update_caller` |
|
|
67
68
|
| SIP trunks | `list_sip_trunks` `get_sip_trunk` `create_sip_trunk` `update_sip_trunk` `delete_sip_trunk` `check_sip_trunk_status` `test_sip_trunk` `get_sip_trunk_logs` |
|
|
68
69
|
| Phone numbers | `list_phone_numbers` `get_phone_number` `create_phone_number` `update_phone_number` `delete_phone_number` |
|
|
69
70
|
| Leads | `list_leads` `get_lead` `create_lead` `update_lead` `delete_lead` `import_leads` |
|
|
70
71
|
| Campaigns | `list_campaigns` `get_campaign` `create_campaign` `start_campaign` `pause_campaign` `delete_campaign` |
|
|
71
|
-
| Knowledge bases | `list_knowledge_bases` `get_knowledge_base` `create_knowledge_base` `update_knowledge_base` `delete_knowledge_base` |
|
|
72
|
+
| Knowledge bases | `list_knowledge_bases` `get_knowledge_base` `create_knowledge_base` `import_knowledge_base` `import_knowledge_file` `update_knowledge_base` `delete_knowledge_base` `list_knowledge_files` `add_knowledge_file` `get_knowledge_file` `delete_knowledge_file` |
|
|
73
|
+
| MCP servers | `list_mcp_servers` `get_mcp_server` `create_mcp_server` `update_mcp_server` `delete_mcp_server` `refresh_mcp_server` `connect_mcp_server_oauth` |
|
|
74
|
+
| Tools | `list_tools` `get_tool` `create_tool` `update_tool` `delete_tool` `test_tool` |
|
|
75
|
+
| Voices | `list_voices` `get_voice` `preview_voice` `create_voice_clone` `update_voice` `delete_voice` |
|
|
72
76
|
| Appointments | `list_appointments` `get_appointment` `create_appointment` `update_appointment` `delete_appointment` |
|
|
73
77
|
| Billing & usage | `get_balance` `list_ledger_entries` `create_topup` `get_usage_summary` `list_usage_events` |
|
|
74
78
|
| API keys | `list_api_keys` `create_api_key` `rotate_api_key` `revoke_api_key` |
|
|
@@ -79,7 +83,7 @@ Resources: `wixzel://guide` (the operating guide the server also sends as its in
|
|
|
79
83
|
|
|
80
84
|
## How it keeps the agent honest
|
|
81
85
|
|
|
82
|
-
- **Money is explicit.** `place_call`, `start_campaign` and `
|
|
86
|
+
- **Money is explicit.** `place_call`, `start_campaign`, `create_topup` and `create_voice_clone` are annotated `openWorldHint: true` and their descriptions tell the model to confirm with the user first. Clients that gate on annotations will ask before running them.
|
|
83
87
|
- **Idempotency is automatic.** The two money paths require an `Idempotency-Key`; the server generates one per call and accepts an explicit `idempotency_key` for deliberate retries, so a network timeout never turns into two calls.
|
|
84
88
|
- **Errors are actionable.** Every failure returns the API's machine-readable `code`, the `request_id`, and a hint that says what to do: which scope is missing, that the balance is short, that a cursor was mangled.
|
|
85
89
|
- **Rate limits are absorbed.** A `429` is retried after `Retry-After` up to twice before the model sees it. Those requests are never charged.
|
package/dist/client.d.ts
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* so older releases of this package keep working.
|
|
12
12
|
*/
|
|
13
13
|
export declare const DEFAULT_BASE_URL = "https://api.voice.wixzel.com";
|
|
14
|
-
export declare const USER_AGENT = "wixzel-voice-mcp/0.
|
|
14
|
+
export declare const USER_AGENT = "wixzel-voice-mcp/0.8.0";
|
|
15
15
|
export type HttpMethod = 'GET' | 'POST' | 'PATCH' | 'DELETE';
|
|
16
16
|
export type QueryValue = string | number | boolean | null | undefined;
|
|
17
17
|
export interface RequestOptions {
|
|
@@ -20,6 +20,13 @@ export interface RequestOptions {
|
|
|
20
20
|
/** Sent as `Idempotency-Key`. Generated when `idempotent` is true and none is given. */
|
|
21
21
|
idempotencyKey?: string;
|
|
22
22
|
idempotent?: boolean;
|
|
23
|
+
/** Return a successful body as bytes instead of parsing it. Errors are still JSON. */
|
|
24
|
+
binary?: boolean;
|
|
25
|
+
}
|
|
26
|
+
/** A response body that is not JSON, such as a voice preview clip. */
|
|
27
|
+
export interface BinaryBody {
|
|
28
|
+
data: Uint8Array;
|
|
29
|
+
contentType: string;
|
|
23
30
|
}
|
|
24
31
|
export interface WixzelErrorBody {
|
|
25
32
|
type: string;
|
|
@@ -61,7 +68,8 @@ export declare class WixzelClient {
|
|
|
61
68
|
constructor(opts: WixzelClientOptions);
|
|
62
69
|
/** `wv_live_` or `wv_test_` — surfaced so an agent can tell which it is on. */
|
|
63
70
|
get keyMode(): 'live' | 'test' | 'unknown';
|
|
64
|
-
|
|
71
|
+
/** Pass `{ binary: true }` for an endpoint that answers with bytes (audio); T is then BinaryBody. */
|
|
72
|
+
get<T = unknown>(path: string, query?: Record<string, QueryValue>, opts?: Pick<RequestOptions, 'binary'>): Promise<T>;
|
|
65
73
|
post<T = unknown>(path: string, body?: unknown, opts?: Omit<RequestOptions, 'body'>): Promise<T>;
|
|
66
74
|
patch<T = unknown>(path: string, body: unknown): Promise<T>;
|
|
67
75
|
delete<T = unknown>(path: string): Promise<T>;
|
package/dist/client.js
CHANGED
|
@@ -59,8 +59,9 @@ export class WixzelClient {
|
|
|
59
59
|
return 'test';
|
|
60
60
|
return 'unknown';
|
|
61
61
|
}
|
|
62
|
-
|
|
63
|
-
|
|
62
|
+
/** Pass `{ binary: true }` for an endpoint that answers with bytes (audio); T is then BinaryBody. */
|
|
63
|
+
get(path, query, opts = {}) {
|
|
64
|
+
return this.request('GET', path, { query, ...opts });
|
|
64
65
|
}
|
|
65
66
|
post(path, body, opts = {}) {
|
|
66
67
|
return this.request('POST', path, { ...opts, body });
|
|
@@ -80,7 +81,8 @@ export class WixzelClient {
|
|
|
80
81
|
}
|
|
81
82
|
const headers = {
|
|
82
83
|
Authorization: `Bearer ${this.apiKey}`,
|
|
83
|
-
|
|
84
|
+
// A binary endpoint still answers errors in JSON, so it accepts anything.
|
|
85
|
+
Accept: opts.binary ? '*/*' : 'application/json',
|
|
84
86
|
'User-Agent': USER_AGENT,
|
|
85
87
|
};
|
|
86
88
|
if (this.apiVersion)
|
|
@@ -108,6 +110,12 @@ export class WixzelClient {
|
|
|
108
110
|
}
|
|
109
111
|
if (response.status === 204)
|
|
110
112
|
return null;
|
|
113
|
+
if (opts.binary && response.ok) {
|
|
114
|
+
return {
|
|
115
|
+
data: new Uint8Array(await response.arrayBuffer()),
|
|
116
|
+
contentType: response.headers.get('content-type') ?? 'application/octet-stream',
|
|
117
|
+
};
|
|
118
|
+
}
|
|
111
119
|
const text = await response.text();
|
|
112
120
|
let parsed = null;
|
|
113
121
|
if (text) {
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,8BAA8B,CAAC;AAC/D,MAAM,CAAC,MAAM,UAAU,GAAG,oBAAoB,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/guide.js
CHANGED
|
@@ -26,11 +26,13 @@ export function buildGuide(env = process.env) {
|
|
|
26
26
|
for every minute. Confirm with the user before calling them, say what it will do, and
|
|
27
27
|
never retry one with a different idempotency_key: the same key returns the original
|
|
28
28
|
result, a new key is a second call.`
|
|
29
|
-
: `place_call, start_campaign and
|
|
29
|
+
: `place_call, start_campaign, create_topup and create_voice_clone spend money or make
|
|
30
|
+
real phones ring.
|
|
30
31
|
Confirm with the user before calling them, say what it will do, and never retry one
|
|
31
32
|
with a different idempotency_key: the same key returns the original result, a new
|
|
32
33
|
key is a second call. create_topup returns a checkout URL that a human must open;
|
|
33
|
-
never try to pay
|
|
34
|
+
never try to pay. create_voice_clone charges a one-off fee and takes no idempotency
|
|
35
|
+
key, so check list_voices before trying it again.`;
|
|
34
36
|
return `# Wixzel Voice, for AI agents
|
|
35
37
|
|
|
36
38
|
Wixzel Voice is the API and MCP server for building AI agents that place and answer
|
|
@@ -46,8 +48,14 @@ ${intro}
|
|
|
46
48
|
minutes; the carrier's rates stay theirs.
|
|
47
49
|
- A PHONE NUMBER is a number the user owns at that carrier, registered on the trunk.
|
|
48
50
|
Give it an inbound_agent_id and inbound calls are answered by that agent.
|
|
51
|
+
On a trunk with can_buy_numbers, list_carrier_numbers shows the numbers already
|
|
52
|
+
on the carrier account, and search_available_numbers then purchase_phone_number
|
|
53
|
+
buy a new one on that account, billed by the carrier.
|
|
49
54
|
- A CALL connects an agent to a real phone over the trunk. Outbound calls are placed
|
|
50
55
|
with place_call; campaigns place one call per lead.
|
|
56
|
+
- A VOICE is a clone of one person's voice, made with create_voice_clone from
|
|
57
|
+
recordings the user has permission to use. Put its provider_voice_id in an
|
|
58
|
+
agent's voice.tts.voice, on one of the engines the voice lists.
|
|
51
59
|
${money}
|
|
52
60
|
|
|
53
61
|
## The order things go in
|
|
@@ -57,7 +65,8 @@ ${money}
|
|
|
57
65
|
2. create_sip_trunk with the user's carrier credentials, then tell the user to
|
|
58
66
|
allowlist platform_ip with the carrier (outbound) and to point the carrier at
|
|
59
67
|
origination_uri (inbound). check_sip_trunk_status shows whether it is reachable.
|
|
60
|
-
3. create_phone_number on that trunk
|
|
68
|
+
3. create_phone_number on that trunk, or, if the user has no number yet and the
|
|
69
|
+
trunk has can_buy_numbers, search_available_numbers and purchase_phone_number.
|
|
61
70
|
4. create_agent with a short spoken-style system_prompt, an opening_message, and a
|
|
62
71
|
voice from step 1. Set outbound_phone_number_id so calls have a caller id.
|
|
63
72
|
${firstCall}
|
package/dist/guide.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guide.js","sourceRoot":"","sources":["../src/guide.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAErD,MAAM,UAAU,UAAU,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC3D,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,UAAU;QACpB,CAAC,CAAC,wDAAwD,IAAI,EAAE;QAChE,CAAC,CAAC,gEAAgE,IAAI,EAAE,CAAC;IAC7E,MAAM,KAAK,GAAG,UAAU;QACpB,CAAC,CAAC;;4DAEkD;QACpD,CAAC,CAAC;sEAC4D,CAAC;IACnE,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,kCAAkC,CAAC;IACrF,MAAM,QAAQ,GAAG,UAAU;QACvB,CAAC,CAAC;;;oCAG0B;QAC5B,CAAC,CAAC
|
|
1
|
+
{"version":3,"file":"guide.js","sourceRoot":"","sources":["../src/guide.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAErD,MAAM,UAAU,UAAU,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC3D,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,UAAU;QACpB,CAAC,CAAC,wDAAwD,IAAI,EAAE;QAChE,CAAC,CAAC,gEAAgE,IAAI,EAAE,CAAC;IAC7E,MAAM,KAAK,GAAG,UAAU;QACpB,CAAC,CAAC;;4DAEkD;QACpD,CAAC,CAAC;sEAC4D,CAAC;IACnE,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,kCAAkC,CAAC;IACrF,MAAM,QAAQ,GAAG,UAAU;QACvB,CAAC,CAAC;;;oCAG0B;QAC5B,CAAC,CAAC;;;;;;kDAMwC,CAAC;IAE/C,OAAO;;;;EAIT,KAAK;;;;;;;;;;;;;;;;;;;EAmBL,KAAK;;;;;;;;;;;;;EAaL,SAAS;;;;;;EAMT,QAAQ;;;;;;;;;;;;;;CAcT,CAAC;AACF,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC"}
|
package/dist/http.d.ts
CHANGED
|
@@ -63,13 +63,15 @@ export declare function protectedResourceMetadata(opts: HttpOptions, resource?:
|
|
|
63
63
|
resource: string;
|
|
64
64
|
authorization_servers: string[];
|
|
65
65
|
bearer_methods_supported: string[];
|
|
66
|
-
scopes_supported: ("agents:read" | "agents:write" | "calls:read" | "calls:write" | "leads:read" | "leads:write" | "campaigns:read" | "campaigns:write" | "knowledge_bases:read" | "knowledge_bases:write" | "phone_numbers:read" | "phone_numbers:write" | "sip_trunks:read" | "sip_trunks:write" | "appointments:read" | "appointments:write" | "webhooks:read" | "webhooks:write" | "api_keys:read" | "api_keys:write" | "usage:read" | "billing:read" | "billing:write")[];
|
|
66
|
+
scopes_supported: ("agents:read" | "agents:write" | "calls:read" | "calls:write" | "leads:read" | "leads:write" | "campaigns:read" | "campaigns:write" | "knowledge_bases:read" | "knowledge_bases:write" | "phone_numbers:read" | "phone_numbers:write" | "phone_numbers:purchase" | "sip_trunks:read" | "sip_trunks:write" | "appointments:read" | "appointments:write" | "mcp_servers:read" | "mcp_servers:write" | "tools:read" | "tools:write" | "voices:read" | "voices:write" | "webhooks:read" | "webhooks:write" | "api_keys:read" | "api_keys:write" | "usage:read" | "billing:read" | "billing:write")[];
|
|
67
67
|
resource_name: string;
|
|
68
68
|
resource_documentation: string;
|
|
69
69
|
};
|
|
70
70
|
/** RFC 9728 §3: the well-known path carries the resource's own path as a suffix. */
|
|
71
71
|
export declare function resourceMetadataUrl(publicUrl: string): string;
|
|
72
72
|
export declare function createHttpHandler(opts: HttpOptions): (req: IncomingMessage, res: ServerResponse) => Promise<void>;
|
|
73
|
+
/** The one-line description, used verbatim on the landing page and in its metadata. */
|
|
74
|
+
export declare const MCP_ONE_LINER = "The Wixzel Voice MCP server lets Claude, Cursor or any MCP client build voice agents and place real phone calls over your own SIP trunk.";
|
|
73
75
|
export interface RunningHttpServer {
|
|
74
76
|
server: Server;
|
|
75
77
|
/** The bound address, useful when port 0 was requested. */
|
package/dist/http.js
CHANGED
|
@@ -19,6 +19,7 @@ import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/
|
|
|
19
19
|
import { DEFAULT_BASE_URL } from './client.js';
|
|
20
20
|
import { scopes } from './schemas.js';
|
|
21
21
|
import { createServer, SERVER_VERSION } from './server.js';
|
|
22
|
+
import { SERVER_CARD_PATH, serverCard } from './server-card.js';
|
|
22
23
|
import { consoleUrl, DEFAULT_CONSOLE_URL } from './site.js';
|
|
23
24
|
const LOOPBACK = new Set(['localhost', '127.0.0.1', '[::1]', '::1']);
|
|
24
25
|
/**
|
|
@@ -157,6 +158,7 @@ export function createHttpHandler(opts) {
|
|
|
157
158
|
const metadataPaths = new Set(['/.well-known/oauth-protected-resource', new URL(resourceMetadataUrl(opts.publicUrl)).pathname]);
|
|
158
159
|
const mcpPath = new URL(opts.publicUrl).pathname === '/' ? '/mcp' : new URL(opts.publicUrl).pathname;
|
|
159
160
|
const aliases = (opts.hostAliases ?? hostAliases(opts.publicUrl)).map((h) => h.toLowerCase());
|
|
161
|
+
const consoleBase = (opts.consoleUrl ?? consoleUrl()).replace(/\/+$/, '');
|
|
160
162
|
const challenge = (resource, error) => `Bearer realm="wixzel-voice-mcp", resource_metadata="${resourceMetadataUrl(resource)}"` +
|
|
161
163
|
(error ? `, error="${error}"` : '');
|
|
162
164
|
return async (req, res) => {
|
|
@@ -175,9 +177,16 @@ export function createHttpHandler(opts) {
|
|
|
175
177
|
// want an icon parse this page for one. A sentence and a few links.
|
|
176
178
|
if (url.pathname === '/' && (req.method === 'GET' || req.method === 'HEAD')) {
|
|
177
179
|
res.writeHead(200, { 'content-type': 'text/html; charset=utf-8', 'cache-control': 'public, max-age=3600' });
|
|
178
|
-
res.end(LANDING_HTML(mcpPath, opts.publicUrl,
|
|
180
|
+
res.end(LANDING_HTML(mcpPath, opts.publicUrl, consoleBase));
|
|
179
181
|
return;
|
|
180
182
|
}
|
|
183
|
+
// What this server is and where to connect, without an MCP session.
|
|
184
|
+
// See server-card.ts for why the card is server.json.
|
|
185
|
+
if (url.pathname === SERVER_CARD_PATH && (req.method === 'GET' || req.method === 'HEAD')) {
|
|
186
|
+
return json(res, 200, serverCard({ publicUrl: opts.publicUrl, productLinks: consoleBase === DEFAULT_CONSOLE_URL }), {
|
|
187
|
+
'cache-control': 'public, max-age=3600',
|
|
188
|
+
});
|
|
189
|
+
}
|
|
181
190
|
if (metadataPaths.has(url.pathname)) {
|
|
182
191
|
// Varies by Host now that one process answers for two names.
|
|
183
192
|
return json(res, 200, protectedResourceMetadata(opts, resource), { 'cache-control': 'public, max-age=300', vary: 'Host' });
|
|
@@ -236,23 +245,53 @@ export function createHttpHandler(opts) {
|
|
|
236
245
|
}
|
|
237
246
|
};
|
|
238
247
|
}
|
|
248
|
+
/** The one-line description, used verbatim on the landing page and in its metadata. */
|
|
249
|
+
export const MCP_ONE_LINER = 'The Wixzel Voice MCP server lets Claude, Cursor or any MCP client build voice agents and place real phone calls over your own SIP trunk.';
|
|
250
|
+
/** JSON for inside a <script> element: "<" escaped so no string in it can close the element. */
|
|
251
|
+
function scriptJson(value) {
|
|
252
|
+
return JSON.stringify(value).replace(/</g, '\\u003c');
|
|
253
|
+
}
|
|
239
254
|
const LANDING_HTML = (mcpPath, publicUrl, consoleBase) => {
|
|
240
255
|
// Our product pages only on our own server. A self-hosted install links
|
|
241
256
|
// its own console and the public docs, and nothing that sells.
|
|
242
|
-
const
|
|
257
|
+
const hosted = consoleBase === DEFAULT_CONSOLE_URL;
|
|
258
|
+
const product = hosted
|
|
243
259
|
? ` · <a href="${DEFAULT_CONSOLE_URL}/solutions/ai-agents-mcp">What you can build</a> · <a href="${DEFAULT_CONSOLE_URL}">Wixzel Voice</a>`
|
|
244
260
|
: '';
|
|
261
|
+
// Always the configured name, so the pre-rename host points search engines
|
|
262
|
+
// at the current one rather than competing with it.
|
|
263
|
+
const canonical = `${new URL(publicUrl).origin}/`;
|
|
264
|
+
// Structured data for our own server only, tied to the organisation the
|
|
265
|
+
// product site describes, so the MCP server is one entity with it.
|
|
266
|
+
const jsonLd = hosted
|
|
267
|
+
? `<script type="application/ld+json">${scriptJson({
|
|
268
|
+
'@context': 'https://schema.org',
|
|
269
|
+
'@type': 'SoftwareApplication',
|
|
270
|
+
name: 'Wixzel Voice MCP server',
|
|
271
|
+
alternateName: 'wixzel-voice-mcp',
|
|
272
|
+
description: MCP_ONE_LINER,
|
|
273
|
+
url: canonical,
|
|
274
|
+
applicationCategory: 'DeveloperApplication',
|
|
275
|
+
operatingSystem: 'Any',
|
|
276
|
+
softwareVersion: SERVER_VERSION,
|
|
277
|
+
downloadUrl: 'https://www.npmjs.com/package/wixzel-voice-mcp',
|
|
278
|
+
license: 'https://opensource.org/licenses/MIT',
|
|
279
|
+
isPartOf: { '@id': `${DEFAULT_CONSOLE_URL}/#software` },
|
|
280
|
+
publisher: { '@type': 'Organization', '@id': `${DEFAULT_CONSOLE_URL}/#organization`, name: 'Wixzel Voice', url: DEFAULT_CONSOLE_URL },
|
|
281
|
+
})}</script>\n`
|
|
282
|
+
: '';
|
|
245
283
|
return `<!doctype html>
|
|
246
284
|
<html lang="en"><head><meta charset="utf-8"><title>Wixzel Voice MCP server</title>
|
|
247
285
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
248
|
-
<meta name="description" content="
|
|
286
|
+
<meta name="description" content="${MCP_ONE_LINER}">
|
|
287
|
+
<link rel="canonical" href="${canonical}">
|
|
249
288
|
<link rel="icon" href="/favicon.ico"><link rel="icon" type="image/png" sizes="192x192" href="/icon-192.png">
|
|
250
289
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
|
251
|
-
<style>body{margin:0;min-height:100vh;display:grid;place-items:center;background:#0d0d0d;color:#e8e8e8;font:15px/1.5 system-ui,sans-serif}main{max-width:32rem;padding:2rem}code{background:#1a1a1a;padding:.15em .4em;border-radius:.3em}a{color:#a0d425}</style>
|
|
290
|
+
${jsonLd}<style>body{margin:0;min-height:100vh;display:grid;place-items:center;background:#0d0d0d;color:#e8e8e8;font:15px/1.5 system-ui,sans-serif}main{max-width:32rem;padding:2rem}code{background:#1a1a1a;padding:.15em .4em;border-radius:.3em}a{color:#a0d425}</style>
|
|
252
291
|
</head><body><main>
|
|
253
292
|
<img src="/icon-192.png" alt="" width="48" height="48">
|
|
254
293
|
<h1>Wixzel Voice MCP server</h1>
|
|
255
|
-
<p
|
|
294
|
+
<p>${MCP_ONE_LINER}</p>
|
|
256
295
|
<p>This host speaks the Model Context Protocol at <code>${mcpPath}</code>. Add it as a connector in claude.ai or Claude Desktop, or run <code>claude mcp add --transport http wixzel-voice ${publicUrl}</code>.</p>
|
|
257
296
|
<p><a href="https://docs.voice.wixzel.com/mcp-server">Documentation</a> · <a href="${consoleBase}/connect">Connect your account</a>${product}</p>
|
|
258
297
|
</main></body></html>
|
package/dist/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
package/dist/schemas.d.ts
CHANGED
|
@@ -75,7 +75,7 @@ export declare const voiceConfig: z.ZodObject<{
|
|
|
75
75
|
silence_wait_ms: z.ZodOptional<z.ZodNumber>;
|
|
76
76
|
}, z.core.$strip>>;
|
|
77
77
|
}, z.core.$strip>;
|
|
78
|
-
export declare const scopes: readonly ["agents:read", "agents:write", "calls:read", "calls:write", "leads:read", "leads:write", "campaigns:read", "campaigns:write", "knowledge_bases:read", "knowledge_bases:write", "phone_numbers:read", "phone_numbers:write", "sip_trunks:read", "sip_trunks:write", "appointments:read", "appointments:write", "webhooks:read", "webhooks:write", "api_keys:read", "api_keys:write", "usage:read", "billing:read", "billing:write"];
|
|
78
|
+
export declare const scopes: readonly ["agents:read", "agents:write", "calls:read", "calls:write", "leads:read", "leads:write", "campaigns:read", "campaigns:write", "knowledge_bases:read", "knowledge_bases:write", "phone_numbers:read", "phone_numbers:write", "phone_numbers:purchase", "sip_trunks:read", "sip_trunks:write", "appointments:read", "appointments:write", "mcp_servers:read", "mcp_servers:write", "tools:read", "tools:write", "voices:read", "voices:write", "webhooks:read", "webhooks:write", "api_keys:read", "api_keys:write", "usage:read", "billing:read", "billing:write"];
|
|
79
79
|
export declare const scope: z.ZodEnum<{
|
|
80
80
|
"agents:read": "agents:read";
|
|
81
81
|
"agents:write": "agents:write";
|
|
@@ -89,10 +89,17 @@ export declare const scope: z.ZodEnum<{
|
|
|
89
89
|
"knowledge_bases:write": "knowledge_bases:write";
|
|
90
90
|
"phone_numbers:read": "phone_numbers:read";
|
|
91
91
|
"phone_numbers:write": "phone_numbers:write";
|
|
92
|
+
"phone_numbers:purchase": "phone_numbers:purchase";
|
|
92
93
|
"sip_trunks:read": "sip_trunks:read";
|
|
93
94
|
"sip_trunks:write": "sip_trunks:write";
|
|
94
95
|
"appointments:read": "appointments:read";
|
|
95
96
|
"appointments:write": "appointments:write";
|
|
97
|
+
"mcp_servers:read": "mcp_servers:read";
|
|
98
|
+
"mcp_servers:write": "mcp_servers:write";
|
|
99
|
+
"tools:read": "tools:read";
|
|
100
|
+
"tools:write": "tools:write";
|
|
101
|
+
"voices:read": "voices:read";
|
|
102
|
+
"voices:write": "voices:write";
|
|
96
103
|
"webhooks:read": "webhooks:read";
|
|
97
104
|
"webhooks:write": "webhooks:write";
|
|
98
105
|
"api_keys:read": "api_keys:read";
|
package/dist/schemas.js
CHANGED
|
@@ -58,13 +58,13 @@ export const llmConfig = z.object({
|
|
|
58
58
|
});
|
|
59
59
|
export const ttsConfig = z.object({
|
|
60
60
|
model: providerModel,
|
|
61
|
-
voice: z.string().optional().describe('Provider voice id, e.g. an ElevenLabs voice id.'),
|
|
61
|
+
voice: z.string().optional().describe('Provider voice id, e.g. an ElevenLabs voice id, or a cloned voice\'s provider_voice_id from list_voices.'),
|
|
62
62
|
stability: z.number().min(0).max(1).optional(),
|
|
63
63
|
similarity_boost: z.number().min(0).max(1).optional(),
|
|
64
64
|
speed: z.number().min(0.5).max(2).optional(),
|
|
65
65
|
});
|
|
66
66
|
export const realtimeConfig = z.object({
|
|
67
|
-
model: providerModel.describe('A realtime model, e.g. "google/gemini-live
|
|
67
|
+
model: providerModel.describe('A realtime model, e.g. "google/gemini-live".'),
|
|
68
68
|
voice: z.string().optional().describe('Provider voice name, e.g. "Charon".'),
|
|
69
69
|
language: z.string().optional().describe('Default "auto".'),
|
|
70
70
|
});
|
|
@@ -97,10 +97,17 @@ export const scopes = [
|
|
|
97
97
|
'knowledge_bases:write',
|
|
98
98
|
'phone_numbers:read',
|
|
99
99
|
'phone_numbers:write',
|
|
100
|
+
'phone_numbers:purchase',
|
|
100
101
|
'sip_trunks:read',
|
|
101
102
|
'sip_trunks:write',
|
|
102
103
|
'appointments:read',
|
|
103
104
|
'appointments:write',
|
|
105
|
+
'mcp_servers:read',
|
|
106
|
+
'mcp_servers:write',
|
|
107
|
+
'tools:read',
|
|
108
|
+
'tools:write',
|
|
109
|
+
'voices:read',
|
|
110
|
+
'voices:write',
|
|
104
111
|
'webhooks:read',
|
|
105
112
|
'webhooks:write',
|
|
106
113
|
'api_keys:read',
|
package/dist/schemas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,iDAAiD,CAAC,CAAC;AAEhG,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAC5F,cAAc,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4EAA4E,CAAC;IAC3F,aAAa,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uFAAuF,CAAC;CACzG,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC;KACnB,MAAM,EAAE;KACR,QAAQ,CAAC,2DAA2D,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;KAChB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ,CAAC,kDAAkD,CAAC,CAAC;AAElE,MAAM,aAAa,GAAG,CAAC;KAClB,MAAM,EAAE;IACT,gEAAgE;IAChE,uEAAuE;IACvE,4EAA4E;IAC5E,qEAAqE;IACrE,wEAAwE;IACxE,0EAA0E;KACzE,KAAK,CAAC,sDAAsD,EACzD,0FAA0F,CAAC;KAC9F,QAAQ,CAAC,2IAA2I,CAAC,CAAC;AAE3J,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,KAAK,EAAE,aAAa;IACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;IAC1G,cAAc,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,EAAE,CAAC;SACP,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,uGAAuG,CAAC;CACzH,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChD,UAAU,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,gFAAgF,CAAC;CAClG,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,KAAK,EAAE,aAAa;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The server card, served at /.well-known/mcp/server-card.json.
|
|
3
|
+
*
|
|
4
|
+
* A server card lets a client or a crawler learn what an MCP server is, and
|
|
5
|
+
* where to connect, without opening an MCP session. As of September 2026 the
|
|
6
|
+
* format is not settled: SEP-1649 proposed this path, SEP-2127 superseded it as
|
|
7
|
+
* a draft extension with a card shaped like the registry's server.json, and
|
|
8
|
+
* deployed cards mostly sit here. Until one of them is final, the card is
|
|
9
|
+
* server.json itself, the document the MCP Registry already accepts for this
|
|
10
|
+
* server, so there is one description of it rather than two that can disagree.
|
|
11
|
+
*
|
|
12
|
+
* It is written out here rather than read from ../server.json because the npm
|
|
13
|
+
* package ships dist/ and not server.json, and `wixzel-voice-mcp --http` has to
|
|
14
|
+
* serve its card from an install that has nothing else. A test holds the two
|
|
15
|
+
* equal, so neither can change without the other.
|
|
16
|
+
*/
|
|
17
|
+
export declare const SERVER_CARD_PATH = "/.well-known/mcp/server-card.json";
|
|
18
|
+
/** The hosted server's endpoint, as server.json lists it under `remotes`. */
|
|
19
|
+
export declare const HOSTED_REMOTE_URL = "https://mcp.voice.wixzel.com/mcp";
|
|
20
|
+
/** apps/mcp/server.json, field for field. */
|
|
21
|
+
export declare const SERVER_JSON: {
|
|
22
|
+
$schema: string;
|
|
23
|
+
name: string;
|
|
24
|
+
title: string;
|
|
25
|
+
description: string;
|
|
26
|
+
version: string;
|
|
27
|
+
websiteUrl: string;
|
|
28
|
+
repository: {
|
|
29
|
+
url: string;
|
|
30
|
+
source: string;
|
|
31
|
+
subfolder: string;
|
|
32
|
+
};
|
|
33
|
+
icons: {
|
|
34
|
+
src: string;
|
|
35
|
+
mimeType: string;
|
|
36
|
+
sizes: string[];
|
|
37
|
+
}[];
|
|
38
|
+
packages: {
|
|
39
|
+
registryType: string;
|
|
40
|
+
registryBaseUrl: string;
|
|
41
|
+
identifier: string;
|
|
42
|
+
version: string;
|
|
43
|
+
runtimeHint: string;
|
|
44
|
+
transport: {
|
|
45
|
+
type: string;
|
|
46
|
+
};
|
|
47
|
+
environmentVariables: {
|
|
48
|
+
name: string;
|
|
49
|
+
description: string;
|
|
50
|
+
format: string;
|
|
51
|
+
isRequired: boolean;
|
|
52
|
+
isSecret: boolean;
|
|
53
|
+
}[];
|
|
54
|
+
}[];
|
|
55
|
+
remotes: {
|
|
56
|
+
type: string;
|
|
57
|
+
url: string;
|
|
58
|
+
}[];
|
|
59
|
+
};
|
|
60
|
+
export interface ServerCardOptions {
|
|
61
|
+
/** The URL clients connect to on this process, e.g. https://mcp.voice.wixzel.com/mcp */
|
|
62
|
+
publicUrl: string;
|
|
63
|
+
/** Whether this process may link the product site; false on a buyer's own server. */
|
|
64
|
+
productLinks: boolean;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* server.json as-is on the hosted server. Anywhere else (a self-hosted install,
|
|
68
|
+
* a laptop running --http) the card names that process's own endpoint, since a
|
|
69
|
+
* card that sent its reader to our server would describe a different one, and
|
|
70
|
+
* it drops the product page, as the landing page does.
|
|
71
|
+
*/
|
|
72
|
+
export declare function serverCard({ publicUrl, productLinks }: ServerCardOptions): Record<string, unknown>;
|