Live API contract layer for AI coding assistants — keeps Claude, Cursor, and VS Code in sync with your real microservices
Project description
Live API contract layer for AI coding assistants.
Conciliate keeps Claude, Cursor, and VS Code Copilot in sync with your real microservices — across environments, specs, and code changes — so AI-generated code always matches your APIs.
The Problem
- AI suggests endpoints that don't exist or are out of date
- Frontend and backend assistants disagree about the API
- Microservice and third-party APIs change silently
- No contract validation between AI-generated code and real APIs
Features
- Contract extraction: Auto-generates OpenAPI specs from FastAPI, Flask, Express
- Multi-service registry: Track local microservices, staging, production, third-party APIs
- Request validation: Validate AI-generated requests against live contracts
- MCP-native: Built for Claude Desktop, Cursor, VS Code Copilot
- Change detection: Real-time diff tracking with AI-consumable narration
- Local-first: No cloud dependencies, runs entirely on your machine
Quick Start
pip install conciliate
cd /path/to/your/project
conciliate init # Create .conciliate.yaml
conciliate mcp # Run MCP server for AI assistants
CLI Commands
| Command | Description |
|---|---|
conciliate init |
Create config file |
conciliate mcp |
Run MCP server for AI assistants (recommended) |
conciliate watch |
Watch backend + serve REST API |
conciliate serve |
REST API only |
conciliate summary |
Display API summary |
conciliate diff |
Show recent contract changes |
conciliate status |
Show configuration |
conciliate optimize <query> |
Generate query-scoped context shard and token savings |
MCP Tools
| Tool | Description |
|---|---|
list_services |
List all registered microservices |
list_endpoints |
List endpoints for a service |
validate_request |
Validate request against live contract |
explain_diff |
Explain API changes between environments |
search_endpoints |
Search across all services |
get_endpoint_details |
Get full schema for an endpoint |
reload_api_spec |
Force-reload specs |
optimize_context |
Build query-scoped shard under token budget |
REST API
| Endpoint | Description |
|---|---|
GET /spec |
Full OpenAPI specification |
GET /summary |
Human-readable summary |
GET /diff |
Latest contract changes |
POST /reload |
Trigger spec regeneration |
GET /services |
List all services |
POST /validate |
Validate request against contract |
GET /contract/issues |
Detect cross-service contract mismatches |
POST /context/optimize |
Build query-scoped shard under token budget |
GET /context/metrics |
View token-savings optimization metrics |
Troubleshooting
| Issue | Solution |
|---|---|
| "Failed to generate spec" | Check backend_path in config |
| "No .conciliate.yaml found" | Run conciliate init |
| MCP not connecting | Restart AI assistant, verify cwd path |
| Framework not detected | Set framework explicitly in .conciliate.yaml |
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 conciliate-0.7.1.tar.gz.
File metadata
- Download URL: conciliate-0.7.1.tar.gz
- Upload date:
- Size: 41.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae883fe872eae0eee5ac3b58fe6d6a4f6bb50409a4df8afe660c746f76f2eaf7
|
|
| MD5 |
eed10f8f99a0f9a2d46b9401ad72c472
|
|
| BLAKE2b-256 |
628d7197915d24b0b29c939fefa30b36b1cfdce06096d13770fa41de861c025f
|
Provenance
The following attestation bundles were made for conciliate-0.7.1.tar.gz:
Publisher:
publish.yml on iv4n-ga6l/conciliate
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
conciliate-0.7.1.tar.gz -
Subject digest:
ae883fe872eae0eee5ac3b58fe6d6a4f6bb50409a4df8afe660c746f76f2eaf7 - Sigstore transparency entry: 1092802594
- Sigstore integration time:
-
Permalink:
iv4n-ga6l/conciliate@cb60722d07cdec6556164171bd44f4a0c5d5e853 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/iv4n-ga6l
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@cb60722d07cdec6556164171bd44f4a0c5d5e853 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file conciliate-0.7.1-py3-none-any.whl.
File metadata
- Download URL: conciliate-0.7.1-py3-none-any.whl
- Upload date:
- Size: 42.7 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 |
a3ea0d56c0ad55224b16347bdb1fd5d7b65c9c6d5168713cbc440e722dcfc7e4
|
|
| MD5 |
9d11372600615c1a3ca65252157b4883
|
|
| BLAKE2b-256 |
1adf081b7531d14444ae9eabed60c19fde0dfbbe4cc971884a0628065b8d0368
|
Provenance
The following attestation bundles were made for conciliate-0.7.1-py3-none-any.whl:
Publisher:
publish.yml on iv4n-ga6l/conciliate
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
conciliate-0.7.1-py3-none-any.whl -
Subject digest:
a3ea0d56c0ad55224b16347bdb1fd5d7b65c9c6d5168713cbc440e722dcfc7e4 - Sigstore transparency entry: 1092802705
- Sigstore integration time:
-
Permalink:
iv4n-ga6l/conciliate@cb60722d07cdec6556164171bd44f4a0c5d5e853 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/iv4n-ga6l
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@cb60722d07cdec6556164171bd44f4a0c5d5e853 -
Trigger Event:
workflow_dispatch
-
Statement type: