Matomo tools in Cogny
Cogny's Matomo integration exposes 21 tools (12 read, 6 write, 3 destructive) to an AI agent over MCP. The same tools are available on every plan, from your own AI client or inside the Cogny app.
- Read (12): only reads data.
- Write (6): creates or changes something.
- Destructive (3): deletes, removes or replaces something.
Over MCP your own AI client asks before it runs a write. To take a tool away from your agent, block it in Settings → Integrations. Plans, approvals and limits.
Notes
Matomo connects with an auth token and the URL of your Matomo, either Matomo Cloud or one you host yourself. The token has the permissions of the Matomo user who created it. View access is enough for every report. create_goal, update_goal and delete_goal need Write or Admin access on the site.
Reports return 100 rows by default and at most 1,000 per call.
Known gaps
- There is no fully read-only token. With Matomo's default settings a user with View access can still add annotations and save segments of their own, so
create_annotationandcreate_segmentwork with a View-only token. Keep the write tools set to ask first. - A self-hosted Matomo has to be reachable from the internet over https. One that is only available inside a private network or over plain http cannot be connected.
- No tools for the visitor log, ecommerce item reports, funnels, heatmaps, session recordings, A/B tests or Tag Manager.
- No tools for adding or editing websites or users.
- A new goal counts conversions from the moment it is created. Matomo does not apply it to past visits.
All tools
| Tool | Kind | What it does |
|---|---|---|
get_server_info | Read | Check the connection and report the Matomo version and how many sites the token can see. |
list_sites | Read | List the websites this Matomo token can see, with their site ids. |
get_visits_summary | Read | Get the headline traffic numbers for a site: visits, unique visitors, actions, bounce rate and time on site. |
get_page_urls | Read | Get page performance for a site: pageviews, unique pageviews, entries, exits, bounce rate and time per page URL. |
get_referrers | Read | Get where a site's visits came from: channels, referring websites, search engines, keywords, campaigns, social networks or AI assistants. |
get_countries | Read | Get a site's visits, actions and conversions per visitor country. |
get_device_types | Read | Get a site's visits, actions and conversions per device type (desktop, smartphone, tablet and so on). |
get_events | Read | Get a site's tracked events with their counts and values, grouped by event category, action or name. |
get_goal_conversions | Read | Get goal conversions, conversion rate and revenue for a site, for all goals together or one goal. |
list_goals | Read | List the goals defined for a site, with what each one matches on. |
list_annotations | Read | List the annotations on a site's reporting timeline, optionally for one date or period. |
list_segments | Read | List the saved segments the token's user can see, with their definitions. |
create_annotation | Write | Create an annotation on a site's reporting timeline for a given date. |
update_annotation | Write | Update the date, text or star of an existing annotation. |
delete_annotation | Destructive | Delete an annotation from a site's reporting timeline. |
create_goal | Write | Create a goal on a site that counts a conversion when a visit matches a URL, page title, download, outlink or event. |
update_goal | Write | Update an existing goal's name, match rule, revenue or description. |
delete_goal | Destructive | Delete a goal from a site, which also removes its conversion reports. |
create_segment | Write | Create a saved segment that reports can then be filtered by. |
update_segment | Write | Update a saved segment's name, definition, site or sharing. |
delete_segment | Destructive | Delete a saved segment. |
Exact input schemas come from tools/list once Matomo is connected; the free plan is enough to check. Missing something? Your agent can ask for it with request_feature.