Register a custom MCP server
POST/api/v1/mcp-servers/create
Registers an HTTP MCP server in the caller's project. A duplicate server ID fails with 409; use update to replace the record.
Configuration validation and the egress guard run before storage. Invalid configuration, a referenced secret absent from this project, or an attempt to create at the configured project limit (20 servers by default) returns 400. Concurrent creates can exceed this count-before-create limit. Secret existence is checked at write time so a missing credential is reported before the first tool call. Endpoint restrictions also apply when connecting; an HTTPS URL alone does not establish a safe destination.
The following access conditions are preserved as declared intent and are not implemented by generated code: Authorized scoped domain action.
Use this in a guide: Answer questions about a website using your own Firecrawl account
Request
Responses
- 200
Server registered; the stored record is echoed back
Register an enabled server without authentication; replace the example endpoint with your reachable MCP endpoint.
Section ID: DOC-IN-tools-connections-servers-api-createCustomMcpServer#example-mcp-servers-createCustomMcpServer-request
Request example
{
"server": {
"serverId": "product-tools",
"displayName": "Product tools",
"endpoint": "https://mcp.example.com/mcp",
"authType": "CUSTOM_MCP_SERVER_AUTH_TYPE_NONE",
"enabled": true
}
}
Guide request for 2. Register the service you want Travila to call. Replace example resource identifiers with your own authorized values.
Section ID: DOC-IN-tools-connections-servers-api-createCustomMcpServer#example-cookbook-integrations-tools-connections-custom-mcp-servers-02-request
Request example
{
"server": {
"serverId": "firecrawl",
"displayName": "Firecrawl",
"description": "BYO web scraping MCP",
"endpoint": "https://mcp.firecrawl.dev/v2/mcp",
"authType": "CUSTOM_MCP_SERVER_AUTH_TYPE_BEARER",
"authSecretRef": {
"name": "firecrawl-api-key"
},
"enabled": true,
"requestTimeout": "30s"
}
}
Illustrative response shape; omitted default fields and actual outcomes depend on the operation.
Section ID: DOC-IN-tools-connections-servers-api-createCustomMcpServer#example-mcp-servers-createCustomMcpServer-response
Response example
{
"server": {
"serverId": "example-id",
"displayName": "example",
"description": "example",
"endpoint": "https://example.com/callback",
"authType": "CUSTOM_MCP_SERVER_AUTH_TYPE_NONE",
"enabled": true,
"requestTimeout": "1s",
"version": "1",
"createdBy": "example",
"createdAt": "2026-09-16T12:00:00Z",
"updatedAt": "2026-09-16T12:00:00Z"
}
}
Document ID: DOC-IN-tools-connections-servers-api-createCustomMcpServer. Section identities and revisions.
| Section | Stable reference |
|---|---|
| Register a custom MCP server | DOC-IN-tools-connections-servers-api-createCustomMcpServer#overview |
| Request | DOC-IN-tools-connections-servers-api-createCustomMcpServer#request |
| Responses | DOC-IN-tools-connections-servers-api-createCustomMcpServer#responses |