Your Mistral agent can now send legally binding e-signatures
Most agent tools read. They fetch a record, summarize a thread, look something up. Sending a document for signature is a different kind of action, because it produces a real legal artifact that lands in someone's inbox and comes back binding. That is the capability you can now hand to a Mistral agent.
One Connector, Every Mistral Surface, Signature-Ready
Register Firma.dev as a Connector once, and every Mistral surface can send signing requests, list templates, and check status as native tool calls. The Conversations API, the Agents API, Le Chat, and Vibe all reach the same set of tools. Your agent stops being a research assistant and starts being something that can move a contract forward on its own.
Ready to build it?
Read the full Mistral technical guide.
Why the Connector approach is clean
Firma.dev exposes its API as an MCP server. Because Mistral speaks the same protocol through Connectors, there is no custom tool schema for you to hand-write, version, and keep in sync every time an endpoint changes. You register the Connector one time and the tools become available accross Conversations, Agents, and Vibe.
Credentials Stay Encrypted, Never Touch the Model
The API key is stored encrypted in your Mistral workspace and never reaches the model or the end user. The agent sees tool names and arguments, not credentials.
Manual Function Calling: More Control, More Maintenance
You can still take the manual route if you want it. Defining Firma.dev operations as functions on the Chat Completions API gives you tighter control over the exact tool schema, at the cost of maintaining that schema yourself. For most builds the Connector path is less code and less upkeep, which is the whole reason it exists.
What the agent can do
Three capabilities cover the common cases, and none of them need custom glue code once the Connector is registered.

Send a signing request from a prompt
"Send the standard NDA to alice@example.com" turns into a real signing request going to a real inbox. The model reads the exposed tools, picks the right one, builds the arguments from the conversation, and fires it.
Track status in conversation
Ask the agent what is still outstanding, or whether a specific contract came back signed. It calls the status tool and answers from live data instead of a stale guess.


React when documents are signed
Webhooks close the loop. When a signer finishes, your backend recieves the event and can act on it immediately: update the CRM, send the next document, notify the deal owner, or hand off to a follow-up agent. The signing event becomes a trigger rather than something a human has to check for.

Keep a human in the loop
Agent-initiated signing is safe to ship as long as you gate the send. Any request that reaches an external counterparty should sit behind a confirmation step, and Mistral's human-in-the-loop approval flow is built for exactly this.
The agent proposes the send, the human reads back the template and signer details, and only then does anything leave. It is one extra turn, and it is worth it for a document that carries legal weight.
How to set it up
The code stays in the docs. Registering the Connector, the manual function-calling path, inline auth for multi-tenant setups, webhooks, and embedded signing are all walked through step by step in the technical guide. This page is the case for doing it. The guide is the how.
Full setup, step by step.
Read the Mistral technical guide.






