airbyte-agent-mcp 0.1.16__tar.gz
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-0.1.16/.env.example +3 -0
- airbyte_agent_mcp-0.1.16/.gitignore +26 -0
- airbyte_agent_mcp-0.1.16/CHANGELOG.md +86 -0
- airbyte_agent_mcp-0.1.16/PKG-INFO +134 -0
- airbyte_agent_mcp-0.1.16/README.md +109 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/__init__.py +0 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/__main__.py +26 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/__init__.py +1 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/__init__.py +82 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/auth_strategies.py +1134 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/auth_template.py +135 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/config_loader.py +851 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/constants.py +78 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/exceptions.py +23 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/executor/__init__.py +31 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/executor/hosted_executor.py +189 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/executor/local_executor.py +1413 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/executor/models.py +189 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/extensions.py +655 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/http/__init__.py +37 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/http/adapters/__init__.py +9 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/http/adapters/httpx_adapter.py +257 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/http/config.py +98 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/http/exceptions.py +119 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/http/protocols.py +114 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/http/response.py +102 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/http_client.py +719 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/logging/__init__.py +11 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/logging/logger.py +265 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/logging/types.py +93 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/observability/__init__.py +11 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/observability/models.py +19 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/observability/redactor.py +90 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/observability/session.py +94 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/performance/__init__.py +6 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/performance/instrumentation.py +59 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/performance/metrics.py +95 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/schema/__init__.py +75 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/schema/base.py +167 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/schema/components.py +251 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/schema/connector.py +134 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/schema/extensions.py +108 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/schema/operations.py +152 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/schema/security.py +225 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/secrets.py +184 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/telemetry/__init__.py +10 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/telemetry/config.py +33 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/telemetry/events.py +58 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/telemetry/tracker.py +153 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/types.py +158 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/utils.py +62 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/_vendored/connector_sdk/validation.py +405 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/config.py +97 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/connector_manager.py +329 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/models.py +145 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/registry_client.py +103 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/secret_manager.py +94 -0
- airbyte_agent_mcp-0.1.16/airbyte_agent_mcp/server.py +265 -0
- airbyte_agent_mcp-0.1.16/configured_connectors.yaml.example +33 -0
- airbyte_agent_mcp-0.1.16/pyproject.toml +41 -0
- airbyte_agent_mcp-0.1.16/tests/__init__.py +0 -0
- airbyte_agent_mcp-0.1.16/tests/test_config.py +100 -0
- airbyte_agent_mcp-0.1.16/tests/test_connector_manager.py +533 -0
- airbyte_agent_mcp-0.1.16/tests/test_models.py +80 -0
- airbyte_agent_mcp-0.1.16/tests/test_registry_client.py +144 -0
- airbyte_agent_mcp-0.1.16/tests/test_secrets.py +94 -0
- airbyte_agent_mcp-0.1.16/tests/test_server.py +178 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
*.egg-info/
|
|
6
|
+
dist/
|
|
7
|
+
build/
|
|
8
|
+
.eggs/
|
|
9
|
+
|
|
10
|
+
# Testing
|
|
11
|
+
.pytest_cache/
|
|
12
|
+
.coverage
|
|
13
|
+
htmlcov/
|
|
14
|
+
|
|
15
|
+
# Virtual environments
|
|
16
|
+
.venv/
|
|
17
|
+
venv/
|
|
18
|
+
|
|
19
|
+
# IDE
|
|
20
|
+
.idea/
|
|
21
|
+
.vscode/
|
|
22
|
+
*.swp
|
|
23
|
+
|
|
24
|
+
# OS
|
|
25
|
+
.DS_Store
|
|
26
|
+
Thumbs.db
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [0.1.16] - 2025-12-12
|
|
4
|
+
- Updated airbyte-agent-mcp package
|
|
5
|
+
- Source commit: 8cd69753
|
|
6
|
+
- SDK version: 0.1.0
|
|
7
|
+
|
|
8
|
+
## [0.1.15] - 2025-12-12
|
|
9
|
+
- Updated airbyte-agent-mcp package
|
|
10
|
+
- Source commit: 9f7f8a98
|
|
11
|
+
- SDK version: 0.1.0
|
|
12
|
+
|
|
13
|
+
## [0.1.14] - 2025-12-12
|
|
14
|
+
- Updated airbyte-agent-mcp package
|
|
15
|
+
- Source commit: 5cc8eaa0
|
|
16
|
+
- SDK version: 0.1.0
|
|
17
|
+
|
|
18
|
+
## [0.1.13] - 2025-12-11
|
|
19
|
+
- Updated airbyte-agent-mcp package
|
|
20
|
+
- Source commit: dfe01f50
|
|
21
|
+
- SDK version: 0.1.0
|
|
22
|
+
|
|
23
|
+
## [0.1.12] - 2025-12-11
|
|
24
|
+
- Updated airbyte-agent-mcp package
|
|
25
|
+
- Source commit: 8c06aa10
|
|
26
|
+
- SDK version: 0.1.0
|
|
27
|
+
|
|
28
|
+
## [0.1.11] - 2025-12-11
|
|
29
|
+
- Updated airbyte-agent-mcp package
|
|
30
|
+
- Source commit: 11427ac3
|
|
31
|
+
- SDK version: 0.1.0
|
|
32
|
+
|
|
33
|
+
## [0.1.10] - 2025-12-11
|
|
34
|
+
- Updated airbyte-agent-mcp package
|
|
35
|
+
- Source commit: bdd5df6d
|
|
36
|
+
- SDK version: 0.1.0
|
|
37
|
+
|
|
38
|
+
## [0.1.9] - 2025-12-11
|
|
39
|
+
- Updated airbyte-agent-mcp package
|
|
40
|
+
- Source commit: ec3dcc78
|
|
41
|
+
- SDK version: 0.1.0
|
|
42
|
+
|
|
43
|
+
## [0.1.8] - 2025-12-10
|
|
44
|
+
- Updated airbyte-agent-mcp package
|
|
45
|
+
- Source commit: 334e113b
|
|
46
|
+
- SDK version: 0.1.0
|
|
47
|
+
|
|
48
|
+
## [0.1.7] - 2025-12-10
|
|
49
|
+
- Updated airbyte-agent-mcp package
|
|
50
|
+
- Source commit: 30c77ce6
|
|
51
|
+
- SDK version: 0.1.0
|
|
52
|
+
|
|
53
|
+
## [0.1.6] - 2025-12-10
|
|
54
|
+
- Updated airbyte-agent-mcp package
|
|
55
|
+
- Source commit: 92482e66
|
|
56
|
+
- SDK version: 0.1.0
|
|
57
|
+
|
|
58
|
+
## [0.1.5] - 2025-12-10
|
|
59
|
+
- Updated airbyte-agent-mcp package
|
|
60
|
+
- Source commit: b3c6a176
|
|
61
|
+
- SDK version: 0.1.0
|
|
62
|
+
|
|
63
|
+
## [0.1.4] - 2025-12-10
|
|
64
|
+
- Updated airbyte-agent-mcp package
|
|
65
|
+
- Source commit: b3c6a176
|
|
66
|
+
- SDK version: 0.1.0
|
|
67
|
+
|
|
68
|
+
## [0.1.3] - 2025-12-10
|
|
69
|
+
- Updated airbyte-agent-mcp package
|
|
70
|
+
- Source commit: b3c6a176
|
|
71
|
+
- SDK version: 0.1.0
|
|
72
|
+
|
|
73
|
+
## [0.1.2] - 2025-12-10
|
|
74
|
+
- Updated airbyte-agent-mcp package
|
|
75
|
+
- Source commit: b3c6a176
|
|
76
|
+
- SDK version: 0.1.0
|
|
77
|
+
|
|
78
|
+
## [0.1.1] - 2025-12-10
|
|
79
|
+
- Updated airbyte-agent-mcp package
|
|
80
|
+
- Source commit: b3c6a176
|
|
81
|
+
- SDK version: 0.1.0
|
|
82
|
+
|
|
83
|
+
## [0.1.0] - 2025-12-09
|
|
84
|
+
- Updated airbyte-agent-mcp package
|
|
85
|
+
- Source commit: b3c6a176
|
|
86
|
+
- SDK version: 0.1.0
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: airbyte-agent-mcp
|
|
3
|
+
Version: 0.1.16
|
|
4
|
+
Summary: MCP server that exposes Airbyte Connector SDK as MCP tools
|
|
5
|
+
Author-email: Airbyte Support <support@airbyte.io>
|
|
6
|
+
Requires-Python: >=3.13
|
|
7
|
+
Requires-Dist: click>=8.0.0
|
|
8
|
+
Requires-Dist: fastmcp>=2.10.5
|
|
9
|
+
Requires-Dist: httpx>=0.24.0
|
|
10
|
+
Requires-Dist: jinja2>=3.0.0
|
|
11
|
+
Requires-Dist: jsonpath-ng>=1.6.1
|
|
12
|
+
Requires-Dist: jsonref>=1.1.0
|
|
13
|
+
Requires-Dist: jsonschema>=4.0.0
|
|
14
|
+
Requires-Dist: opentelemetry-api>=1.37.0
|
|
15
|
+
Requires-Dist: opentelemetry-sdk>=1.37.0
|
|
16
|
+
Requires-Dist: pydantic>=2.0.0
|
|
17
|
+
Requires-Dist: python-dotenv>=1.0.0
|
|
18
|
+
Requires-Dist: pyyaml>=6.0
|
|
19
|
+
Requires-Dist: segment-analytics-python>=2.2.0
|
|
20
|
+
Provides-Extra: dev
|
|
21
|
+
Requires-Dist: pytest-asyncio<1.0.0,>=0.24.0; extra == 'dev'
|
|
22
|
+
Requires-Dist: pytest<9.0.0,>=8.3.3; extra == 'dev'
|
|
23
|
+
Requires-Dist: ruff==0.7.3; extra == 'dev'
|
|
24
|
+
Description-Content-Type: text/markdown
|
|
25
|
+
|
|
26
|
+
# Airbyte Agent MCP Server
|
|
27
|
+
|
|
28
|
+
MCP server that exposes the Airbyte Connector SDK as Model Context Protocol tools.
|
|
29
|
+
|
|
30
|
+
## Features
|
|
31
|
+
|
|
32
|
+
- **Execute**: Run operations on any connector (primary tool)
|
|
33
|
+
- **List Entities**: Discover available entities in a connector
|
|
34
|
+
- **Describe Entity**: Get detailed schema for an entity
|
|
35
|
+
- **Validate Operation**: Check parameters before execution
|
|
36
|
+
|
|
37
|
+
## Configuration
|
|
38
|
+
|
|
39
|
+
### 1. Create configured_connectors.yaml
|
|
40
|
+
|
|
41
|
+
```yaml
|
|
42
|
+
# Connector definitions
|
|
43
|
+
connectors:
|
|
44
|
+
# Load connector from the Airbyte registry (recommended)
|
|
45
|
+
- id: stripe
|
|
46
|
+
type: local
|
|
47
|
+
connector_name: stripe
|
|
48
|
+
description: "My Stripe API connector"
|
|
49
|
+
secrets:
|
|
50
|
+
token: STRIPE_API_KEY
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
You can pin to a specific version from the registry:
|
|
54
|
+
|
|
55
|
+
```yaml
|
|
56
|
+
connectors:
|
|
57
|
+
- id: stripe
|
|
58
|
+
type: local
|
|
59
|
+
connector_name: stripe
|
|
60
|
+
version: 0.1.0
|
|
61
|
+
description: "Stripe connector pinned to v0.1.0"
|
|
62
|
+
secrets:
|
|
63
|
+
token: STRIPE_API_KEY
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
You can also load connectors from a local file path (version pinning not supported):
|
|
67
|
+
|
|
68
|
+
```yaml
|
|
69
|
+
connectors:
|
|
70
|
+
- id: my_api
|
|
71
|
+
type: local
|
|
72
|
+
path: ./connectors/my-api/connector.yaml
|
|
73
|
+
description: "My custom API connector"
|
|
74
|
+
secrets:
|
|
75
|
+
token: MY_API_KEY
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
See `configured_connectors.yaml.example` for more examples.
|
|
79
|
+
|
|
80
|
+
### 2. Create .env file
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
STRIPE_API_KEY=sk_test_your_stripe_api_key_here
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Running
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
uv run airbyte_agent_mcp
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
The server also takes in args for specific paths to the configured_connectors.yaml file and the env file. With custom paths:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
python -m airbyte_agent_mcp path/to/configured_connectors.yaml path/to/.env
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
The default paths are `./configured_connectors.yaml` and `./.env`
|
|
99
|
+
|
|
100
|
+
## Usage with Claude Code
|
|
101
|
+
|
|
102
|
+
Add to `~/.claude.json`:
|
|
103
|
+
|
|
104
|
+
```json
|
|
105
|
+
"mcpServers": {
|
|
106
|
+
"airbyte-agent-mcp": {
|
|
107
|
+
"type": "stdio",
|
|
108
|
+
"command": "uv",
|
|
109
|
+
"args": [
|
|
110
|
+
"--directory",
|
|
111
|
+
"/path/to/sonar/airbyte-agent-mcp",
|
|
112
|
+
"run",
|
|
113
|
+
"airbyte_agent_mcp"
|
|
114
|
+
],
|
|
115
|
+
"env": {}
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Development / Testing
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
# Install dev dependencies
|
|
124
|
+
uv sync --all-extras
|
|
125
|
+
|
|
126
|
+
# Run tests
|
|
127
|
+
uv run pytest
|
|
128
|
+
|
|
129
|
+
# Format code
|
|
130
|
+
uv run ruff format .
|
|
131
|
+
|
|
132
|
+
# Lint code
|
|
133
|
+
uv run ruff check .
|
|
134
|
+
```
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# Airbyte Agent MCP Server
|
|
2
|
+
|
|
3
|
+
MCP server that exposes the Airbyte Connector SDK as Model Context Protocol tools.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Execute**: Run operations on any connector (primary tool)
|
|
8
|
+
- **List Entities**: Discover available entities in a connector
|
|
9
|
+
- **Describe Entity**: Get detailed schema for an entity
|
|
10
|
+
- **Validate Operation**: Check parameters before execution
|
|
11
|
+
|
|
12
|
+
## Configuration
|
|
13
|
+
|
|
14
|
+
### 1. Create configured_connectors.yaml
|
|
15
|
+
|
|
16
|
+
```yaml
|
|
17
|
+
# Connector definitions
|
|
18
|
+
connectors:
|
|
19
|
+
# Load connector from the Airbyte registry (recommended)
|
|
20
|
+
- id: stripe
|
|
21
|
+
type: local
|
|
22
|
+
connector_name: stripe
|
|
23
|
+
description: "My Stripe API connector"
|
|
24
|
+
secrets:
|
|
25
|
+
token: STRIPE_API_KEY
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
You can pin to a specific version from the registry:
|
|
29
|
+
|
|
30
|
+
```yaml
|
|
31
|
+
connectors:
|
|
32
|
+
- id: stripe
|
|
33
|
+
type: local
|
|
34
|
+
connector_name: stripe
|
|
35
|
+
version: 0.1.0
|
|
36
|
+
description: "Stripe connector pinned to v0.1.0"
|
|
37
|
+
secrets:
|
|
38
|
+
token: STRIPE_API_KEY
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
You can also load connectors from a local file path (version pinning not supported):
|
|
42
|
+
|
|
43
|
+
```yaml
|
|
44
|
+
connectors:
|
|
45
|
+
- id: my_api
|
|
46
|
+
type: local
|
|
47
|
+
path: ./connectors/my-api/connector.yaml
|
|
48
|
+
description: "My custom API connector"
|
|
49
|
+
secrets:
|
|
50
|
+
token: MY_API_KEY
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
See `configured_connectors.yaml.example` for more examples.
|
|
54
|
+
|
|
55
|
+
### 2. Create .env file
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
STRIPE_API_KEY=sk_test_your_stripe_api_key_here
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Running
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
uv run airbyte_agent_mcp
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
The server also takes in args for specific paths to the configured_connectors.yaml file and the env file. With custom paths:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
python -m airbyte_agent_mcp path/to/configured_connectors.yaml path/to/.env
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
The default paths are `./configured_connectors.yaml` and `./.env`
|
|
74
|
+
|
|
75
|
+
## Usage with Claude Code
|
|
76
|
+
|
|
77
|
+
Add to `~/.claude.json`:
|
|
78
|
+
|
|
79
|
+
```json
|
|
80
|
+
"mcpServers": {
|
|
81
|
+
"airbyte-agent-mcp": {
|
|
82
|
+
"type": "stdio",
|
|
83
|
+
"command": "uv",
|
|
84
|
+
"args": [
|
|
85
|
+
"--directory",
|
|
86
|
+
"/path/to/sonar/airbyte-agent-mcp",
|
|
87
|
+
"run",
|
|
88
|
+
"airbyte_agent_mcp"
|
|
89
|
+
],
|
|
90
|
+
"env": {}
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Development / Testing
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
# Install dev dependencies
|
|
99
|
+
uv sync --all-extras
|
|
100
|
+
|
|
101
|
+
# Run tests
|
|
102
|
+
uv run pytest
|
|
103
|
+
|
|
104
|
+
# Format code
|
|
105
|
+
uv run ruff format .
|
|
106
|
+
|
|
107
|
+
# Lint code
|
|
108
|
+
uv run ruff check .
|
|
109
|
+
```
|
|
File without changes
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"""Entry point for running airbyte-agent-mcp server."""
|
|
2
|
+
|
|
3
|
+
import sys
|
|
4
|
+
|
|
5
|
+
from airbyte_agent_mcp.server import run_server
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def main():
|
|
9
|
+
"""Main entry point."""
|
|
10
|
+
# Support optional command-line arguments
|
|
11
|
+
config_path = "configured_connectors.yaml"
|
|
12
|
+
dotenv_path = ".env"
|
|
13
|
+
|
|
14
|
+
# Simple argument parsing
|
|
15
|
+
args = sys.argv[1:]
|
|
16
|
+
if len(args) >= 1:
|
|
17
|
+
config_path = args[0]
|
|
18
|
+
if len(args) >= 2:
|
|
19
|
+
dotenv_path = args[1]
|
|
20
|
+
|
|
21
|
+
# Run the server
|
|
22
|
+
run_server(config_path, dotenv_path)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
if __name__ == "__main__":
|
|
26
|
+
main()
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Vendored connector-sdk runtime."""
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Airbyte SDK - Async-first type-safe connector execution framework.
|
|
3
|
+
|
|
4
|
+
Provides:
|
|
5
|
+
- Async executor for all connectors
|
|
6
|
+
- Custom connector support
|
|
7
|
+
- Performance monitoring and instrumentation
|
|
8
|
+
- Connection pooling and concurrent execution
|
|
9
|
+
"""
|
|
10
|
+
|
|
11
|
+
from __future__ import annotations
|
|
12
|
+
|
|
13
|
+
from .auth_strategies import AuthStrategy
|
|
14
|
+
from .constants import SDK_VERSION
|
|
15
|
+
from .executor import (
|
|
16
|
+
LocalExecutor,
|
|
17
|
+
HostedExecutor,
|
|
18
|
+
ExecutorProtocol,
|
|
19
|
+
ExecutionConfig,
|
|
20
|
+
ExecutionResult,
|
|
21
|
+
ExecutorError,
|
|
22
|
+
EntityNotFoundError,
|
|
23
|
+
ActionNotSupportedError,
|
|
24
|
+
MissingParameterError,
|
|
25
|
+
InvalidParameterError,
|
|
26
|
+
)
|
|
27
|
+
from .http_client import HTTPClient
|
|
28
|
+
from .types import ConnectorConfig, Action, AuthType, EntityDefinition
|
|
29
|
+
from .config_loader import load_connector_config
|
|
30
|
+
from .logging import RequestLogger, NullLogger, RequestLog, LogSession
|
|
31
|
+
from .performance import PerformanceMonitor, instrument
|
|
32
|
+
from .exceptions import (
|
|
33
|
+
HTTPClientError,
|
|
34
|
+
AuthenticationError,
|
|
35
|
+
RateLimitError,
|
|
36
|
+
NetworkError,
|
|
37
|
+
TimeoutError,
|
|
38
|
+
)
|
|
39
|
+
from .utils import save_download
|
|
40
|
+
|
|
41
|
+
__version__ = SDK_VERSION
|
|
42
|
+
|
|
43
|
+
__all__ = [
|
|
44
|
+
# All Executors
|
|
45
|
+
"LocalExecutor",
|
|
46
|
+
"HostedExecutor",
|
|
47
|
+
"ExecutorProtocol",
|
|
48
|
+
"HTTPClient",
|
|
49
|
+
# Execution Config and Result Types
|
|
50
|
+
"ExecutionConfig",
|
|
51
|
+
"ExecutionResult",
|
|
52
|
+
# Types
|
|
53
|
+
"ConnectorConfig",
|
|
54
|
+
"Action",
|
|
55
|
+
"AuthType",
|
|
56
|
+
"EntityDefinition",
|
|
57
|
+
"load_connector_config",
|
|
58
|
+
# Authentication
|
|
59
|
+
"AuthStrategy",
|
|
60
|
+
# Executor Exceptions
|
|
61
|
+
"ExecutorError",
|
|
62
|
+
"EntityNotFoundError",
|
|
63
|
+
"ActionNotSupportedError",
|
|
64
|
+
"MissingParameterError",
|
|
65
|
+
"InvalidParameterError",
|
|
66
|
+
# HTTP Exceptions
|
|
67
|
+
"HTTPClientError",
|
|
68
|
+
"AuthenticationError",
|
|
69
|
+
"RateLimitError",
|
|
70
|
+
"NetworkError",
|
|
71
|
+
"TimeoutError",
|
|
72
|
+
# Logging
|
|
73
|
+
"RequestLogger",
|
|
74
|
+
"NullLogger",
|
|
75
|
+
"RequestLog",
|
|
76
|
+
"LogSession",
|
|
77
|
+
# Performance monitoring
|
|
78
|
+
"PerformanceMonitor",
|
|
79
|
+
"instrument",
|
|
80
|
+
# Utilities
|
|
81
|
+
"save_download",
|
|
82
|
+
]
|