{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_vpwt788jtzsn","handle":"autopo-mcp","url":"https://wellknown.network/agents/autopo-mcp","links":{"self":"https://wellknown.network/agents/autopo-mcp/record.json","html":"https://wellknown.network/agents/autopo-mcp","markdown":"https://wellknown.network/agents/autopo-mcp/record.md","api":"https://wellknown.network/api/v1/agents/autopo-mcp","status":"https://wellknown.network/api/v1/agents/autopo-mcp/status","claim":"https://wellknown.network/agents/autopo-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/autopo-mcp/claim.json","badge":"https://wellknown.network/agents/autopo-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/autopo-mcp/history","tools":"https://wellknown.network/api/v1/agents/autopo-mcp/tools"},"ard":{"identifier":"urn:air:autopoiesis-mcp-267405155162.us-west1.run.app:server:autopo-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Autopo","summary":"Run your AI-run company from Claude Code, Codex, Cursor or ChatGPT: inbox, tasks, team, Studio.","description":"Run your AI-run company from Claude Code, Codex, Cursor or ChatGPT: inbox, tasks, team, Studio.","publisher":{"name":"Autopoiesis-ai","url":null},"homepage":"https://autopoiesis.app","repository":null,"version":"0.6.3","license":"MIT","protocols":["mcp"],"tags":["mcp","model-context-protocol","autopo","autopoiesis","claude-code","codex","cursor","ai-company"],"pricing":null,"endpoints":[{"url":"https://autopoiesis-mcp-267405155162.us-west1.run.app/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"npm:@autopo/mcp","type":"package_npm","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-11-05T07:38:41.019283Z","npmKeywords":["mcp","model-context-protocol","autopo","autopoiesis","claude-code","codex","cursor","ai-company"],"publishedAt":"2026-11-05T07:38:41.019283Z","registryName":"io.github.Autopoiesis-ai/mcp"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","license":"npm","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"media.speech-synthesis","name":"Speech Synthesis","confidence":1,"provenance":"derived"},{"slug":"documents.invoice-processing","name":"Invoice Processing","confidence":1,"provenance":"derived"},{"slug":"data.apis","name":"API Access","confidence":1,"provenance":"derived"},{"slug":"dev.filesystem","name":"Filesystem","confidence":1,"provenance":"derived"},{"slug":"productivity.email","name":"Email","confidence":1,"provenance":"derived"},{"slug":"commerce.payments","name":"Payments","confidence":1,"provenance":"derived"},{"slug":"commerce.ecommerce","name":"E-commerce Operations","confidence":1,"provenance":"derived"},{"slug":"infra.browser-automation","name":"Browser Automation","confidence":1,"provenance":"derived"}],"categories":["commerce","data","dev","documents","infra","media","productivity"],"language":"fr"},"observed":{"status":"live","statusReason":"Responded 8h ago.","lastOkAt":"2026-11-06T02:27:58.648Z","lastProbedAt":"2026-11-06T02:27:58.648Z","statusComputedAt":"2026-11-06T02:30:52.362Z","reliability30d":{"probes":2,"successRate":1,"p50Ms":155,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":2,"ok":2,"authBoundaryOk":0,"serviceOk":2,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-11-06T02:27:58.648Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":158,"error":null,"detail":{"tools":[{"name":"list_companies","description":"The companies you belong to (id, name, stage, kind). Other tools take `company`: one of these ids. Start here."},{"name":"whoami","description":"The signed-in person: name, email, preferences, and how many companies they are in."},{"name":"founder_home","description":"What needs you, what improved and what is stuck in a company right now: the home screen's digest, the open decisions, running work, delivered work and your requ"},{"name":"company_overview","description":"The company: its charter, stage, team, budget and gates."},{"name":"activity","description":"The company's activity feed, newest first (who did what, when). `after`: only events after this ISO time."},{"name":"list_briefings","description":"The CEO's board briefings (spoken updates), newest first, with their text."},{"name":"get_briefing","description":"One briefing: its sections, the decisions it asked for, and what was said."},{"name":"brief_me_now","description":"Ask the CEO for a fresh briefing since your last one (at most 3 a day). It is written and voiced in the background: read it with get_briefing in a minute."},{"name":"list_decisions","description":"The Board inbox: cards waiting for you (`status` pending, default), or decided ones. Each card says what the team wants, why, the risk tier and the amount; deci"},{"name":"get_decision","description":"One inbox card in full: the ask, the agent's case, the options, the work behind it."},{"name":"decide","description":"Decide an inbox card as the founder: approve, reject (a `note` is required) or cancel. For a question card, `answer` is the chosen option's value. `edited_input"},{"name":"comment_on_decision","description":"Ask the team something about a card before deciding; the requesting agent answers."},{"name":"list_tasks","description":"The work board: tasks by status, assignee role or goal; `q` searches titles; `mine: true` only what you asked for (your requests)."},{"name":"get_task","description":"One task in full: description, criteria, status, the thread's last comments, its pull requests and deliverables."},{"name":"create_task","description":"Give the team work, or make a request of your own (the CEO routes it when no assignee is named): a title, what done looks like, criteria. `assignee` is an agent"},{"name":"update_task","description":"Change a task: its title, description, status, priority, assignee or criteria. To cancel one, use cancel_task."},{"name":"comment_on_task","description":"Write in a task's thread as the founder: the assignee reads it and answers (a comment wakes them)."},{"name":"cancel_task","description":"Cancel a task (and its open subtasks, pending cards and live runs). `preview: true` only says what it would take. You confirm in a dialog before it is final."},{"name":"list_agents","description":"The team: every agent with its role, title, state and whether it is on. Chat with one through ask_agent."},{"name":"ask_agent","description":"Start a chat with an agent (list_agents) and wait for the answer. `agent` is the agent's id or role key (ceo, cto, creative…). Beside the Studio, pass `producti"},{"name":"continue_chat","description":"Send another message in an existing chat and wait for the reply."},{"name":"read_chat","description":"A chat's messages, oldest first (the last reply's status says whether it is still answering)."},{"name":"list_chats","description":"Your chats across the team (pinned first, then recent); `q` searches titles and content."},{"name":"apply_chat_action","description":"Apply a proposal an agent made in a chat (a task, a note, media to make, a card): the action's id from the reply's `actions`. `edits` changes fields of its payl"},{"name":"list_runs","description":"Agent runs: `status` active (queued, running), finished, or a comma list; `agent` an agent id."},{"name":"get_run","description":"One run: its status, cost, and its events (tool calls, text) from `after_seq`."},{"name":"nudge_run","description":"Steer a run that is still going: a line of guidance the agent reads at its next step."},{"name":"list_artifacts","description":"What the team made: documents, research, decks, tables, videos, designs (`type`), delivered work, `q` searches, `starred` only yours."},{"name":"get_artifact","description":"One artifact in full (its body, content, version, who made it), with `app_url`: its page in the web app."},{"name":"artifact_feedback","description":"Ask for a revision of an artifact: a task for the agent who made it; the change lands as a new version."},{"name":"studio_overview","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 a"},{"name":"studio_settings","description":"Change the Studio's defaults: `default_models` by kind (image, video, voice, music: model keys from studio_overview) and the default narrator `voice` (a voice k"},{"name":"list_media","description":"The media library: images, clips, voice lines and music, with filters (`kind` image|video|audio, `source` generated|uploaded|recorded|rendered, `q`, `starred`)."},{"name":"get_media","description":"One piece of media: its prompt, model, settings, link and state."},{"name":"generate_media","description":"Make an image, a clip, a voice line or music in the Studio (spends credits; you confirm the cost in a dialog): `kind`, a `prompt`, optionally a `model` (studio_"},{"name":"list_videos","description":"The Studio's videos (productions): title, status, shape, length."},{"name":"get_video","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 finis"},{"name":"create_video","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 plat"},{"name":"set_video_shots","description":"Replace a video's storyboard: shots in order, each {visual: generate|footage|title|presenter, prompt, voiceover, on_screen_text, duration_seconds, media?, voice"},{"name":"upload_media","description":"Put your own files into the Studio library: recordings, screen captures, photos, a voice track, music. Each item is a `path` on the machine this server runs on "},{"name":"attach_media","description":"Put a library item on one shot: `media` (an image or clip: the shot's picture, as footage) or `voice` (an audio item: the shot's line). The other shots stay as "},{"name":"update_video","description":"Change a video: title, brief, shape, or its `style`: music, captions, transition (cut|fade), colours, the narrator `voice`, the `look` (palette, light, camera, "},{"name":"make_video_media","description":"Make what a video still lacks (spends credits; you confirm the cost in a dialog): `what` all (clips and voice lines), visuals, voice, or music (composed from th"},{"name":"video_keyframes","description":"Make the keyframes first (a still of each generate shot’s first frame, cents each; you confirm in a dialog) so the look is locked before clips are paid for. `sh"},{"name":"critique_video","description":"The critic judges the latest generated takes (`stage` keyframes or clips) against each shot’s direction and puts the best on the shot. `stage` cut is the audien"},{"name":"wait_for_video","description":"Wait while a video’s media or render is being made (up to `wait_seconds`, default 60, max 120) and return where it stands: shots generating, the render, what is"},{"name":"render_video","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` remot"},{"name":"design_video_cards","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 (you confirm i"},{"name":"video_plan","description":"A video as a plan (JSON): its shots, presenter, style, media ids. Change it and import it back with import_video_plan."},{"name":"import_video_plan","description":"A whole video at once from a plan (the shape video_plan returns: title, brief, aspect_ratio, style, presenter, shots). Give the `plan` as JSON, or a `path` on t"},{"name":"export_video","description":"A link to a zip of the video’s plan and every file it names (works for a week)."},{"name":"delete_video","description":"Delete a video (its media stay in the library). You confirm in a dialog."},{"name":"update_media","description":"Rename, star or delete a piece of media; `retry` makes a failed generation again (it spends credits again: you confirm in a dialog); `cancel` stops one."},{"name":"convert_video_to_code","description":"Override how a video is cut: the Creative Director picks per film (`cut_choice` on get_video), so call this only when the person asks for a code film, and leave"},{"name":"get_video_code","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"},{"name":"write_video_code","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/fil"},{"name":"check_video_code","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, s"},{"name":"video_frames","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`; neithe"},{"name":"video_code_versions","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"},{"name":"restore_video_code","description":"Bring an earlier version of a video's code film back as a new version (source restore), checked at once."},{"name":"plan","description":"The workspace’s plan: run-minutes used and left this period, the plans on offer, how each model and media provider is paid (your own key, or Autopo’s billed to "},{"name":"change_plan","description":"Move the workspace to another plan (free, starter, pro, max). From free or legacy it opens a Stripe checkout in your browser (nothing is charged until you pay t"},{"name":"plan_settings","description":"Change how the plan may spend: `overage_cap_cents` (Max only: the most overage a period may run up, 0–10,000,000) and `disabled_providers` (every model or media"},{"name":"billing_page","description":"Open a Stripe page in your browser: `card` saves a card for daily billing of Autopo’s keys (nothing is bought), `portal` is the customer portal (card, invoices,"},{"name":"create_artifact","description":"Add your own artifact to the company’s documents, made by you (agents read it as material, not instructions): exactly one of `markdown`, `html`, `media_ids`, `u"},{"name":"revise_artifact","description":"A new version of an artifact a member made (agents’ work is revised with artifact_feedback): the same kinds of input as create_artifact, or `content` alone; it "},{"name":"artifact_links","description":"The public links an artifact has been shared by, newest first: the address, the version it shows, views, expiry, revoked."},{"name":"share_artifact","description":"Make a public link to an artifact that anyone with the address can open without signing in (review notes, costs and hidden parts never show). `version` pins it "},{"name":"unshare_artifact","description":"Revoke a public link to an artifact (`link` is its token from artifact_links): the address stops opening at once."},{"name":"list_errands","description":"Errands (web chores Peyk does in a browser, stopping before anything you can’t undo): what needs you, the one on it, what is up next, drafts, and the 20 newest "},{"name":"get_errand","description":"One errand in full: its plan, its stops (the checkpoints waiting on you, with their ids), its steps and its receipt."},{"name":"draft_errand","description":"Write what you need done on the web (`text`, 3–2000 chars) and Peyk drafts a plan: its sites, steps and the stops where he waits for you. One cheap model call ("},{"name":"start_errand","description":"Start a drafted errand: Peyk (or `agent`) works its plan in a browser and stops at every checkpoint for you (answer_errand). Runs cost credits up to the plan’s "},{"name":"answer_errand","description":"Answer an errand’s stop (its card): `yes` lets that step through (a payment, a submit, a send), `no` stops it, `myself` you do it in the Chrome on your computer"},{"name":"errand_sign_in","description":"Before a drafted errand that needs your accounts: `open` opens the site in the Chrome on your paired computer so you sign in yourself (Peyk never types a passwo"},{"name":"list_members","description":"The people in the company (owner, admins, members, viewers) with their user ids and whether they are online."},{"name":"chat_coworkers","description":"Bring a coworker (a person of the company, `user` id from list_members) into a chat with the agents, or take them out (`remove`; leaving is removing yourself). "},{"name":"competitors","description":"The competitor radar: the rivals watched (and those proposed, waiting for your yes) and what changed on their pages in the last 60 days."},{"name":"manage_competitor","description":"Change the radar: `add` a rival (`name`, `url`, `note`?; up to 8), `confirm` a proposed one (`competitor`), `remove` one (its history stays), `discover` rivals "},{"name":"shopify_store","description":"The company’s Shopify store, read-only: whether it is connected, the store, its currency, the webhooks, when it last synced and how many products and orders wer"},{"name":"connect_shopify","description":"Connect the company’s Shopify store (`shop`: its name, myshopify.com domain or admin URL): opens Shopify in your browser to install the Autopo app, which only r"},{"name":"sync_shopify","description":"Read the connected store again now (`check` instead tests that the connection still works and has every permission)."},{"name":"brand_brain","description":"The brand brain: what the company says about itself, for whom, against whom, in what voice (every writer reads it)."},{"name":"social_accounts","description":"The company’s social accounts and networks, and what each account may post on its own."},{"name":"list_posts","description":"Social posts: upcoming, published or failed (`status`), per `account`."},{"name":"check_posts","description":"Run the pre-publish gate on posts you wrote (nothing is posted): each post’s review against the brand."},{"name":"create_posts","description":"Post as yourself (no card): `posts` [{account, text, media?}], now or at `schedule_at` (ISO). You confirm in a dialog: a post cannot be unpublished from here."},{"name":"marketing_learnings","description":"What worked and what didn’t: the learnings log, newest first."},{"name":"budget","description":"The month’s spend against the budget, by agent and kind, and the credits left."},{"name":"ledger","description":"Every charge, newest first (`kind`, `agent` filter)."},{"name":"buy_credits","description":"Open a checkout in your browser to add credits to a company (1 credit = $1). Nothing is charged until you pay there."},{"name":"api_request","description":"Call any endpoint of the Autopo REST API as yourself: `method`, `path` (starts with /api/, ids filled in), optional JSON `body` and `query`. api_reference is th"},{"name":"api_reference","description":"The REST API’s reference (OpenAPI): with no arguments, every endpoint in brief (method, path, summary); `search` narrows by words in the path or summary; `path`"},{"name":"open_in_app","description":"Open a place in the Autopo web app in your browser: `what` is home, hive, inbox, task, work, knowledge, team, chat, studio, video, marketing, social, money, con"},{"name":"app_decide","description":"Decide a card from the inbox view. Hidden from the model: the click is the confirmation."},{"name":"app_refresh_inbox","description":"Reload the pending cards for the inbox view."},{"name":"app_video","description":"Reload a video, or act on it: keyframes, make media, critique, render. The click is the confirmation."},{"name":"app_media","description":"Star, retry or reload media from the gallery view."},{"name":"app_artifact","description":"Reload an artifact with its links, or make its public link. The click is the confirmation."}],"toolCount":99,"toolsHash":"9dadbca1383e67b520fb27ebbe4841e12f4a2efec82c96292298e54d8dad4a07","serverName":"autopoiesis","capabilities":["logging","tools","prompts","resources"],"serverVersion":"0.6.3","protocolVersion":"2025-06-18"}},{"at":"2026-11-05T17:28:38.359Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":152,"error":null,"detail":{"tools":[{"name":"list_companies","description":"The companies you belong to (id, name, stage, kind). Other tools take `company`: one of these ids. Start here."},{"name":"whoami","description":"The signed-in person: name, email, preferences, and how many companies they are in."},{"name":"founder_home","description":"What needs you, what improved and what is stuck in a company right now: the home screen's digest, the open decisions, running work, delivered work and your requ"},{"name":"company_overview","description":"The company: its charter, stage, team, budget and gates."},{"name":"activity","description":"The company's activity feed, newest first (who did what, when). `after`: only events after this ISO time."},{"name":"list_briefings","description":"The CEO's board briefings (spoken updates), newest first, with their text."},{"name":"get_briefing","description":"One briefing: its sections, the decisions it asked for, and what was said."},{"name":"brief_me_now","description":"Ask the CEO for a fresh briefing since your last one (at most 3 a day). It is written and voiced in the background: read it with get_briefing in a minute."},{"name":"list_decisions","description":"The Board inbox: cards waiting for you (`status` pending, default), or decided ones. Each card says what the team wants, why, the risk tier and the amount; deci"},{"name":"get_decision","description":"One inbox card in full: the ask, the agent's case, the options, the work behind it."},{"name":"decide","description":"Decide an inbox card as the founder: approve, reject (a `note` is required) or cancel. For a question card, `answer` is the chosen option's value. `edited_input"},{"name":"comment_on_decision","description":"Ask the team something about a card before deciding; the requesting agent answers."},{"name":"list_tasks","description":"The work board: tasks by status, assignee role or goal; `q` searches titles; `mine: true` only what you asked for (your requests)."},{"name":"get_task","description":"One task in full: description, criteria, status, the thread's last comments, its pull requests and deliverables."},{"name":"create_task","description":"Give the team work, or make a request of your own (the CEO routes it when no assignee is named): a title, what done looks like, criteria. `assignee` is an agent"},{"name":"update_task","description":"Change a task: its title, description, status, priority, assignee or criteria. To cancel one, use cancel_task."},{"name":"comment_on_task","description":"Write in a task's thread as the founder: the assignee reads it and answers (a comment wakes them)."},{"name":"cancel_task","description":"Cancel a task (and its open subtasks, pending cards and live runs). `preview: true` only says what it would take. You confirm in a dialog before it is final."},{"name":"list_agents","description":"The team: every agent with its role, title, state and whether it is on. Chat with one through ask_agent."},{"name":"ask_agent","description":"Start a chat with an agent (list_agents) and wait for the answer. `agent` is the agent's id or role key (ceo, cto, creative…). Beside the Studio, pass `producti"},{"name":"continue_chat","description":"Send another message in an existing chat and wait for the reply."},{"name":"read_chat","description":"A chat's messages, oldest first (the last reply's status says whether it is still answering)."},{"name":"list_chats","description":"Your chats across the team (pinned first, then recent); `q` searches titles and content."},{"name":"apply_chat_action","description":"Apply a proposal an agent made in a chat (a task, a note, media to make, a card): the action's id from the reply's `actions`. `edits` changes fields of its payl"},{"name":"list_runs","description":"Agent runs: `status` active (queued, running), finished, or a comma list; `agent` an agent id."},{"name":"get_run","description":"One run: its status, cost, and its events (tool calls, text) from `after_seq`."},{"name":"nudge_run","description":"Steer a run that is still going: a line of guidance the agent reads at its next step."},{"name":"list_artifacts","description":"What the team made: documents, research, decks, tables, videos, designs (`type`), delivered work, `q` searches, `starred` only yours."},{"name":"get_artifact","description":"One artifact in full (its body, content, version, who made it), with `app_url`: its page in the web app."},{"name":"artifact_feedback","description":"Ask for a revision of an artifact: a task for the agent who made it; the change lands as a new version."},{"name":"studio_overview","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 a"},{"name":"studio_settings","description":"Change the Studio's defaults: `default_models` by kind (image, video, voice, music: model keys from studio_overview) and the default narrator `voice` (a voice k"},{"name":"list_media","description":"The media library: images, clips, voice lines and music, with filters (`kind` image|video|audio, `source` generated|uploaded|recorded|rendered, `q`, `starred`)."},{"name":"get_media","description":"One piece of media: its prompt, model, settings, link and state."},{"name":"generate_media","description":"Make an image, a clip, a voice line or music in the Studio (spends credits; you confirm the cost in a dialog): `kind`, a `prompt`, optionally a `model` (studio_"},{"name":"list_videos","description":"The Studio's videos (productions): title, status, shape, length."},{"name":"get_video","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 finis"},{"name":"create_video","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 plat"},{"name":"set_video_shots","description":"Replace a video's storyboard: shots in order, each {visual: generate|footage|title|presenter, prompt, voiceover, on_screen_text, duration_seconds, media?, voice"},{"name":"upload_media","description":"Put your own files into the Studio library: recordings, screen captures, photos, a voice track, music. Each item is a `path` on the machine this server runs on "},{"name":"attach_media","description":"Put a library item on one shot: `media` (an image or clip: the shot's picture, as footage) or `voice` (an audio item: the shot's line). The other shots stay as "},{"name":"update_video","description":"Change a video: title, brief, shape, or its `style`: music, captions, transition (cut|fade), colours, the narrator `voice`, the `look` (palette, light, camera, "},{"name":"make_video_media","description":"Make what a video still lacks (spends credits; you confirm the cost in a dialog): `what` all (clips and voice lines), visuals, voice, or music (composed from th"},{"name":"video_keyframes","description":"Make the keyframes first (a still of each generate shot’s first frame, cents each; you confirm in a dialog) so the look is locked before clips are paid for. `sh"},{"name":"critique_video","description":"The critic judges the latest generated takes (`stage` keyframes or clips) against each shot’s direction and puts the best on the shot. `stage` cut is the audien"},{"name":"wait_for_video","description":"Wait while a video’s media or render is being made (up to `wait_seconds`, default 60, max 120) and return where it stands: shots generating, the render, what is"},{"name":"render_video","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` remot"},{"name":"design_video_cards","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 (you confirm i"},{"name":"video_plan","description":"A video as a plan (JSON): its shots, presenter, style, media ids. Change it and import it back with import_video_plan."},{"name":"import_video_plan","description":"A whole video at once from a plan (the shape video_plan returns: title, brief, aspect_ratio, style, presenter, shots). Give the `plan` as JSON, or a `path` on t"},{"name":"export_video","description":"A link to a zip of the video’s plan and every file it names (works for a week)."},{"name":"delete_video","description":"Delete a video (its media stay in the library). You confirm in a dialog."},{"name":"update_media","description":"Rename, star or delete a piece of media; `retry` makes a failed generation again (it spends credits again: you confirm in a dialog); `cancel` stops one."},{"name":"convert_video_to_code","description":"Override how a video is cut: the Creative Director picks per film (`cut_choice` on get_video), so call this only when the person asks for a code film, and leave"},{"name":"get_video_code","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"},{"name":"write_video_code","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/fil"},{"name":"check_video_code","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, s"},{"name":"video_frames","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`; neithe"},{"name":"video_code_versions","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"},{"name":"restore_video_code","description":"Bring an earlier version of a video's code film back as a new version (source restore), checked at once."},{"name":"plan","description":"The workspace’s plan: run-minutes used and left this period, the plans on offer, how each model and media provider is paid (your own key, or Autopo’s billed to "},{"name":"change_plan","description":"Move the workspace to another plan (free, starter, pro, max). From free or legacy it opens a Stripe checkout in your browser (nothing is charged until you pay t"},{"name":"plan_settings","description":"Change how the plan may spend: `overage_cap_cents` (Max only: the most overage a period may run up, 0–10,000,000) and `disabled_providers` (every model or media"},{"name":"billing_page","description":"Open a Stripe page in your browser: `card` saves a card for daily billing of Autopo’s keys (nothing is bought), `portal` is the customer portal (card, invoices,"},{"name":"create_artifact","description":"Add your own artifact to the company’s documents, made by you (agents read it as material, not instructions): exactly one of `markdown`, `html`, `media_ids`, `u"},{"name":"revise_artifact","description":"A new version of an artifact a member made (agents’ work is revised with artifact_feedback): the same kinds of input as create_artifact, or `content` alone; it "},{"name":"artifact_links","description":"The public links an artifact has been shared by, newest first: the address, the version it shows, views, expiry, revoked."},{"name":"share_artifact","description":"Make a public link to an artifact that anyone with the address can open without signing in (review notes, costs and hidden parts never show). `version` pins it "},{"name":"unshare_artifact","description":"Revoke a public link to an artifact (`link` is its token from artifact_links): the address stops opening at once."},{"name":"list_errands","description":"Errands (web chores Peyk does in a browser, stopping before anything you can’t undo): what needs you, the one on it, what is up next, drafts, and the 20 newest "},{"name":"get_errand","description":"One errand in full: its plan, its stops (the checkpoints waiting on you, with their ids), its steps and its receipt."},{"name":"draft_errand","description":"Write what you need done on the web (`text`, 3–2000 chars) and Peyk drafts a plan: its sites, steps and the stops where he waits for you. One cheap model call ("},{"name":"start_errand","description":"Start a drafted errand: Peyk (or `agent`) works its plan in a browser and stops at every checkpoint for you (answer_errand). Runs cost credits up to the plan’s "},{"name":"answer_errand","description":"Answer an errand’s stop (its card): `yes` lets that step through (a payment, a submit, a send), `no` stops it, `myself` you do it in the Chrome on your computer"},{"name":"errand_sign_in","description":"Before a drafted errand that needs your accounts: `open` opens the site in the Chrome on your paired computer so you sign in yourself (Peyk never types a passwo"},{"name":"list_members","description":"The people in the company (owner, admins, members, viewers) with their user ids and whether they are online."},{"name":"chat_coworkers","description":"Bring a coworker (a person of the company, `user` id from list_members) into a chat with the agents, or take them out (`remove`; leaving is removing yourself). "},{"name":"competitors","description":"The competitor radar: the rivals watched (and those proposed, waiting for your yes) and what changed on their pages in the last 60 days."},{"name":"manage_competitor","description":"Change the radar: `add` a rival (`name`, `url`, `note`?; up to 8), `confirm` a proposed one (`competitor`), `remove` one (its history stays), `discover` rivals "},{"name":"shopify_store","description":"The company’s Shopify store, read-only: whether it is connected, the store, its currency, the webhooks, when it last synced and how many products and orders wer"},{"name":"connect_shopify","description":"Connect the company’s Shopify store (`shop`: its name, myshopify.com domain or admin URL): opens Shopify in your browser to install the Autopo app, which only r"},{"name":"sync_shopify","description":"Read the connected store again now (`check` instead tests that the connection still works and has every permission)."},{"name":"brand_brain","description":"The brand brain: what the company says about itself, for whom, against whom, in what voice (every writer reads it)."},{"name":"social_accounts","description":"The company’s social accounts and networks, and what each account may post on its own."},{"name":"list_posts","description":"Social posts: upcoming, published or failed (`status`), per `account`."},{"name":"check_posts","description":"Run the pre-publish gate on posts you wrote (nothing is posted): each post’s review against the brand."},{"name":"create_posts","description":"Post as yourself (no card): `posts` [{account, text, media?}], now or at `schedule_at` (ISO). You confirm in a dialog: a post cannot be unpublished from here."},{"name":"marketing_learnings","description":"What worked and what didn’t: the learnings log, newest first."},{"name":"budget","description":"The month’s spend against the budget, by agent and kind, and the credits left."},{"name":"ledger","description":"Every charge, newest first (`kind`, `agent` filter)."},{"name":"buy_credits","description":"Open a checkout in your browser to add credits to a company (1 credit = $1). Nothing is charged until you pay there."},{"name":"api_request","description":"Call any endpoint of the Autopo REST API as yourself: `method`, `path` (starts with /api/, ids filled in), optional JSON `body` and `query`. api_reference is th"},{"name":"api_reference","description":"The REST API’s reference (OpenAPI): with no arguments, every endpoint in brief (method, path, summary); `search` narrows by words in the path or summary; `path`"},{"name":"open_in_app","description":"Open a place in the Autopo web app in your browser: `what` is home, hive, inbox, task, work, knowledge, team, chat, studio, video, marketing, social, money, con"},{"name":"app_decide","description":"Decide a card from the inbox view. Hidden from the model: the click is the confirmation."},{"name":"app_refresh_inbox","description":"Reload the pending cards for the inbox view."},{"name":"app_video","description":"Reload a video, or act on it: keyframes, make media, critique, render. The click is the confirmation."},{"name":"app_media","description":"Star, retry or reload media from the gallery view."},{"name":"app_artifact","description":"Reload an artifact with its links, or make its public link. The click is the confirmation."}],"toolCount":99,"toolsHash":"9dadbca1383e67b520fb27ebbe4841e12f4a2efec82c96292298e54d8dad4a07","serverName":"autopoiesis","capabilities":["logging","tools","prompts","resources"],"serverVersion":"0.6.3","protocolVersion":"2025-06-18"}}],"tools":[{"name":"list_companies","description":"The companies you belong to (id, name, stage, kind). Other tools take `company`: one of these ids. Start here."},{"name":"whoami","description":"The signed-in person: name, email, preferences, and how many companies they are in."},{"name":"founder_home","description":"What needs you, what improved and what is stuck in a company right now: the home screen's digest, the open decisions, running work, delivered work and your requ"},{"name":"company_overview","description":"The company: its charter, stage, team, budget and gates."},{"name":"activity","description":"The company's activity feed, newest first (who did what, when). `after`: only events after this ISO time."},{"name":"list_briefings","description":"The CEO's board briefings (spoken updates), newest first, with their text."},{"name":"get_briefing","description":"One briefing: its sections, the decisions it asked for, and what was said."},{"name":"brief_me_now","description":"Ask the CEO for a fresh briefing since your last one (at most 3 a day). It is written and voiced in the background: read it with get_briefing in a minute."},{"name":"list_decisions","description":"The Board inbox: cards waiting for you (`status` pending, default), or decided ones. Each card says what the team wants, why, the risk tier and the amount; deci"},{"name":"get_decision","description":"One inbox card in full: the ask, the agent's case, the options, the work behind it."},{"name":"decide","description":"Decide an inbox card as the founder: approve, reject (a `note` is required) or cancel. For a question card, `answer` is the chosen option's value. `edited_input"},{"name":"comment_on_decision","description":"Ask the team something about a card before deciding; the requesting agent answers."},{"name":"list_tasks","description":"The work board: tasks by status, assignee role or goal; `q` searches titles; `mine: true` only what you asked for (your requests)."},{"name":"get_task","description":"One task in full: description, criteria, status, the thread's last comments, its pull requests and deliverables."},{"name":"create_task","description":"Give the team work, or make a request of your own (the CEO routes it when no assignee is named): a title, what done looks like, criteria. `assignee` is an agent"},{"name":"update_task","description":"Change a task: its title, description, status, priority, assignee or criteria. To cancel one, use cancel_task."},{"name":"comment_on_task","description":"Write in a task's thread as the founder: the assignee reads it and answers (a comment wakes them)."},{"name":"cancel_task","description":"Cancel a task (and its open subtasks, pending cards and live runs). `preview: true` only says what it would take. You confirm in a dialog before it is final."},{"name":"list_agents","description":"The team: every agent with its role, title, state and whether it is on. Chat with one through ask_agent."},{"name":"ask_agent","description":"Start a chat with an agent (list_agents) and wait for the answer. `agent` is the agent's id or role key (ceo, cto, creative…). Beside the Studio, pass `producti"},{"name":"continue_chat","description":"Send another message in an existing chat and wait for the reply."},{"name":"read_chat","description":"A chat's messages, oldest first (the last reply's status says whether it is still answering)."},{"name":"list_chats","description":"Your chats across the team (pinned first, then recent); `q` searches titles and content."},{"name":"apply_chat_action","description":"Apply a proposal an agent made in a chat (a task, a note, media to make, a card): the action's id from the reply's `actions`. `edits` changes fields of its payl"},{"name":"list_runs","description":"Agent runs: `status` active (queued, running), finished, or a comma list; `agent` an agent id."},{"name":"get_run","description":"One run: its status, cost, and its events (tool calls, text) from `after_seq`."},{"name":"nudge_run","description":"Steer a run that is still going: a line of guidance the agent reads at its next step."},{"name":"list_artifacts","description":"What the team made: documents, research, decks, tables, videos, designs (`type`), delivered work, `q` searches, `starred` only yours."},{"name":"get_artifact","description":"One artifact in full (its body, content, version, who made it), with `app_url`: its page in the web app."},{"name":"artifact_feedback","description":"Ask for a revision of an artifact: a task for the agent who made it; the change lands as a new version."},{"name":"studio_overview","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 a"},{"name":"studio_settings","description":"Change the Studio's defaults: `default_models` by kind (image, video, voice, music: model keys from studio_overview) and the default narrator `voice` (a voice k"},{"name":"list_media","description":"The media library: images, clips, voice lines and music, with filters (`kind` image|video|audio, `source` generated|uploaded|recorded|rendered, `q`, `starred`)."},{"name":"get_media","description":"One piece of media: its prompt, model, settings, link and state."},{"name":"generate_media","description":"Make an image, a clip, a voice line or music in the Studio (spends credits; you confirm the cost in a dialog): `kind`, a `prompt`, optionally a `model` (studio_"},{"name":"list_videos","description":"The Studio's videos (productions): title, status, shape, length."},{"name":"get_video","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 finis"},{"name":"create_video","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 plat"},{"name":"set_video_shots","description":"Replace a video's storyboard: shots in order, each {visual: generate|footage|title|presenter, prompt, voiceover, on_screen_text, duration_seconds, media?, voice"},{"name":"upload_media","description":"Put your own files into the Studio library: recordings, screen captures, photos, a voice track, music. Each item is a `path` on the machine this server runs on "},{"name":"attach_media","description":"Put a library item on one shot: `media` (an image or clip: the shot's picture, as footage) or `voice` (an audio item: the shot's line). The other shots stay as "},{"name":"update_video","description":"Change a video: title, brief, shape, or its `style`: music, captions, transition (cut|fade), colours, the narrator `voice`, the `look` (palette, light, camera, "},{"name":"make_video_media","description":"Make what a video still lacks (spends credits; you confirm the cost in a dialog): `what` all (clips and voice lines), visuals, voice, or music (composed from th"},{"name":"video_keyframes","description":"Make the keyframes first (a still of each generate shot’s first frame, cents each; you confirm in a dialog) so the look is locked before clips are paid for. `sh"},{"name":"critique_video","description":"The critic judges the latest generated takes (`stage` keyframes or clips) against each shot’s direction and puts the best on the shot. `stage` cut is the audien"},{"name":"wait_for_video","description":"Wait while a video’s media or render is being made (up to `wait_seconds`, default 60, max 120) and return where it stands: shots generating, the render, what is"},{"name":"render_video","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` remot"},{"name":"design_video_cards","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 (you confirm i"},{"name":"video_plan","description":"A video as a plan (JSON): its shots, presenter, style, media ids. Change it and import it back with import_video_plan."},{"name":"import_video_plan","description":"A whole video at once from a plan (the shape video_plan returns: title, brief, aspect_ratio, style, presenter, shots). Give the `plan` as JSON, or a `path` on t"},{"name":"export_video","description":"A link to a zip of the video’s plan and every file it names (works for a week)."},{"name":"delete_video","description":"Delete a video (its media stay in the library). You confirm in a dialog."},{"name":"update_media","description":"Rename, star or delete a piece of media; `retry` makes a failed generation again (it spends credits again: you confirm in a dialog); `cancel` stops one."},{"name":"convert_video_to_code","description":"Override how a video is cut: the Creative Director picks per film (`cut_choice` on get_video), so call this only when the person asks for a code film, and leave"},{"name":"get_video_code","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"},{"name":"write_video_code","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/fil"},{"name":"check_video_code","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, s"},{"name":"video_frames","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`; neithe"},{"name":"video_code_versions","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"},{"name":"restore_video_code","description":"Bring an earlier version of a video's code film back as a new version (source restore), checked at once."},{"name":"plan","description":"The workspace’s plan: run-minutes used and left this period, the plans on offer, how each model and media provider is paid (your own key, or Autopo’s billed to "},{"name":"change_plan","description":"Move the workspace to another plan (free, starter, pro, max). From free or legacy it opens a Stripe checkout in your browser (nothing is charged until you pay t"},{"name":"plan_settings","description":"Change how the plan may spend: `overage_cap_cents` (Max only: the most overage a period may run up, 0–10,000,000) and `disabled_providers` (every model or media"},{"name":"billing_page","description":"Open a Stripe page in your browser: `card` saves a card for daily billing of Autopo’s keys (nothing is bought), `portal` is the customer portal (card, invoices,"},{"name":"create_artifact","description":"Add your own artifact to the company’s documents, made by you (agents read it as material, not instructions): exactly one of `markdown`, `html`, `media_ids`, `u"},{"name":"revise_artifact","description":"A new version of an artifact a member made (agents’ work is revised with artifact_feedback): the same kinds of input as create_artifact, or `content` alone; it "},{"name":"artifact_links","description":"The public links an artifact has been shared by, newest first: the address, the version it shows, views, expiry, revoked."},{"name":"share_artifact","description":"Make a public link to an artifact that anyone with the address can open without signing in (review notes, costs and hidden parts never show). `version` pins it "},{"name":"unshare_artifact","description":"Revoke a public link to an artifact (`link` is its token from artifact_links): the address stops opening at once."},{"name":"list_errands","description":"Errands (web chores Peyk does in a browser, stopping before anything you can’t undo): what needs you, the one on it, what is up next, drafts, and the 20 newest "},{"name":"get_errand","description":"One errand in full: its plan, its stops (the checkpoints waiting on you, with their ids), its steps and its receipt."},{"name":"draft_errand","description":"Write what you need done on the web (`text`, 3–2000 chars) and Peyk drafts a plan: its sites, steps and the stops where he waits for you. One cheap model call ("},{"name":"start_errand","description":"Start a drafted errand: Peyk (or `agent`) works its plan in a browser and stops at every checkpoint for you (answer_errand). Runs cost credits up to the plan’s "},{"name":"answer_errand","description":"Answer an errand’s stop (its card): `yes` lets that step through (a payment, a submit, a send), `no` stops it, `myself` you do it in the Chrome on your computer"},{"name":"errand_sign_in","description":"Before a drafted errand that needs your accounts: `open` opens the site in the Chrome on your paired computer so you sign in yourself (Peyk never types a passwo"},{"name":"list_members","description":"The people in the company (owner, admins, members, viewers) with their user ids and whether they are online."},{"name":"chat_coworkers","description":"Bring a coworker (a person of the company, `user` id from list_members) into a chat with the agents, or take them out (`remove`; leaving is removing yourself). "},{"name":"competitors","description":"The competitor radar: the rivals watched (and those proposed, waiting for your yes) and what changed on their pages in the last 60 days."},{"name":"manage_competitor","description":"Change the radar: `add` a rival (`name`, `url`, `note`?; up to 8), `confirm` a proposed one (`competitor`), `remove` one (its history stays), `discover` rivals "},{"name":"shopify_store","description":"The company’s Shopify store, read-only: whether it is connected, the store, its currency, the webhooks, when it last synced and how many products and orders wer"},{"name":"connect_shopify","description":"Connect the company’s Shopify store (`shop`: its name, myshopify.com domain or admin URL): opens Shopify in your browser to install the Autopo app, which only r"},{"name":"sync_shopify","description":"Read the connected store again now (`check` instead tests that the connection still works and has every permission)."},{"name":"brand_brain","description":"The brand brain: what the company says about itself, for whom, against whom, in what voice (every writer reads it)."},{"name":"social_accounts","description":"The company’s social accounts and networks, and what each account may post on its own."},{"name":"list_posts","description":"Social posts: upcoming, published or failed (`status`), per `account`."},{"name":"check_posts","description":"Run the pre-publish gate on posts you wrote (nothing is posted): each post’s review against the brand."},{"name":"create_posts","description":"Post as yourself (no card): `posts` [{account, text, media?}], now or at `schedule_at` (ISO). You confirm in a dialog: a post cannot be unpublished from here."},{"name":"marketing_learnings","description":"What worked and what didn’t: the learnings log, newest first."},{"name":"budget","description":"The month’s spend against the budget, by agent and kind, and the credits left."},{"name":"ledger","description":"Every charge, newest first (`kind`, `agent` filter)."},{"name":"buy_credits","description":"Open a checkout in your browser to add credits to a company (1 credit = $1). Nothing is charged until you pay there."},{"name":"api_request","description":"Call any endpoint of the Autopo REST API as yourself: `method`, `path` (starts with /api/, ids filled in), optional JSON `body` and `query`. api_reference is th"},{"name":"api_reference","description":"The REST API’s reference (OpenAPI): with no arguments, every endpoint in brief (method, path, summary); `search` narrows by words in the path or summary; `path`"},{"name":"open_in_app","description":"Open a place in the Autopo web app in your browser: `what` is home, hive, inbox, task, work, knowledge, team, chat, studio, video, marketing, social, money, con"},{"name":"app_decide","description":"Decide a card from the inbox view. Hidden from the model: the click is the confirmation."},{"name":"app_refresh_inbox","description":"Reload the pending cards for the inbox view."},{"name":"app_video","description":"Reload a video, or act on it: keyframes, make media, critique, render. The click is the confirmation."},{"name":"app_media","description":"Star, retry or reload media from the gallery view."},{"name":"app_artifact","description":"Reload an artifact with its links, or make its public link. The click is the confirmation."}],"package":{"name":"@autopo/mcp","registry":"npm","observedAt":"2026-11-06T09:19:23.740Z","publishedAt":"2026-11-06T05:11:14.918Z","latestVersion":"0.6.5","weeklyDownloads":2614},"toolSurface":{"id":"ts_jmqannpwy37k","endpointId":"ep_daremjs38ucw","hash":"9dadbca1383e67b520fb27ebbe4841e12f4a2efec82c96292298e54d8dad4a07","toolCount":99,"serverName":"autopoiesis","serverVersion":"0.6.3","protocolVersion":"2025-06-18","firstSeenAt":"2026-11-05T17:28:38.358Z","lastSeenAt":"2026-11-06T02:27:58.660Z","observations":2,"hiddenText":{"level":"none","total":0,"tools":0,"kinds":[],"findings":[]},"toolNames":["list_companies","whoami","founder_home","company_overview","activity","list_briefings","get_briefing","brief_me_now","list_decisions","get_decision","decide","comment_on_decision","list_tasks","get_task","create_task","update_task","comment_on_task","cancel_task","list_agents","ask_agent","continue_chat","read_chat","list_chats","apply_chat_action","list_runs","get_run","nudge_run","list_artifacts","get_artifact","artifact_feedback","studio_overview","studio_settings","list_media","get_media","generate_media","list_videos","get_video","create_video","set_video_shots","upload_media","attach_media","update_video","make_video_media","video_keyframes","critique_video","wait_for_video","render_video","design_video_cards","video_plan","import_video_plan","export_video","delete_video","update_media","convert_video_to_code","get_video_code","write_video_code","check_video_code","video_frames","video_code_versions","restore_video_code","plan","change_plan","plan_settings","billing_page","create_artifact","revise_artifact","artifact_links","share_artifact","unshare_artifact","list_errands","get_errand","draft_errand","start_errand","answer_errand","errand_sign_in","list_members","chat_coworkers","competitors","manage_competitor","shopify_store","connect_shopify","sync_shopify","brand_brain","social_accounts","list_posts","check_posts","create_posts","marketing_learnings","budget","ledger","buy_credits","api_request","api_reference","open_in_app","app_decide","app_refresh_inbox","app_video","app_media","app_artifact"],"distinctSurfaces":1,"surfacesWithHiddenText":0},"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.Autopoiesis-ai/mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.Autopoiesis-ai%2Fmcp","firstSeenAt":"2026-11-05T15:19:27.988Z","fetchedAt":"2026-11-05T15:19:27.988Z","normalizedAt":"2026-11-05T15:19:27.988Z"},{"source":"npm","key":"@autopo/mcp","url":"https://www.npmjs.com/package/@autopo/mcp","firstSeenAt":"2026-11-03T09:20:18.887Z","fetchedAt":"2026-11-06T09:19:09.860Z","normalizedAt":"2026-11-06T09:19:09.860Z"}]},"firstSeenAt":"2026-11-03T09:20:18.887Z","updatedAt":"2026-11-06T09:19:23.740Z"}