Skip to content
Esc
↑↓navigate↵open⌘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.
  • copy_app: Use this to make the signed-in user a private copy of an existing app in one call, without reading or re-sending its source.
  • create_app: Use this to create a new Charming app and render it inline.
  • create_routine: Use this when the user wants something in their app to happen on a schedule with no chat open, such as a daily summary.
  • create_webhook: Use this when an external service the user picks (Zapier, a payment provider, a partner backend) needs to send data to their app.
  • delete_app: Permanently delete a Charming app the caller owns, optionally also purging its stored data and secrets.
  • delete_routine: Use this to stop and remove a Routine.
  • delete_webhook: Use this to remove a Webhook.
  • 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: MCP contract for get_app_source.
  • 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 Routines on every app the caller can edit.
  • list_webhooks: Use this to see the Webhooks on every app the caller can edit, with delivery state.
  • mutate_app: Use this to save or change data in one of the caller’s Charming apps, such as adding an expense to a budget app.
  • query_app: Use this to read data from one of the caller’s Charming apps, such as listing the expenses in a budget app.
  • 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.
  • resolve_handoff: Resolve a Charming handoff reference into diagnostic data about a problem in one of the caller’s apps.
  • 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: Set or clear an app’s starter prompt: the prompt for people who copy this Template for the first time.
  • 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: MCP contract for update_app.
  • update_routine: Use this to change a Routine’s interval, or enable/disable it.
  • update_webhook: Use this to rename a Webhook, enable/disable it, or rotate its secret.
  • 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?