Atelier B MCP Server
OfficialClick on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Atelier B MCP ServerTypecheck the Airlock machine in the SafetySystem project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Atelier B MCP Server
An MCP (Model Context Protocol) server that connects Claude AI with Atelier B, the formal methods IDE for the B-method.
This server enables Claude to directly interact with Atelier B projects: typechecking components, generating proof obligations, running the automatic prover, generating C code, and managing project files.
Works with Atelier B Community Edition 24.04.2 (
ATELIER B (Community Edition) version 24.04.2, B Compilerversion/24.08), which is the version every tool is developed and tested against. Other 24.x releases are expected to work, since the server drivesbbatchthrough its documented command names, but they are not tested. Commands available only in the Professional edition,vr(verify_rule) among them, are deliberately not exposed; see docs/coverage.md.Also requires Python 3.11+ and mcp 2.0+.
History
Most recent first.
Date | Change |
2026-08-19 | Phase 1 closed: fifteen bbatch commands added, coverage 25 % to 54 %. Project check, archive and restore, make-all and remake, Rust generation, plus: what is left to prove ( |
2026-08-19 | Projects created by the server now appear in the workspace you browse. Atelier B can hold several workspaces, each being a directory of |
2026-08-13 | Ported to the mcp 2.0 protocol, upper version bound lifted |
2026-08-06 | PMI proof files read through the sibling PO file, so proof state is attributed to the right proof obligation |
2026-08-06 | B sources moved to |
Related MCP server: BlenderMCP
Architecture
Claude Desktop (MCP Client)
| MCP Protocol (stdio, JSON-RPC 2.0)
v
MCP Server (Python)
| subprocess (stdin/stdout)
v
bbatch.exe (Atelier B CLI)
| filesystem
v
B Projects (bdp/ + lang/ + src/ directories)The server wraps Atelier B's bbatch command-line interface, translating MCP tool calls into bbatch commands and parsing the output back into structured responses. Files are returned exactly as they are on disk; when a PMI file is read, its per-PO entries are paired with the labels of the sibling PO file so they can be attributed to the right proof obligation (see docs/PMI_PMM_ORDERING.md).
Available Tools
Category | Tools |
Project Management |
|
Verification |
|
External provers (NG projects) |
|
Code Generation |
|
Project Operations |
|
Diagnostics |
|
File Operations |
|
Prerequisites
Python 3.11+
Atelier B Community Edition 24.04.2 with
bbatch.exe(the tested version; see the note at the top)Claude Desktop (or any MCP-compatible client)
Installation
# Clone the repository
git clone https://github.com/CLEARSY/atelierb-mcp.git
cd atelierb-mcpAll remaining commands are run from this repository root (the directory that
contains pyproject.toml), not from the inner atelierb_mcp/ package directory.
Recommended: install into a virtual environment
On recent Linux distributions (and macOS with Homebrew Python), installing into
the system interpreter fails with error: externally-managed-environment
(PEP 668). Use a virtual environment:
python -m venv .venv
# Activate it
source .venv/bin/activate # Linux / macOS
# .venv\Scripts\activate # Windows (PowerShell / cmd)
# Install dependencies (run from the repository root)
pip install -e .
# Or install with dev dependencies
pip install -e ".[dev]"Re-activate the environment (source .venv/bin/activate) in any new shell before
running the server. When configuring an MCP client, point command at the
interpreter inside .venv (for example .venv/bin/python) so it uses the
installed dependencies.
Configuration
Copy .env.example and adjust paths:
cp .env.example .envEnvironment variables:
Variable | Description | Default |
| Path to Atelier B installation |
|
| Path to B projects workspace | (none -- must be set) |
| bbatch executable name |
|
| Command timeout in seconds |
|
Important: You must set ATELIERB_PATH and ATELIERB_WORKSPACE to match your local Atelier B installation and B projects directory.
Claude Desktop Integration
Add to your Claude Desktop configuration (%APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"atelierb": {
"command": "python",
"args": ["-m", "atelierb_mcp.server"],
"env": {
"ATELIERB_PATH": "C:\\Program Files\\Atelier B Community Edition 24.04.2 24.04.2",
"ATELIERB_WORKSPACE": "C:\\path\\to\\your\\B\\workspace"
}
}
}
}Adjust ATELIERB_PATH and ATELIERB_WORKSPACE to match your local setup, then restart Claude Desktop.
Usage Examples
Once configured, you can ask Claude:
"List all Atelier B projects in the workspace"
"Typecheck the Airlock machine in the SafetySystem project"
"Run B0 check on the Airlock_i implementation"
"Generate proof obligations and run the prover on Airlock"
"Show the proof status of the SafetySystem project"
"Generate C code for the Airlock component"
Development
# Run tests
pytest tests/ -v
# Run only unit tests (skip integration tests requiring bbatch)
pytest tests/ -v -m "not integration"
# Type checking
mypy atelierb_mcp/
# Linting
ruff check atelierb_mcp/
# Test with MCP Inspector
npx @modelcontextprotocol/inspector python -m atelierb_mcp.serverProject Structure
atelierb_mcp/
├── server.py # MCP server entry point with tool definitions
├── bbatch_wrapper.py # Async subprocess wrapper for bbatch CLI
├── parsers.py # Output parsers for bbatch responses
├── config.py # Pydantic settings management
└── tools/
├── project_tools.py # Project management tools
├── proof_tools.py # Verification tools (typecheck, prove, etc.)
├── file_tools.py # File access tools
└── code_tools.py # C code generation tools
tests/
├── conftest.py # pytest fixtures with mock bbatch
├── test_parsers.py # Parser unit tests
└── test_bbatch_wrapper.py # Wrapper tests
docs/
├── ARCHITECTURE.md # Detailed architecture documentation
├── DEPLOYMENT_GUIDE.md # Step-by-step deployment instructions
└── bbatch_commands.md # bbatch CLI command referenceHow This Project Was Built
This project was developed using Claude Code (Anthropic's CLI for Claude). The entire codebase -- server implementation, tools, parsers, tests, and documentation -- was written through interactive sessions with Claude Code, guided by a development plan and iterative refinement.
Documentation
Architecture - System architecture and design
Deployment Guide - Step-by-step deployment instructions
bbatch Commands - Atelier B CLI reference
License
Copyright (C) 2026 CLEARSY
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
See LICENSE.md for the full license text.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityFmaintenanceBridges Claude AI with Xcode, enabling AI-powered code assistance, project management, and automated development tasks securely on your local machine.76186385MIT
- AlicenseAqualityDmaintenanceConnects Blender to Claude AI, enabling AI-assisted 3D modeling, scene creation, object manipulation, material control, and code execution directly in Blender through natural language prompts.17MIT
- FlicenseNot gradedqualityCmaintenanceConnects Claude AI to any development project (Django, Next.js, Laravel, etc.) with 15+ universal tools for shell, file, git, logs, Docker, tests, and more.1
- AlicenseNot gradedqualityAmaintenanceConnect Claude AI to Dassault Systemes CATIA V5 via the Model Context Protocol (MCP). Drive CATIA V5 CAD modeling from Claude Desktop or Claude Code using natural language.80MIT
Related MCP Connectors
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Edit your Overleaf LaTeX projects from Claude and ChatGPT; every change is a real Git commit.
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/CLEARSY/atelierb-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server