@autopo/mcp 0.2.0 → 0.4.1
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 +17 -2
- package/dist/api.d.ts +6 -0
- package/dist/api.js +13 -0
- package/dist/api.js.map +1 -1
- package/dist/calllog.d.ts +4 -0
- package/dist/calllog.js +59 -0
- package/dist/calllog.js.map +1 -0
- package/dist/guides.d.ts +2 -1
- package/dist/guides.js +48 -0
- package/dist/guides.js.map +1 -1
- package/dist/resources.js +15 -1
- package/dist/resources.js.map +1 -1
- package/dist/server.d.ts +1 -1
- package/dist/server.js +4 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/studio.d.ts +5 -0
- package/dist/tools/studio.js +139 -7
- package/dist/tools/studio.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -54,12 +54,12 @@ Prefer to run the server on your machine with any tool? `npx -y @autopo/mcp` wit
|
|
|
54
54
|
|
|
55
55
|
| | |
|
|
56
56
|
|---|---|
|
|
57
|
-
| **
|
|
57
|
+
| **72 tools** | the company at a glance, briefings, the inbox, tasks, the team's chats, runs, knowledge, the Studio (with your own footage uploaded from your machine, and videos cut as code), marketing, money, and `api_request` for every other endpoint of the REST API with `api_reference` as the manual |
|
|
58
58
|
| **Asks before it spends** | anything that spends credits or cannot be undone opens a confirmation dialog in your tool, with the cost: generate media, keyframes, clips, decide a card, post, cancel, delete |
|
|
59
59
|
| **Inline views** | the inbox, a video's storyboard, the media library, your home and the money page render inside Cursor, Claude Desktop and ChatGPT ([MCP Apps](https://modelcontextprotocol.io/extensions/apps/overview)); Claude Code and Codex CLI get the same results as text |
|
|
60
60
|
| **Docs** | [docs.autopoiesis.app](https://docs.autopoiesis.app): quickstart per client, guides, the tool reference, the REST API |
|
|
61
61
|
| **Prompts** | `/autopoiesis:make_a_teaser`, `morning_review`, `decide_inbox`, `studio_status`, `weekly_marketing` |
|
|
62
|
-
| **Resources** | the Studio guide, the teaser guide, a company's home and brand brain, the API's OpenAPI document |
|
|
62
|
+
| **Resources** | the Studio guide, the teaser guide, the code-film guide, a company's home and brand brain, the API's OpenAPI document |
|
|
63
63
|
| **Both protocol eras** | the stateless 2026-07-28 revision and the 2025 `initialize` handshake today's clients speak, from one endpoint |
|
|
64
64
|
|
|
65
65
|
Everything happens as you: your permissions, member access areas, limits and billing hold exactly as in the app, and it all shows in the app as you did it. A token can be scoped to one company and revoked at any time; it can never make tokens, delete the account or hand a company over.
|
|
@@ -77,6 +77,20 @@ brand_brain → create_video {title, brief, seconds: 20}
|
|
|
77
77
|
|
|
78
78
|
The `make_a_teaser` prompt runs this for you, step by step, stopping at every dialog.
|
|
79
79
|
|
|
80
|
+
## Code films
|
|
81
|
+
|
|
82
|
+
A video can be cut in code instead of by the joiner: its storyboard compiles to a small Remotion project you edit file by file from your terminal, checked on every write, with free stills and renders. The same seven tools, with the same names and arguments, are on the hosted server.
|
|
83
|
+
|
|
84
|
+
```text
|
|
85
|
+
convert_video_to_code {video} → version 1 from the compiler, the scenes, the first check
|
|
86
|
+
→ get_video_code {video} · {video, file: "src/Film.tsx"}
|
|
87
|
+
→ write_video_code {video, files: [{path, content}], note} (a new version, checked at once: tsc + the lint, file:line)
|
|
88
|
+
→ check_video_code → video_frames {frames | every_seconds} (up to 12 stills, free)
|
|
89
|
+
→ render_video (free) → wait_for_video · video_code_versions / restore_video_code to go back
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
The guide: `autopoiesis://guide/code-film`, or [docs.autopoiesis.app/guides/code-film](https://docs.autopoiesis.app/guides/code-film).
|
|
93
|
+
|
|
80
94
|
## Run it yourself
|
|
81
95
|
|
|
82
96
|
```sh
|
|
@@ -115,6 +129,7 @@ Layout: `src/tools/*` (the tools, grouped the way the app is), `src/kit.ts` (ses
|
|
|
115
129
|
- The token is a hashed secret the platform checks on every call; this server forwards it and never stores it.
|
|
116
130
|
- Every tool is a thin wrapper over the public REST API, so nothing here can do what you could not do in the app.
|
|
117
131
|
- Confirmations are host-enforced dialogs (MCP elicitation), not instructions the model may skip. Hosts that cannot show them get a refusal, never a silent spend.
|
|
132
|
+
- Each tool, resource and prompt call is recorded in your account's activity on the platform: its name, how it ended, and its arguments with secrets masked and long text cut. Results are not kept.
|
|
118
133
|
- Report a vulnerability to security@autopoiesis.app.
|
|
119
134
|
|
|
120
135
|
MIT © Autopoiesis. Questions: support@autopoiesis.app
|
package/dist/api.d.ts
CHANGED
|
@@ -26,6 +26,10 @@ export interface ApiOptions {
|
|
|
26
26
|
fetch?: typeof fetch;
|
|
27
27
|
userAgent?: string;
|
|
28
28
|
}
|
|
29
|
+
export declare const inCall: <T>(call: {
|
|
30
|
+
id: string;
|
|
31
|
+
tool: string;
|
|
32
|
+
}, run: () => T) => T;
|
|
29
33
|
export declare class Api {
|
|
30
34
|
readonly baseUrl: string;
|
|
31
35
|
private readonly token;
|
|
@@ -38,6 +42,8 @@ export declare class Api {
|
|
|
38
42
|
* the content type set by fetch). `contentType` is left unset for FormData.
|
|
39
43
|
*/
|
|
40
44
|
send<T = unknown>(method: string, path: string, body?: NonNullable<RequestInit['body']>, contentType?: string, query?: Query): Promise<T>;
|
|
45
|
+
/** One line for the person's action log, sent and forgotten: whether it lands never matters to the call it describes. */
|
|
46
|
+
reportCall(call: Record<string, unknown>): void;
|
|
41
47
|
get<T = unknown>(path: string, query?: Query): Promise<T>;
|
|
42
48
|
post<T = unknown>(path: string, body?: unknown, query?: Query): Promise<T>;
|
|
43
49
|
patch<T = unknown>(path: string, body: unknown): Promise<T>;
|
package/dist/api.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* endpoints, so permissions, member access areas, limits, billing and the user action log hold exactly as in the app:
|
|
4
4
|
* the server never sees anything the person could not do themselves.
|
|
5
5
|
*/
|
|
6
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
6
7
|
export class ApiError extends Error {
|
|
7
8
|
status;
|
|
8
9
|
code;
|
|
@@ -16,6 +17,9 @@ export class ApiError extends Error {
|
|
|
16
17
|
this.body = body;
|
|
17
18
|
}
|
|
18
19
|
}
|
|
20
|
+
/** The MCP call being served: its API calls name it, so the user action log can tie them together (API_CONTRACT §90.3). */
|
|
21
|
+
const currentCall = new AsyncLocalStorage();
|
|
22
|
+
export const inCall = (call, run) => currentCall.run(call, run);
|
|
19
23
|
export class Api {
|
|
20
24
|
baseUrl;
|
|
21
25
|
token;
|
|
@@ -52,6 +56,11 @@ export class Api {
|
|
|
52
56
|
'User-Agent': this.userAgent,
|
|
53
57
|
'X-Client': 'mcp',
|
|
54
58
|
};
|
|
59
|
+
const call = currentCall.getStore();
|
|
60
|
+
if (call) {
|
|
61
|
+
headers['X-MCP-Call'] = call.id;
|
|
62
|
+
headers['X-MCP-Tool'] = call.tool;
|
|
63
|
+
}
|
|
55
64
|
if (contentType)
|
|
56
65
|
headers['Content-Type'] = contentType;
|
|
57
66
|
const init = { method, headers };
|
|
@@ -74,6 +83,10 @@ export class Api {
|
|
|
74
83
|
}
|
|
75
84
|
return data;
|
|
76
85
|
}
|
|
86
|
+
/** One line for the person's action log, sent and forgotten: whether it lands never matters to the call it describes. */
|
|
87
|
+
reportCall(call) {
|
|
88
|
+
void this.post('/api/me/mcp-calls', call).catch(() => undefined);
|
|
89
|
+
}
|
|
77
90
|
get(path, query) {
|
|
78
91
|
return this.request('GET', path, undefined, query);
|
|
79
92
|
}
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAOpD,MAAM,OAAO,QAAS,SAAQ,KAAK;IACxB,MAAM,CAAQ;IACd,IAAI,CAAoB;IACxB,IAAI,CAAc;IAE3B,YAAY,MAAc,EAAE,IAAkB;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,QAAQ,MAAM,EAAE,CAAC,CAAA;QAC/G,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,UAAU,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;CACF;AAaD,2HAA2H;AAC3H,MAAM,WAAW,GAAG,IAAI,iBAAiB,EAAgC,CAAA;AAEzE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAI,IAAkC,EAAE,GAAY,EAAK,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AAE5G,MAAM,OAAO,GAAG;IACL,OAAO,CAAQ;IACP,KAAK,CAAQ;IACrB,SAAS,CAAc;IACf,SAAS,CAAQ;IAElC,YAAY,OAAmB;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QAClD,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAA;QAClD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,iBAAiB,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,OAAO,CAAc,MAAc,EAAE,IAAY,EAAE,IAAc,EAAE,KAAa;QACpF,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,IAAI,CAAI,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;QACtF,OAAO,IAAI,CAAC,IAAI,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAA;IACpF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAc,MAAc,EAAE,IAAY,EAAE,IAAuC,EAAE,WAAoB,EAAE,KAAa;QAChI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,iDAAiD,EAAE,EAAE,CAAC,CAAA;QAC9H,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA;QACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;YACvD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE;gBAAE,SAAQ;YACnE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAC1C,CAAC;QACD,MAAM,OAAO,GAA2B;YACtC,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE;YACrC,MAAM,EAAE,kBAAkB;YAC1B,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,UAAU,EAAE,KAAK;SAClB,CAAA;QACD,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAA;QACnC,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;YAC/B,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,IAAI,CAAA;QACnC,CAAC;QACD,IAAI,WAAW;YAAE,OAAO,CAAC,cAAc,CAAC,GAAG,WAAW,CAAA;QACtD,MAAM,IAAI,GAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;QAC7C,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACxC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAChD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAClC,IAAI,IAAI,GAAY,IAAI,CAAA;QACxB,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC;gBACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAA;YACrC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,IAAqB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAA;YACxJ,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAChD,CAAC;QACD,OAAO,IAAS,CAAA;IAClB,CAAC;IAED,yHAAyH;IACzH,UAAU,CAAC,IAA6B;QACtC,KAAK,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAClE,CAAC;IAED,GAAG,CAAc,IAAY,EAAE,KAAa;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAI,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IACvD,CAAC;IACD,IAAI,CAAc,IAAY,EAAE,IAAI,GAAY,EAAE,EAAE,KAAa;QAC/D,OAAO,IAAI,CAAC,OAAO,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IACnD,CAAC;IACD,KAAK,CAAc,IAAY,EAAE,IAAa;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAI,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IAC7C,CAAC;IACD,GAAG,CAAc,IAAY,EAAE,IAAa;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAI,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IAC3C,CAAC;IACD,MAAM,CAAc,IAAY;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAI,QAAQ,EAAE,IAAI,CAAC,CAAA;IACxC,CAAC;CACF;AAED,sGAAsG;AACtG,MAAM,UAAU,IAAI,CAA8B,IAAa;IAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAW,CAAA;IAC3C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAE,IAA8B,CAAC,OAAO,CAAC;QAAE,OAAQ,IAAyB,CAAC,OAAO,CAAA;IACzI,OAAO,EAAE,CAAA;AACX,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,OAAO,CAA8B,IAAa,EAAE,KAAK,GAAG,EAAE;IAC5E,MAAM,GAAG,GAAG,IAAI,CAAI,IAAI,CAAC,CAAA;IACzB,MAAM,KAAK,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAQ,IAA4B,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,IAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAA;IAC1J,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAK,IAA2B,CAAC,IAAI,CAAC,CAAA;IAC3F,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,GAAG,KAAK,IAAI,IAAI,EAAE,CAAA;AAClF,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,IAAI,CAAoC,GAAM,EAAE,IAAuB;IACrF,MAAM,GAAG,GAA4B,EAAE,CAAA;IACvC,KAAK,MAAM,GAAG,IAAI,IAAI;QAAE,IAAI,GAAG,IAAI,GAAG;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;IAC3D,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { McpServer } from '@modelcontextprotocol/server';
|
|
2
|
+
import { type Api } from './api.js';
|
|
3
|
+
/** Log everything registered on `server` from here on: tools (the App views' too), resources and prompts. */
|
|
4
|
+
export declare function logCalls(server: McpServer, api: Api): void;
|
package/dist/calllog.js
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Every call this server takes lands in the person's user action log on the platform (API_CONTRACT §90.3), the same row
|
|
3
|
+
* the server inside the API writes for itself: which tool, what it was given, how it ended. The API calls a tool makes
|
|
4
|
+
* carry its id (X-MCP-Call, X-MCP-Tool), so the platform ties them together. A report never holds up or fails a call.
|
|
5
|
+
*/
|
|
6
|
+
import { randomUUID } from 'node:crypto';
|
|
7
|
+
import { inCall } from './api.js';
|
|
8
|
+
/** Short enough that the platform's own cut (500 chars) leaves the note of the real length in place. */
|
|
9
|
+
const MAX_TEXT = 480;
|
|
10
|
+
const MAX_ARGUMENTS = 100_000;
|
|
11
|
+
function forLog(value) {
|
|
12
|
+
const text = JSON.stringify(value ?? {}, (_key, v) => typeof v === 'string' && v.length > MAX_TEXT ? `${v.slice(0, MAX_TEXT)}… (${v.length.toLocaleString('en-US')} chars)` : v);
|
|
13
|
+
return text.length <= MAX_ARGUMENTS ? JSON.parse(text) : { omitted: `${text.length.toLocaleString('en-US')} chars` };
|
|
14
|
+
}
|
|
15
|
+
function outcome(result) {
|
|
16
|
+
const r = (result ?? {});
|
|
17
|
+
if (r.resultType === 'input_required')
|
|
18
|
+
return { status: 202 }; // it asked the person; the answer comes as a new call
|
|
19
|
+
if (!r.isError)
|
|
20
|
+
return { status: 200 };
|
|
21
|
+
const error = r.content?.[0]?.text ?? '';
|
|
22
|
+
const status = /\(HTTP (\d{3})/.exec(error)?.[1];
|
|
23
|
+
return { status: status ? Number(status) : 400, error };
|
|
24
|
+
}
|
|
25
|
+
async function logged(server, api, what, run) {
|
|
26
|
+
const id = randomUUID();
|
|
27
|
+
const started = Date.now();
|
|
28
|
+
const report = (ended) => {
|
|
29
|
+
const client = server.server.getClientVersion();
|
|
30
|
+
api.reportCall({
|
|
31
|
+
call_id: id,
|
|
32
|
+
method: what.method,
|
|
33
|
+
tool: what.tool ?? '',
|
|
34
|
+
arguments: forLog(what.arguments),
|
|
35
|
+
duration_ms: Date.now() - started,
|
|
36
|
+
...ended,
|
|
37
|
+
...(client ? { client: { name: client.name, version: client.version } } : {}),
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
try {
|
|
41
|
+
const result = await inCall({ id, tool: what.tool ?? '' }, run);
|
|
42
|
+
report(outcome(result));
|
|
43
|
+
return result;
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
report({ status: 500, error: error instanceof Error ? error.message : String(error) });
|
|
47
|
+
throw error;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/** Log everything registered on `server` from here on: tools (the App views' too), resources and prompts. */
|
|
51
|
+
export function logCalls(server, api) {
|
|
52
|
+
const tool = server.registerTool.bind(server);
|
|
53
|
+
const resource = server.registerResource.bind(server);
|
|
54
|
+
const prompt = server.registerPrompt.bind(server);
|
|
55
|
+
server.registerTool = ((name, config, handler) => tool(name, config, (...args) => logged(server, api, { method: 'tools/call', tool: name, arguments: args.length > 1 ? args[0] : {} }, () => handler(...args))));
|
|
56
|
+
server.registerResource = ((name, uri, config, handler) => resource(name, uri, config, (...args) => logged(server, api, { method: 'resources/read', arguments: { name, uri: String(args[0]) } }, () => handler(...args))));
|
|
57
|
+
server.registerPrompt = ((name, config, handler) => prompt(name, config, (...args) => logged(server, api, { method: 'prompts/get', arguments: { name, arguments: args.length > 1 ? args[0] : {} } }, () => handler(...args))));
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=calllog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calllog.js","sourceRoot":"","sources":["../src/calllog.ts"],"names":[],"mappings":"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"}
|
package/dist/guides.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
/** Guides served as resources and read by the prompts: short, in plain words, the way the platform writes. */
|
|
2
|
-
export declare const STUDIO_GUIDE = "# The Studio, in short\n\nThe Studio makes images, clips, voice lines and music, and cuts them into videos. A video is a storyboard: shots in\norder, each with a picture (generated, footage you have, a title card, or a presenter), a line of voice-over, text on\nscreen, a length in seconds, and direction for the critic.\n\n## Who does what\n- **You** say what the video is for and how it should feel. One paragraph is enough: who it is for, what it must show,\n the one thing to feel.\n- **The platform** drafts the storyboard from that brief for free (create_video with draft on).\n- **Rose, the Creative Director** (ask_agent creative, with production set to the video id) tightens shots, writes\n better lines, picks looks and models, and proposes changes you apply with apply_chat_action.\n- **The critic** (critique_video) judges takes against each shot's direction and keeps the best.\n\n## Models and money\nstudio_overview lists every model the company can run with its price per image, per second of clip, per voice line or\nper track. update_video {style: {models: {clip, keyframe, voice, music}}} picks them for one video; studio_settings\nsets the defaults. Keyframes (one still per shot) cost cents and lock the look before clips, which cost the most. Every\ntool that spends asks you first, through your tool's own dialog, with the amount.\n\n## The order that works\n1. create_video \u2192 2. get_video, read the shots \u2192 3. ask_agent creative to tighten \u2192 4. update_video models if needed \u2192\n5. video_keyframes \u2192 wait_for_video \u2192 critique_video keyframes \u2192 6. make_video_media all \u2192 wait_for_video \u2192\ncritique_video clips \u2192 7. render_video \u2192 wait_for_video \u2192 the render link, or open_in_app video.\n\n## Shapes and lengths\n16:9 for the web and decks, 9:16 for Reels, Shorts and TikTok, 1:1 and 4:5 for feeds. Teasers run 15 to 30 seconds;\na product walkthrough 60 to 90. Fewer, longer shots read better than many short ones.\n\n## Your own files\nRecordings, screen captures, photos, a voice track, music: upload_media puts them in the library. When the server runs\non your machine (npx -y @autopo/mcp, what Claude Code, Codex and Cursor launch), each file is a path, or a folder of\nthem; hosted, each is a public URL. With a video, in_order puts the files on the shots that have no picture yet, and\nshot puts one file on one shot (a clip or image as its footage, audio as its voice line); attach_media does the same\nfor something already in the library. A whole plan with its files (a zip with plan.json, or the folder) goes in with\nimport_video_plan {path}. Files never travel through the MCP connection: the server uploads them to the platform.\n\n## When something is missing\nget_video and wait_for_video list what still blocks a render: a shot without media, a voice line not made, music not\ncomposed. make_video_media takes a `what` (visuals, voice, music or all) to fill only that gap. A failed generation can\nbe retried with update_media {action: retry}.\n";
|
|
2
|
+
export declare const STUDIO_GUIDE = "# The Studio, in short\n\nThe Studio makes images, clips, voice lines and music, and cuts them into videos. A video is a storyboard: shots in\norder, each with a picture (generated, footage you have, a title card, or a presenter), a line of voice-over, text on\nscreen, a length in seconds, and direction for the critic.\n\n## Who does what\n- **You** say what the video is for and how it should feel. One paragraph is enough: who it is for, what it must show,\n the one thing to feel.\n- **The platform** drafts the storyboard from that brief for free (create_video with draft on).\n- **Rose, the Creative Director** (ask_agent creative, with production set to the video id) tightens shots, writes\n better lines, picks looks and models, and proposes changes you apply with apply_chat_action.\n- **The critic** (critique_video) judges takes against each shot's direction and keeps the best.\n\n## Models and money\nstudio_overview lists every model the company can run with its price per image, per second of clip, per voice line or\nper track. update_video {style: {models: {clip, keyframe, voice, music}}} picks them for one video; studio_settings\nsets the defaults. Keyframes (one still per shot) cost cents and lock the look before clips, which cost the most. Every\ntool that spends asks you first, through your tool's own dialog, with the amount.\n\n## The order that works\n1. create_video \u2192 2. get_video, read the shots \u2192 3. ask_agent creative to tighten \u2192 4. update_video models if needed \u2192\n5. video_keyframes \u2192 wait_for_video \u2192 critique_video keyframes \u2192 6. make_video_media all \u2192 wait_for_video \u2192\ncritique_video clips \u2192 7. render_video \u2192 wait_for_video \u2192 the render link, or open_in_app video.\n\n## Shapes and lengths\n16:9 for the web and decks, 9:16 for Reels, Shorts and TikTok, 1:1 and 4:5 for feeds. Teasers run 15 to 30 seconds;\na product walkthrough 60 to 90. Fewer, longer shots read better than many short ones.\n\n## Your own files\nRecordings, screen captures, photos, a voice track, music: upload_media puts them in the library. When the server runs\non your machine (npx -y @autopo/mcp, what Claude Code, Codex and Cursor launch), each file is a path, or a folder of\nthem; hosted, each is a public URL. With a video, in_order puts the files on the shots that have no picture yet, and\nshot puts one file on one shot (a clip or image as its footage, audio as its voice line); attach_media does the same\nfor something already in the library. A whole plan with its files (a zip with plan.json, or the folder) goes in with\nimport_video_plan {path}. Files never travel through the MCP connection: the server uploads them to the platform.\n\n## When something is missing\nget_video and wait_for_video list what still blocks a render: a shot without media, a voice line not made, music not\ncomposed. make_video_media takes a `what` (visuals, voice, music or all) to fill only that gap. A failed generation can\nbe retried with update_media {action: retry}.\n\n## Code films\nA video can be cut in code instead of by the joiner: convert_video_to_code compiles its storyboard into a small Remotion\nproject (src/film.json holds every word, picture and timing; TypeScript scenes under src/ draw the shots). get_video_code\nreads the project or one file, write_video_code writes files (a new version, checked at once: tsc and the lint, with file\nand line), check_video_code checks again, video_frames draws stills to look at, video_code_versions and restore_video_code\ngo back, and render_video renders the last checked version. None of it spends credits. get_video says the engine and where\nthe code stands. The loop from a terminal: autopoiesis://guide/code-film. Rose cuts in code herself on a film task\n(ask_agent creative, with production): ask her for a scene and read what she wrote with get_video_code.\n";
|
|
3
|
+
export declare const CODE_FILM_GUIDE = "# Making a code film from a terminal\n\nA code film is a video whose cut is a small Remotion project instead of the ffmpeg joiner. The storyboard (shots, lines,\nmedia, direction) stays the Studio's and compiles into src/film.json; TypeScript scenes under src/ draw each shot. The\nplatform checks every write (tsc and its lint), builds the preview the web Studio plays, draws stills on request and\nrenders through Remotion. Nothing here spends credits; renders and frames are free.\n\n## The loop, tool by tool\n1. A video with its material: create_video, then ask_agent {agent: \"creative\", production: <video id>, message: ...} so\n Rose tightens the shots; make_video_media and critique_video as for any video (the teaser guide).\n2. convert_video_to_code {video}: the storyboard compiles to version 1 (src/Film.tsx, src/Root.tsx, src/scenes.ts,\n src/film.json). The result lists the files, the scenes with their frames and the first check. A company whose Studio\n default engine is remotion gets this at create_video already; get_video's engine and code say where a video stands.\n3. get_video_code {video} reads the project; get_video_code {video, file: \"src/Film.tsx\"} one file. Read film.json first:\n it is the contract between the storyboard and your scenes, and the compiler owns it.\n4. write_video_code {video, files: [{path: \"src/scenes/Hook.tsx\", content: ...}], note}: a new version, checked at once.\n Read check.ok and check.errors (file, line, message) before anything else; warnings are craft notes (a card over 7\n words, no hook by 2 s, text outside the 9:16 safe box). Point a shot at your scene by naming it in src/scenes.ts.\n5. check_video_code {video} runs the check again without a write (after the storyboard changed, say).\n6. video_frames {video, frames: [0, 45, 90]} or {every_seconds: 2}: up to 12 stills as Studio images, with links to look\n at. Fix, write, check, look again.\n7. render_video {video} renders the last checked version; wait_for_video returns the link. A refusal names the film's own\n problem (\"the code film's check failed: ...\") and the tool to fix it.\n8. video_code_versions and restore_video_code {video, version} go back to any earlier version (a new version, checked).\n\n## The three rules that never bend\n- Words live in film.json, not in code: a line, a card's text or a title comes from the storyboard (set_video_shots), so\n the Studio, the captions and the QC agree with the picture.\n- Product UI is footage: record the real screen (upload_media) and show it in a FootageScene; never draw a fake UI.\n- Only the kit's imports: @autopo/film, react, remotion, @remotion/*, zod and the film's own files. No fetch, timers,\n Math.random, CSS animations or the clock: the lint refuses them and the render would drift.\n\n## Where the depth is\nThe compiler's own files are the best example: read src/Film.tsx and src/film.json with get_video_code. The Film Kit's API\n(@autopo/film: scenes, cards, hooks, media helpers, the numbers a scene is held to) and the film.json contract are the\nCreative Director's guide, served by the hosted server as read_studio_guide {file: \"film-code/references/kit.md\"} and the\nresources autopoiesis://film-kit/kit.md and autopoiesis://film-kit/contract.md; here, api_request GET\n/api/skills/autopoiesis-film-code returns the guide's method and its file list, and autopoiesis://film-kit/SKILL.md serves it.\n";
|
|
3
4
|
export declare const TEASER_GUIDE = "# Making a teaser from a terminal\n\nThe loop, tool by tool (the make_a_teaser prompt runs it for you):\n\n1. brand_brain: the voice, the audience, the enemy.\n2. create_video {title, brief, aspect_ratio, seconds: 20}: a storyboard is drafted for free.\n3. get_video: read the shots. ask_agent {agent: \"creative\", production: <video id>, message: ...}: Rose tightens them;\n apply_chat_action on her proposals, or set_video_shots to write them yourself.\n4. studio_overview, then update_video {style: {models}} only if the defaults don't fit.\n5. video_keyframes: cents per shot, you confirm. wait_for_video. critique_video {stage: \"keyframes\"}.\n6. make_video_media {what: \"all\"}: the clips and voice lines, you confirm the cost. wait_for_video until nothing is\n generating. critique_video {stage: \"clips\"}.\n7. render_video (free). wait_for_video. The render link is in the result; open_in_app {what: \"video\", id} shows it.\n\nFootage you already have (recordings, screen captures): upload_media {video, files: [{path: \"footage/\"}], in_order: true}\nputs the files on the shots in order, so nothing is generated for them; a whole plan with its files comes in with\nimport_video_plan {path: \"teaser.zip\"}. Paths work when the server runs on your machine; hosted, give URLs.\n\nNothing is spent without the dialog. wait_for_video returns what is still missing when it cannot go on.\n";
|
package/dist/guides.js
CHANGED
|
@@ -40,6 +40,54 @@ import_video_plan {path}. Files never travel through the MCP connection: the ser
|
|
|
40
40
|
get_video and wait_for_video list what still blocks a render: a shot without media, a voice line not made, music not
|
|
41
41
|
composed. make_video_media takes a \`what\` (visuals, voice, music or all) to fill only that gap. A failed generation can
|
|
42
42
|
be retried with update_media {action: retry}.
|
|
43
|
+
|
|
44
|
+
## Code films
|
|
45
|
+
A video can be cut in code instead of by the joiner: convert_video_to_code compiles its storyboard into a small Remotion
|
|
46
|
+
project (src/film.json holds every word, picture and timing; TypeScript scenes under src/ draw the shots). get_video_code
|
|
47
|
+
reads the project or one file, write_video_code writes files (a new version, checked at once: tsc and the lint, with file
|
|
48
|
+
and line), check_video_code checks again, video_frames draws stills to look at, video_code_versions and restore_video_code
|
|
49
|
+
go back, and render_video renders the last checked version. None of it spends credits. get_video says the engine and where
|
|
50
|
+
the code stands. The loop from a terminal: autopoiesis://guide/code-film. Rose cuts in code herself on a film task
|
|
51
|
+
(ask_agent creative, with production): ask her for a scene and read what she wrote with get_video_code.
|
|
52
|
+
`;
|
|
53
|
+
export const CODE_FILM_GUIDE = `# Making a code film from a terminal
|
|
54
|
+
|
|
55
|
+
A code film is a video whose cut is a small Remotion project instead of the ffmpeg joiner. The storyboard (shots, lines,
|
|
56
|
+
media, direction) stays the Studio's and compiles into src/film.json; TypeScript scenes under src/ draw each shot. The
|
|
57
|
+
platform checks every write (tsc and its lint), builds the preview the web Studio plays, draws stills on request and
|
|
58
|
+
renders through Remotion. Nothing here spends credits; renders and frames are free.
|
|
59
|
+
|
|
60
|
+
## The loop, tool by tool
|
|
61
|
+
1. A video with its material: create_video, then ask_agent {agent: "creative", production: <video id>, message: ...} so
|
|
62
|
+
Rose tightens the shots; make_video_media and critique_video as for any video (the teaser guide).
|
|
63
|
+
2. convert_video_to_code {video}: the storyboard compiles to version 1 (src/Film.tsx, src/Root.tsx, src/scenes.ts,
|
|
64
|
+
src/film.json). The result lists the files, the scenes with their frames and the first check. A company whose Studio
|
|
65
|
+
default engine is remotion gets this at create_video already; get_video's engine and code say where a video stands.
|
|
66
|
+
3. get_video_code {video} reads the project; get_video_code {video, file: "src/Film.tsx"} one file. Read film.json first:
|
|
67
|
+
it is the contract between the storyboard and your scenes, and the compiler owns it.
|
|
68
|
+
4. write_video_code {video, files: [{path: "src/scenes/Hook.tsx", content: ...}], note}: a new version, checked at once.
|
|
69
|
+
Read check.ok and check.errors (file, line, message) before anything else; warnings are craft notes (a card over 7
|
|
70
|
+
words, no hook by 2 s, text outside the 9:16 safe box). Point a shot at your scene by naming it in src/scenes.ts.
|
|
71
|
+
5. check_video_code {video} runs the check again without a write (after the storyboard changed, say).
|
|
72
|
+
6. video_frames {video, frames: [0, 45, 90]} or {every_seconds: 2}: up to 12 stills as Studio images, with links to look
|
|
73
|
+
at. Fix, write, check, look again.
|
|
74
|
+
7. render_video {video} renders the last checked version; wait_for_video returns the link. A refusal names the film's own
|
|
75
|
+
problem ("the code film's check failed: ...") and the tool to fix it.
|
|
76
|
+
8. video_code_versions and restore_video_code {video, version} go back to any earlier version (a new version, checked).
|
|
77
|
+
|
|
78
|
+
## The three rules that never bend
|
|
79
|
+
- Words live in film.json, not in code: a line, a card's text or a title comes from the storyboard (set_video_shots), so
|
|
80
|
+
the Studio, the captions and the QC agree with the picture.
|
|
81
|
+
- Product UI is footage: record the real screen (upload_media) and show it in a FootageScene; never draw a fake UI.
|
|
82
|
+
- Only the kit's imports: @autopo/film, react, remotion, @remotion/*, zod and the film's own files. No fetch, timers,
|
|
83
|
+
Math.random, CSS animations or the clock: the lint refuses them and the render would drift.
|
|
84
|
+
|
|
85
|
+
## Where the depth is
|
|
86
|
+
The compiler's own files are the best example: read src/Film.tsx and src/film.json with get_video_code. The Film Kit's API
|
|
87
|
+
(@autopo/film: scenes, cards, hooks, media helpers, the numbers a scene is held to) and the film.json contract are the
|
|
88
|
+
Creative Director's guide, served by the hosted server as read_studio_guide {file: "film-code/references/kit.md"} and the
|
|
89
|
+
resources autopoiesis://film-kit/kit.md and autopoiesis://film-kit/contract.md; here, api_request GET
|
|
90
|
+
/api/skills/autopoiesis-film-code returns the guide's method and its file list, and autopoiesis://film-kit/SKILL.md serves it.
|
|
43
91
|
`;
|
|
44
92
|
export const TEASER_GUIDE = `# Making a teaser from a terminal
|
|
45
93
|
|
package/dist/guides.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guides.js","sourceRoot":"","sources":["../src/guides.ts"],"names":[],"mappings":"AAAA,8GAA8G;AAE9G,MAAM,CAAC,MAAM,YAAY,GAAG
|
|
1
|
+
{"version":3,"file":"guides.js","sourceRoot":"","sources":["../src/guides.ts"],"names":[],"mappings":"AAAA,8GAA8G;AAE9G,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkD3B,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsC9B,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;CAmB3B,CAAA"}
|
package/dist/resources.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** What a client can read as resources: the guides, a company's home and brand brain, the API's OpenAPI document. */
|
|
2
2
|
import { ResourceTemplate } from '@modelcontextprotocol/server';
|
|
3
|
-
import { STUDIO_GUIDE, TEASER_GUIDE } from './guides.js';
|
|
3
|
+
import { CODE_FILM_GUIDE, STUDIO_GUIDE, TEASER_GUIDE } from './guides.js';
|
|
4
4
|
export function registerResources(server, s) {
|
|
5
5
|
server.registerResource('studio-guide', 'autopoiesis://guide/studio', {
|
|
6
6
|
title: 'Studio guide',
|
|
@@ -12,6 +12,20 @@ export function registerResources(server, s) {
|
|
|
12
12
|
description: 'The teaser loop from a terminal, tool by tool: brief, storyboard, keyframes, clips, render.',
|
|
13
13
|
mimeType: 'text/markdown',
|
|
14
14
|
}, async (uri) => ({ contents: [{ uri: uri.href, mimeType: 'text/markdown', text: TEASER_GUIDE }] }));
|
|
15
|
+
server.registerResource('code-film-guide', 'autopoiesis://guide/code-film', {
|
|
16
|
+
title: 'Making a code film',
|
|
17
|
+
description: 'A video cut as a Remotion project, from a terminal: convert, read, write (checked), frames, render, versions; the three rules.',
|
|
18
|
+
mimeType: 'text/markdown',
|
|
19
|
+
}, async (uri) => ({ contents: [{ uri: uri.href, mimeType: 'text/markdown', text: CODE_FILM_GUIDE }] }));
|
|
20
|
+
server.registerResource('film-kit-skill', 'autopoiesis://film-kit/SKILL.md', {
|
|
21
|
+
title: 'Code films: the Creative Director’s guide',
|
|
22
|
+
description: 'The autopoiesis-film-code skill’s SKILL.md, live from the platform: the method, the kit, the rules, the file list (the references themselves are the hosted server’s autopoiesis://film-kit/ resources).',
|
|
23
|
+
mimeType: 'text/markdown',
|
|
24
|
+
}, async (uri) => {
|
|
25
|
+
const skill = (await s.api.get('/api/skills/autopoiesis-film-code'));
|
|
26
|
+
const files = (skill.file_paths ?? []).length ? `\n\n---\nFiles of this guide: ${(skill.file_paths ?? []).join(', ')} (read them through the hosted MCP server: read_studio_guide {file: "film-code/<path>"}).\n` : '';
|
|
27
|
+
return { contents: [{ uri: uri.href, mimeType: 'text/markdown', text: `${skill.content ?? ''}${files}` }] };
|
|
28
|
+
});
|
|
15
29
|
server.registerResource('openapi', 'autopoiesis://openapi', {
|
|
16
30
|
title: 'REST API (OpenAPI)',
|
|
17
31
|
description: 'The platform’s OpenAPI document: every endpoint api_request can call.',
|
package/dist/resources.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,qHAAqH;AACrH,OAAO,EAAE,gBAAgB,EAAkB,MAAM,8BAA8B,CAAA;AAE/E,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** The Autopoiesis MCP server: one person's tool on the platform, as them. */
|
|
2
2
|
import { McpServer } from '@modelcontextprotocol/server';
|
|
3
|
-
export declare const VERSION = "0.
|
|
3
|
+
export declare const VERSION = "0.4.1";
|
|
4
4
|
export declare const DEFAULT_API_URL = "https://autopoiesis-api-267405155162.us-west1.run.app";
|
|
5
5
|
export declare const DEFAULT_APP_URL = "https://app.autopoiesis.app";
|
|
6
6
|
/** The cell mark, served by the landing site (an inline data URI would ride along on every result). */
|
package/dist/server.js
CHANGED
|
@@ -3,12 +3,13 @@ import { McpServer } from '@modelcontextprotocol/server';
|
|
|
3
3
|
import { Api } from './api.js';
|
|
4
4
|
import { Session } from './kit.js';
|
|
5
5
|
import { registerApps } from './apps.js';
|
|
6
|
+
import { logCalls } from './calllog.js';
|
|
6
7
|
import { registerPrompts } from './prompts.js';
|
|
7
8
|
import { registerResources } from './resources.js';
|
|
8
9
|
import { registerCompanyTools } from './tools/company.js';
|
|
9
10
|
import { registerMarketingAndApiTools } from './tools/marketing.js';
|
|
10
11
|
import { registerStudioTools } from './tools/studio.js';
|
|
11
|
-
export const VERSION = '0.
|
|
12
|
+
export const VERSION = '0.4.1';
|
|
12
13
|
export const DEFAULT_API_URL = 'https://autopoiesis-api-267405155162.us-west1.run.app';
|
|
13
14
|
export const DEFAULT_APP_URL = 'https://app.autopoiesis.app';
|
|
14
15
|
/** The cell mark, served by the landing site (an inline data URI would ride along on every result). */
|
|
@@ -19,6 +20,7 @@ export const INSTRUCTIONS = [
|
|
|
19
20
|
'Anything that spends credits (generate_media, make_video_media, video_keyframes) or decides something (decide, create_posts, cancel_task, delete_video) opens a confirmation dialog for the person; never work around it. Costs are shown in that dialog.',
|
|
20
21
|
'Your own files (recordings, screen captures, photos, a voice track) go into the Studio with upload_media: paths on this machine when the server runs here, URLs otherwise; attach_media puts one on a shot; import_video_plan takes a plan.json or zip with the footage it names. Never say files cannot be uploaded: upload_media does it.',
|
|
21
22
|
'A teaser video: the make_a_teaser prompt, or the guide at autopoiesis://guide/teaser. Agents answer through ask_agent; a video is best made with the Creative Director beside it (ask_agent creative, with `production`). api_request reaches every other endpoint; api_reference is the manual. open_in_app opens a page of the web app.',
|
|
23
|
+
'A video can be cut in code (a Remotion project its storyboard compiles to): convert_video_to_code, then get_video_code, write_video_code (every write is checked at once), check_video_code, video_frames (free stills) and render_video; the guide is autopoiesis://guide/code-film.',
|
|
22
24
|
].join(' ');
|
|
23
25
|
export function createServer(options) {
|
|
24
26
|
const apiUrl = (options.apiUrl ?? DEFAULT_API_URL).replace(/\/+$/, '');
|
|
@@ -31,6 +33,7 @@ export function createServer(options) {
|
|
|
31
33
|
local: options.local ?? false,
|
|
32
34
|
});
|
|
33
35
|
const server = new McpServer({ name: 'autopoiesis', title: 'Autopoiesis', version: VERSION, description: 'Your AI-run company, from your own tool.', websiteUrl: 'https://autopoiesis.app', icons: [ICON] }, { instructions: INSTRUCTIONS, capabilities: { logging: {} } });
|
|
36
|
+
logCalls(server, api);
|
|
34
37
|
registerCompanyTools(server, session);
|
|
35
38
|
registerStudioTools(server, session);
|
|
36
39
|
registerMarketingAndApiTools(server, session);
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAA;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAEvD,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAA;AAC9B,MAAM,CAAC,MAAM,eAAe,GAAG,uDAAuD,CAAA;AACtF,MAAM,CAAC,MAAM,eAAe,GAAG,6BAA6B,CAAA;AAE5D,uGAAuG;AACvG,MAAM,CAAC,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,qCAAqC,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,CAAA;AAE7G,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,qWAAqW;IACrW,qIAAqI;IACrI,2PAA2P;IAC3P,6UAA6U;IAC7U,2UAA2U;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/studio.d.ts
CHANGED
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
* teaser loop from a terminal: create_video → get_video → ask_agent creative (production) → update_video models →
|
|
4
4
|
* video_keyframes (confirm) → critique_video → make_video_media (confirm) → wait_for_video → render_video → wait → open.
|
|
5
5
|
* Anything that spends credits first says what it will cost and asks, through the host's own dialog.
|
|
6
|
+
*
|
|
7
|
+
* Code films (the platform's API contract §91): a video's storyboard compiled to a small Remotion project, edited file by
|
|
8
|
+
* file from a terminal: convert_video_to_code → get_video_code → write_video_code (checked at once) → check_video_code →
|
|
9
|
+
* video_frames → render_video, with video_code_versions and restore_video_code to go back. The same seven tools, with
|
|
10
|
+
* the same names and arguments, are on the hosted server.
|
|
6
11
|
*/
|
|
7
12
|
import type { McpServer } from '@modelcontextprotocol/server';
|
|
8
13
|
import { Session } from '../kit.js';
|
package/dist/tools/studio.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { pick, rows, trimmed } from '../api.js';
|
|
2
|
+
import { ApiError, pick, rows, trimmed } from '../api.js';
|
|
3
3
|
import { COMPANY_ARG, PAGE_ARGS, ToolError, confirm, define, isInputRequired, money, resolveCompany } from '../kit.js';
|
|
4
4
|
import { describeApiError, expandPath, fileRefs, findFile, mb, noLocalFiles, pathSource, planFromPath, planFromUrl, progressOf, rewriteRefs, upload, urlSource, waitReady } from '../files.js';
|
|
5
5
|
const MEDIA_KEYS = ['id', 'kind', 'status', 'title', 'model', 'source', 'purpose', 'url', 'thumb_url', 'duration_seconds', 'width', 'height', 'cost_cents', 'error', 'created_at'];
|
|
@@ -7,6 +7,46 @@ const MODEL_KEYS = ['key', 'kind', 'purpose', 'label', 'maker', 'short', 'qualit
|
|
|
7
7
|
const VOICE_KEYS = ['key', 'label', 'description', 'gender', 'age', 'accent'];
|
|
8
8
|
const VIDEO_KEYS = ['id', 'title', 'status', 'aspect_ratio', 'running_seconds', 'shot_count', 'updated_at'];
|
|
9
9
|
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
10
|
+
const PROJECT_KEYS = ['id', 'production_id', 'engine', 'kit_version', 'remotion_version', 'version', 'scenes', 'check', 'preview_url', 'can_check', 'can_render', 'updated_at'];
|
|
11
|
+
const FRAME_KEYS = ['id', 'kind', 'status', 'title', 'url', 'thumb_url', 'width', 'height', 'params', 'error', 'created_at'];
|
|
12
|
+
const VIDEO_ARG = { video: z.string().describe('the video id (list_videos)') };
|
|
13
|
+
const film = (video, tail = '') => `/api/studio/productions/${video}/film${tail}`;
|
|
14
|
+
/** A FilmProject for a tool result: the head's files as paths, the scenes, the last check and the latest versions; not the
|
|
15
|
+
* props schema (the web editor's form) nor file contents (get_video_code with `file`). */
|
|
16
|
+
function codeProject(project, versions = 10) {
|
|
17
|
+
const head = project.head ?? {};
|
|
18
|
+
const files = head.files ?? [];
|
|
19
|
+
const out = { ...pick(project, PROJECT_KEYS), files: Array.isArray(files) ? files : Object.keys(files).sort(), sources: head.sources ?? {} };
|
|
20
|
+
if (project.versions) {
|
|
21
|
+
out.versions = project.versions.slice(0, versions);
|
|
22
|
+
out.more_versions = project.versions.length > versions;
|
|
23
|
+
}
|
|
24
|
+
return out;
|
|
25
|
+
}
|
|
26
|
+
/** `code` on get_video: where a code film stands (from the production's `film` summary), or null for a joiner film. */
|
|
27
|
+
function codeSummary(video) {
|
|
28
|
+
if (video.engine !== 'remotion')
|
|
29
|
+
return null;
|
|
30
|
+
const summary = video.film;
|
|
31
|
+
if (!summary)
|
|
32
|
+
return { version: 0, checked: false, errors: null, warnings: null, scenes: 0, preview_url: null, next: 'convert_video_to_code makes the project from the storyboard' };
|
|
33
|
+
const checked = Boolean(summary.ok);
|
|
34
|
+
return {
|
|
35
|
+
version: summary.version ?? 0,
|
|
36
|
+
checked,
|
|
37
|
+
checked_at: summary.checked_at ?? null,
|
|
38
|
+
errors: summary.errors ?? 0,
|
|
39
|
+
warnings: summary.warnings ?? 0,
|
|
40
|
+
scenes: summary.scene_count ?? 0,
|
|
41
|
+
preview_url: summary.preview_url ?? null,
|
|
42
|
+
next: checked ? 'video_frames, then render_video' : "get_video_code shows the check's errors; write_video_code and check_video_code fix and re-check it",
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/** What a write, a check or a restore answers: the version, its check, the scenes and the preview link. */
|
|
46
|
+
function checked(data, version) {
|
|
47
|
+
const project = data.project ?? {};
|
|
48
|
+
return { version: version ?? data.version ?? null, check: data.check ?? project.check ?? null, scenes: project.scenes ?? [], preview_url: project.preview_url ?? null };
|
|
49
|
+
}
|
|
10
50
|
const busy = (status) => Boolean(status && ['queued', 'generating', 'running', 'rendering', 'processing', 'pending'].includes(status));
|
|
11
51
|
/** What a video still waits for: shots whose media, voice or takes are being made; a running render; and what no one
|
|
12
52
|
* has made yet (a generate/footage shot without a picture, a line without its voice). */
|
|
@@ -68,7 +108,7 @@ const companyOf = (video) => video.company_id ?? video.company;
|
|
|
68
108
|
export function registerStudioTools(server, s) {
|
|
69
109
|
define(server, s, 'studio_overview', {
|
|
70
110
|
title: 'Studio overview',
|
|
71
|
-
description: "The Studio: every model this company can run (what it is for, price, shapes, availability), the voices, the default models and narrator, providers
|
|
111
|
+
description: "The Studio: every model this company can run (what it is for, price, shapes, availability), the voices, the default models and narrator, providers, the team's allowance, and whether this server can check and render code films (`can_render_code`).",
|
|
72
112
|
input: { ...COMPANY_ARG },
|
|
73
113
|
group: 'studio',
|
|
74
114
|
}, async (args, ctx) => {
|
|
@@ -78,7 +118,7 @@ export function registerStudioTools(server, s) {
|
|
|
78
118
|
const data = (await s.api.get(`/api/companies/${cid}/studio`));
|
|
79
119
|
return {
|
|
80
120
|
company: cid,
|
|
81
|
-
...pick(data, ['defaults', 'settings', 'allowance', 'providers', 'placeholder_mode', 'can_render']),
|
|
121
|
+
...pick(data, ['defaults', 'settings', 'allowance', 'providers', 'placeholder_mode', 'can_render', 'can_render_code']),
|
|
82
122
|
models: (data.models ?? []).map((m) => pick(m, MODEL_KEYS)),
|
|
83
123
|
voices: (data.voices ?? []).map((v) => pick(v, VOICE_KEYS)),
|
|
84
124
|
};
|
|
@@ -181,11 +221,14 @@ export function registerStudioTools(server, s) {
|
|
|
181
221
|
});
|
|
182
222
|
define(server, s, 'get_video', {
|
|
183
223
|
title: 'Get video',
|
|
184
|
-
description: "A video's storyboard in full: every shot (picture, line, text, seconds, direction, takes), the style and models it is made with, the presenter, cards, the finished render, and what is missing before it can render.",
|
|
224
|
+
description: "A video's storyboard in full: every shot (picture, line, text, seconds, direction, takes), the style and models it is made with, the presenter, cards, the finished render, and what is missing before it can render. `engine` says how it is cut (ffmpeg: the joiner; remotion: a code film) and `code` where a code film stands (version, checked, errors; get_video_code for the project).",
|
|
185
225
|
input: { video: z.string() },
|
|
186
226
|
group: 'studio',
|
|
187
227
|
ui: 'ui://autopoiesis/storyboard.html',
|
|
188
|
-
}, async (args) =>
|
|
228
|
+
}, async (args) => {
|
|
229
|
+
const video = (await s.api.get(`/api/studio/productions/${args.video}`));
|
|
230
|
+
return { ...video, code: codeSummary(video) };
|
|
231
|
+
});
|
|
189
232
|
define(server, s, 'create_video', {
|
|
190
233
|
title: 'Create video',
|
|
191
234
|
description: "Start a video: a title, the brief (who it's for, what it must show, the one thing to feel), the shape (16:9, 9:16, 1:1, 4:5) and the length in seconds. The platform drafts the storyboard from the brief (free); then shape it with set_video_shots or ask the Creative Director (ask_agent creative, with `production`). `draft: false` makes an empty video to fill yourself.",
|
|
@@ -433,11 +476,22 @@ export function registerStudioTools(server, s) {
|
|
|
433
476
|
});
|
|
434
477
|
define(server, s, 'render_video', {
|
|
435
478
|
title: 'Render video',
|
|
436
|
-
description: 'Cut the video into one MP4 (free). get_video says what is missing when it refuses; the render takes a minute or two: wait_for_video.',
|
|
479
|
+
description: 'Cut the video into one MP4 (free). get_video says what is missing when it refuses; the render takes a minute or two: wait_for_video. A code film (`engine` remotion) renders its last checked version through Remotion, so the check must pass first (check_video_code); the refusal names the film\'s problem.',
|
|
437
480
|
input: { video: z.string() },
|
|
438
481
|
group: 'studio',
|
|
439
482
|
kind: 'write',
|
|
440
|
-
}, async (args) =>
|
|
483
|
+
}, async (args) => {
|
|
484
|
+
try {
|
|
485
|
+
return await s.api.post(`/api/studio/productions/${args.video}/render`);
|
|
486
|
+
}
|
|
487
|
+
catch (error) {
|
|
488
|
+
// the film's own refusal (§91.2), said plainly with the way out
|
|
489
|
+
if (error instanceof ApiError && error.status === 400 && error.message.includes('code film')) {
|
|
490
|
+
throw new ToolError(`${error.message} get_video_code shows the last check; write_video_code and check_video_code fix and re-check the film; video_frames shows stills once it passes.`);
|
|
491
|
+
}
|
|
492
|
+
throw error;
|
|
493
|
+
}
|
|
494
|
+
});
|
|
441
495
|
define(server, s, 'design_video_cards', {
|
|
442
496
|
title: 'Design the cards',
|
|
443
497
|
description: 'Make (or re-sync) the cards drawn over a video’s shots, one scene per shot, editable in the Studio’s design editor. `remove: true` takes them off.',
|
|
@@ -547,5 +601,83 @@ export function registerStudioTools(server, s) {
|
|
|
547
601
|
body.starred = args.starred;
|
|
548
602
|
return s.api.patch(`/api/studio/media/${args.media}`, body);
|
|
549
603
|
});
|
|
604
|
+
// --- code films (§91): the same seven tools as the hosted server, over the REST endpoints ------------------------------
|
|
605
|
+
define(server, s, 'convert_video_to_code', {
|
|
606
|
+
title: 'Cut in code',
|
|
607
|
+
description: "Cut a video in code: its storyboard compiles to a Remotion project (`engine` remotion, version 1 from the compiler, checked and built where the server has Node). The storyboard, media and direction stay as they are; from here the picture is drawn by the project's scenes, which you edit with write_video_code. On a film that exists it brings src/film.json up to date. Read the guide (autopoiesis://guide/code-film) before editing.",
|
|
608
|
+
input: { ...VIDEO_ARG, note: z.string().optional() },
|
|
609
|
+
group: 'studio',
|
|
610
|
+
kind: 'write',
|
|
611
|
+
}, async (args) => {
|
|
612
|
+
const data = (await s.api.post(film(args.video), args.note ? { note: args.note } : {}));
|
|
613
|
+
return { ...codeProject(data.project ?? {}), production: pick((data.production ?? {}), ['id', 'title', 'status', 'engine', 'film']) };
|
|
614
|
+
});
|
|
615
|
+
define(server, s, 'get_video_code', {
|
|
616
|
+
title: 'Get video code',
|
|
617
|
+
description: "A video's code film (a Remotion project its storyboard compiles to): the version, the head's files (paths), the scenes, the last check (ok, errors with file and line, warnings), the preview link and the latest versions. With `file` (a path, e.g. src/Film.tsx) one file's content and who wrote it. 404 before convert_video_to_code.",
|
|
618
|
+
input: { ...VIDEO_ARG, file: z.string().optional().describe('a path of the head, for its content') },
|
|
619
|
+
group: 'studio',
|
|
620
|
+
}, async (args) => {
|
|
621
|
+
const path = (args.file ?? '').trim().replace(/^\/+/, '');
|
|
622
|
+
if (path)
|
|
623
|
+
return s.api.get(film(args.video, `/files/${path}`));
|
|
624
|
+
const data = (await s.api.get(film(args.video)));
|
|
625
|
+
return codeProject(data.project ?? data);
|
|
626
|
+
});
|
|
627
|
+
define(server, s, 'write_video_code', {
|
|
628
|
+
title: 'Write video code',
|
|
629
|
+
description: "Write files of a video's code film: `files` [{path, content}] (content null removes a file; paths under src/ ending .ts, .tsx, .js, .jsx, .css or .json; src/film.json, package.json and tsconfig.json are the compiler's and follow the storyboard). A new version is made and checked at once (tsc, the lint, the scene list, the preview build): `check` says ok, or the errors with file and line. Free. Only `@autopo/film`, react, remotion, `@remotion/*`, zod and the film's own files may be imported; words live in film.json, not in code.",
|
|
630
|
+
input: {
|
|
631
|
+
...VIDEO_ARG,
|
|
632
|
+
files: z.array(z.object({ path: z.string(), content: z.string().nullable().describe('the file\'s text, or null to remove it') })).min(1).max(40),
|
|
633
|
+
note: z.string().optional().describe('what changed, for the version list'),
|
|
634
|
+
},
|
|
635
|
+
group: 'studio',
|
|
636
|
+
kind: 'write',
|
|
637
|
+
}, async (args) => {
|
|
638
|
+
const data = (await s.api.put(film(args.video, '/files'), { files: args.files, ...(args.note ? { note: args.note } : {}) }));
|
|
639
|
+
return checked(data);
|
|
640
|
+
});
|
|
641
|
+
define(server, s, 'check_video_code', {
|
|
642
|
+
title: 'Check video code',
|
|
643
|
+
description: "Check a video's code film again without changing it: tsc, the lint, the scene list and the preview bundle run on the head. `check` has ok, errors (file, line, shot, message), warnings (craft: a card over 7 words, no hook by 2 s…) and the running time. Free.",
|
|
644
|
+
input: { ...VIDEO_ARG },
|
|
645
|
+
group: 'studio',
|
|
646
|
+
kind: 'write',
|
|
647
|
+
}, async (args) => {
|
|
648
|
+
const data = (await s.api.post(film(args.video, '/check')));
|
|
649
|
+
return checked(data, data.project?.version ?? null);
|
|
650
|
+
});
|
|
651
|
+
define(server, s, 'video_frames', {
|
|
652
|
+
title: 'Video frames',
|
|
653
|
+
description: "Draw stills of a video's code film as Studio images (free; seconds after the first build): `frames` (frame numbers at the film's fps) or `every_seconds`; neither: the middle of every shot. Up to 12 a call. Needs a passing check. Each result has a url and thumb_url to look at before a render.",
|
|
654
|
+
input: { ...VIDEO_ARG, frames: z.array(z.number().int().min(0)).max(12).optional(), every_seconds: z.number().min(0.5).optional() },
|
|
655
|
+
group: 'studio',
|
|
656
|
+
kind: 'write',
|
|
657
|
+
}, async (args) => {
|
|
658
|
+
const body = {};
|
|
659
|
+
if (args.frames?.length)
|
|
660
|
+
body.frames = args.frames;
|
|
661
|
+
else if (args.every_seconds)
|
|
662
|
+
body.every_seconds = args.every_seconds;
|
|
663
|
+
const data = (await s.api.post(film(args.video, '/frames'), body));
|
|
664
|
+
return { media: (data.media ?? []).map((m) => pick(m, FRAME_KEYS)) };
|
|
665
|
+
});
|
|
666
|
+
define(server, s, 'video_code_versions', {
|
|
667
|
+
title: 'Video code versions',
|
|
668
|
+
description: "Every version of a video's code film, newest first: number, source (compiler, agent, founder, restore), note, files, who made it and when; `head` is the current one.",
|
|
669
|
+
input: { ...VIDEO_ARG },
|
|
670
|
+
group: 'studio',
|
|
671
|
+
}, async (args) => s.api.get(film(args.video, '/versions')));
|
|
672
|
+
define(server, s, 'restore_video_code', {
|
|
673
|
+
title: 'Restore video code',
|
|
674
|
+
description: "Bring an earlier version of a video's code film back as a new version (source restore), checked at once.",
|
|
675
|
+
input: { ...VIDEO_ARG, version: z.number().int().min(1).describe('a number from video_code_versions') },
|
|
676
|
+
group: 'studio',
|
|
677
|
+
kind: 'write',
|
|
678
|
+
}, async (args) => {
|
|
679
|
+
const data = (await s.api.post(film(args.video, `/versions/${args.version}/restore`)));
|
|
680
|
+
return checked(data);
|
|
681
|
+
});
|
|
550
682
|
}
|
|
551
683
|
//# sourceMappingURL=studio.js.map
|
package/dist/tools/studio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"studio.js","sourceRoot":"","sources":["../../src/tools/studio.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"studio.js","sourceRoot":"","sources":["../../src/tools/studio.ts"],"names":[],"mappings":"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"}
|