AIDA MCP server - Developer actions (lint, test, typecheck) for monorepos
Project description
AIDA MCP
AIDA gives your AI coding assistant repository-specific rules, validation, and Git workflow guardrails — across any MCP-compatible tool.
Instead of maintaining separate prompt files for each assistant, you configure behavior once in .aida/ and every tool picks it up.
What AIDA Does for You
As a developer, AIDA works in the background. Your AI assistant automatically:
- Receives project-specific coding rules and conventions when you start a task
- Runs the right linters, formatters, and tests for the files you changed — before you commit
- Creates commits and PRs that follow your team's message format, required trailers, and templates
- Lists, replies to, and resolves PR review threads
You don't need to learn new commands. AIDA teaches your assistant your team's workflow.
As a repo maintainer, AIDA lets you:
- Define validation pipelines that run automatically on changed files
- Enforce commit message format, risk labels, ticket references
- Write project-specific rules your assistant will follow
- Configure all of this in version-controlled YAML files under
.aida/
Install
uv tool install aida-mcp # recommended (uv is a fast Python package manager: brew install uv)
pip install aida-mcp # alternative
Quick Start
If your repo already has AIDA configured
Just install aida-mcp and reload your AI tool. The .mcp.json / .cursor/mcp.json in the repo tells your tool to connect to AIDA. The MCP server auto-generates any missing rule files at startup. Everything works automatically.
If you're setting up AIDA in a new repo
cd /path/to/your/repo
aida-mcp init
This creates .aida/ config files, MCP wiring, and rule files. Commit the result and reload your AI tool.
For the full setup guide, see Configuring a Repository.
Supported Tools
Cursor, Claude Code, OpenAI Codex, JetBrains AI Chat, and Junie. Any MCP-compatible tool can be added.
Customizing Behavior
Preferences
Control how AIDA behaves per-developer via .aida/preferences.local.yaml (gitignored):
preferences:
validation:
pre_commit: ask # auto | ask | disabled
commit:
mode: ask # auto | ask | disabled
Team defaults live in .aida/preferences.yaml (checked in).
Native Mode (No MCP Server)
If you prefer not to run the MCP server, export rules as static files your AI tool reads directly:
aida-mcp rules export
This writes self-contained rule files with your project's conventions, validation commands, and commit templates. Re-run after config changes; aida-mcp doctor warns when stale.
CLI Commands
| Command | Purpose |
|---|---|
aida-mcp init |
Bootstrap AIDA in a repository |
aida-mcp doctor |
Check repository health |
aida-mcp migrate |
Upgrade from older AIDA layout |
aida-mcp validate --scope pre_commit |
Run validation on changed files |
aida-mcp commit --type feat --title "..." |
Policy-compliant commit |
aida-mcp rules export |
Export static native rule files |
aida-mcp install-mcp --target claude |
Install/refresh MCP wiring |
Full CLI reference: cli-reference.md
Documentation
- For Developers — how AIDA works in your daily workflow
- Configuring a Repository — setup guide for repo maintainers
- CLI Reference — all commands and flags
- Rules Retrieval — how
get_rulesscoring and selection works - Validation Tools — planner + executor architecture
- External Validation Interface — wiring custom scripts
Requirements
- Python ≥3.12, <3.15
- An MCP-compatible AI tool
- A repository you want to configure
Project details
Release history Release notifications | RSS feed
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 aida_mcp-0.8.0.tar.gz.
File metadata
- Download URL: aida_mcp-0.8.0.tar.gz
- Upload date:
- Size: 150.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5b7e3869963f507393038d3df6e111034ce2a831571f0403ffca091f9556aa68
|
|
| MD5 |
957294b9ff0c08ff2829ee730f99dcb5
|
|
| BLAKE2b-256 |
97786b2bf9b6f8481c21b82728e851e70a7db7df5d1838529f058bda17187658
|
Provenance
The following attestation bundles were made for aida_mcp-0.8.0.tar.gz:
Publisher:
python-release.yaml on gooddata/gdc-aida
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aida_mcp-0.8.0.tar.gz -
Subject digest:
5b7e3869963f507393038d3df6e111034ce2a831571f0403ffca091f9556aa68 - Sigstore transparency entry: 1186224920
- Sigstore integration time:
-
Permalink:
gooddata/gdc-aida@5a33affe0def252230fb187c85ac0cd6cab42025 -
Branch / Tag:
refs/tags/v0.8.0 - Owner: https://github.com/gooddata
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-release.yaml@5a33affe0def252230fb187c85ac0cd6cab42025 -
Trigger Event:
push
-
Statement type:
File details
Details for the file aida_mcp-0.8.0-py3-none-any.whl.
File metadata
- Download URL: aida_mcp-0.8.0-py3-none-any.whl
- Upload date:
- Size: 223.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a9cfc48b05c4aa2bdab76b257f5df68746fb3722b2fc22a971cf68c6c5e08d5
|
|
| MD5 |
d1722ac90f07d023f2c36407804fb580
|
|
| BLAKE2b-256 |
cfed8921d0ae929a032858ad04a13e6ccb25fd44fb1be51803fbca3afb683f10
|
Provenance
The following attestation bundles were made for aida_mcp-0.8.0-py3-none-any.whl:
Publisher:
python-release.yaml on gooddata/gdc-aida
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aida_mcp-0.8.0-py3-none-any.whl -
Subject digest:
0a9cfc48b05c4aa2bdab76b257f5df68746fb3722b2fc22a971cf68c6c5e08d5 - Sigstore transparency entry: 1186224928
- Sigstore integration time:
-
Permalink:
gooddata/gdc-aida@5a33affe0def252230fb187c85ac0cd6cab42025 -
Branch / Tag:
refs/tags/v0.8.0 - Owner: https://github.com/gooddata
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-release.yaml@5a33affe0def252230fb187c85ac0cd6cab42025 -
Trigger Event:
push
-
Statement type: