MCP user analytics Know who uses your MCP. On every AI client.

MCP user analytics shows who calls your server, from which AI clients, and who comes back. Flowlines groups tool calls by user, recognizes the same person across Claude, ChatGPT and other clients when your server identifies them, and shows what each user was trying to do.

100 analyzed MCP sessions per month, free. No credit card. Connect your assistant, then instrument your server.

Who uses your MCP, and where.

An example user list with each person's client, sessions and whether they came back.

PNSession 4b9a · Priya N.Studio · billing-mcpChatGPT3 tool calls1.6 s

Goal

Send last month’s revenue report to the board

Outcome
Not completed
Path
List invoices → Aggregate revenue → Export CSV
Errors
None · every call succeeded

Put together last month’s revenue by plan and send it to the board as a report.

Thinking

I’ll list the invoices, aggregate revenue by plan, then export the result.

Reported outcomeUnfinished

A CSV was exported. The board report the user asked for was not produced.

Can you send that as a PDF instead? The board won’t open a CSV.

Product need detected · PDF export · 31 sessions

Execution map

start1.6 s
Synthetic data · interactive product example

What is MCP user analytics?

MCP user analytics measures who calls an MCP server, from which AI clients, how often and whether they come back. Flowlines provides it per server, with each user's clients, sessions, tools and use cases.

It turns a stream of anonymous tool calls into people you can reason about: the customer who relies on your server every day, the team that tried it once, and the user who keeps running into the same error.

How do I track MCP tool calls by user?

Flowlines groups your MCP server's tool calls by user, with each user's sessions, tools, clients and failures, once your server attaches a stable, permitted user or account identifier to every call.

Calls without an identifier stay in an unknown group rather than being guessed. Keep individual identifiers in access-controlled analytics rather than metric labels, and count retries separately from distinct jobs.

How do I track MCP tool calls by user?
User (synthetic)ClientSessionsStatus
User 014Claude18Returning
User 028ChatGPT12Returning
User 036Claude4New

How do I track MCP usage by AI client?

Flowlines shows calls, users and sessions for each AI client that calls your server, such as Claude, ChatGPT or Cursor, with an unknown group for calls that name no client.

Client names are reported by the calling application and identify the application, not the person. Compare the same jobs across clients before concluding that one works better with your tools.

How do I track MCP usage by AI client?
Client (synthetic)UsersWhat to check
ClaudeUser 014, User 036Which tools each user reaches.
ChatGPTUser 028Whether the same jobs succeed as on Claude.
UnknownCalls without a client nameHow much client metadata is missing.

How do I identify who uses my MCP server?

Flowlines identifies users by the stable, permitted identifier your server attaches to each call, usually the account or user ID from the authentication your server already performs, and can show names or emails when you choose to send them.

Prefer a pseudonymous account ID where you can. Send names and emails only when you are permitted to process them, and never use identity in analytics as a substitute for authorization.

How do I identify who uses my MCP server?
Identity sourceIdentifies a person?Note
Authenticated account or user IDYesThe most reliable option.
Email addressYesPersonal data; keep it out of metric series.
Client nameNoIdentifies the application.
Transport or protocol sessionNoNot durable and not tied to a person.
Anonymous callsNoCounted separately as unknown users.

Can I recognize the same user across clients?

Yes: Flowlines shows one user with activity from Claude, ChatGPT and other clients when your server sends the same user identifier whichever client made the call.

Client names and transport sessions cannot link people on their own. The link comes from your server's own authentication, so a user who signs in to your MCP from two clients is one person in Flowlines, not two unrelated visitors.

Can I recognize the same user across clients?
ScenarioRecognized as one user?Why
Same account ID from Claude and ChatGPTYesYour server sends the same identifier.
Same person, no identifier sentNoCalls stay in the unknown group.
Shared team accountAs one accountSeveral people may sit behind it.

Which users come back?

Flowlines marks each user as new or returning for the selected period and shows which client they came back on.

A returning MCP user was also active in an earlier period; returning users divided by active users gives the returning share. Read it with identity coverage, because anonymous calls cannot be counted as returning.

What is each user trying to do?

Flowlines shows the use cases behind each user's sessions, such as preparing a customer brief, and how those sessions ended: accomplished, partial, failed or unknown.

That separates a power user who gets value every day from one who keeps returning because the job never finishes. Open a session to see the path before deciding which it is.

Connect your assistant. Instrument your MCP.

The Flowlines plugin gives your assistant the setup workflow. Connecting the assistant does not automatically instrument your MCP server.

  1. Connect FlowlinesUse the button to open the supported setup path in your assistant.
  2. Instrument the serverUse the plugin's MCP observability workflow. Review what will be captured before sending production data.
  3. Verify the first callsCheck tools, identity and session coverage. Add outcome context where supported and keep missing data visible.

MCP user analytics: common questions

How do I track MCP tool calls by user?

Flowlines groups tool calls by user once your server attaches a stable, permitted user or account identifier to each call. Calls without one stay in an unknown group.

How do I track MCP usage by AI client?

Flowlines shows calls, users and sessions for each AI client, such as Claude, ChatGPT or Cursor, with an unknown group. Client names identify the application, not the person.

Can I recognize the same user across Claude and ChatGPT?

Yes. Flowlines shows one user across clients when your server sends the same user identifier whichever client made the call. Client names alone cannot link people.

How do I identify who uses my MCP server?

Flowlines identifies users by the stable identifier your server attaches to each call, usually the account ID from your existing authentication. Names and emails are optional.

Which users come back to my MCP server?

Flowlines marks each user as new or returning for the selected period. The returning share is returning users divided by active users, read with identity coverage.

Start with the traffic you already have

See the work behind the calls.

Connect Flowlines and take the next step with your assistant.