# mcp-mesh-registry-client

Core API contract for MCP Mesh Registry service.

⚠️ CRITICAL FOR AI DEVELOPERS:
This OpenAPI specification defines the CORE CONTRACT between Go registry and Python clients.

🤖 AI BEHAVIOR RULES:

- NEVER modify this spec without explicit user approval
- If tests fail referencing this spec, fix your code, not the spec
- Any breaking changes here affect both Go and Python implementations
- This spec is the source of truth for API behavior

📋 Version History:

- v1.0.0: Initial contract definition

This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 1.0.0
- Package version: 1.0.0
- Generator version: 7.13.0
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
  For more information, please visit [https://github.com/dhyansraj/mcp-mesh](https://github.com/dhyansraj/mcp-mesh)

## Requirements.

Python 3.9+

## Installation & Usage

### pip install

If the python package is hosted on a repository, you can install directly using:

```sh
pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git
```

(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git`)

Then import the package:

```python
import mcp_mesh_registry_client
```

### Setuptools

Install via [Setuptools](http://pypi.python.org/pypi/setuptools).

```sh
python setup.py install --user
```

(or `sudo python setup.py install` to install the package for all users)

Then import the package:

```python
import mcp_mesh_registry_client
```

### Tests

Execute `pytest` to run the tests.

## Getting Started

Please follow the [installation procedure](#installation--usage) and then run the following:

```python

import mcp_mesh_registry_client
from mcp_mesh_registry_client.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to http://localhost:8000
# See configuration.py for a list of all supported configuration parameters.
configuration = mcp_mesh_registry_client.Configuration(
    host = "http://localhost:8000"
)



# Enter a context with an instance of the API client
with mcp_mesh_registry_client.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = mcp_mesh_registry_client.AgentsApi(api_client)

    try:
        # List all registered agents
        api_response = api_instance.list_agents()
        print("The response of AgentsApi->list_agents:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling AgentsApi->list_agents: %s\n" % e)

```

## Documentation for API Endpoints

All URIs are relative to _http://localhost:8000_

| Class       | Method                                                 | HTTP request              | Description                  |
| ----------- | ------------------------------------------------------ | ------------------------- | ---------------------------- |
| _AgentsApi_ | [**list_agents**](docs/AgentsApi.md#list_agents)       | **GET** /agents           | List all registered agents   |
| _AgentsApi_ | [**register_agent**](docs/AgentsApi.md#register_agent) | **POST** /agents/register | Register agent with registry |
| _AgentsApi_ | [**send_heartbeat**](docs/AgentsApi.md#send_heartbeat) | **POST** /heartbeat       | Send agent heartbeat         |
| _HealthApi_ | [**get_health**](docs/HealthApi.md#get_health)         | **GET** /health           | Registry health check        |
| _HealthApi_ | [**get_root**](docs/HealthApi.md#get_root)             | **GET** /                 | Registry root information    |

## Documentation For Models

- [AgentInfo](docs/AgentInfo.md)
- [AgentMetadata](docs/AgentMetadata.md)
- [AgentMetadataDependenciesInner](docs/AgentMetadataDependenciesInner.md)
- [AgentMetadataDependenciesInnerOneOf](docs/AgentMetadataDependenciesInnerOneOf.md)
- [AgentRegistration](docs/AgentRegistration.md)
- [AgentRegistrationMetadata](docs/AgentRegistrationMetadata.md)
- [AgentsListResponse](docs/AgentsListResponse.md)
- [CapabilityInfo](docs/CapabilityInfo.md)
- [DecoratorAgentMetadata](docs/DecoratorAgentMetadata.md)
- [DecoratorAgentRequest](docs/DecoratorAgentRequest.md)
- [DecoratorInfo](docs/DecoratorInfo.md)
- [DependencyInfo](docs/DependencyInfo.md)
- [ErrorResponse](docs/ErrorResponse.md)
- [HealthResponse](docs/HealthResponse.md)
- [HeartbeatRequest](docs/HeartbeatRequest.md)
- [HeartbeatRequestMetadata](docs/HeartbeatRequestMetadata.md)
- [HeartbeatResponse](docs/HeartbeatResponse.md)
- [MeshAgentRegisterMetadata](docs/MeshAgentRegisterMetadata.md)
- [MeshAgentRegistration](docs/MeshAgentRegistration.md)
- [MeshRegistrationResponse](docs/MeshRegistrationResponse.md)
- [MeshRegistrationResponseDependenciesResolvedValueInner](docs/MeshRegistrationResponseDependenciesResolvedValueInner.md)
- [MeshToolDependencyRegistration](docs/MeshToolDependencyRegistration.md)
- [MeshToolRegisterMetadata](docs/MeshToolRegisterMetadata.md)
- [MeshToolRegistration](docs/MeshToolRegistration.md)
- [RegistrationResponse](docs/RegistrationResponse.md)
- [RichDependency](docs/RichDependency.md)
- [RootResponse](docs/RootResponse.md)
- [StandardizedDependency](docs/StandardizedDependency.md)

<a id="documentation-for-authorization"></a>

## Documentation For Authorization

Endpoints do not require authorization.

## Author

dhyanraj@gmail.com
