5. Exposer un MCP FastMCP
Objectif : ajouter FastMCP seulement lorsque le service doit exposer MCP, puis
publier le même port applicatif que l'API.
| Bash |
|---|
| arclith-cli add-adapter \
--capability mcp \
--adapter fastmcp \
--param host=127.0.0.1 \
--param port=8121 \
--yes
arclith-cli expose-usecase CreateTodo \
--via fastmcp \
--feature todos \
--name create_todo
|
Ces commandes ajoutent arclith[mcp]; elles ne créent aucune route FastAPI.
Structure attendue
| Text Only |
|---|
| adapters/inbound/fastmcp/
├── README.md
├── register.py
├── bindings_generated.py
├── dependencies.py
├── errors.py
├── contracts/create_todo.py
├── middleware/
└── features/
└── todos/
├── README.md
├── register.py
├── schemas.py
├── mappers.py
├── presenters.py
├── tools/create_todo.py
├── resources/
└── prompts/
|
tools, resources et prompts sont trois primitives distinctes. Une action
de use case est exposée comme tool ; le CLI ne crée pas de resource ni de prompt
fictif. Chaque primitive appelle un port inbound et ne connaît aucun repository
concret.
Sous-étapes :
- Tool et contrat MCP
- Entrypoint et tests
- Connexion depuis LM Studio