MCP server reference
Technical reference for the TribeNest MCP server: endpoint, transport, OAuth 2.1 with PKCE, the tool surface, permissions, error semantics and rate limits.
TribeNest exposes its platform to AI assistants as a hosted MCP (Model Context Protocol) server. One endpoint, OAuth with PKCE, and a tool surface covering the creator's website, store, events, memberships, courses, audience, social accounts and finances.
This page is the technical reference. If you are a creator who just wants to connect Claude, ChatGPT, Grok or Muse, read Connect to your own AI instead.
Endpoint
https://api.tribenest.co/mcp| Property | Value |
|---|---|
| Transport | Streamable HTTP |
| Methods | POST only |
| Content type | application/json |
| Protocol revision | Negotiated. The server echoes the client's protocolVersion, defaulting to 2025-06-18 |
| Server capabilities | tools |
| Server info | { "name": "tribenest", "version": "0.1.0" } |
There is no server-to-client SSE stream and no session teardown. GET and DELETE return 405 Method Not Allowed with an Allow: POST header rather than 404, so a client can tell a valid MCP endpoint from a wrong URL.
Supported JSON-RPC methods: initialize, ping, tools/list, tools/call, and notifications/* (accepted and acknowledged).
Authentication
OAuth 2.1, authorization code with PKCE. No API keys, no pre-shared secrets, and no manual client registration: a connecting client registers itself.
Discovery
An unauthenticated request returns 401 with a pointer to the protected-resource metadata, so a client can discover the authorization server whichever way it probes:
WWW-Authenticate: Bearer resource_metadata="https://api.tribenest.co/.well-known/oauth-protected-resource"Two discovery documents are served:
https://api.tribenest.co/.well-known/oauth-protected-resource
https://api.tribenest.co/.well-known/oauth-authorization-serverThe authorization server metadata advertises:
| Field | Value |
|---|---|
issuer | https://api.tribenest.co |
authorization_endpoint | https://api.tribenest.co/oauth/authorize |
token_endpoint | https://api.tribenest.co/oauth/token |
registration_endpoint | https://api.tribenest.co/oauth/register |
response_types_supported | ["code"] |
grant_types_supported | ["authorization_code", "refresh_token"] |
code_challenge_methods_supported | ["S256"] |
token_endpoint_auth_methods_supported | ["none"] |
scopes_supported | ["profile"] |
Dynamic client registration
POST /oauth/register implements RFC 7591. Send a client_name and one or more redirect_uris, and you get back a client_id. Clients are public: there is no client secret, and PKCE with S256 is required.
The consent step
The authorization endpoint sends the creator to the TribeNest dashboard to sign in, read what the connector will be able to do, and choose which workspace it may manage. Approving mints a token bound to that one workspace.
Token lifetimes
| Token | Lifetime |
|---|---|
| Authorization request | 10 minutes |
| Authorization code | 1 minute, single use |
| Access token | 30 days |
| Refresh token | 90 days |
Refreshing issues a new access token bound to the same account, workspace and client.
Revocation
Creators see every connected assistant in the dashboard under connected apps and can revoke any of them. Revocation takes effect immediately for the access token and all of its refreshes.
Authorization model
Three things constrain every call, and they compose:
- Workspace scope. A token names exactly one workspace, chosen by the creator at consent. There is no way to widen it after the fact and no way to reach another tenant's data with it.
- Permissions. A call runs with the effective permissions of the team member who authorized it. An assistant connected by a member who cannot issue refunds cannot issue refunds.
- Per-tool gates. Individual tools and actions carry their own requirement, for example
websites.writeorads.write. A denial comes back as a readable message naming the permission.
Some capabilities are deliberately dashboard-only and are not exposed to any assistant: connecting a custom domain and writing DNS, buying phone numbers, filing SMS registrations, and changing the voice agent. There is no outbound calling anywhere on the platform.
Tool surface
The server advertises 115 tools to an authorized connector, and those tools open onto a further 386 registry actions across 39 domains.
Dedicated tools
91 business tools plus 24 code-website tools. Highlights:
- Website:
create_website,list_files,read_file,write_file,delete_file,add_dependency,check_errors,start_preview,publish_website,update_theme,list_snapshots,rollback_to_snapshot,get_forge_docs,read_build_guide_first - Content:
read_content,set_content_fields,publish_content,get_page_actions,set_page_actions - Commerce and events:
create_event_with_tickets,create_membership_tier,create_form - Media:
list_media,create_media_upload_link,check_media_upload_link,find_stock_photo - Collections (CMS):
list_collections,create_collection,add_collection_field,query_collection,create_collection_entries,publish_collection_entry - Automations: 17 tools covering triggers, node types, compilation, testing and activation
- Knowledge base:
kb_list_spaces,kb_search_documents,kb_create_document,kb_update_document - Finance:
finance_get_pnl,finance_list_transactions,finance_list_expenses,refunds_list - Ads:
ads_list_campaigns,ads_create_campaign,ads_publish_campaign,ads_pause_campaign,ads_create_audience - Apps platform: create, configure, secret and permission management for installable apps
- Podcasts, reviews, community, documents, messaging: listing and moderation tools
The action registry
Most of the platform has no dedicated tool. It is reached through three:
list_actions- browse the catalog, filtered bydomainor a free-textquerydescribe_action- fetch one action's input schema and guidanceperform_action- run it
Domains available as a domain filter value, with action counts:
social (43), learning (39), audience (24), commerce (23), community (22), affiliates (21), automations (18), memberships (16), contacts (16), invoices (14), infrastructure (14), concierge (11), documents (10), blog (10), work (9), marketing (9), analysis (9), courses (8), music (7), events (7), ads (7), deals (6), website (5), scheduling (5), payment_links (4), forms (4), voice (3), podcasts (3), templates (2), telephony (2), offers (2), member_posts (2), finance (2), donations (2), coupons (2), collections (2), reviews (1), messaging (1), media (1).
Dedicated tools are not callable through perform_action
list_actions catalogs dedicated tools alongside registry actions so an agent can discover everything in one place, but each entry names how to invoke it. A dedicated tool must be called by name through tools/call. perform_action refuses it.
The initialize response carries server-level instructions naming the registry and its domains, so a connecting agent learns the catalog exists before its first call rather than inferring the platform's limits from the advertised tool names.
Errors
The server distinguishes two failure classes, deliberately:
Tool execution failures come back as a successful JSON-RPC response carrying an MCP error result:
{
"content": [{ "type": "text", "text": "Not allowed (websites.write)." }],
"isError": true
}This is intentional. Most clients render a protocol error as a generic "error occurred during tool execution" that the model never reads, so a permission denial, a validation failure or a not-found would be invisible to the agent. As an isError result the message lands in the model's turn and can guide the next step. Stack traces are never returned, only logged.
Protocol failures stay JSON-RPC errors:
| Code | Meaning |
|---|---|
-32001 | Request rejected: unauthorized, unknown tool, or no workspace to route to |
-32603 | Internal error |
Rate limits
| Endpoint | Limit |
|---|---|
/mcp | 120 requests per minute, per IP |
/oauth/* | 60 requests per minute, per IP |
Standard RateLimit-* response headers are returned.
Access requirements
- A TribeNest account with at least one workspace. Free to create.
- Included in every plan. Connecting your own assistant consumes no TribeNest AI credits, because your assistant does the reasoning. Credits apply only to AI that runs inside TribeNest.
- No regional restriction on the connector itself. Individual features depend on what the workspace has configured, for example which payment provider is connected.
- Data is scoped to the authorizing workspace and constrained by that member's permissions.
Support
Questions about integrating: support@tribenest.co. Creators can also reach support from inside the dashboard, and an assistant can use the ask_support tool on their behalf.