Miraca integration
Miraca (formerly Astrolabe) is a French AI platform for associations and the social economy, with models hosted in France or the EU by default (non-EU frontier models only once the account allows them) and an OpenAI-compatible API. Chat with a choice of models (optionally grounded in your knowledge bases, with web search, code or connector tools), create embeddings, transcribe audio, manage knowledge bases (documents, chunks, facets, rechunking) and search them without a model, read and write workspaces, run scheduled tasks and read their runs, list generated files and personalities, and pseudonymise documents. Usage is billed from prepaid credits. Adding, editing or deleting a knowledge base document can start the organisation's scheduled tasks set to run on that base's events, which may send e-mail, Slack or webhook messages. Left out: streaming, the MCP endpoint, mailboxes, the bare model list (list_model_prices covers it), cross-base facet listing, knowledge base export and import bundles, the public knowledge base catalogue, connector setup and sync, task configuration, workspace listing, and downloading file content (served by the portal host). Authentication is an sk- API key created in the developer portal (app.miraca.fr), sent as a Bearer token; its permissions (chat, kb:read, kb:write, files, tasks, anonymize...) decide which tools answer.
Say what should happen.
The workflow builds itself.
What you can do with Miraca
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Each badge shows the default agent permission of an endpoint (allowed: an agent calls it without asking; ask first: you are asked before an agent calls it, when the agent or chat asks permission for sensitive actions; never: no agent may call it), which every user can change endpoint by endpoint in their credential settings.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Document, 5 operations
add_kb_documentAdd kb documentPOSTAgents: ask firstAdds a text document to a knowledge base: it is chunked, embedded and encrypted. Sending an external_id already in the base REPLACES that document. Billed: embedding, plus a model call per document in ai chunking.delete_kb_documentDelete kb documentDELETEAgents: ask firstPermanently deletes a document and its chunks from the knowledge base. Needs the kb:write permission. Can start scheduled tasks set to run on this base's deletions.get_kb_documentGet kb documentGETAgents: ask firstReturns one document's metadata (id, external_id, title, business date, source link, status, chunk count, chunks_stale). Use get_kb_document_content for its text. Free.list_kb_documentsList kb documentsGETAgents: ask firstLists the documents of one knowledge base with their id, external_id, title, business date, source link, status and chunk count. Free.update_kb_documentUpdate kb documentPATCHAgents: ask firstChanges a document's title, business date, external_id or source link without rechunking; a new date is carried to the chunks that had the old one. Free.
Kb, 5 operations
create_knowledge_baseCreate knowledge basePOSTAgents: ask firstCreates a knowledge base and returns it with its slug (derived from the name), used by every other knowledge base tool. Needs the kb:write permission. Free.delete_knowledge_baseDelete knowledge baseDELETEAgents: ask firstPermanently deletes a knowledge base with all its documents and chunks. Needs the kb:write permission. Fires a deletion event per document, which can start scheduled tasks watching the base.get_knowledge_baseGet knowledge baseGETAgents: ask firstReturns one knowledge base: name, intent, facet schema, role, embedding model and chunking defaults. Free.list_knowledge_basesList knowledge basesGETAgents: ask firstLists the key's knowledge bases with their slug, intent, facet schema, role, embedding model and chunking defaults. Needs the kb:read permission. Free.update_knowledge_baseUpdate knowledge basePATCHAgents: ask firstUpdates a knowledge base's name, slug, intent, facet schema, role or chunking defaults (never its embedding model). A schema change that would strand stored values is refused with 409 listing the conflicts.
Chunk, 4 operations
add_kb_chunkAdd kb chunkPOSTAgents: ask firstAdds one hand-written chunk to a document, with optional facets and business date (inherits the document's date otherwise). Billed: one embedding.delete_kb_chunkDelete kb chunkDELETEAgents: ask firstPermanently deletes one chunk of a document.list_kb_chunksList kb chunksGETAgents: ask firstLists a document's chunks (extracts), decrypted, with their id, content, facets, business date and creation time. Free.update_kb_chunkUpdate kb chunkPATCHAgents: ask firstChanges a chunk's content, facets or business date. Changing the content re-embeds it (billed).
Entry, 4 operations
delete_workspace_entryDelete workspace entryDELETEAgents: ask firstPermanently deletes one entry of a workspace. 404 if absent, 409 when the name matches several entries.read_workspace_entryRead workspace entryGETAgents: ask firstReads an entry: as text in slices (format text, default; follow next_offset) or as typed table cells (format table, with sheet). 404 names the closest entry; 409 when the name matches several.replace_workspace_entryReplace workspace entryPUTAgents: ask firstReplaces the content of an entry (creates it when missing). Max 4 MB per entry.write_workspace_entryWrite workspace entryPOSTAgents: ask firstWrites a text or JSON entry into a workspace (created if missing); an existing entry of that name is replaced. Max 4 MB per entry, 200 entries per workspace.
File, 3 operations
delete_fileDelete fileDELETEAgents: ask firstPermanently deletes a generated file (no recycle bin); succeeds even if it was already deleted. Needs the files permission.get_fileGet fileGETAgents: ask firstReturns one generated file's metadata (the content is downloaded from the Miraca portal). A deleted file answers 410 with its deletion date.list_filesList filesGETAgents: ask firstLists files generated by tasks and API calls, newest first, with format, size, origin run and storage quota. The file content itself is downloaded from the Miraca portal, not through this API.
Rechunk, 3 operations
get_kb_rechunk_statusGet kb rechunk statusGETAgents: ask firstReturns the state of the base's last rechunk job: running or done, with totals of documents rechunked, skipped (no stored source) and failed, and the first error. Free.rechunk_kb_documentRechunk kb documentPOSTAgents: ask firstRegenerates ALL chunks of one document from its source text, hand-made chunks included. simple and whole are free apart from embedding; ai calls a model (billed).start_kb_rechunkStart kb rechunkPOSTAgents: ask firstStarts a background job that rechunks every document of a base from its source; answers at once with a job_id. Follow it with get_kb_rechunk_status. Billed embedding (and a model call per document in ai mode).
Run, 3 operations
get_task_runGet task runGETAgents: ask firstReturns one run's export: task slug, prompt and bases, inputs, result, feedback, cited sources, model rounds, cost, carbon, efficiency and tool usage counts (not the raw tool calls). Inputs and results may hold personal data.list_task_runsList task runsGETAgents: ask firstLists a task's run history, newest first: status, dates, deliveries, model, duration, cost in euros and CO2. No result content: use get_task_run. Pages with before=next_cursor.run_taskRun taskPOSTAgents: ask firstRuns a scheduled task now (billed like its model calls). deliver true sends the result to the task's outputs (e-mail, Slack, webhook). wait false answers at once with run_id; wait true waits for the result.
Content, 2 operations
get_kb_document_contentGet kb document contentGETAgents: ask firstReturns a document's decrypted source text with its format, origin and chunk state (chunks_stale true means the text changed since the last chunking). Free.replace_kb_document_contentReplace kb document contentPUTAgents: ask firstReplaces a document's source text. Without rechunk the chunks stay stale until rechunk_kb_document; with rechunk they are regenerated in the same call (billed embedding, plus a model call in ai mode).
Personality, 2 operations
get_personalityGet personalityGETAgents: ask firstReturns one personality (resolved with the same precedence: personal, then organisation, then library). Read-only.list_personalitiesList personalitiesGETAgents: ask firstLists the personalities (reusable named system prompts) the key can use: yours, your organisation's and Miraca's library. Pass a slug as personality to create_chat_completion. Read-only.
Search, 2 operations
search_all_knowledge_basesSearch all knowledge basesPOSTAgents: ask firstSearches all (or the named) knowledge bases at once and returns matching documents: relevance mode ranks by meaning (billed embedding), browse mode filters, sorts and pages titles for free with an exact total.search_knowledge_baseSearch knowledge basePOSTAgents: ask firstSearches one base without a model: semantic with query (billed embedding), or exact listing, counting and aggregates without it. Read total, never count rows of a truncated page.
Workspace, 2 operations
delete_workspaceDelete workspaceDELETEAgents: ask firstPermanently deletes a workspace and all its entries (generated files referenced by entries keep their own retention).get_workspaceGet workspaceGETAgents: ask firstReturns a workspace and the index of its entries (names, kinds, sizes, sheets). 404 if it does not exist.
Anonymize, 1 operation
anonymize_documentAnonymize documentPOSTAgents: ask firstReplaces personal data in a file (txt, md, csv, tsv, xlsx, docx, html, rtf, pdf) by stable tokens or redaction marks; returns the result and, in token mode, the mapping table to restore it. Free, nothing kept.
Completion, 1 operation
create_chat_completionCreate chat completionPOSTAgents: ask firstSends an OpenAI-compatible chat request and returns the answer. Billed per token from prepaid credits. With knowledge_base, sources come back in miraca_sources; tools_enabled runs an agent that may also write (mail, notes, connectors).
Deanonymize, 1 operation
deanonymize_textDeanonymize textPOSTAgents: ask firstPuts the original values back into a text (even rewritten by an AI) from the mapping_csv of anonymize_document. Tokens missing from the table are left and reported. Free.
Embedding, 1 operation
create_embeddingsCreate embeddingsPOSTAgents: ask firstTurns text into embedding vectors (OpenAI-compatible). Billed per input token. Embedding models are the list_model_prices entries with mode embedding.
Facet, 1 operation
list_kb_facet_valuesList kb facet valuesGETAgents: ask firstReturns each facet present in a base with its type and values: top values with counts for text, min and max for numbers and dates. Optional scope filters make min/max exact superlatives. Free.
Kb document, 1 operation
upload_kb_document_fileUpload kb document filePOSTAgents: ask firstUploads a file (PDF, DOCX, TXT, MD, RTF, CSV, TSV, HTML, 15 MB max) into a knowledge base: its text is extracted, chunked, embedded and encrypted; the file itself is not kept. Billed: embedding, and OCR of scanned pages.
Pricing, 1 operation
list_model_pricesList model pricesGETAgents: ask firstLists every model of the catalogue (chat and embedding) with its hosting, context size, vision, reasoning levels and prices in euros per million tokens. Free; answers without a key too.
Transcription, 1 operation
transcribe_audioTranscribe audioPOSTAgents: ask firstTranscribes a FLAC, WAV, OGG, AIFF or CAF file with a Voxtral model served by Mistral in the EU; MP3, M4A/AAC and WebM are refused with 400. Billed per second of audio.
Workspace entry, 1 operation
upload_workspace_fileUpload workspace filePOSTAgents: ask firstUploads a file (PDF, Word, Excel, CSV, TSV, text, Markdown, HTML, RTF, 15 MB max) into a workspace (created if missing): its text and, for a sheet, typed table are stored. Read it with read_workspace_entry.
Use Miraca from Claude Code, Cursor or Codex
Connect Miraca in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Miraca operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Miraca
- Create your workspace
Sign up free. Nothing to install.
- Connect Miraca once
Add your Miraca connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Miraca integration FAQ
What can you do with the Miraca integration?
LiveContext exposes 44 operations on Miraca, covering document, kb, chunk and entry.
