A Model Context Protocol (MCP) server acts as a proxy between an external service that provides context, data, or capabilities to a Large Language Model (LLM) or AI application. MCP servers connect AI applications to external systems such as databases and web services, translating their responses into a format that the AI application can understand.
Server Setup
You must enable MCP servers and set up authentication before use. For more information about using Google and Google Cloud remote MCP servers, see Google Cloud MCP servers overview.
Server Endpoints
An MCP service endpoint is the network address and communication interface (usually a URL) of the MCP server that an AI application (the Host for the MCP client) uses to establish a secure, standardized connection. It is the point of contact for the LLMs to request context, call tools, or access resources. The MCP server supports MCP traffic via both the global endpoint and regional endpoints (REP).
- Global Endpoint: For global requests, you can use the endpoint
https://apihub.googleapis.com/mcp. - Regional Endpoints: For regional requests, you must use an endpoint with the format
https://apihub.REGION.rep.googleapis.com/mcp. Here,REGIONrepresents a supported API hub region. For example,https://apihub.us-east1.rep.googleapis.com/mcp.
Regional Endpoints are available in the following nine regions:
- asia-east1
- asia-south1
- asia-southeast1
- europe-north1
- europe-west1
- europe-west9
- us-central1
- us-east1
- us-west1
When routing traffic regionally, MCP cannot be used in an unsupported region. To request support for additional regions, contact Google Cloud Customer Care.
MCP Tools
An MCP tool is a function or executable capability that an MCP server exposes to a LLM or AI application to perform an action in the real world.
Tools
The apihub.googleapis.com MCP server has the following tools:
| MCP Tools | |
|---|---|
create_api |
Create an API resource in the API hub. |
get_api |
Get API resource details in the API hub. |
list_apis |
List API resources in the API hub. |
update_api |
Update an API resource in the API hub. |
delete_api |
Delete an API resource in the API hub. All underlying versions must be deleted first. |
create_version |
Create an API version for an API resource in the API hub. |
get_version |
Get details about the API version of an API resource in the API hub. |
list_versions |
List API versions of an API resource in the API hub. |
update_version |
Update an API version resource in the API hub. |
delete_version |
Delete an API version. All underlying specs, operations, definitions and linked deployments must be deleted first. |
create_spec |
Create a spec resource within an API version in the API hub. |
get_spec |
Get details about a spec resource in the API hub. |
get_spec_contents |
Get contents of a spec resource in the API hub. |
fetch_additional_spec_content |
Fetch additional spec content related to a spec resource. |
list_specs |
List specs corresponding to a particular API resource. |
update_spec |
Update a spec resource in the API hub. |
delete_spec |
Delete a spec resource in the API hub. Deleting a spec will also delete the associated operations from the version. |
create_api_operation |
Create an apiOperation in an API version. Only allowed if no API Operations were created by parsing a spec. |
get_api_operation |
Get details about a particular operation in an API version. |
list_api_operations |
List operations in an API version. |
update_api_operation |
Update an operation in an API version. Only operations created via CreateApiOperation can be updated. |
delete_api_operation |
Delete an operation in an API version. Only operations created via CreateApiOperation can be deleted. |
get_definition |
Get details about a definition in an API version. |
create_deployment |
Create a deployment resource in the API hub. |
get_deployment |
Get details about a deployment resource in the API hub. |
list_deployments |
List deployment resources in the API hub. |
update_deployment |
Update a deployment resource in the API hub. |
delete_deployment |
Delete a deployment resource in the API hub. |
create_attribute |
Create a user defined attribute resource in the API hub. |
get_attribute |
Get details about an attribute resource in the API hub. |
update_attribute |
Update an attribute resource in the API hub. |
delete_attribute |
Delete an attribute. System defined attributes cannot be deleted. |
list_attributes |
List all attributes in the API hub. |
search_resources |
Search resources in API hub. |
create_external_api |
Create an External API resource in the API hub. |
get_external_api |
Get details about an External API resource in the API hub. |
update_external_api |
Update an External API resource in the API hub. |
delete_external_api |
Delete an External API resource in the API hub. |
list_external_apis |
List External API resources in the API hub. |
retrieve_api_views |
Retrieve API views in the API hub. |
create_dependency |
Create a dependency between two entities in the API hub. |
get_dependency |
Get details about a dependency resource in the API hub. |
update_dependency |
Update a dependency resource in the API hub. |
delete_dependency |
Delete the dependency resource. |
list_dependencies |
List dependency resources in the API hub. |
Get MCP tool specifications
To get the MCP tool specifications for all tools in an MCP server, use the tools/list method. The following example demonstrates how to use curl to list all tools and their specifications currently available within the MCP server.
| Curl Request |
|---|
curl --location 'https://apihub.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/list", "jsonrpc": "2.0", "id": 1 }' |