Documentation
Meridian Intel
Everything you need to upload, query, and understand results from your documents — grounded answers, every domain.
Introduction
What Meridian Intel does and how it's different.
Meridian Intel is a Regulatory Document Intelligence platform built for accuracy-critical document review. Its retrieval and grounding architecture uses document-focused retrieval and model-assisted generation to produce answers grounded entirely in what the document says — never beyond it. Upload a document, ask a question in plain language, and get an answer grounded entirely in what the document says — never beyond it.
If no relevant content is found in your document, the platform tells you directly rather than generating a guess. The AI model is never called when retrieval returns nothing.
Answers are extracted verbatim from your document by default — exact words, not paraphrases. Every fact is cited with its source page and chunk reference. If you need a simpler explanation, ask explicitly (e.g. "explain this in simpler terms") and the system will paraphrase while still grounding every claim in the document.
Built by Mazal Arc, Meridian Intel was designed first for pharmaceutical compliance review — Certificates of Quality, BSE/TSE declarations, Chain of Custody documentation — and now supports 14+ domains including legal, finance, research, and IT.
Quick Start
Three steps from zero to your first answer.
↑ Upload in the workspace top bar. Select a PDF, DOCX, DOC, or TXT file. The platform chunks, scrubs PII, and indexes it using your selected field. Previously uploaded documents load instantly from History — no re-upload needed.Domain Fields
14+ supported domains across 5 categories. Unrecognized fields fall back to General Purpose without failing.
Science & Research
Business & Legal
Technology
Custom
Don't see your field? Type a custom field name during upload. The chunking and retrieval engine works the same — only the PII scrubbing defaults differ from pre-configured fields.
Supported Formats
What you can upload today, and what's coming.
| Format | Extraction method | Status |
|---|---|---|
| pdfplumber text extraction | Available | |
| .txt | Plain text ingestion | Available |
| .docx / .doc | python-docx + table extraction | Available |
| Scanned PDF | OCR via EasyOCR | Available |
| .csv | Tabular chunking | v2.2 |
| .png / .jpg | VLM diagram analysis | v2.2 |
If you upload a PDF with no extractable text (a scanned image), the platform detects this automatically and lets you know OCR support is coming rather than returning an empty or broken result.
Tier Guide
Five tiers, each with distinct retrieval precision and feature access.
| Tier | Chunk size | Results | Max answer | Daily queries | Key features |
|---|---|---|---|---|---|
| Ephemeral | 600 tokens | 3 | 512 tokens | 10 | Free · Forever · General field only |
| Segment | 512 tokens | 5 | 1,024 tokens | 30 | 5 domains · Markdown responses · $29/mo |
| Lattice | 384 tokens | 6 | 2,048 tokens | 100 | 10 domains · Semantic cache · $59/mo |
| Vector | 256 tokens | 8 | 3,072 tokens | 200 | All 14+ fields · PDF canvas · Eval scores · $89/mo |
| Enclave | 200 tokens | 10 | 4,096 tokens | Unlimited | Per-user isolation · Audit trail · SSO · Custom pricing · Corporate tier |
Why chunk size matters
Chunk size controls how finely your document is sliced during ingestion. Smaller chunks mean more precise retrieval — when you ask a specific question, the platform finds the exact paragraph or table row rather than a broad section. This matters most on dense regulatory or technical content where the difference between adjacent paragraphs can be significant.
Ephemeral (600 tokens) works well for general questions on any document. Enclave (200 tokens) is calibrated for pharma batch records, legal clauses, and financial figures where pinpoint accuracy is non-negotiable.
Why answer length matters
Max answer tokens controls how long the AI's response can be. A 512-token cap (Ephemeral) is roughly 1–2 paragraphs — enough for a direct answer. A 4,096-token cap (Enclave) supports detailed summaries, multi-point analysis, and comprehensive regulatory reviews without truncation.
Understanding Results
How to read what the platform gives you back.
Eval Scores
How much of the answer's vocabulary is grounded in the retrieved document text. A score near 1.0 means the answer uses exact words and phrases from the document. Verbatim extraction mode typically achieves 0.90+ faithfulness.
How much of your query's key terms appear in the answer. Measures whether the answer addressed your actual question. Uses stemming so "work" matches "works" and "working".
What fraction of the retrieved context was used in the answer. Lower scores are normal when the retrieved chunks contain more content than needed — the answer extracts only the relevant parts.
Zero-Hit Responses
When the platform tells you it found nothing relevant, this is a feature, not a failure. It means retrieval came back empty and the AI model was never called — preventing a fabricated answer. Try rephrasing your question or confirm the document contains the information you're looking for.
Source Citations
Every answer shows the page and section reference it was drawn from (e.g. p.1 s2), visible in the audit panel alongside the exact retrieved text.
Landing Page Assistant
The AI assistant on the Meridian Intel landing page — what it knows and how it works.
The chat widget at meridianintel.app is powered by Claude Sonnet (Anthropic) via a secure server-side proxy. Your conversation is never sent directly to Anthropic from your browser, and no API keys are exposed client-side.
What it knows
The assistant is given a detailed system prompt covering:
- All five tiers — pricing, trial availability, features, and limits
- Supported domain fields and PII scrubbing behavior
- How grounded-answer retrieval works
- Inference engines (Mistral, Gemini, GPT-4o-mini, AUTO Shield)
- Sign-up and access flow
- Enclave enterprise features and contact details
It will not answer questions unrelated to Meridian Intel, and will redirect off-topic queries politely.
Rate limiting
The chat endpoint is rate-limited to 20 requests per hour per IP address to prevent abuse. If you hit the limit, wait an hour or contact support@meridianintel.app.
Escalation
If the assistant can't answer your question, it will offer to create a support ticket or connect you with the sales team at sales@meridianintel.app. For Enclave enterprise enquiries, visit meridianintel.app/enclave.
API Reference
Programmatic access for Vector and Enclave tier users. All endpoints require an API key passed as a Bearer token.
Requesting a Key
API keys are available on Vector and Enclave tiers. Go to Settings → Identity Hub → API Key and click Request API Key. Your key is shown once — copy it immediately. Keys use the format sk_live_ followed by 32 hex characters. Never share your API key or commit it to source control. Revoke compromised keys immediately from Settings.
Base URL
https://meridianintel.app
Authentication
Pass your API key in the Authorization header on every request.
Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
POST /ingest
Upload and index a document. Returns a doc_id used in all subsequent queries against that document. Counts toward your tier's applicable document limit.
# curl curl -X POST https://meridianintel.app/ingest -H "Authorization: Bearer sk_live_xxxx" -F "file=@batch_record.pdf" -F "field=certificate_of_quality" -F "tier=vector" -F "user_id=usr_xxxxxxxx"
# Python import requests with open("batch_record.pdf", "rb") as f: resp = requests.post( "https://meridianintel.app/ingest", headers={"Authorization": "Bearer sk_live_xxxx"}, files={"file": f}, data={ "field": "certificate_of_quality", "tier": "vector", "user_id": "usr_xxxxxxxx", } ) doc_id = resp.json()["doc_id"]
Response
{
"success": true,
"doc_id": "d4f8a2c1",
"filename": "batch_record.pdf",
"chunk_count": 42,
"page_count": 8,
"field": "certificate_of_quality"
}POST /query
Send a question against an ingested document. Returns a grounded answer with source chunks, faithfulness score, and latency. Counts toward your tier's daily query limit.
# curl curl -X POST https://meridianintel.app/query -H "Authorization: Bearer sk_live_xxxx" -H "Content-Type: application/json" -d '{ "query": "Is this batch EU GMP compliant?", "doc_id": "d4f8a2c1", "field": "certificate_of_quality", "tier": "vector", "user_id": "usr_xxxxxxxx", "engine": "auto", "max_tokens": 1024 }'
# Python import requests resp = requests.post( "https://meridianintel.app/query", headers={ "Authorization": "Bearer sk_live_xxxx", "Content-Type": "application/json", }, json={ "query": "Is this batch EU GMP compliant?", "doc_id": "d4f8a2c1", "field": "certificate_of_quality", "tier": "vector", "user_id": "usr_xxxxxxxx", "engine": "auto", "max_tokens": 1024, } ) data = resp.json() print(data["answer"]) print("Faithfulness:", data["faithfulness"])
Request fields
| Field | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Your question, max 2,000 characters |
doc_id | string | Yes | Document ID returned by /ingest |
field | string | No | Domain field — defaults to general. See field list below. |
tier | string | Yes | Your account tier: vector or enclave |
user_id | string | Yes | Your usr_xxxxxxxx ID (visible in Settings) |
engine | string | No | auto (default), mistral, gemini, openai |
max_tokens | integer | No | Max answer length. Capped at tier limit (Vector: 3072, Enclave: 4096) |
Response
{
"answer": "The batch certificate confirms EU GMP compliance...",
"faithfulness": 0.96,
"answer_relevance": 0.91,
"context_recall": 0.88,
"engine": "Gemini 2.5 Flash",
"cache_hit": false,
"used_fallback": false,
"zero_hit": false,
"latency_ms": 1842,
"prompt_tokens": 1204,
"completion_tokens":318,
"source_chunks": [
{
"text": "Certificate of Quality — Batch 15102934...",
"page": 1,
"chunk_index": 0,
"distance": 0.0821,
"ref": "p.1 s0"
}
],
"field": "certificate_of_quality",
"tier": "vector"
}GET /query/export-csv
Download your full query history as a CSV file. Includes query text, answer, faithfulness score, document name, domain field, and UTC timestamp. Useful for audit trails, compliance documentation, and matter files. PII scrubbing rules configured for your account are applied to answer content before export — ensuring exported data matches your platform privacy settings.
# curl curl -G https://meridianintel.app/query/export-csv -H "Authorization: Bearer sk_live_xxxx" --data-urlencode "user_id=usr_xxxxxxxx" --data-urlencode "tier=vector" -o query-history.csv
# Python import requests resp = requests.get( "https://meridianintel.app/query/export-csv", headers={"Authorization": "Bearer sk_live_xxxx"}, params={"user_id": "usr_xxxxxxxx", "tier": "vector"}, ) with open("query-history.csv", "w") as f: f.write(resp.text)
Error codes
| Code | Meaning |
|---|---|
400 | Bad request — missing required field or malformed JSON |
401 | Missing or invalid API key |
402 | Trial expired — upgrade to continue |
403 | Feature not available on your tier |
413 | File too large for your tier limit |
429 | Daily or hourly query limit reached |
500 | Server error — retry after a moment |
503 | Gateway timeout — query took too long, try a shorter document |
Domain fields
The field parameter controls chunking strategy and PII scrubbing defaults. Use the closest match to your document type.
| Value | Use for |
|---|---|
general | General purpose — default for all tiers |
certificate_of_quality | Pharma batch release, CoQ documents |
clinical_trial | Clinical study reports, protocols |
regulatory_submission | FDA/EMA submissions, INDs, NDAs |
legal_contract | Contracts, agreements, MSAs |
financial_report | Annual reports, 10-K, earnings |
audit_report | Internal/external audit findings |
sop | Standard operating procedures |
policy_document | Company policy, compliance frameworks |
research_paper | Academic papers, literature review |
API usage counts toward your tier's daily query and document limits. Cloud engines require Segment or above — Ephemeral is restricted to Mistral-7B. Daily query limits: Ephemeral 10 · Segment 30 · Lattice 100 · Vector 200 · Enclave unlimited.
Security & Privacy
How your data is protected.
Authentication
Three sign-in methods are available, all resolving to the same account:
- Password — email and password set at registration. Minimum 12 characters, one number, one symbol. 5 failed attempts trigger a 5-hour lockout; one more failure permanently disables the account (contact support to restore).
- Email code — 6-digit one-time code sent to your registered address, valid for 10 minutes.
- Google SSO — OAuth 2.0 client-side GIS flow, ID token verified server-side.
Enterprise teams on Enclave tier can additionally use Company SSO with SAML 2.0 or OIDC. Sessions auto-lock after inactivity — 5 minutes for Enclave, 15 minutes for all other tiers — with a 2-minute warning before logout. Passwords expire after 90 days and you will be prompted to update on next login.
New accounts are created at meridianintel.app/signup. Forgot your password? Use the reset link on the sign-in screen — a signed reset link is emailed and expires in 15 minutes.
PII Scrubbing
Nine categories of personally identifiable information are scrubbed before any content reaches an AI model — email, phone, SSN, credit card, IP address, passport, date of birth, address, and names. Pharmaceutical fields use adjusted defaults so lot numbers and catalog IDs aren't incorrectly flagged.
Inference
Primary inference runs on a locally-hosted Mistral-7B model. Your document content does not reach OpenAI, Anthropic, or any third party during normal operation. The AUTO Shield cascade falls back to Gemini 2.5 Flash, then OpenAI gpt-4o-mini, only when local inference is unavailable — and only PII-scrubbed text is ever sent to any cloud provider.
local_only Mode
Enclave-tier users and compliance-sensitive deployments can enable local_only engine mode. In this mode, the platform never contacts any cloud provider under any condition — if local inference cannot complete, the platform returns an honest failure message rather than silently falling back to a cloud API. This provides a verifiable, auditable zero-cloud assurance for government, legal, and regulated-industry use cases.
Data Isolation
Enclave tier users receive a fully isolated per-user vector store collection. Other tiers use a shared collection namespace with strict user-ID and document-ID tagging — retrieval is scoped to the specific document you uploaded, with zero cross-document contamination verified across real multi-document test scenarios.
Full details are in our Privacy Policy and Terms of Service.
FAQ
Common questions. For anything else, use the chat widget on the homepage or email us.
Does Meridian Intel train on my documents?
No. Neither Mazal Arc nor any third-party AI provider uses your uploaded documents or queries to train or fine-tune models.
What happens if I ask something the document doesn't answer?
The platform returns a clear "no relevant content found" response rather than guessing. This is the grounded-answer safeguard in action.
Can I delete my documents?
Yes, at any time via the platform interface or by emailing support@meridianintel.app. Document and query data is removed from active storage immediately on request.
What's the difference between the inference engines?
Mistral-7B runs locally on our infrastructure with zero data leaving our servers. Gemini 2.5 Flash and OpenAI gpt-4o-mini are cloud options, sending only PII-scrubbed content. You can manually select any engine from the overflow menu — selecting an engine disables the AUTO Shield cascade and routes directly to that engine. Toggle AUTO Shield back on to re-enable the Mistral → Gemini → OpenAI cascade. In local_only mode, cloud fallback is disabled entirely — Mistral runs exclusively, and the platform returns an honest failure rather than routing to any cloud API.
What is the local_only engine mode?
A zero-cloud inference assurance for compliance-sensitive use cases. When enabled, your document content never leaves your infrastructure under any condition. Latency is higher than AUTO mode (dependent on your hardware), but the assurance is complete and verifiable — no exceptions, no silent fallbacks.