mcpbeat Sign in

Liliphant MCP Server

by liliphant-mcp Your server? Claim it
answering

Liliphant is answering right now. Last checked 13 min ago. It exposes 8 tools. Last commit 31 Oct 2026.

Liliphant turns every meeting into connected knowledge, decisions, and actionable insights.

Uptime history 47 hours of history · worst hour 67%
47 hours agonow
98.9%
Uptime 24h
90 of 91 checks
8
Tools
read from the server
2039 ms
Response time
average over 24h
0
Stars
last commit 31 Oct 2026

What changed 2

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 2 November 2026. No other catalogue keeps this.

2 Nov a tool description was rewritten ask_a_question
2 Nov a tool changed the parameters it asks for ask_a_question

Liliphant does not always answer

Over the last week it answered 99.4% of our checks. We check every 15 minutes, so you hear about the next outage within the hour — not from your users.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 13 min ago.

run in your terminal
claude mcp add mcp --transport http https://mcp.liliphant.com/mcp
Settings → Connectors → Add custom connector, then paste this address
https://mcp.liliphant.com/mcp
~/.codex/config.toml
[mcp_servers.mcp]
url = "https://mcp.liliphant.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://mcp.liliphant.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "mcp": {
      "type": "http",
      "url": "https://mcp.liliphant.com/mcp"
    }
  }
}

Available tools 8

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

call
call_any_api_of_liliphant
Send a POST, PUT, PATCH or DELETE request to any Liliphant API API endpoint for the user and return its response. Use it once you know the exact endpoint: look it up with get_liliphant_api_docs first to get its URL, headers, query params and body, unless the skill or a dedicated tool on this server already gives them exactly. Load the quickstart-liliphant skill first: it explains which tool to use when. For GET requests use call_any_read_api_of_liliphant. Pass the full url with path variables filled in, the headers the docs list, query params in `query` (not in the url) and the JSON body in `body`. For the auth header the docs name (Authorization, proxy_auth_token, x-api-key, ...), pass it with an empty value "": the signed-in user's token is filled in automatically. Never put a real or made-up token there; if the docs name no auth header, leave it out and the token is sent as Authorization. If the API needs the user to sign in, they're asked the first time. Returns { status, ok, headers, data }: the HTTP status and the response body, including error details on failure.
call_any_read_api_of_liliphant
Read from any Liliphant API API endpoint with a GET request for the user and return its response. Use it once you know the exact endpoint: look it up with get_liliphant_api_docs first to get its URL, headers, query params and body, unless the skill or a dedicated tool on this server already gives them exactly. Load the quickstart-liliphant skill first: it explains which tool to use when. For POST, PUT, PATCH and DELETE use call_any_api_of_liliphant. Pass the full url with path variables filled in, the headers the docs list, and query params in `query` (not in the url). For the auth header the docs name (Authorization, proxy_auth_token, x-api-key, ...), pass it with an empty value "": the signed-in user's token is filled in automatically. Never put a real or made-up token there; if the docs name no auth header, leave it out and the token is sent as Authorization. If the API needs the user to sign in, they're asked the first time. Returns { status, ok, headers, data }: the HTTP status and the response body, including error details on failure.
liliphant
get_liliphant_api_docs
Browse the Liliphant API API docs, one level at a time. Call it without arguments to get the top level: the modules and pages with a short description and the endpoints they hold. Call it with `path` set to a module's or page's link (or path) to get what is inside it; each listing links the next level. Call it with `path` set to an endpoint's link ending in ".openapi.yml" to get that endpoint as an OpenAPI file: method, url, headers, query params, path variables, a request body example and sample responses. Fetch only the level you need.
search_liliphant_docs
Search the Liliphant API documentation with a natural-language question. Returns the most relevant passages with their page URLs.
ask
ask_a_question
Answers a plain-language question from the company's processed meetings, with a headline, a short answer, an optional chart and the quotes it is based on. Use it whenever someone asks what was said, decided or promised in their meetings. Leave out meetingId to search every meeting the asker may see; set it to answer from one meeting only. Who may call it: any member of the company. An owner or admin asks over every meeting in the company; a member asks only over the meetings they may see (ones they booked or were invited to, plus their teams' meetings). The company comes from the x-company-id header. meetingId comes from List Meetings (meetings[].id). This is slow: a minute is normal and up to three minutes happens, so allow a long timeout. A question it cannot answer is still a 200 with chart null and the reason in body: "No conversations in this company yet" when the company has no processed meetings or meetingId names a meeting that does not exist or that the asker may not see; "No conversation covers that yet" when nothing matches; "Could not answer that" when the engine fails, with the reason in body and any failures in warnings and a "What went wrong" block in detail. tags narrow a company-wide question to meetings carrying any of those tags or topic names. Each tag is normalised before matching: trimmed, upper-cased, spaces and underscores turned into dashes, other characters dropped, so "Renewal terms" matches the topic "Renewal terms". tags are ignored when meetingId is set. id is the same for the same question (case and spacing ignored) and the same meetingId, so it can be used to keep the answer on the board with Keep Question on Board. Quotes are only traced to transcript lines in this company's meetings; one that cannot be traced keeps its words with affiliation "from the conversation" and no meetingId. Errors: 400 VALIDATION_FAILED for a missing, too short or too long question, an empty or too long meetingId, a tag over 40 characters or with no letter or digit, more than 10 tags, or any other field; 401 when the token is missing or expired; 403 SPENDING_STOPPED when a Liliphant admin stopped this company's AI answers. POST https://meet-analyzer-api.50agents.com/api/v1/ui/ask
get
get_me
Returns who is signed in and every company they can open, with their role in each. This is the first call a client makes after sign-in: almost every other call needs a company id from companies[].id. Any signed-in person may call it. It also does housekeeping on the way: it makes sure the person's personal company exists and turns any email invitations waiting for them into memberships, so a company someone was just added to shows up here. The x-company-id header is optional here. currentCompanyId tells you which company the server will use for requests that send this header; with no header, or one naming a company the person is not in, it falls back to their personal company instead of failing. Other fields: companyLimit is how many companies a person may create (null means no limit) and companiesCreated is how many they have created so far, for a "New company" button. onboardedAt on each company is null until its setup is finished. Errors: 401 NOT_SIGNED_IN when no token is sent; 401 SESSION_EXPIRED when the token is no longer valid. GET https://meet-analyzer-api.50agents.com/api/v1/ui/me
meetings
list_meetings
Lists the analysed meetings the caller may see, as cards, newest first, with the filter choices the Meetings screen offers. Use it to show or search the meeting list, and to find a meetingId for Get Meeting, Get Meeting Transcript, Get Share Link or the notes routes (meetings[].id). Any member of the company may call it, but what comes back depends on their role. An owner or admin sees every meeting in the company. A member sees only the meetings they booked or were invited to, plus every meeting of each team they are in (only their own when they are in no team). It never returns meetings from a company other than the one named in x-company-id. Paging: send limit (1 to 100) to get pages. When there are more results, nextCursor holds a token; pass it back as cursor to get the next page. nextCursor is null on the last page. Without limit, every matching meeting comes back in one response. Never build a cursor yourself. The first page (no cursor) also carries the extras: filters (the types, tags, people and teams that actually occur, each with a count), totals (all meetings the caller may see, and how many of them still need attention, ignoring the filters) and processing (up to 50 meetings the caller may see that are still being analysed, newest first). On later pages filters and totals are null and processing is empty, so keep the first page's copy. meetingCount is the number of matches across all pages. In filters.people, team is true for someone who was ever on the company's side of a call. Filters combine: q searches title, headline, summary, type, tag, a participant's name or email, a team's name, or an exact meeting id; type, tag and person take values from filters; teamId limits to meetings booked by or with that team's members (an id from filters.teams[].value); within keeps meetings from the last N days; from and to pick a custom date range instead; status is open (still needs something) or handled. Team filter: an owner or admin may pass any of the company's teams. A member may pass only a team they are in, and filters.teams lists only their teams. A company with no meetings gets an empty list, not an error. Errors: 400 VALIDATION_FAILED when a query value is out of range, a date cannot be read, or the cursor is not one this server issued; 401 when not signed in or the sign-in expired; 404 TEAM_NOT_FOUND when teamId is not one of this company's teams, or (for a member) not a team they are in. GET https://meet-analyzer-api.50agents.com/api/v1/ui/meetings
quickstart
quickstart-liliphant
Liliphant API quickstart: read the user's meetings and ask questions answered from what people actually said. Load before any Liliphant task. Call this to load the full instructions for this skill before doing the task.

Endpoints

URLTransportStateLatencyChecked
https://mcp.liliphant.com/mcp streamable-http answering 1237 ms 13 min ago

Alternatives to Liliphant

same job, measured the same way
Sekichi
by surp-renz

Knowledge accumulation for AI coding agents. Records decisions, problems, and insights as context.

answering
Agent-Native Brain
by builderio

Cited company knowledge from Slack, meetings, transcripts, and decisions

answering
SEOPro AI
by alpha-ai-labs

Turn Search Console data into SEO actions, content, publishing, indexing, and AI insights.

18 tools answering
SayBriefly
by saybriefly

Know what was agreed with every client: meetings, decisions, to-dos and briefs from SayBriefly.

answering
Darwin
by meetdarwin

Read and manage your Darwin website AI agent: conversations, leads, meetings, knowledge and tests.

answering
Revoir
by agenceelan

French-language meeting records: transcript, shared-screen content, decisions and actions.

answering
branchly
by branchly

Connect your agent to branchly: manage content, prompts, actions, learn from analytics and insights

37 tools answering
Connections
by connections

Post deals, host events, import contacts and keep notes and memory across every assistant.

answering

Liliphant — questions

Answers built from our own checks of this server.

What can Liliphant do?
It exposes 8 tools, read directly from the server on our last check. Among them: ask_a_question, call_any_api_of_liliphant, call_any_read_api_of_liliphant, get_liliphant_api_docs, get_me, list_meetings and 2 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Liliphant mostly used for?
Its tools cluster around call and liliphant. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Liliphant working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 90 of 91 checks got a reply (98.9%), average response time 2039 ms. The bar chart above shows every period we have measured.
How do I connect Liliphant?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Liliphant need an API key?
No. Liliphant completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 8 of them are readable on this page. This is what we observed, not what the docs claim.
Is Liliphant open source?
We cannot say either way: 0 stars on GitHub, but we could not determine the licence, and without one the code is not open source by default.