facets-cp-mcp-server


Namefacets-cp-mcp-server JSON
Version 0.0.1 PyPI version JSON
download
home_pageNone
SummaryFacets Control Plane MCP Server
upload_time2025-07-18 12:47:14
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseMIT
keywords facets mcp control plane python
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Facets Control Plane MCP Server

This MCP (Model Context Protocol) Server provides comprehensive tools for interacting with the Facets Control Plane REST API. It enables seamless management of projects, resources, environments, and deployments through Claude, offering secure and robust infrastructure automation workflows.

## Key Features

* **Complete Project Management**  
  Full lifecycle project management including project discovery, variable management, and resource configuration with built-in validation and safety checks.

* **Resource Lifecycle Management**  
  End-to-end resource management from discovery and creation to updates and deletion. Supports complex resource dependencies, input validation, and schema-driven configuration.

* **Environment Operations**  
  Comprehensive environment management including deployment orchestration, release monitoring, scaling operations, and state management with extensive safety validations.

* **Safety-First Design**  
  All destructive operations require explicit user confirmation with dry-run previews. Comprehensive validation ensures safe execution of infrastructure changes.

* **Schema-Driven Configuration**  
  Automatic schema validation and sample generation for all resource types, ensuring configurations meet requirements before deployment.

## Available MCP Tools

| Tool Name                                    | Description                                                                                                               |
| -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| **Project Management**                      |                                                                                                                           |
| `get_all_projects`                           | Retrieve a list of all projects (stacks) available in the control plane.                                                 |
| `get_project_details`                       | Fetch detailed information about a specific project including configuration and metadata.                                |
| `use_project`                               | Set the current active project for all subsequent operations.                                                            |
| `refresh_current_project`                   | Refresh project data from the server to avoid stale cache issues.                                                        |
| **Variable Management**                     |                                                                                                                           |
| `get_secrets_and_vars`                      | View all variables and secrets for the current project with type and status information.                                 |
| `get_variable_by_name`                      | Retrieve a specific variable by name with full configuration details.                                                    |
| `create_variable`                           | Create a new variable in the current project with validation and type checking.                                          |
| `update_variable`                           | Update an existing variable's value, description, or configuration safely.                                               |
| `delete_variable`                           | Delete a variable from the current project with confirmation requirements.                                               |
| **Resource Discovery & Management**         |                                                                                                                           |
| `list_available_resources`                  | List all available resource types and flavors that can be added to the current project.                                  |
| `get_all_resources_by_project`              | Get all resources currently configured in the project with full details.                                                 |
| `get_resource_by_project`                   | Get complete configuration for a specific resource including base config and effective settings.                        |
| `get_spec_for_resource`                     | Get the JSON schema specification for a specific resource's configuration options.                                       |
| `get_module_inputs`                         | Get required inputs and compatible resources needed before adding a new resource.                                        |
| `get_spec_for_module`                       | Get specification details for a module based on intent, flavor, and version.                                            |
| `get_sample_for_module`                     | Get a complete sample JSON template for creating a new resource of a specific type.                                      |
| `add_resource`                              | Add a new resource to the project with dependency resolution and validation. Supports dry-run preview.                  |
| `update_resource`                           | Update an existing resource's configuration with schema validation and change preview.                                   |
| `delete_resource`                           | Delete a specific resource from the project with confirmation and dependency checking.                                   |
| **Resource Configuration Helpers**          |                                                                                                                           |
| `get_output_references`                     | Get available output references from resources based on output type for cross-resource linking.                         |
| `explain_ui_annotation`                     | Get explanation and handling instructions for special UI annotations in resource specifications.                         |
| `get_resource_output_tree`                  | Get the hierarchical output tree for a specific resource type for reference building.                                    |
| `get_resource_management_guide`             | Get comprehensive instructions for the complete resource management workflow.                                            |
| **Environment Management**                  |                                                                                                                           |
| `get_all_environments`                      | Retrieve all environments (clusters) available in the current project.                                                   |
| `use_environment`                           | Set the current active environment for deployment and monitoring operations.                                             |
| `get_current_environment_details`           | Get detailed information about the current environment including status and configuration.                               |
| `get_all_resources_by_environment`          | Get all resources deployed in the current environment with override information.                                         |
| `get_resource_by_environment`               | Get environment-specific resource configuration including base config, overrides, and effective settings.               |
| **Environment Overrides**                   |                                                                                                                           |
| `add_or_update_override_property`           | Safely add or update a specific property in environment-specific resource overrides.                                     |
| `remove_override_property`                  | Remove a specific property from resource overrides while preserving other override settings.                             |
| `replace_all_overrides`                     | Replace all existing overrides with a completely new override configuration.                                             |
| `clear_all_overrides`                       | Remove all overrides for a resource, reverting to base project configuration.                                            |
| `preview_override_effect`                   | Preview the effective configuration that would result from applying a proposed override.                                 |
| **Environment Operations**                  |                                                                                                                           |
| `check_if_environment_is_running`           | Verify if the current environment is in a running state and ready for operations.                                        |
| `launch_environment`                        | Initialize and start up an environment with full infrastructure provisioning.                                           |
| `destroy_environment`                       | Remove all resources in an environment with confirmation requirements.                                                   |
| `scale_up_environment`                      | Scale up a scaled-down environment to restore full capacity.                                                             |
| `scale_down_environment`                    | Scale down a running environment to reduce resource usage while maintaining state.                                       |
| `unlock_state_of_environment`               | Unlock terraform state if locked, enabling recovery from stuck operations.                                               |
| **Release Management**                      |                                                                                                                           |
| `get_releases_of_current_environment`       | List all releases for the current environment with status and metadata.                                                  |
| `get_release_details`                       | Get detailed information about a specific release including configuration and logs.                                      |
| `get_release_logs_of_current_environment`   | Get logs for a specific release with filtering and status information.                                                   |
| `get_active_releases_of_current_environment`| List all currently running releases with real-time status information.                                                  |
| `get_active_release_logs_of_current_environment` | Get logs from all running releases for comprehensive monitoring.                                            |
| `get_latest_release_of_current_environment` | Get the most recent release information with current status.                                                             |
| **Release Operations**                      |                                                                                                                           |
| `create_full_release_plan_for_environment`  | Create a comprehensive plan for updating all resources with change preview.                                              |
| `create_full_release_for_environment`       | Execute a full update of all resources with latest changes and monitoring.                                               |
| `create_selective_release_plan_for_environment` | Create a targeted plan for fixing specific resources with change isolation.                                          |
| `create_selective_release_for_environment`  | Apply targeted fixes to specific resources while preserving other components.                                            |
| `create_custom_release_for_environment`     | Execute custom deployment steps with user-defined parameters and validation.                                             |

## Prerequisites

The MCP Server requires [uv](https://github.com/astral-sh/uv) for dependency management and execution.

The package is available on PyPI: [facets-cp-mcp-server](https://pypi.org/project/facets-cp-mcp-server/)

#### Install `uv` with Homebrew:
```bash
brew install uv
```

For other methods, see the [official uv installation guide](https://docs.astral.sh/uv/getting-started/installation/).

### Integration with Claude

Add the following to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "facets-control-plane": {
      "command": "uvx",
      "args": [
        "facets-cp-mcp-server@latest"
      ],
      "env": {
        "PYTHONUNBUFFERED": "1",
        "CONTROL_PLANE_URL": "<YOUR_CONTROL_PLANE_URL>",
        "FACETS_USERNAME": "<YOUR_USERNAME>",
        "FACETS_TOKEN": "<YOUR_TOKEN>",
        "FACETS_PROFILE": "default"
      }
    }
  }
}
```

For a locally cloned repository, use:

```json
{
  "mcpServers": {
    "facets-control-plane": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/control-plane-mcp-server",
        "--module",
        "control_plane_mcp.server"
      ],
      "env": {
        "PYTHONUNBUFFERED": "1",
        "CONTROL_PLANE_URL": "<YOUR_CONTROL_PLANE_URL>",
        "FACETS_USERNAME": "<YOUR_USERNAME>",
        "FACETS_TOKEN": "<YOUR_TOKEN>",
        "FACETS_PROFILE": "default"
      }
    }
  }
}
```

⚠ Replace `<YOUR_USERNAME>`, `<YOUR_TOKEN>`, and `<YOUR_CONTROL_PLANE_URL>` with your actual authentication data.

The `uv` runner automatically manages environment and dependency setup using the `pyproject.toml` file.

If you have already logged into FTF CLI, specifying `FACETS_PROFILE` is sufficient.

---

For token generation and authentication setup, please refer to the official Facets documentation:  
[https://readme.facets.cloud/reference/authentication-setup](https://readme.facets.cloud/reference/authentication-setup)

Note: Similar setup is available in Cursor read [here](https://docs.cursor.com/context/model-context-protocol)

---

## Usage Highlights

### Resource Management Workflow

Complete workflow for creating, updating, and configuring resources:

1. **Discovery**: Use `list_available_resources()` to explore available resource types and flavors
2. **Dependencies**: Call `get_module_inputs()` to understand required inputs and compatible resources  
3. **Understanding**: Use `get_spec_for_module()` and `get_sample_for_module()` for schema and structure
4. **Creation**: Create resources with `add_resource()` including dependency resolution and validation
5. **Configuration**: Update settings with `update_resource()` and validate with `get_spec_for_resource()`
6. **Cross-referencing**: Link resources using `get_output_references()` and `get_resource_output_tree()`

### Environment Management Workflow

Complete environment lifecycle management:

1. **Discovery**: Use `get_all_environments()` to see available environments in your project
2. **Selection**: Set active environment with `use_environment()` for all operations
3. **Monitoring**: Track environment status with `get_current_environment_details()` and release monitoring tools
4. **Deployment**: Create and execute release plans for targeted or full updates
5. **Operations**: Scale environments, manage state, and perform recovery operations as needed
6. **Override Management**: Apply environment-specific configurations while preserving base project settings

### Safety Features

- **Dry-run Previews**: All destructive operations show change previews before execution
- **User Confirmation**: Explicit confirmation required for irreversible actions
- **Schema Validation**: All configurations validated against resource schemas before deployment
- **Dependency Checking**: Automatic validation of resource dependencies and compatibility
- **State Management**: Safe handling of terraform state with unlock capabilities for recovery

---

## Example Usage

Once configured with Claude Desktop, you can:

1. **Project Operations**: "Show me all available projects" → "Use project 'my-web-app'" → "List all resources in this project"
2. **Resource Creation**: "Help me add a new PostgreSQL database" → "Connect my service to the database" → "Update the service configuration"  
3. **Environment Management**: "List all environments" → "Use the staging environment" → "Create a release plan for the API service"
4. **Monitoring**: "Show me active releases" → "Get logs for the latest deployment" → "Check if the environment is running"
5. **Override Management**: "Set the replica count to 3 in staging" → "Preview the effect of this change" → "Apply the override"

All operations include comprehensive validation, safety checks, and clear feedback on success or failure conditions.

---

## Development Setup

For development and testing:

```bash
# Clone the repository
git clone https://github.com/Facets-cloud/control-plane-mcp-server.git
cd control-plane-mcp-server

# Set up environment and install dependencies
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv sync

# Run the server for development
uv run --module control_plane_mcp.server
```

### Extending the Server

To add support for more Control Plane APIs:

1. Add new tool methods using the `@mcp.tool()` decorator in the `control_plane_mcp/tools/` directory
2. Import your tools in the appropriate `__init__.py` to register them with the MCP instance
3. Follow existing implementation patterns for error handling, validation, and user confirmation

---

## License

This project is licensed under the MIT License. You are free to use, modify, and distribute it under its terms.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "facets-cp-mcp-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": null,
    "keywords": "Facets, MCP, Control Plane, Python",
    "author": null,
    "author_email": "Anshul Sao <anshul@facets.cloud>, Anuj Hydrabadi <anuj.hydrabadi@facets.cloud>",
    "download_url": "https://files.pythonhosted.org/packages/e8/2e/71940dd7eeaf2dd8e15c097c4e2f31254f337b5a7b172ddf6b87ef832de2/facets_cp_mcp_server-0.0.1.tar.gz",
    "platform": null,
    "description": "# Facets Control Plane MCP Server\n\nThis MCP (Model Context Protocol) Server provides comprehensive tools for interacting with the Facets Control Plane REST API. It enables seamless management of projects, resources, environments, and deployments through Claude, offering secure and robust infrastructure automation workflows.\n\n## Key Features\n\n* **Complete Project Management**  \n  Full lifecycle project management including project discovery, variable management, and resource configuration with built-in validation and safety checks.\n\n* **Resource Lifecycle Management**  \n  End-to-end resource management from discovery and creation to updates and deletion. Supports complex resource dependencies, input validation, and schema-driven configuration.\n\n* **Environment Operations**  \n  Comprehensive environment management including deployment orchestration, release monitoring, scaling operations, and state management with extensive safety validations.\n\n* **Safety-First Design**  \n  All destructive operations require explicit user confirmation with dry-run previews. Comprehensive validation ensures safe execution of infrastructure changes.\n\n* **Schema-Driven Configuration**  \n  Automatic schema validation and sample generation for all resource types, ensuring configurations meet requirements before deployment.\n\n## Available MCP Tools\n\n| Tool Name                                    | Description                                                                                                               |\n| -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |\n| **Project Management**                      |                                                                                                                           |\n| `get_all_projects`                           | Retrieve a list of all projects (stacks) available in the control plane.                                                 |\n| `get_project_details`                       | Fetch detailed information about a specific project including configuration and metadata.                                |\n| `use_project`                               | Set the current active project for all subsequent operations.                                                            |\n| `refresh_current_project`                   | Refresh project data from the server to avoid stale cache issues.                                                        |\n| **Variable Management**                     |                                                                                                                           |\n| `get_secrets_and_vars`                      | View all variables and secrets for the current project with type and status information.                                 |\n| `get_variable_by_name`                      | Retrieve a specific variable by name with full configuration details.                                                    |\n| `create_variable`                           | Create a new variable in the current project with validation and type checking.                                          |\n| `update_variable`                           | Update an existing variable's value, description, or configuration safely.                                               |\n| `delete_variable`                           | Delete a variable from the current project with confirmation requirements.                                               |\n| **Resource Discovery & Management**         |                                                                                                                           |\n| `list_available_resources`                  | List all available resource types and flavors that can be added to the current project.                                  |\n| `get_all_resources_by_project`              | Get all resources currently configured in the project with full details.                                                 |\n| `get_resource_by_project`                   | Get complete configuration for a specific resource including base config and effective settings.                        |\n| `get_spec_for_resource`                     | Get the JSON schema specification for a specific resource's configuration options.                                       |\n| `get_module_inputs`                         | Get required inputs and compatible resources needed before adding a new resource.                                        |\n| `get_spec_for_module`                       | Get specification details for a module based on intent, flavor, and version.                                            |\n| `get_sample_for_module`                     | Get a complete sample JSON template for creating a new resource of a specific type.                                      |\n| `add_resource`                              | Add a new resource to the project with dependency resolution and validation. Supports dry-run preview.                  |\n| `update_resource`                           | Update an existing resource's configuration with schema validation and change preview.                                   |\n| `delete_resource`                           | Delete a specific resource from the project with confirmation and dependency checking.                                   |\n| **Resource Configuration Helpers**          |                                                                                                                           |\n| `get_output_references`                     | Get available output references from resources based on output type for cross-resource linking.                         |\n| `explain_ui_annotation`                     | Get explanation and handling instructions for special UI annotations in resource specifications.                         |\n| `get_resource_output_tree`                  | Get the hierarchical output tree for a specific resource type for reference building.                                    |\n| `get_resource_management_guide`             | Get comprehensive instructions for the complete resource management workflow.                                            |\n| **Environment Management**                  |                                                                                                                           |\n| `get_all_environments`                      | Retrieve all environments (clusters) available in the current project.                                                   |\n| `use_environment`                           | Set the current active environment for deployment and monitoring operations.                                             |\n| `get_current_environment_details`           | Get detailed information about the current environment including status and configuration.                               |\n| `get_all_resources_by_environment`          | Get all resources deployed in the current environment with override information.                                         |\n| `get_resource_by_environment`               | Get environment-specific resource configuration including base config, overrides, and effective settings.               |\n| **Environment Overrides**                   |                                                                                                                           |\n| `add_or_update_override_property`           | Safely add or update a specific property in environment-specific resource overrides.                                     |\n| `remove_override_property`                  | Remove a specific property from resource overrides while preserving other override settings.                             |\n| `replace_all_overrides`                     | Replace all existing overrides with a completely new override configuration.                                             |\n| `clear_all_overrides`                       | Remove all overrides for a resource, reverting to base project configuration.                                            |\n| `preview_override_effect`                   | Preview the effective configuration that would result from applying a proposed override.                                 |\n| **Environment Operations**                  |                                                                                                                           |\n| `check_if_environment_is_running`           | Verify if the current environment is in a running state and ready for operations.                                        |\n| `launch_environment`                        | Initialize and start up an environment with full infrastructure provisioning.                                           |\n| `destroy_environment`                       | Remove all resources in an environment with confirmation requirements.                                                   |\n| `scale_up_environment`                      | Scale up a scaled-down environment to restore full capacity.                                                             |\n| `scale_down_environment`                    | Scale down a running environment to reduce resource usage while maintaining state.                                       |\n| `unlock_state_of_environment`               | Unlock terraform state if locked, enabling recovery from stuck operations.                                               |\n| **Release Management**                      |                                                                                                                           |\n| `get_releases_of_current_environment`       | List all releases for the current environment with status and metadata.                                                  |\n| `get_release_details`                       | Get detailed information about a specific release including configuration and logs.                                      |\n| `get_release_logs_of_current_environment`   | Get logs for a specific release with filtering and status information.                                                   |\n| `get_active_releases_of_current_environment`| List all currently running releases with real-time status information.                                                  |\n| `get_active_release_logs_of_current_environment` | Get logs from all running releases for comprehensive monitoring.                                            |\n| `get_latest_release_of_current_environment` | Get the most recent release information with current status.                                                             |\n| **Release Operations**                      |                                                                                                                           |\n| `create_full_release_plan_for_environment`  | Create a comprehensive plan for updating all resources with change preview.                                              |\n| `create_full_release_for_environment`       | Execute a full update of all resources with latest changes and monitoring.                                               |\n| `create_selective_release_plan_for_environment` | Create a targeted plan for fixing specific resources with change isolation.                                          |\n| `create_selective_release_for_environment`  | Apply targeted fixes to specific resources while preserving other components.                                            |\n| `create_custom_release_for_environment`     | Execute custom deployment steps with user-defined parameters and validation.                                             |\n\n## Prerequisites\n\nThe MCP Server requires [uv](https://github.com/astral-sh/uv) for dependency management and execution.\n\nThe package is available on PyPI: [facets-cp-mcp-server](https://pypi.org/project/facets-cp-mcp-server/)\n\n#### Install `uv` with Homebrew:\n```bash\nbrew install uv\n```\n\nFor other methods, see the [official uv installation guide](https://docs.astral.sh/uv/getting-started/installation/).\n\n### Integration with Claude\n\nAdd the following to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"facets-control-plane\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"facets-cp-mcp-server@latest\"\n      ],\n      \"env\": {\n        \"PYTHONUNBUFFERED\": \"1\",\n        \"CONTROL_PLANE_URL\": \"<YOUR_CONTROL_PLANE_URL>\",\n        \"FACETS_USERNAME\": \"<YOUR_USERNAME>\",\n        \"FACETS_TOKEN\": \"<YOUR_TOKEN>\",\n        \"FACETS_PROFILE\": \"default\"\n      }\n    }\n  }\n}\n```\n\nFor a locally cloned repository, use:\n\n```json\n{\n  \"mcpServers\": {\n    \"facets-control-plane\": {\n      \"command\": \"uv\",\n      \"args\": [\n        \"run\",\n        \"--directory\",\n        \"/path/to/control-plane-mcp-server\",\n        \"--module\",\n        \"control_plane_mcp.server\"\n      ],\n      \"env\": {\n        \"PYTHONUNBUFFERED\": \"1\",\n        \"CONTROL_PLANE_URL\": \"<YOUR_CONTROL_PLANE_URL>\",\n        \"FACETS_USERNAME\": \"<YOUR_USERNAME>\",\n        \"FACETS_TOKEN\": \"<YOUR_TOKEN>\",\n        \"FACETS_PROFILE\": \"default\"\n      }\n    }\n  }\n}\n```\n\n\u26a0 Replace `<YOUR_USERNAME>`, `<YOUR_TOKEN>`, and `<YOUR_CONTROL_PLANE_URL>` with your actual authentication data.\n\nThe `uv` runner automatically manages environment and dependency setup using the `pyproject.toml` file.\n\nIf you have already logged into FTF CLI, specifying `FACETS_PROFILE` is sufficient.\n\n---\n\nFor token generation and authentication setup, please refer to the official Facets documentation:  \n[https://readme.facets.cloud/reference/authentication-setup](https://readme.facets.cloud/reference/authentication-setup)\n\nNote: Similar setup is available in Cursor read [here](https://docs.cursor.com/context/model-context-protocol)\n\n---\n\n## Usage Highlights\n\n### Resource Management Workflow\n\nComplete workflow for creating, updating, and configuring resources:\n\n1. **Discovery**: Use `list_available_resources()` to explore available resource types and flavors\n2. **Dependencies**: Call `get_module_inputs()` to understand required inputs and compatible resources  \n3. **Understanding**: Use `get_spec_for_module()` and `get_sample_for_module()` for schema and structure\n4. **Creation**: Create resources with `add_resource()` including dependency resolution and validation\n5. **Configuration**: Update settings with `update_resource()` and validate with `get_spec_for_resource()`\n6. **Cross-referencing**: Link resources using `get_output_references()` and `get_resource_output_tree()`\n\n### Environment Management Workflow\n\nComplete environment lifecycle management:\n\n1. **Discovery**: Use `get_all_environments()` to see available environments in your project\n2. **Selection**: Set active environment with `use_environment()` for all operations\n3. **Monitoring**: Track environment status with `get_current_environment_details()` and release monitoring tools\n4. **Deployment**: Create and execute release plans for targeted or full updates\n5. **Operations**: Scale environments, manage state, and perform recovery operations as needed\n6. **Override Management**: Apply environment-specific configurations while preserving base project settings\n\n### Safety Features\n\n- **Dry-run Previews**: All destructive operations show change previews before execution\n- **User Confirmation**: Explicit confirmation required for irreversible actions\n- **Schema Validation**: All configurations validated against resource schemas before deployment\n- **Dependency Checking**: Automatic validation of resource dependencies and compatibility\n- **State Management**: Safe handling of terraform state with unlock capabilities for recovery\n\n---\n\n## Example Usage\n\nOnce configured with Claude Desktop, you can:\n\n1. **Project Operations**: \"Show me all available projects\" \u2192 \"Use project 'my-web-app'\" \u2192 \"List all resources in this project\"\n2. **Resource Creation**: \"Help me add a new PostgreSQL database\" \u2192 \"Connect my service to the database\" \u2192 \"Update the service configuration\"  \n3. **Environment Management**: \"List all environments\" \u2192 \"Use the staging environment\" \u2192 \"Create a release plan for the API service\"\n4. **Monitoring**: \"Show me active releases\" \u2192 \"Get logs for the latest deployment\" \u2192 \"Check if the environment is running\"\n5. **Override Management**: \"Set the replica count to 3 in staging\" \u2192 \"Preview the effect of this change\" \u2192 \"Apply the override\"\n\nAll operations include comprehensive validation, safety checks, and clear feedback on success or failure conditions.\n\n---\n\n## Development Setup\n\nFor development and testing:\n\n```bash\n# Clone the repository\ngit clone https://github.com/Facets-cloud/control-plane-mcp-server.git\ncd control-plane-mcp-server\n\n# Set up environment and install dependencies\nuv venv\nsource .venv/bin/activate  # On Windows: .venv\\Scripts\\activate\nuv sync\n\n# Run the server for development\nuv run --module control_plane_mcp.server\n```\n\n### Extending the Server\n\nTo add support for more Control Plane APIs:\n\n1. Add new tool methods using the `@mcp.tool()` decorator in the `control_plane_mcp/tools/` directory\n2. Import your tools in the appropriate `__init__.py` to register them with the MCP instance\n3. Follow existing implementation patterns for error handling, validation, and user confirmation\n\n---\n\n## License\n\nThis project is licensed under the MIT License. You are free to use, modify, and distribute it under its terms.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Facets Control Plane MCP Server",
    "version": "0.0.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/Facets-cloud/control-plane-mcp-server/issues",
        "Documentation": "https://github.com/Facets-cloud/control-plane-mcp-server#readme",
        "Homepage": "https://github.com/Facets-cloud/control-plane-mcp-server"
    },
    "split_keywords": [
        "facets",
        " mcp",
        " control plane",
        " python"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ea44cb94bf44d6d9532afd9e962c6a26974b58cf4576c1cf02bfb4f07eea3a60",
                "md5": "45745b6c12398f11b693db90238b55c1",
                "sha256": "d86500223860f5dcd94596edaf828cfd3ee6659427cb4e8b92d03c6b4e55d4a8"
            },
            "downloads": -1,
            "filename": "facets_cp_mcp_server-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "45745b6c12398f11b693db90238b55c1",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 44666,
            "upload_time": "2025-07-18T12:47:13",
            "upload_time_iso_8601": "2025-07-18T12:47:13.054826Z",
            "url": "https://files.pythonhosted.org/packages/ea/44/cb94bf44d6d9532afd9e962c6a26974b58cf4576c1cf02bfb4f07eea3a60/facets_cp_mcp_server-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e82e71940dd7eeaf2dd8e15c097c4e2f31254f337b5a7b172ddf6b87ef832de2",
                "md5": "349209eb4468132a34ecc0ef6155632e",
                "sha256": "45b59b3652811b2eb1aa2336668e0ae8184804fb12f050149bff0d5c4ca057ef"
            },
            "downloads": -1,
            "filename": "facets_cp_mcp_server-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "349209eb4468132a34ecc0ef6155632e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 41135,
            "upload_time": "2025-07-18T12:47:14",
            "upload_time_iso_8601": "2025-07-18T12:47:14.392965Z",
            "url": "https://files.pythonhosted.org/packages/e8/2e/71940dd7eeaf2dd8e15c097c4e2f31254f337b5a7b172ddf6b87ef832de2/facets_cp_mcp_server-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-18 12:47:14",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Facets-cloud",
    "github_project": "control-plane-mcp-server",
    "github_not_found": true,
    "lcname": "facets-cp-mcp-server"
}
        
Elapsed time: 1.49878s