@walkeros/mcp 4.7.1 → 4.7.2-next-1791213015481
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/README.md +11 -6
- package/dist/index.d.ts +30 -5
- package/dist/index.js +218 -140
- package/dist/index.js.map +1 -1
- package/dist/stdio.js +162 -84
- package/dist/stdio.js.map +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -129,7 +129,7 @@ The server registers 19 tools.
|
|
|
129
129
|
| `walkeros://reference/flow-schema` | Flow configuration structure and connection rules |
|
|
130
130
|
| `walkeros://reference/event-model` | Event naming, properties, and auto-populated fields |
|
|
131
131
|
| `walkeros://reference/mapping` | Mapping syntax: data, map, loop, set, condition, policy |
|
|
132
|
-
| `walkeros://reference/consent` | The consent model at destination
|
|
132
|
+
| `walkeros://reference/consent` | The consent model at destination and field level |
|
|
133
133
|
| `walkeros://reference/variables` | Variable patterns: `$var`, `$env`, `$secret`, `$code`, `$store` |
|
|
134
134
|
| `walkeros://reference/contract` | Event schemas, wildcards, and inheritance |
|
|
135
135
|
| `walkeros://reference/openapi` | The live OpenAPI 3.1 document of the app this server talks to |
|
|
@@ -148,11 +148,11 @@ Read these before writing a configuration by hand.
|
|
|
148
148
|
|
|
149
149
|
## Environment variables
|
|
150
150
|
|
|
151
|
-
| Variable | Required | Default | Purpose
|
|
152
|
-
| --------------------- | -------- | ------------------------- |
|
|
153
|
-
| `WALKEROS_TOKEN` | No | none | Automation token (`wos_pat_...`), an alternative to the `auth` tool login
|
|
154
|
-
| `WALKEROS_PROJECT_ID` | No | none |
|
|
155
|
-
| `WALKEROS_APP_URL` | No | `https://app.walkeros.io` | Base URL override
|
|
151
|
+
| Variable | Required | Default | Purpose |
|
|
152
|
+
| --------------------- | -------- | ------------------------- | -------------------------------------------------------------------------- |
|
|
153
|
+
| `WALKEROS_TOKEN` | No | none | Automation token (`wos_pat_...`), an alternative to the `auth` tool login |
|
|
154
|
+
| `WALKEROS_PROJECT_ID` | No | none | Project (`proj_...`) for calls without `projectId`, ahead of `set_default` |
|
|
155
|
+
| `WALKEROS_APP_URL` | No | `https://app.walkeros.io` | Base URL override |
|
|
156
156
|
|
|
157
157
|
## Programmatic usage
|
|
158
158
|
|
|
@@ -193,6 +193,11 @@ AI SDK, call `createToolHandlers(client, version, runtime)` or import
|
|
|
193
193
|
`TOOL_DEFINITIONS` and supply your own `ToolClient`. The stdio binary stays
|
|
194
194
|
available as `@walkeros/mcp/stdio` and the `walkeros-mcp` bin entry.
|
|
195
195
|
|
|
196
|
+
A `ToolClient` served inside a host that authenticates every request itself
|
|
197
|
+
returns `'host'` from `credentialSource()`. The `auth` tool then reports the
|
|
198
|
+
connection as logged in, answers `login` with "no login needed" and refuses
|
|
199
|
+
`logout`, which never reaches the client: the connection ends in the host.
|
|
200
|
+
|
|
196
201
|
A `ToolClient` may implement `checkContract()` and `openapiDocument()`. The
|
|
197
202
|
`diagnostics` tool reports the first as its contract verdict, `unknown` when it
|
|
198
203
|
is absent; the `walkeros://reference/openapi` resource serves the second.
|
package/dist/index.d.ts
CHANGED
|
@@ -370,6 +370,8 @@ interface ToolClient {
|
|
|
370
370
|
}): Promise<unknown>;
|
|
371
371
|
setDefaultProject(projectId: string): void;
|
|
372
372
|
getDefaultProject(): string | null;
|
|
373
|
+
/** Every project's flows, as an array of `{ project: { id, name }, flows }`
|
|
374
|
+
* groups whose `flows` are the rows `listFlows` answers for that project. */
|
|
373
375
|
listAllFlows(options?: {
|
|
374
376
|
sort?: string;
|
|
375
377
|
order?: 'asc' | 'desc';
|
|
@@ -524,15 +526,24 @@ interface ToolClient {
|
|
|
524
526
|
timeoutMs?: number;
|
|
525
527
|
}): Promise<DeviceLoginResult>;
|
|
526
528
|
whoami(): Promise<unknown>;
|
|
527
|
-
/**
|
|
528
|
-
|
|
529
|
+
/**
|
|
530
|
+
* Where a credential would come from, without resolving or refreshing it:
|
|
531
|
+
* `'env'` (`WALKEROS_TOKEN`), `'config'` (a stored login), `'host'` (the
|
|
532
|
+
* door is served inside a host that authenticates every request itself, so
|
|
533
|
+
* this process holds no login to start or end), or null (none).
|
|
534
|
+
*/
|
|
535
|
+
credentialSource(): 'env' | 'config' | 'host' | null;
|
|
529
536
|
/**
|
|
530
537
|
* Retire the session. Where the credential was issued to this process, that
|
|
531
538
|
* means revoking it with the server before dropping it locally; a plane
|
|
532
|
-
* holding a bearer it did not issue reports nothing deleted.
|
|
539
|
+
* holding a bearer it did not issue reports nothing deleted. `envCleared`
|
|
540
|
+
* reports that the door also dropped a `WALKEROS_TOKEN` from its own process
|
|
541
|
+
* environment, which only a door that owns its process does. The `auth`
|
|
542
|
+
* tool never calls this on a `'host'` door.
|
|
533
543
|
*/
|
|
534
544
|
logout(): Promise<{
|
|
535
545
|
deleted: boolean;
|
|
546
|
+
envCleared?: boolean;
|
|
536
547
|
}>;
|
|
537
548
|
/**
|
|
538
549
|
* The base URL of the walkerOS app this door talks to, without a trailing
|
|
@@ -762,7 +773,14 @@ declare class HttpToolClient implements ToolClient {
|
|
|
762
773
|
deleteProject(options: {
|
|
763
774
|
projectId?: string;
|
|
764
775
|
}): Promise<unknown>;
|
|
776
|
+
/** Refuses while `WALKEROS_PROJECT_ID` names another project (see the CLI). */
|
|
765
777
|
setDefaultProject(projectId: string): void;
|
|
778
|
+
/**
|
|
779
|
+
* `WALKEROS_PROJECT_ID`, then the CLI config's default, through the same
|
|
780
|
+
* resolution the CLI's own commands use. Read here, at the door that owns
|
|
781
|
+
* this process's environment, never in the shared tool layer: a hosted door
|
|
782
|
+
* runs in a server process whose variables are no person's selection.
|
|
783
|
+
*/
|
|
766
784
|
getDefaultProject(): string | null;
|
|
767
785
|
listAllFlows(options?: {
|
|
768
786
|
sort?: string;
|
|
@@ -828,8 +846,8 @@ declare class HttpToolClient implements ToolClient {
|
|
|
828
846
|
/**
|
|
829
847
|
* Observe session lifecycle over the CLI's authenticated boundary. The trio
|
|
830
848
|
* routes through the same `apiFetch` as every other method here, so token
|
|
831
|
-
* resolution, base URL, and `ApiError` shaping (which
|
|
832
|
-
* stay identical to the rest of the client.
|
|
849
|
+
* resolution, base URL, and `ApiError` shaping (which
|
|
850
|
+
* `isAuthenticationError` reads) stay identical to the rest of the client.
|
|
833
851
|
*/
|
|
834
852
|
startObserveSession(options: StartObserveSessionOptions): Promise<ObserveSessionResult>;
|
|
835
853
|
getObserveSession(options: ObserveSessionRef): Promise<ObserveSessionResult>;
|
|
@@ -906,8 +924,15 @@ declare class HttpToolClient implements ToolClient {
|
|
|
906
924
|
}): Promise<DeviceLoginResult>;
|
|
907
925
|
whoami(): Promise<unknown>;
|
|
908
926
|
credentialSource(): 'env' | 'config' | null;
|
|
927
|
+
/**
|
|
928
|
+
* Revoke and drop the stored session, then clear a `WALKEROS_TOKEN` from
|
|
929
|
+
* this process: the local door owns its environment, so a later call in the
|
|
930
|
+
* same session no longer authenticates with it.
|
|
931
|
+
*/
|
|
909
932
|
logout(): Promise<{
|
|
910
933
|
deleted: boolean;
|
|
934
|
+
superseded: boolean;
|
|
935
|
+
envCleared: boolean;
|
|
911
936
|
}>;
|
|
912
937
|
/**
|
|
913
938
|
* The app this local door talks to: `WALKEROS_APP_URL`, then the CLI config
|