Your AI CEO, in every agent you use

TOPY.AI writes and maintains founders’ business plans and keeps their CEO records. The same 93 tools are available to Claude, ChatGPT, Cursor, your terminal and your own code — one remote MCP server, one set of rules.

MCP serverhttps://topy.ai/mcp

Pick your assistant

Claude

Settings → Connectors → Add custom connector. Paste the MCP URL and sign in to TOPY when asked.

https://topy.ai/mcp

ChatGPT

Settings → Apps & Connectors → Create (developer mode). Use the MCP URL with OAuth.

https://topy.ai/mcp

Claude Code

Add the remote server, then run /mcp to sign in.

claude mcp add --transport http topy https://topy.ai/mcp

Cursor and other MCP clients

Add a remote MCP server with this URL; the client handles the OAuth sign-in.

{ "mcpServers": { "topy": { "url": "https://topy.ai/mcp" } } }

Terminal

The topy CLI runs every tool; changes preview first and ask before they run.

npm i -g @topy-ai/ceo
topy login
topy plans_list

Claude Code and Codex skills

Six skills that know the TOPY workflows: business plans, revisions, fundraising, the CEO workspace, projects.

npx @topy-ai/ceo skills install

Nothing changes without you

Your account, your permissions

Every tool runs as you, through the same API as the dashboard: an agent can never do more than you can.

Changes take two calls

A change first returns a preview. It runs only when the agent calls again with your confirmation — signed, bound to that exact change, valid for 10 minutes.

Credits are shown first

Writing a plan costs 50 credits; the preview shows your balance before and after. Nothing is spent until you confirm.

Read-only access exists

Connect with read access only and the agent never sees a tool that changes anything.

You can see and undo

Every confirmed change is logged (agent_actions_list). Connected apps are listed under API keys and can be disconnected at once.

Guided workflows

Offered as MCP prompts and as topy prompt <name>.

idea-to-business-plan
Turn an idea into a TOPY project and an investor-ready business plan.
revise-plan
Change a figure, milestone, KPI or the team and update every affected section, as a new version.
investor-ready-check
Review a plan the way a seed investor would and list what to fix first.
investor-update
Draft this period’s investor update from decisions, experiments and the journal.
weekly-ceo-review
Review the week’s decisions, risks and experiments and set next week’s priorities.

93 tools

R0 reads · W1 changes something you can change back · W2 spends credits · W4 deletes for good. Most tools act on one project (project_id). The full catalogue with input schemas: /api/v1/agent/tools.

Account and credits

account_getR0 readsWho is signed in to TOPY.
credits_getR0 readsTOPY credit balance (paid and free), optionally with recent transactions.
entitlements_getR0 readsThe user's plan and which features it includes (AI editing, project and template limits).
dashboard_linkR0 readsA link to a page of the TOPY dashboard: for buying credits or plans, API keys and connected apps, or anything done in the app itself.
agent_actions_listR0 readsThe changes agents made for this user over MCP or the CLI (newest first), each after the user confirmed it.
standing_permissions_listR0 readsStanding permissions: which of the user's keys (a scheduled agent's) may add which records to which project without a preview, each tool's daily cap and today's use. Granted and revoked by the user in the dashboard (dashboard_link page api_keys).

Projects

projects_listR0 readsThe user's projects (the companies or ideas TOPY works on). Most tools take one as project_id.
project_getR0 readsA project's details: what it does, market, industry, keywords and website.
project_updateW1 changesChange a project's details. Changes the project given as project_id.
project_create_from_ideaW1 changesCreate a project from an idea: a title and a description of the business. (runs an AI generation.)
project_create_from_websiteW1 changesCreate a project by reading an existing website (runs as a job; follow it with project_job_get). (runs an AI generation.)
project_job_getR0 readsProgress of a project job (created from a website or upload).
project_deleteW1 changesArchive a project (restorable with project_restore).
project_restoreW1 changesRestore an archived project.

Ideas

ideas_generateW1 changesGenerate startup ideas around a topic or market. (runs an AI generation.)
idea_getR0 readsOne idea with its details.
idea_brainstormW1 changesBrainstorm an idea in depth (by idea_id, or a free-text term): market, competitors, angles. (runs an AI generation.)
idea_to_projectW1 changesTurn a saved idea into a project.

Business plans

plan_options_getR0 readsBusiness plan templates, purposes, audiences and writing styles for a project, with the recommended template. Use these ids exactly.
plans_listR0 readsList a project's business plans (summaries with status, words and section list).
plan_getR0 readsA business plan: summary and section list; set full for the whole Markdown or section for one section's Markdown.
plan_statusR0 readsGeneration progress of a plan (or of a job: a generation, revision, Markdown fix or impact analysis).
plan_estimateR0 readsWhat a business plan generation costs in TOPY credits against the current balance (no charge).
plan_generateW2 spends creditsStart writing a new business plan for a project with a template, purpose, audience and style from plan_options_get (about 7 minutes). Costs 50 TOPY credits. (spends TOPY credits; runs an AI generation.)
plan_job_cancelW1 changesCancel a queued or running business plan job.
plan_job_retryW2 spends creditsRetry a failed business plan generation. Costs 50 TOPY credits again (a failed job was refunded). (spends TOPY credits; runs an AI generation.)
plan_updateW1 changesReplace a plan's Markdown: one section (with section) or the whole plan. Use for edits the user wrote or accepted.
plan_renameW1 changesRename a business plan or star it.
plan_deleteW1 changesArchive a business plan (restorable with plan_restore).
plan_restoreW1 changesRestore an archived business plan.
plan_section_suggestR0 readsAsk the AI to rewrite one section from an instruction. Returns a suggestion only; nothing changes until plan_update. (runs an AI generation; needs a plan with the AI features.)
plan_section_regenerateW1 changesRewrite one section from scratch with the plan's writer (replaces that section). (runs an AI generation; needs a plan with the AI features.)
plan_fix_markdownW1 changesFix the Markdown of every section (diagrams to tables, no code blocks or HTML) without changing the content. Runs as a job; follow it with plan_status. (runs an AI generation; needs a plan with the AI features.)
plan_revise_analyzeR0 readsWork out what a change (a figure, milestone, KPI or the team) means for the whole plan: old -> new facts, derived figures and the impact on each section. Changes nothing and costs no credits; follow the job with plan_status, then show the result to the user. (runs an AI generation; needs a plan with the AI features.)
plan_revise_applyW1 changesWrite a change into a NEW version of the plan, updating the affected sections in order with a final consistency check (the source plan is kept, no credits). Needs a finished plan_revise_analyze. (runs an AI generation; needs a plan with the AI features.)
plan_exportR0 readsA business plan as Markdown, with the dashboard link for Word and PDF.
plan_seis_assuranceR0 readsDraft the answers for a UK SEIS Advance Assurance application from a finished plan. (runs an AI generation; needs a plan with the AI features.)
plan_defaults_setW1 changesSet the project's default template, purpose, audience and style for new plans.

Templates

templates_listR0 readsThe official business plan templates and the user's own templates for a project.
template_createW1 changesCreate a custom template: clone an official or custom one, have the AI build one from a requirement (ai_prompt), or from a document's text (upload_file). (runs an AI generation.)
template_updateW1 changesChange a custom template: name, description, industry or its structure (template_json).
template_deleteW1 changesArchive a custom template (restorable).
template_restoreW1 changesRestore an archived custom template.
template_starW1 changesStar or unstar a template (official or custom).
template_assistantR0 readsAsk the AI to change a custom template's structure from an instruction. Returns a suggestion only; keep it with template_update. (runs an AI generation; needs a plan with the AI features.)

CEO workspace records

research_sources_listR0 readsList the project's records of a research source (market data, article, interview) behind the project's claims.
research_source_getR0 readsOne record of a research source (market data, article, interview) behind the project's claims.
research_source_createW1 changesAdd a research source (market data, article, interview) behind the project's claims.
research_source_updateW1 changesChange a research source (market data, article, interview) behind the project's claims.
research_source_deleteW4 deletes for goodDelete a research source (market data, article, interview) behind the project's claims permanently.
decisions_listR0 readsList the project's records of a decision the founder made, with its context and reasoning.
decision_getR0 readsOne record of a decision the founder made, with its context and reasoning.
decision_createW1 changesAdd a decision the founder made, with its context and reasoning.
decision_updateW1 changesChange a decision the founder made, with its context and reasoning.
decision_deleteW4 deletes for goodDelete a decision the founder made, with its context and reasoning permanently.
journal_entries_listR0 readsList the project's records of a founder journal entry.
journal_entry_getR0 readsOne record of a founder journal entry.
journal_entry_createW1 changesAdd a founder journal entry.
journal_entry_updateW1 changesChange a founder journal entry.
journal_entry_deleteW4 deletes for goodDelete a founder journal entry permanently.
gtm_plans_listR0 readsList the project's records of a go-to-market plan.
gtm_plan_getR0 readsOne record of a go-to-market plan.
gtm_plan_createW1 changesAdd a go-to-market plan.
gtm_plan_updateW1 changesChange a go-to-market plan.
gtm_plan_deleteW4 deletes for goodDelete a go-to-market plan permanently.
memories_listR0 readsList the project's records of a fact or preference to remember about the project.
memory_getR0 readsOne record of a fact or preference to remember about the project.
memory_createW1 changesAdd a fact or preference to remember about the project.
memory_updateW1 changesChange a fact or preference to remember about the project.
memory_deleteW4 deletes for goodDelete a fact or preference to remember about the project permanently.
risks_listR0 readsList the project's records of a risk with its likelihood, impact and mitigation.
risk_getR0 readsOne record of a risk with its likelihood, impact and mitigation.
risk_createW1 changesAdd a risk with its likelihood, impact and mitigation.
risk_updateW1 changesChange a risk with its likelihood, impact and mitigation.
risk_deleteW4 deletes for goodDelete a risk with its likelihood, impact and mitigation permanently.
investor_contacts_listR0 readsList the project's records of an investor contact in the fundraising pipeline.
investor_contact_getR0 readsOne record of an investor contact in the fundraising pipeline.
investor_contact_createW1 changesAdd an investor contact in the fundraising pipeline.
investor_contact_updateW1 changesChange an investor contact in the fundraising pipeline.
investor_contact_deleteW4 deletes for goodDelete an investor contact in the fundraising pipeline permanently.
investor_updates_listR0 readsList the project's records of an investor update (a periodic letter to investors).
investor_update_getR0 readsOne record of an investor update (a periodic letter to investors).
investor_update_createW1 changesAdd an investor update (a periodic letter to investors).
investor_update_updateW1 changesChange an investor update (a periodic letter to investors).
investor_update_deleteW4 deletes for goodDelete an investor update (a periodic letter to investors) permanently.
growth_experiments_listR0 readsList the project's records of a growth experiment with its hypothesis, metric and result.
growth_experiment_getR0 readsOne record of a growth experiment with its hypothesis, metric and result.
growth_experiment_createW1 changesAdd a growth experiment with its hypothesis, metric and result.
growth_experiment_updateW1 changesChange a growth experiment with its hypothesis, metric and result.
growth_experiment_deleteW4 deletes for goodDelete a growth experiment with its hypothesis, metric and result permanently.

Media library

media_listR0 readsThe user's media library: images uploaded to TOPY or registered by URL (newest first, up to 200).
media_add_urlW1 changesAdd an image to the media library by its URL (stored as a link; nothing is downloaded).
media_deleteW4 deletes for goodDelete an item from the media library permanently.

REST API

Everything the tools do is also plain HTTP under https://topy.ai/api/v1, with a bearer token: an API key from Dashboard → API keys (read-only or read-write) or an OAuth access token. Responses are { code, message, data }.

curl -H "Authorization: Bearer $TOPY_API_KEY" https://topy.ai/api/v1/projects/my