Skip to content

Platform API

The same MCP tool surface is available over HTTP:

MethodPathPurpose
GET, POST, DELETE/mcpStreamable HTTP MCP session

Send Authorization: Bearer {platform_api_key} so requests run as your account. Use this when your assistant or automation can’t use stdio MCP but can call HTTPS.

MethodPathPurpose
GET/llms.txtPlain-text guidance for LLM agents

Provides quick start patterns, common patterns, error shape, and response metadata.

When subdomain routing is enabled, each app has a subdomain derived from its name. Traffic to https://{subdomain}.{base_domain} resolves the app from the Host header, so you omit {app_id} from paths.

Subdomain pathEquivalent purpose
/data/{table}Data API CRUD
/fn/{function_name}Invoke function
/auth/signup, /auth/login, …End-user auth
/storage/upload, /storage/objects, …File storage
/schema, /schema/apply, /migrationsSchema management

MCP tool: submit_suggestion

HTTP:

POST /suggestions
Authorization: Bearer {api_key}
{
"category": "feature_request",
"description": "Add support for GraphQL subscriptions",
"severity": "medium",
"source": "human_prompted"
}
FieldRequiredValues
categoryYesbug_report, feature_request, improvement, documentation
descriptionYesDescription text
severityNolow, medium, high, critical
affected_toolNoTool name if applicable
proposed_solutionNoSuggested fix
sourceNoagent or human_prompted
MethodPathPurpose
GET/healthLiveness check
GET/health/readyReadiness check (database connectivity)

All errors include structured objects:

{
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "Table 'nonexistent' does not exist",
"remediation": "Check the table name and ensure it exists in your schema",
"documentation_url": "https://docs.butterbase.ai/api-reference/data-api"
}
}

Follow the remediation field before retrying.

Sensitive routes (especially auth) have strict per-route rate limits. Other routes may have additional limits depending on deployment configuration.