airbyte-agent-mcp 0.1.60__py3-none-any.whl → 0.1.64__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- airbyte_agent_mcp/_vendored/connector_sdk/connector_model_loader.py +3 -2
- airbyte_agent_mcp/_vendored/connector_sdk/schema/base.py +1 -0
- airbyte_agent_mcp/_vendored/connector_sdk/schema/extensions.py +32 -4
- {airbyte_agent_mcp-0.1.60.dist-info → airbyte_agent_mcp-0.1.64.dist-info}/METADATA +1 -1
- {airbyte_agent_mcp-0.1.60.dist-info → airbyte_agent_mcp-0.1.64.dist-info}/RECORD +6 -6
- {airbyte_agent_mcp-0.1.60.dist-info → airbyte_agent_mcp-0.1.64.dist-info}/WHEEL +0 -0
|
@@ -519,13 +519,14 @@ def _parse_oauth2_config(scheme: Any) -> dict[str, str]:
|
|
|
519
519
|
config["refresh_url"] = refresh_url
|
|
520
520
|
|
|
521
521
|
# Extract custom refresh configuration from x-airbyte-token-refresh extension
|
|
522
|
+
# Note: x_token_refresh is a Dict[str, Any], not a Pydantic model, so use .get()
|
|
522
523
|
x_token_refresh = getattr(scheme, "x_token_refresh", None)
|
|
523
524
|
if x_token_refresh:
|
|
524
|
-
auth_style =
|
|
525
|
+
auth_style = x_token_refresh.get("auth_style")
|
|
525
526
|
if auth_style:
|
|
526
527
|
config["auth_style"] = auth_style
|
|
527
528
|
|
|
528
|
-
body_format =
|
|
529
|
+
body_format = x_token_refresh.get("body_format")
|
|
529
530
|
if body_format:
|
|
530
531
|
config["body_format"] = body_format
|
|
531
532
|
|
|
@@ -152,6 +152,7 @@ class Server(BaseModel):
|
|
|
152
152
|
url: str
|
|
153
153
|
description: str | None = None
|
|
154
154
|
variables: Dict[str, ServerVariable] = Field(default_factory=dict)
|
|
155
|
+
x_airbyte_replication_user_config_mapping: Dict[str, str] | None = Field(default=None, alias="x-airbyte-replication-user-config-mapping")
|
|
155
156
|
|
|
156
157
|
@field_validator("url")
|
|
157
158
|
@classmethod
|
|
@@ -12,7 +12,7 @@ to Operation, Schema, or other models when their respective features
|
|
|
12
12
|
are implemented.
|
|
13
13
|
"""
|
|
14
14
|
|
|
15
|
-
from typing import Literal
|
|
15
|
+
from typing import Literal
|
|
16
16
|
|
|
17
17
|
from pydantic import BaseModel, ConfigDict, Field
|
|
18
18
|
|
|
@@ -109,6 +109,30 @@ class RetryConfig(BaseModel):
|
|
|
109
109
|
retry_after_format: Literal["seconds", "milliseconds", "unix_timestamp"] = "seconds"
|
|
110
110
|
|
|
111
111
|
|
|
112
|
+
class CacheFieldProperty(BaseModel):
|
|
113
|
+
"""
|
|
114
|
+
Nested property definition for object-type cache fields.
|
|
115
|
+
|
|
116
|
+
Supports recursive nesting to represent complex nested schemas in cache field definitions.
|
|
117
|
+
Used when a cache field has type 'object' and needs to define its internal structure.
|
|
118
|
+
|
|
119
|
+
Example YAML usage:
|
|
120
|
+
- name: collaboration
|
|
121
|
+
type: ['null', 'object']
|
|
122
|
+
description: "Collaboration data"
|
|
123
|
+
properties:
|
|
124
|
+
brief:
|
|
125
|
+
type: ['null', 'string']
|
|
126
|
+
comments:
|
|
127
|
+
type: ['null', 'array']
|
|
128
|
+
"""
|
|
129
|
+
|
|
130
|
+
model_config = ConfigDict(populate_by_name=True, extra="forbid")
|
|
131
|
+
|
|
132
|
+
type: str | list[str]
|
|
133
|
+
properties: dict[str, "CacheFieldProperty"] | None = None
|
|
134
|
+
|
|
135
|
+
|
|
112
136
|
class CacheFieldConfig(BaseModel):
|
|
113
137
|
"""
|
|
114
138
|
Field configuration for cache mapping.
|
|
@@ -116,15 +140,19 @@ class CacheFieldConfig(BaseModel):
|
|
|
116
140
|
Defines a single field in a cache entity, with optional name aliasing
|
|
117
141
|
to map between user-facing field names and cache storage names.
|
|
118
142
|
|
|
143
|
+
For object-type fields, supports nested properties to define the internal structure
|
|
144
|
+
of complex nested schemas.
|
|
145
|
+
|
|
119
146
|
Used in x-airbyte-cache extension for api_search operations.
|
|
120
147
|
"""
|
|
121
148
|
|
|
122
149
|
model_config = ConfigDict(populate_by_name=True, extra="forbid")
|
|
123
150
|
|
|
124
151
|
name: str
|
|
125
|
-
x_airbyte_name:
|
|
152
|
+
x_airbyte_name: str | None = Field(default=None, alias="x-airbyte-name")
|
|
126
153
|
type: str | list[str]
|
|
127
154
|
description: str
|
|
155
|
+
properties: dict[str, CacheFieldProperty] | None = None
|
|
128
156
|
|
|
129
157
|
@property
|
|
130
158
|
def cache_name(self) -> str:
|
|
@@ -145,7 +173,7 @@ class CacheEntityConfig(BaseModel):
|
|
|
145
173
|
model_config = ConfigDict(populate_by_name=True, extra="forbid")
|
|
146
174
|
|
|
147
175
|
entity: str
|
|
148
|
-
x_airbyte_name:
|
|
176
|
+
x_airbyte_name: str | None = Field(default=None, alias="x-airbyte-name")
|
|
149
177
|
fields: list[CacheFieldConfig]
|
|
150
178
|
|
|
151
179
|
@property
|
|
@@ -186,7 +214,7 @@ class CacheConfig(BaseModel):
|
|
|
186
214
|
|
|
187
215
|
entities: list[CacheEntityConfig]
|
|
188
216
|
|
|
189
|
-
def get_entity_mapping(self, user_entity: str) ->
|
|
217
|
+
def get_entity_mapping(self, user_entity: str) -> CacheEntityConfig | None:
|
|
190
218
|
"""
|
|
191
219
|
Get entity config by user-facing name.
|
|
192
220
|
|
|
@@ -10,7 +10,7 @@ airbyte_agent_mcp/_vendored/__init__.py,sha256=ILl7AHXMui__swyrjxrh9yRa4dLiwBvV6
|
|
|
10
10
|
airbyte_agent_mcp/_vendored/connector_sdk/__init__.py,sha256=T5o7roU6NSpH-lCAGZ338sE5dlh4ZU6i6IkeG1zpems,1949
|
|
11
11
|
airbyte_agent_mcp/_vendored/connector_sdk/auth_strategies.py,sha256=BdjAzFRTwXCmLFqYWqZ4Dx9RsqtI7pAkw-8NynSK4sQ,39914
|
|
12
12
|
airbyte_agent_mcp/_vendored/connector_sdk/auth_template.py,sha256=nju4jqlFC_KI82ILNumNIyiUtRJcy7J94INIZ0QraI4,4454
|
|
13
|
-
airbyte_agent_mcp/_vendored/connector_sdk/connector_model_loader.py,sha256=
|
|
13
|
+
airbyte_agent_mcp/_vendored/connector_sdk/connector_model_loader.py,sha256=b88aoMynHxtG2dhzclkWrLiJbefTiKMzReyj3lOiwJI,34940
|
|
14
14
|
airbyte_agent_mcp/_vendored/connector_sdk/constants.py,sha256=AtzOvhDMWbRJgpsQNWl5tkogHD6mWgEY668PgRmgtOY,2737
|
|
15
15
|
airbyte_agent_mcp/_vendored/connector_sdk/exceptions.py,sha256=ss5MGv9eVPmsbLcLWetuu3sDmvturwfo6Pw3M37Oq5k,481
|
|
16
16
|
airbyte_agent_mcp/_vendored/connector_sdk/extensions.py,sha256=XWRRoJOOrwUHSKbuQt5DU7CCu8ePzhd_HuP7c_uD77w,21376
|
|
@@ -45,16 +45,16 @@ airbyte_agent_mcp/_vendored/connector_sdk/performance/__init__.py,sha256=Sp5fSd1
|
|
|
45
45
|
airbyte_agent_mcp/_vendored/connector_sdk/performance/instrumentation.py,sha256=_dXvNiqdndIBwDjeDKNViWzn_M5FkSUsMmJtFldrmsM,1504
|
|
46
46
|
airbyte_agent_mcp/_vendored/connector_sdk/performance/metrics.py,sha256=FRff7dKt4iwt_A7pxV5n9kAGBR756PC7q8-weWygPSM,2817
|
|
47
47
|
airbyte_agent_mcp/_vendored/connector_sdk/schema/__init__.py,sha256=Uymu-QuzGJuMxexBagIvUxpVAigIuIhz3KeBl_Vu4Ko,1638
|
|
48
|
-
airbyte_agent_mcp/_vendored/connector_sdk/schema/base.py,sha256=
|
|
48
|
+
airbyte_agent_mcp/_vendored/connector_sdk/schema/base.py,sha256=4RYTkCWgyS5Z75z9TKj9vXySfO00HJ03QDtbdVYeHYM,5086
|
|
49
49
|
airbyte_agent_mcp/_vendored/connector_sdk/schema/components.py,sha256=x3YCM1p2n_xHi50fMeOX0mXUiPqjGlLHs3Go8jXokb0,7895
|
|
50
50
|
airbyte_agent_mcp/_vendored/connector_sdk/schema/connector.py,sha256=mSZk1wr2YSdRj9tTRsPAuIlCzd_xZLw-Bzl1sMwE0rE,3731
|
|
51
|
-
airbyte_agent_mcp/_vendored/connector_sdk/schema/extensions.py,sha256=
|
|
51
|
+
airbyte_agent_mcp/_vendored/connector_sdk/schema/extensions.py,sha256=f7VhHrcIYxaPOJHMc4g0lpy04pZTbx5nlroNzAu5B9Q,7135
|
|
52
52
|
airbyte_agent_mcp/_vendored/connector_sdk/schema/operations.py,sha256=RpzGtAI4yvAtMHAfMUMcUwgHv_qJojnKlNb75_agUF8,5729
|
|
53
53
|
airbyte_agent_mcp/_vendored/connector_sdk/schema/security.py,sha256=zQ9RRuF3LBgLQi_4cItmjXbG_5WKlmCNM3nCil30H90,8470
|
|
54
54
|
airbyte_agent_mcp/_vendored/connector_sdk/telemetry/__init__.py,sha256=RaLgkBU4dfxn1LC5Y0Q9rr2PJbrwjxvPgBLmq8_WafE,211
|
|
55
55
|
airbyte_agent_mcp/_vendored/connector_sdk/telemetry/config.py,sha256=tLmQwAFD0kP1WyBGWBS3ysaudN9H3e-3EopKZi6cGKg,885
|
|
56
56
|
airbyte_agent_mcp/_vendored/connector_sdk/telemetry/events.py,sha256=8Y1NbXiwISX-V_wRofY7PqcwEXD0dLMnntKkY6XFU2s,1328
|
|
57
57
|
airbyte_agent_mcp/_vendored/connector_sdk/telemetry/tracker.py,sha256=Ftrk0_ddfM7dZG8hF9xBuPwhbc9D6JZ7Q9qs5o3LEyA,5579
|
|
58
|
-
airbyte_agent_mcp-0.1.
|
|
59
|
-
airbyte_agent_mcp-0.1.
|
|
60
|
-
airbyte_agent_mcp-0.1.
|
|
58
|
+
airbyte_agent_mcp-0.1.64.dist-info/METADATA,sha256=4IimXK4qhjfTEjYo-Ya1aKq9Y7ABo2t7MExRZ1GOnRk,3009
|
|
59
|
+
airbyte_agent_mcp-0.1.64.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
60
|
+
airbyte_agent_mcp-0.1.64.dist-info/RECORD,,
|
|
File without changes
|