Skip to content

Commit cb03292

Browse files
docs: Add MCP troubleshooting section with setup guidance (#853)
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
1 parent 4b58c40 commit cb03292

File tree

1 file changed

+54
-2
lines changed

1 file changed

+54
-2
lines changed

airbyte/mcp/__init__.py

Lines changed: 54 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,14 +144,66 @@
144144
145145
Set the environment variable `AIRBYTE_CLOUD_MCP_READONLY_MODE=1` to enable read-only mode.
146146
147+
## Troubleshooting
148+
149+
### Troubleshooting Local Connector Installation Issues
150+
151+
The MCP server uses PyAirbyte under the hood to manage Airbyte connectors. PyAirbyte
152+
supports both Python-native connectors (installed via pip/uv) and Docker-based connectors
153+
(run in containers).
154+
155+
To ensure docker connectors run correctly, please make sure `which docker` returns a valid
156+
path and that Docker Desktop (or an alternative container runtime) is running.
157+
158+
To ensure Python connectors run correctly, please make sure the Python version used to run the
159+
MCP server is compatible with the connector requirements. See the MCP server conifiguration
160+
section above for details on how to specify the Python version used by the MCP server.
161+
162+
### Using Abolute Paths
163+
164+
**Always use absolute paths in your environment files.** Relative paths, tilde (`~`), or
165+
environment variables like `$HOME` will not work correctly, due to the way MCP servers
166+
are loaded and executed.
167+
168+
The `AIRBYTE_PROJECT_DIR` environment variable is critical - it specifies where PyAirbyte
169+
stores connector artifacts, cache files, and temporary data. Ensure this directory:
170+
171+
- Uses an absolute path. (For example: `/Users/username/airbyte-projects`.)
172+
- Exists on the filesystem. (Use `mkdir -p /path/to/dir` to create it if needed.)
173+
- Is writable by the user account running the MCP server.
174+
175+
Note:
176+
177+
- In rare cases, your agent may not be able to find `uv` or `uvx` if they are not in the system
178+
`PATH` or if the agent has a stale `PATH` value. In these cases, you can use `which uvx` from
179+
your own terminal to discover the full path to the `uvx` binary, and then provide the full path
180+
in your MCP configuration file.
181+
182+
### Securing Your Secrets
183+
184+
The MCP server implements a security model that protects your credentials:
185+
186+
- **LLM sees only environment variable names** - The AI assistant can see which variables
187+
are available (e.g., `POSTGRES_PASSWORD`) but never their actual values.
188+
- **MCP server reads actual values** - Only the MCP server process accesses the secret
189+
values when executing operations.
190+
- **Credentials never exposed to LLM** - Your API keys, passwords, and other secrets remain secure.
191+
192+
This design allows AI assistants to help configure connectors without compromising security.
193+
194+
Note: While the MCP server takes steps to secure your credentials, you are responsible for
195+
ensuring the agent is not given access to your secrets by other means. For example, Claude Code
196+
may have *full* local disk access when run in certain modes. Consult your agent's documentation
197+
for details on securing local files.
198+
147199
## Contributing to the Airbyte MCP Server
148200
149201
- [PyAirbyte Contributing Guide](https://github.com/airbytehq/PyAirbyte/blob/main/docs/CONTRIBUTING.md)
150202
151203
### Additional resources
152204
153-
- [Model Context Protocol Documentation](https://modelcontextprotocol.io/)
154-
- [MCP Python SDK](https://github.com/modelcontextprotocol/python-sdk)
205+
- [Airbyte AI Agents Documentation Home](https://docs.airbyte.com/ai-agents/)
206+
- [MCP Documentation Home](https://modelcontextprotocol.io/)
155207
156208
For issues and questions:
157209
- [PyAirbyte GitHub Issues](https://github.com/airbytehq/pyairbyte/issues)

0 commit comments

Comments
 (0)