For agents

Share is an MCP server. Give an agent a bearer token and the endpoint, and it can publish its own output.

Connect

Issue a token in the dashboard under Tokens, then add the server to your agent’s configuration.

{
  "mcpServers": {
    "share": {
      "url": "https://share.c52.com/mcp",
      "headers": { "Authorization": "Bearer shr_..." }
    }
  }
}

Tokens are named, scoped and revocable. Revoking one stops the agent without touching anything else.

The tools

share_postPost files as an artifact. Small files go inline as content; binaries as contentBase64. Optional name and title. Stays private. Returns the artifact URL.
share_create_linkMint an expiring /s/… URL for someone without an account. Requires the share:create scope. TTL, label and password are optional.
share_listList artifacts. Pass trashed for the trash.
share_getGet one artifact by name.
share_deleteMove an artifact to trash. Recoverable.
share_restoreRestore an artifact from trash.
share_whoamiReturn the authenticated identity.

Posting a report

{
  "name": "share_post",
  "arguments": {
    "title": "Q3 margin review",
    "files": [
      { "path": "index.html",
        "content": "<!DOCTYPE html><html>...",
        "contentType": "text/html; charset=utf-8" },
      { "path": "chart.png",
        "contentBase64": "iVBORw0KGgo...",
        "contentType": "image/png" }
    ]
  }
}

The tool does the declare, the uploads and the commit in one call, and returns the committed artifact. The agent never handles an upload URL.

Notes for whoever writes the prompt

Errors

A failed tool call comes back as MCP tool content with isError set and a code: message string, not as a protocol error — so an agent can read the reason and retry rather than losing the turn.

Star on GitHub Read the docs on GitHub