yanalytics_get_tablesLABSCO SUMMARY
Analytics questions the dashboard makes you assemble by hand.
The value of putting channel metrics behind SQL is combination: comparing periods, filtering by a dimension and sorting by something the dashboard does not offer as a view. The assistant discovers the columns itself, so you do not have to know YouTube's metric names to ask. Read-only removes any worry about pointing it at a live channel, and the setup — licensed driver, Maven build, one Google authentication — is the same shape as every other CData source.
What it is
A local, read-only MCP server that exposes YouTube Analytics as a relational SQL model. It wraps CData's JDBC driver for YouTube Analytics, which presents channel and video metrics as tables, so an assistant can find the right dimensions and query them live instead of reading a dashboard.
What you get
- The tables available in YouTube Analytics, returned as CSV with a header row —
get_tables - The columns on a chosen table, so a query uses the real metric and dimension names —
get_columns - A SQL SELECT executed against live YouTube Analytics data —
run_query - Tool names that start with the
Prefixin your.prpfile (yanalytics_in the sample), so multiple CData servers coexist in one client - A
Tablessetting that only picks which tables also get a ready-made description (blank means none); it does not limit what the tools can list or query, so limit the connection or the account it signs in with
Requirements
A YouTube channel and account, plus CData's JDBC driver for YouTube Analytics downloaded and licensed separately — java -jar cdata.jdbc.yanalytics.jar --license takes your name, email and TRIAL or a license key. Java and Maven: mvn clean install builds the runnable JAR. Then a .prp file with the prefix, server name and version, the driver JAR path, the driver class cdata.jdbc.yanalytics.YAnalyticsDriver, and the JDBC connection string from the driver's connection-string utility, which opens a browser for the Google OAuth step. The client entry runs java with the JAR and the .prp path. Communication is over stdio, so client and server must be on the same machine. MIT licensed.
Setup effort
Build from source — clone the repository, then point your client at the binary
USE CASES
Comparing performance across periods
Ask in plain language and let the assistant build the query over the real metrics and dimensions.
Finding out what data is actually available
List the tables and inspect the columns to see which metrics and dimensions you can combine.
Answering a question the dashboard has no view for
Write a SELECT that filters and sorts the way you need, rather than working around a fixed report.
Pairing channel data with another source
Run this beside another CData server in the same client, each with its own prefix.
3 tools
Listed in project docs. Your client may show a different list.
yanalytics_get_columnsyanalytics_run_queryBEFORE YOU INSTALL
What to know first
Tools you get
3 tools named in the project's documentation. Tool names start with the Prefix in the .prp file, so the sample Prefix=yanalytics gives yanalytics_get_tables, yanalytics_get_columns and yanalytics_run_query. Read-only: run_query executes SELECT only, even though the README's usage notes say the client can write, update and delete.
Where it runs
Both documented setups run the server on your machine.
INSTALLATION
Connect your client
Clone the repository, then point your client at the binary. This one is built from source rather than installed with a single command.
Server setup
git clone https://github.com/cdatasoftware/youtube-analytics-mcp-server-by-cdata.git
cd youtube-analytics-mcp-server-by-cdata
mvn clean installDownload and install the CData JDBC Driver for YouTube Analytics from https://www.cdata.com/drivers/youtubeanalytics/download/jdbc
License the driver: in the driver's lib folder run java -jar cdata.jdbc.yanalytics.jar --license and enter your name, email, and "TRIAL" (or your license key)
Run java -jar cdata.jdbc.yanalytics.jar to open the Connection String utility, configure and test the connection, then copy the connection string
Create youtube-analytics.prp with:
Prefix=yanalytics
ServerName=CDataYAnalytics
ServerVersion=1.0
DriverPath=<YOUR_DRIVER_PATH>
DriverClass=cdata.jdbc.yanalytics.YAnalyticsDriver
JdbcUrl=<YOUR_JDBC_URL>
Tables=Tables only picks which tables also get a ready-made description for your assistant, and empty means none; the server can still list and query every table your connection string reaches, so to keep data out of reach, limit that connection or the account it signs in with.
Add the mcpServers entry below to claude_desktop_config.json and restart the client
(optional, to run standalone) java -jar <YOUR_PATH_TO_CDATA_MCP_JAR_WITH> <YOUR_PATH_TO_YOUTUBE_ANALYTICS>
MCP Clients
Claude Desktop — Windows, Linux, macOS
{
"mcpServers": {
"youtube-analytics": {
"command": "<YOUR_PATH_TO_JAVA>",
"args": [
"-jar",
"<YOUR_PATH_TO_CDATA_MCP_JAR_WITH>",
"<YOUR_PATH_TO_YOUTUBE_ANALYTICS>"
]
}
}
}