MCP server with Kedro prompts and tools (local stdio, zero-install via uvx).
Project description
Kedro MCP Server
An MCP (Model Context Protocol) server that helps AI assistants work consistently with Kedro projects.
It ships a tiny prompt and two read-only tools that return concise, versioned guidance for general Kedro usage and for converting a Jupyter notebook into a production-ready Kedro project.
🚀 Quick install (no setup, runs locally)
Prerequisites
- Python 3.10+
- uv (recommended)
VS Code – GitHub Copilot Chat (user or workspace settings):
{
"github.copilot.chat.mcpServers": {
"kedro": {
"type": "stdio",
"command": "uvx",
"args": ["kedro-mcp@latest"], // or pin: kedro-mcp==0.1.0
"env": { "FASTMCP_LOG_LEVEL": "ERROR" },
"disabled": false,
"autoApprove": []
}
}
}
Claude Desktop / Cursor (generic MCP config):
{
"mcpServers": {
"kedro": {
"command": "uvx",
"args": ["kedro-mcp@latest"],
"env": { "FASTMCP_LOG_LEVEL": "ERROR" },
"disabled": false
}
}
}
Now open your assistant and ask:
- “Call
kedro_general_instructionsand summarise the key conventions.” - “Call
notebook_to_kedro, propose a short plan for my notebook. Wait for APPROVED.”
Tip:
@latestauto-refreshes when a newer version is released. Pin a version to freeze behaviour.
Features
-
Prompt
convert_notebook– a short, plain-English prompt that tells the assistant to:- load both guidance docs via tools,
- return a brief conversion plan and wait for APPROVED,
- then create the Kedro project (venv, install Kedro first), without running pipelines or moving data.
-
Tools (read-only)
kedro_general_instructions– returns concise conventions for consistent Kedro usage (naming, datasets, parameters, environments, checklists).notebook_to_kedro– returns focused guidance for notebook → Kedro conversion (plan → approval → build) with small templates/diffs.
Both tools just return Markdown text for the assistant to use as context; they do not read your files or send project data anywhere.
Installation
Option A — Zero-install (recommended)
Nothing to install into your environment. Your MCP client will run the server locally via uvx using the config above. First run is cached; later runs reuse the cache and only update when you use @latest or change the version.
Option B — From PyPI (when available)
uv pip install kedro-mcp
Then point your client to the console script:
{
"mcpServers": {
"kedro": { "command": "kedro-mcp", "args": [] }
}
}
Option C — From source (local development)
git clone https://github.com/kedro-org/kedro-mcp.git
cd kedro-mcp
uv pip install -e . --group dev
Config for local path:
{
"mcpServers": {
"kedro": {
"command": "uv",
"args": ["tool","run","--from",".","kedro-mcp"]
}
}
}
Manual server test
# Runs the stdio entrypoint (the client usually does this for you)
kedro-mcp
# Or with uvx directly (no install)
uvx kedro-mcp@latest
You should see a small “starting on stdio…” log; then your client will communicate over stdio.
Using with assistants
- VS Code – Copilot Chat: once configured, the server and tools appear automatically; you can invoke them by name in chat.
- Claude Desktop / Cursor: add the generic MCP config above; the tools can be called by name (e.g.,
notebook_to_kedro).
Suggested prompts:
- “Call
kedro_general_instructions, then summarise conventions that are missing in this repo.” - “Call
notebook_to_kedro, propose a conversion plan foranalysis.ipynb. Wait for APPROVED before creating anything.”
Development
# Install dev deps
uv pip install -e . --group dev
# Lint & type-check
ruff check .
mypy src/
Releasing
python -m pip install build twine
python -m build
twine upload dist/*
Troubleshooting
- Server not starting: ensure Python 3.10+ and
uvare installed; confirm the MCP config points touvx kedro-mcp@latestor to thekedro-mcpconsole script. - Tools don’t appear: restart the assistant; verify the MCP config key matches
"kedro"and the client supports stdio servers. - Version drift: pin a version instead of
@latest.
License
This project is licensed under the Apache Software License 2.0. See LICENSE.txt for details.
Support
- Report issues: https://github.com/kedro-org/kedro-mcp/issues
- MCP specification: https://modelcontextprotocol.io/
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dimed_mcp-0.1.1.tar.gz.
File metadata
- Download URL: dimed_mcp-0.1.1.tar.gz
- Upload date:
- Size: 16.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e951654952f74f3158b2a87cd3c14496f2fdca7ab0f1efcf4ee838d24366e4a5
|
|
| MD5 |
4394de5084a34ac50eeea2d4148d93bb
|
|
| BLAKE2b-256 |
d0e85b01b2594044478c227d06e240f27d216c70144ef226c30a707c0e852bdd
|
File details
Details for the file dimed_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: dimed_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 16.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88bb5856a775f0788ed4a557b2fdfc5a825c95345358e98e285fcd2942106987
|
|
| MD5 |
c407ee9a48b943c01c839605eb053140
|
|
| BLAKE2b-256 |
09a39e5a6961f44f84b4d5fba30c85784ba99a94e38eadcba347ea2ce20c4887
|