Port

Port's MCP Server
  • python

16

GitHub Stars

python

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "port-labs-port-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "PORT_CLIENT_ID",
        "-e",
        "PORT_CLIENT_SECRET",
        "-e",
        "PORT_REGION",
        "-e",
        "PORT_LOG_LEVEL",
        "ghcr.io/port-labs/port-mcp-server:latest"
      ],
      "env": {
        "PYTHONPATH": "/path/to/venv/bin/python",
        "PORT_REGION": "<PORT_REGION>",
        "PORT_CLIENT_ID": "<PORT_CLIENT_ID>",
        "PORT_LOG_LEVEL": "<PORT_LOG_LEVEL>",
        "PORT_CLIENT_SECRET": "<PORT_CLIENT_SECRET>"
      }
    }
  }
}

Port MCP Server enables automated workflows, data queries, and AI-driven interactions by exposing a flexible Model Context Protocol interface. You can look up entity details, assess on-call status, analyze scorecards, and manage resources and permissions using MCP-enabled clients and tools.

How to use

With a Port MCP Server you connect through an MCP client (such as Cursor, Claude Desktop, or VS Code) and access a suite of capabilities. You can fetch information like owner details for services, current on-call status, and production catalog insights. You can analyze scorecards to identify weak points, check compliance, and plan improvements. You can also create and manage resources such as scorecards and rules, and configure permissions and RBAC. Use these patterns to drive automations, build dashboards, and integrate natural language queries into your workflows.

How to install

Prerequisites you need before installing Port MCP Server:

Choose an installation method and follow the steps below.

Option 1: Package Installation using uvx (recommended for easy management)

  1. Create a Python virtual environment (recommended):
python -m venv venv
  1. Activate the virtual environment:
# On Linux/macOS:
source venv/bin/activate

# On Windows:
venv\Scripts\activate
  1. Install the UV package manager:
# Using Homebrew (macOS/Linux):
brew install uv

# Or using pip:
pip install uv
  1. Verify UV installation:
which uv
  1. Set required environment variables with your Port credentials and region (EU or US):
export PORT_CLIENT_ID="your_port_client_id"
export PORT_CLIENT_SECRET="your_port_client_secret"
export PORT_REGION="EU"  # or "US"
  1. Run the MCP Server using UVX (this starts the server in the background for MCP interactions):
uvx mcp-server-port --client-id your_port_client_id --client-secret your_port_client_secret --region EU --log-level DEBUG

Option 2: Docker Installation

Use the official Docker image to run Port MCP Server. Ensure your environment variables are set for security and correct region.

  1. Pull the latest image:
docker pull ghcr.io/port-labs/port-mcp-server:latest
  1. Run the container with your Port credentials and region. Example for a quick local run:
docker run -i --rm \
  -e PORT_CLIENT_ID="your_port_client_id" \
  -e PORT_CLIENT_SECRET="your_port_client_secret" \
  -e PORT_REGION="EU" \
  -e PORT_LOG_LEVEL="DEBUG" \
  ghcr.io/port-labs/port-mcp-server:latest

Additional configurations and notes

You can adjust logging and API validation with additional environment variables when you start the server. For example, you can set PORT_LOG_LEVEL to control the verbosity and PORT_API_VALIDATION_ENABLED to enable schema validation.

Troubleshooting and tips

If you encounter authentication errors, verify that your Port credentials are correctly set in your environment and in your MCP client configuration. Ensure you have the necessary permissions and that the region matches your account.

Notes on usage with multiple clients

Port MCP Server supports multiple MCP clients such as Claude Desktop, Cursor, and VS Code. Each client can discover the Port MCP Server and expose its tools for building automations, querying entities, and managing scorecards.

Security and access control

Keep credentials secure. Do not expose PORT_CLIENT_ID or PORT_CLIENT_SECRET in public configurations. Use environment isolation and proper RBAC on the Port side to control who can perform deployments, create scorecards, or modify rules.

Examples and common workflows

  • Find information quickly: ask for the owner of a service or who is on call right now.

  • Analyze scorecards: identify services failing at a given level and understand why.

  • Create resources: build a new scorecard, define rules, and set up quality gates.

Available tools

get_blueprints

Retrieve a list of all blueprints from Port with an option to include detailed schema details.

get_blueprint

Retrieve information about a specific blueprint by its identifier with optional detailed schema.

create_blueprint

Create a new blueprint in Port with required fields including identifier, title, and properties.

update_blueprint

Update an existing blueprint identified by its identifier with new or modified fields.

delete_blueprint

Delete a blueprint from Port by its identifier.

get_entities

Retrieve all entities for a given blueprint with an option to include detailed entity details.

get_entity

Retrieve information about a specific entity within a blueprint with optional detailed details.

create_entity

Create a new entity for a specific blueprint using the provided blueprint schema.

update_entity

Update an existing entity for a blueprint by its identifier.

delete_entity

Delete an entity for a blueprint, with an option to delete dependents.

get_scorecards

Retrieve all scorecards from Port with an option to include detailed scorecard details.

get_scorecard

Retrieve information about a specific scorecard by its identifier, with optional blueprint scope.

create_scorecard

Create a new scorecard for a specific blueprint with levels and optional rules.

update_scorecard

Update an existing scorecard by its identifiers with new details.

delete_scorecard

Delete a scorecard by its identifiers and confirm success.

invoke_ai_agent

Invoke a Port AI agent with a given prompt and receive status and response.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational