During the incident
An engineer asks what the payments service logged in the last 15 minutes. Memtro searches logs-* for the service and level, sorts by timestamp and returns the lines with the query it used.
Search, count and aggregate your Elasticsearch indices in plain English, nothing written.
Connect Elasticsearch, or OpenSearch, with its endpoint and an API key or a username and password, and Memtro can check cluster health, list indices with document counts and sizes, read an index's field mapping, search by Lucene query string or query DSL, count matches exactly, and aggregate by top values, time bucket or statistics. It only reads: no document is written or deleted and no setting is changed.
Ask in plain English from chat, your editor, a scheduled job or your own agent. The model picks the right Elasticsearch tool, reads what it needs, and answers with the source cited.
Once Elasticsearch is connected, these are the kinds of things people ask. Plain questions, no syntax. If the answer lives partly in another system you have connected, Memtro looks there too.
How many documents in logs-* have status:500 in the last hour?
What are the top 10 hosts by error count today?
Show me errors per hour for the last 24 hours in logs-nginx-*
Which indices are over 50 GB, and is the cluster green?
Find the last 20 log lines mentioning 'connection refused' from payments-api
An engineer asks what the payments service logged in the last 15 minutes. Memtro searches logs-* for the service and level, sorts by timestamp and returns the lines with the query it used.
Someone wants to know how many orders landed in the orders index last month by country. Memtro runs a terms aggregation on country.keyword with a date filter and returns the buckets, not ten thousand hits.
The teams that lean on Elasticsearch most, a question each of them asks, and what they connect beside it.
A record in Elasticsearch is rarely the whole story. Connect the systems that hold the rest and Memtro checks them together, then remembers what it learned so the next question starts further along.
Using something else for the same job, or both? Each connector has its own tools; connect as many as you like.
In Kibana open Stack Management → API keys → Create API key with read and view_index_metadata on the indices Memtro should see, and monitor on the cluster for health and sizes
Copy the key in its encoded form; it is shown once. A username and password work instead
Paste it with the Elasticsearch endpoint (not Kibana's, with the port if not 443) into Connections → Elasticsearch in Memtro and connect
Ask which index grew most this week, or how many 500s the API logged today
Chat in the dashboard, the OpenAI-compatible API, scheduled jobs, and any MCP client: Claude Code, OpenCode, Cursor, Claude Desktop. The Elasticsearch tools are the same everywhere.
Not yet. Today every Elasticsearch tool reads, searches or lists. When the connector gains actions, each is marked, granted by name per team and used only when a person asks for exactly that, so nothing is created, sent, updated or deleted until you say so.
A personal connection serves only your own requests. A shared connection serves the organisation: everyone, or only the teams an admin chooses. Admins can always add shared connections; other members need the permission.
Credentials are encrypted at rest. Tool results are cached briefly so agent loops do not repeat identical calls, and the facts the model extracts are saved to your organisation's memory with provenance (system, record and link) so they can be checked and superseded.
API key or username and password. In Kibana open Stack Management → API keys → Create API key with read and view_index_metadata on the indices Memtro should see, and monitor on the cluster for health and sizes.
Seven-day free trial, then one monthly price per organisation. Connectors, jobs and memory are never metered.
Sign in, add a provider key, create an API key and point your tools at Memtro. It takes about five minutes.
7-day free trial · card on file, nothing charged until it ends · cancel any time