Release v1.2.0 - #46
Merged
Merged
Conversation
* Update uv.lock * Initial Transport support * Streamable HTTP support * Extract HTTP bind settings from MCP server construction. --------- Co-authored-by: diego-ferrand <diego.ferrand@abstracta.com.uy>
* Better handling of ambiguity in arguments * Update tests * Update uv.lock version * Better handling of ambiguity in arguments * Accept arguments as a cmd_arguments alias and cover normalize_action_args. * Enhancements to AI Scriptless (#45) * Support dual store and data type * Improve status, condition and error policy * Support condition statement and error policy * Variable, command contract and validations * Update hint notes * Contract and others improvements * Contract/spec and improvements --------- Co-authored-by: diego-ferrand <diego.ferrand@abstracta.com.uy>
Baraujo25
approved these changes
Sep 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces support for running Perfecto MCP over a streamable HTTP transport in addition to the default stdio mode. It adds per-request authentication using Bearer tokens, allows targeting multiple Perfecto clouds via request headers, and provides operator documentation for HTTP deployment. Several internal helpers and environment variable options are added to support flexible configuration and context resolution.
HTTP Transport & Authentication:
Added streamable HTTP transport, allowing MCP to serve multiple users and clouds concurrently via HTTP, with per-request Bearer authentication and cloud targeting using the
Perfecto-Cloud-Nameheader. Includes unauthenticated health probe endpoints.Implemented
BearerAuthMiddlewarefor HTTP requests, parsing and attachingPerfectoTokenfrom theAuthorizationheader, and resolving the cloud name from headers or environment.Updated error messages and documentation to clarify how security tokens and cloud names are provided in HTTP mode (headers) versus stdio (env vars or files).
Build & Packaging:
build.pyto ensure all necessaryuvicornsubmodules are collected for PyInstaller packaging, supporting the new HTTP transport.Scriptless Formatter Improvements:
Token Handling:
from_bearer_credentialstoPerfectoTokenfor parsing tokens from HTTP headers.Documentation:
docs/hosted-http.mdwith detailed operator and client instructions for HTTP deployment, including environment variables, configuration, and limitations.These changes collectively enable MCP to run in modern cloud and multi-tenant environments with robust, per-request authentication and configuration.