Skip to content
Charming Docs
Esc
navigateopen⌘Jpreview
On this page

MCP reference

The generated Charming MCP contract for standard MCP Apps clients and ChatGPT.

Use https://charm.ing/mcp for MCP clients. Use https://charm.ing/mcp/chatgpt for a direct ChatGPT integration.

Both endpoints provide the same tool names, inputs, and outputs. ChatGPT receives extra metadata for progress messages and inline app rendering. If you are calling a tool, you can ignore the ChatGPT metadata sections.

Download the complete generated contract to inspect both protocol responses.

Contract sections

  • Server: server identity, instructions, and capabilities.
  • Tools: every input schema, output schema, annotation, execution rule, and metadata field.
  • Prompts: every server prompt and argument.
  • Resources: every UI resource, MIME type, CSP rule, and host-specific field.

Tools

  • acknowledge_feedback_responses: Acknowledge feedback responses after the agent has processed them.
  • cancel_app_build: Use this to cancel an accepted app build before it publishes.
  • create_app: Create a new interactive web app and render it inline.
  • create_routine: Use this when the user wants an app op to run on its own, on a timer — no chat needs to be open.
  • delete_app: Permanently delete a Charming app the caller owns, optionally also purging its stored data.
  • delete_routine: Use this to stop and remove a Routine.
  • get_app: Fetch an existing app by ID and render it inline.
  • get_app_build: Use this to inspect an accepted app build without running or publishing it.
  • get_app_source: Return an app’s raw persisted source (module, frontend ui script, and styles) plus its current revision for optimistic-concurrency edits.
  • list_app_shares: MCP contract for list_app_shares.
  • list_apps: List the caller’s Charming apps — owned ones plus apps shared with them (accepted invites, marked [shared with you]; a read-only share also reads (view-only)).
  • list_feedback: List feedback rows for the caller’s apps.
  • list_feedback_responses: Fetch unread Charming staff responses to feedback submitted by this authenticated account.
  • list_routines: Use this to see the caller’s Routines across their apps.
  • mutate_app: Run a mutating backend operation on a Charming app and return its result, without editing code.
  • query_app: Run a read-only backend operation on a Charming app and return its result, without editing code.
  • read_docs: Read Charming documentation without web access.
  • rename_app: Change a Charming app’s URL slug — the human-readable, URL-safe name, distinct from its title/displayName and from its machine manifest id.
  • search_templates: Search the public Charming Template directory by keyword.
  • set_handle: MCP contract for set_handle.
  • set_public: Make a Charming app Public: anyone with the URL can open the live hosted App Viewer with no login and read its data.
  • set_remixable: Deprecated: use set_template instead.
  • set_starter_prompt: MCP contract for set_starter_prompt.
  • set_template: Enable a Charming Template for people who can already read the source App, and optionally publish it in Charming’s public Template directory so anyone can discover and copy it.
  • share_app: Invite someone (by Charming handle or email) to one of your apps, OR change the role of someone you already invited.
  • submit_feedback: Record agent-authored feedback about a Charming app.
  • unset_public: Make a public Charming app PRIVATE again.
  • unset_remixable: Deprecated: use unset_template instead (identical effect).
  • unset_template: Stop treating a Charming app as a template.
  • unshare_app: Revoke another user’s access to one of your apps — removes a pending invitation or an accepted collaborator grant.
  • update_app: Use this to update an existing Charming app identified by UUID.
  • update_routine: Use this to change a Routine’s interval, or enable/disable it.
  • upload_asset: UPLOAD A STATIC ASSET TO AN APP so app code stays small and the app reads it back same-origin.

Was this page helpful?