Reusable Components — MCP Tools
Reusable parameter, response and security-scheme components. This page documents the Reusable Components group of the Routebase MCP server, with the scope and the parameters of each tool.
A session that stages its tools advertises this group once the agent calls enable_toolset with the slug components. Full-access keys, scoped keys and OAuth sessions see every tool they are allowed to call without that step.
get_media_type_component
Get one reusable media type component (OpenAPI 3.2) with its schema, itemSchema, example and rowVersion. Use this when you already have the component id; to browse them use list_media_type_components. Requires project context.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
componentId |
string | Yes | Public ID (GUID) of the media type component |
get_parameter_component
Get one reusable parameter component with its schema details and rowVersion. Set includeUsage to also list the endpoints referencing it — do that before deleting one. Use this when you already have the component id; to browse them or find an id use list_parameter_components. Requires project context.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
componentId |
string | Yes | Public ID (GUID) of the parameter component |
includeUsage |
boolean | No (default false) |
Also list what references this component (default false) |
get_response_component
Get one reusable response component with its schema, headers and rowVersion. Set includeUsage to also list what references it. Use this when you already have the component id; to browse them or find an id use list_response_components. Requires project context.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
componentId |
string | Yes | Public ID (GUID) of the response component |
includeUsage |
boolean | No (default false) |
Also list what references this component (default false) |
get_security_scheme_component
Get one security scheme with its type-specific settings and rowVersion. Set includeUsage to also list the endpoints requiring it. Use this when you already have the scheme id; to browse them or find an id use list_security_scheme_components. Requires project context.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
componentId |
string | Yes | Public ID (GUID) of the security scheme component |
includeUsage |
boolean | No (default false) |
Also list what references this scheme (default false) |
list_media_type_components
List the reusable media type components (OpenAPI 3.2 components/mediaTypes) of a spec version. A media type component holds schema, itemSchema and example; a response, request body or component references it by id and keeps only its own content type. Use this to browse or find an id; to create, change or delete one use manage_media_type_component. Only 3.2 specs have them. Requires project context.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
versionId |
string | No | Optional version ID (GUID) to filter by a specific version |
list_parameter_components
List the reusable parameter components of a spec version. Set includeUsageCounts to see how often each one is referenced. Use this to browse or find an id; to create, change or delete one use manage_parameter_component. Requires project context.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
versionId |
string | No | Optional version ID (GUID) to filter by a specific version |
includeUsageCounts |
boolean | No (default false) |
Also return how often each component is referenced (default false) |
list_response_components
List the reusable response components of a spec version. Set includeUsageCounts to see how often each one is referenced. Use this to browse or find an id; to create, change or delete one use manage_response_component. Requires project context.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
versionId |
string | No | Optional version ID (GUID) to filter by a specific version |
includeUsageCounts |
boolean | No (default false) |
Also return how often each component is referenced (default false) |
list_security_scheme_components
List the security schemes a spec version defines (OpenAPI components/securitySchemes). Set includeUsageCounts to see how often each is referenced. Use this to browse or find an id; to create, change or delete one use manage_security_scheme_component. Requires project context.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
versionId |
string | No | Optional version ID (GUID) to filter by a specific version |
includeUsageCounts |
boolean | No (default false) |
Also return how often each scheme is referenced (default false) |
manage_media_type_component
Create, update or delete a reusable media type component (OpenAPI 3.2 components/mediaTypes). Only accepted on 3.2 specs (MEDIA_TYPE_COMPONENT_REQUIRES_OPENAPI_3_2 otherwise). 'create' needs name; 'update' needs componentId and rowVersion and REPLACES the component — omitted fields are carried over, an empty string clears schemaJson/itemSchemaJson/example. 'delete' needs componentId; rows that reference it fall back to their inline content. To reference the component pass mediaTypeComponentId to add_response, update_response, set_request_body, manage_response_component or create/update_request_body_component. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
versionId |
string | Yes | Public ID (GUID) of the spec version |
action |
string | Yes | What to do: 'create', 'update' or 'delete' |
componentId |
string | No | Public ID (GUID) of the component — required for 'update' and 'delete' |
rowVersion |
string | No | Base64-encoded row version — required for 'update' |
name |
string | No | Component name (e.g. 'CollectionLinks') — required for 'create' |
schemaJson |
string | No | Inline JSON schema of the complete body; on update omit to keep, empty string to clear |
itemSchemaJson |
string | No | Item schema of a sequential media type (JSON Lines, SSE); on update omit to keep, empty string to clear |
example |
string | No | Example value; on update omit to keep, empty string to clear |
serializedExample |
string | No | 3.2 only: example in wire form (serializedValue); omit keeps, empty string clears |
manage_parameter_component
Create, update or delete a reusable parameter component (OpenAPI components/parameters). 'create' and 'update' need name, location and schemaType; 'update' additionally needs componentId and rowVersion and REPLACES the component — fields you omit are carried over from the current state, so you can change one field alone. 'delete' needs componentId; check get_parameter_component with includeUsage first. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
versionId |
string | Yes | Public ID (GUID) of the spec version |
action |
string | Yes | What to do: 'create', 'update' or 'delete' |
componentId |
string | No | Public ID (GUID) of the component — required for 'update' and 'delete' |
rowVersion |
string | No | Base64-encoded row version — required for 'update' |
name |
string | No | Parameter name (e.g. 'pageSize') — required for 'create' |
location |
string | No | Where it goes: 'path', 'query', 'header', 'cookie' or 'querystring' (3.2 only) — required for 'create' |
schemaType |
string | No | Schema type: 'string', 'integer', 'number', 'boolean', 'array' or 'object' — required for 'create' |
required |
boolean | No (default false) |
Whether the parameter is required (default false) |
description |
string | No | Optional description |
schemaFormat |
string | No | Optional schema format (e.g. 'date-time') |
example |
string | No | Optional example value |
defaultValue |
string | No | Optional default value |
isDeprecated |
boolean | No (default false) |
Mark the parameter as deprecated (default false) |
style |
string | No | Serialization style per OpenAPI ('form', 'simple', 'deepObject', …; 'cookie' is 3.2 only). Omit for the default; '' clears on update. |
explode |
boolean | No | Explode flag; omit for the OpenAPI default |
contentType |
string | No | Media type of a querystring parameter (default 'application/x-www-form-urlencoded') |
serializedExample |
string | No | 3.2 only: example in wire form (serializedValue); omit keeps, empty string clears |
manage_response_component
Create, update or delete a reusable response component (OpenAPI components/responses). 'create' needs name and contentType; 'update' needs componentId and rowVersion and REPLACES the component — omitted fields are carried over from the current state. 'delete' needs componentId; check get_response_component with includeUsage first. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
versionId |
string | Yes | Public ID (GUID) of the spec version |
action |
string | Yes | What to do: 'create', 'update' or 'delete' |
componentId |
string | No | Public ID (GUID) of the component — required for 'update' and 'delete' |
rowVersion |
string | No | Base64-encoded row version — required for 'update' |
name |
string | No | Component name (e.g. 'NotFoundError') — required for 'create' |
contentType |
string | No | Content type (e.g. 'application/json') — required for 'create' |
description |
string | No | Optional description |
schemaJson |
string | No | Optional inline JSON schema for the body |
example |
string | No | Optional example value |
isDeprecated |
boolean | No (default false) |
Mark the component as deprecated (default false) |
itemSchemaJson |
string | No | OpenAPI 3.2 only: item schema of a sequential media type; on update omit to keep, empty string to clear |
mediaTypeComponentId |
string | No | OpenAPI 3.2 only: id of a media type component whose schema/itemSchema/example the content entry references ($ref); on update omit to keep, empty string to detach |
serializedExample |
string | No | 3.2 only: example in wire form (serializedValue); omit keeps, empty string clears |
manage_response_component_header
Manage the headers a reusable response component declares. Actions: 'add', 'update', 'delete'. 'add' and 'update' need name and schemaType; 'update' and 'delete' need responseHeaderId. For the headers of an endpoint's own response, use manage_response_header instead. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
componentId |
string | Yes | Public ID (GUID) of the response component |
action |
string | Yes | What to do: 'add', 'update' or 'delete' |
responseHeaderId |
string | No | Public ID (GUID) of the header — required for 'update' and 'delete' |
name |
string | No | Header name (e.g. 'X-Rate-Limit') — required for 'add' and 'update' |
schemaType |
string | No | Schema type: 'string', 'integer', 'number', 'boolean', 'array' or 'object' — required for 'add' and 'update' |
required |
boolean | No (default false) |
Whether the header is always present (default false) |
description |
string | No | Optional description |
schemaFormat |
string | No | Optional schema format |
example |
string | No | Optional example value |
serializedExample |
string | No | 3.2 only: example in wire form (serializedValue) |
manage_security_scheme_component
Create, update or delete a security scheme (OpenAPI components/securitySchemes). 'create' and 'update' need name and type ('apiKey', 'http', 'oauth2' or 'openIdConnect'); which of the other fields matter depends on the type: 'http' uses scheme and bearerFormat, 'apiKey' uses apiKeyName and apiKeyLocation, 'openIdConnect' uses openIdConnectUrl, 'oauth2' uses flowsJson (keys implicit, password, clientCredentials, authorizationCode and, on OpenAPI 3.2 specs, deviceAuthorization). deprecated and oauth2MetadataUrl are OpenAPI 3.2 fields and rejected on 3.0/3.1 specs. 'update' needs componentId and REPLACES the scheme — omitted fields are carried over. Use add_security_scheme to attach one to an endpoint. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
versionId |
string | Yes | Public ID (GUID) of the spec version |
action |
string | Yes | What to do: 'create', 'update' or 'delete' |
componentId |
string | No | Public ID (GUID) of the scheme — required for 'update' and 'delete' |
rowVersion |
string | No | Base64-encoded row version — required for 'update' |
name |
string | No | Scheme name as referenced in the spec (e.g. 'bearerAuth') — required for 'create' |
type |
string | No | Type: 'apiKey', 'http', 'oauth2' or 'openIdConnect' — required for 'create' |
description |
string | No | Optional description |
scheme |
string | No | For type 'http': the HTTP scheme, e.g. 'bearer' or 'basic' |
bearerFormat |
string | No | For type 'http' with bearer: the token format, e.g. 'JWT' |
apiKeyName |
string | No | For type 'apiKey': the name of the key parameter |
apiKeyLocation |
string | No | For type 'apiKey': where the key goes — 'header', 'query' or 'cookie' |
openIdConnectUrl |
string | No | For type 'openIdConnect': the discovery URL |
flowsJson |
string | No | For type 'oauth2': the flows object as JSON |
deprecated |
boolean | No | OpenAPI 3.2: mark the scheme deprecated (false clears it) |
oauth2MetadataUrl |
string | No | OpenAPI 3.2, type 'oauth2': URL of the RFC 8414 authorization server metadata ('' clears it) |