Shared Library — MCP Tools
12 tools in the Shared Library group of the Routebase MCP server.
fork_org_component_to_project
Copy a schema or response from the ORGANIZATION library into the current project's library, where it can be edited independently. Get sourceId from list_shared_schemas/list_shared_responses with scope 'org'. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
componentType |
string | Yes | What to fork: 'schema' or 'response' |
sourceId |
string | Yes | Public ID (GUID) of the organization-library schema or response |
get_shared_response
Get one shared response with its schema, headers, example and rowVersion. Scope 'project' (default) or 'org'. Set includeUsedBy to also list the specs linking it — project scope only.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
responseId |
string | Yes | Public ID (GUID) of the shared response |
scope |
string | No (default "project") |
Which library to read: 'project' (default) or 'org' |
includeUsedBy |
boolean | No (default false) |
Also list the specs using this response — project scope only (default false) |
get_shared_schema
Get one shared schema with its full JSON Schema and rowVersion. Scope 'project' (default) or 'org'. Set includeUsedBy to also list the specs linking it — do that before deleting one; it only works in project scope.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
schemaId |
string | Yes | Public ID (GUID) of the shared schema |
scope |
string | No (default "project") |
Which library to read: 'project' (default) or 'org' |
includeUsedBy |
boolean | No (default false) |
Also list the specs using this schema — project scope only (default false) |
list_shared_component_usages
List which shared-library components a spec links, including whether the library has a newer version than the spec is pinned to (hasUpdate). The usage ids returned here are what manage_shared_component_link needs for 'unlink' and 'accept_update'. 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_shared_responses
List the reusable responses of the shared library. Scope 'project' (default) reads the current project's library, 'org' the organization-wide one. Each entry carries the id and rowVersion needed to update or link it.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
scope |
string | No (default "project") |
Which library to read: 'project' (default) or 'org' |
list_shared_schemas
List the reusable schemas of the shared library. Scope 'project' (default) reads the current project's library, 'org' the organization-wide one. Each entry carries the id and rowVersion needed to update or link it.
Required scope: specs:read
| Parameter | Type | Required | Description |
|---|---|---|---|
scope |
string | No (default "project") |
Which library to read: 'project' (default) or 'org' |
manage_org_shared_response
Create, update or delete a response in the ORGANIZATION shared library — the standards every project can fork. 'create' needs name; 'update' needs responseId and rowVersion and REPLACES the response, omitted fields are carried over; 'delete' needs responseId. Read them with list_shared_responses(scope: 'org').
Required scope: org:manage-governance
| Parameter | Type | Required | Description |
|---|---|---|---|
action |
string | Yes | What to do: 'create', 'update' or 'delete' |
responseId |
string | No | Public ID (GUID) of the shared response — required for 'update' and 'delete' |
rowVersion |
string | No | Base64-encoded row version from list_shared_responses — required for 'update' |
name |
string | No | Response name, unique within the library — required for 'create' |
description |
string | No | Optional description |
contentType |
string | No | Content type, defaults to 'application/json' when creating |
schemaJson |
string | No | Optional JSON Schema for the response body, as a JSON string |
headers |
string | No | Optional response headers as a JSON object string |
example |
string | No | Optional example payload |
manage_org_shared_schema
Create, update or delete a schema in the ORGANIZATION shared library — the standards every project can fork. 'create' needs name and jsonSchema; 'update' needs schemaId and rowVersion and REPLACES the schema, omitted fields are carried over; 'delete' needs schemaId. Read them with list_shared_schemas(scope: 'org').
Required scope: org:manage-governance
| Parameter | Type | Required | Description |
|---|---|---|---|
action |
string | Yes | What to do: 'create', 'update' or 'delete' |
schemaId |
string | No | Public ID (GUID) of the shared schema — required for 'update' and 'delete' |
rowVersion |
string | No | Base64-encoded row version from list_shared_schemas — required for 'update' |
name |
string | No | Schema name, unique within the library — required for 'create' |
jsonSchema |
string | No | The JSON Schema document as a JSON string — required for 'create' |
description |
string | No | Optional description |
manage_shared_component_link
Link a shared-library component into a spec, remove that link, or pull in the library's newer version. 'link' needs componentType and componentId (from list_shared_schemas or list_shared_responses); 'unlink' and 'accept_update' need usageId from list_shared_component_usages. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification |
action |
string | Yes | What to do: 'link', 'unlink' or 'accept_update' |
componentType |
string | No | What is being linked: 'schema' or 'response' — required for 'link' |
componentId |
string | No | Public ID (GUID) of the shared component — required for 'link' |
usageId |
string | No | Public ID (GUID) of the usage — required for 'unlink' and 'accept_update' |
versionId |
string | No | Optional version ID (GUID) to link into a specific version |
localOverrideName |
string | No | Optional name the component gets inside this spec, if it should differ |
manage_shared_response
Create, update or delete a response in the PROJECT shared library. 'create' needs name; 'update' needs responseId and rowVersion and REPLACES the response — omitted fields are carried over from the current state; 'delete' needs responseId, check get_shared_response with includeUsedBy first. For the organization library use manage_org_shared_response. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
action |
string | Yes | What to do: 'create', 'update' or 'delete' |
responseId |
string | No | Public ID (GUID) of the shared response — required for 'update' and 'delete' |
rowVersion |
string | No | Base64-encoded row version from list_shared_responses — required for 'update' |
name |
string | No | Response name, unique within the library (e.g. 'NotFound') — required for 'create' |
description |
string | No | Optional description |
contentType |
string | No | Content type, defaults to 'application/json' when creating |
schemaJson |
string | No | Optional JSON Schema for the response body, as a JSON string |
headers |
string | No | Optional response headers as a JSON object string |
example |
string | No | Optional example payload |
manage_shared_schema
Create, update or delete a schema in the PROJECT shared library. 'create' needs name and jsonSchema; 'update' needs schemaId and rowVersion and REPLACES the schema — fields you omit are carried over from the current state, so you can change one alone; 'delete' needs schemaId, check get_shared_schema with includeUsedBy first. For the organization library use manage_org_shared_schema. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
action |
string | Yes | What to do: 'create', 'update' or 'delete' |
schemaId |
string | No | Public ID (GUID) of the shared schema — required for 'update' and 'delete' |
rowVersion |
string | No | Base64-encoded row version from list_shared_schemas — required for 'update' |
name |
string | No | Schema name, unique within the library (e.g. 'Customer') — required for 'create' |
jsonSchema |
string | No | The JSON Schema document as a JSON string — required for 'create' |
description |
string | No | Optional description |
promote_to_shared_library
Promote a schema or response that lives inside one spec into the project's shared library, so other specs can link it. Get componentId from list_schemas or list_response_components. Fails if the library already holds that name. Requires project context.
Required scope: specs:write
| Parameter | Type | Required | Description |
|---|---|---|---|
specId |
string | Yes | Public ID (GUID) of the API specification the component lives in |
componentType |
string | Yes | What to promote: 'schema' or 'response' |
componentId |
string | Yes | Public ID (GUID) of the spec-local schema or response component |