syncly-dataset-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SYNCLY_DB_PATH | Yes | Absolute path to the DuckDB database file | |
| SYNCLY_CONFIG_PATH | Yes | Absolute path to the datasets.yaml configuration file |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_data_queriesA | List all available data queries (datasets) with row counts and date ranges. Always call this first to discover query_id values for subsequent tools. |
| describe_data_queryA | Describe a data query: schema, row count, date range, and sample rows. Args: query_id: Dataset ID from list_data_queries |
| get_metric_summaryA | Compute metric summaries for a dataset. Scalar metrics: post_count, engagement_sum, avg_engagement, like_sum, comment_sum, share_sum Distribution metrics: sentiment_distribution, platform_distribution, brand_distribution, category_distribution When metrics is omitted, returns the default set: post_count, engagement_sum, avg_engagement, sentiment_distribution, platform_distribution. Args: query_id: Dataset ID from list_data_queries metrics: List of metric names to compute (default: all 5 standard metrics) filters: Optional filters dict. Keys: platform, brand, sentiment, category, date_from (ISO date), date_to (ISO date) |
| search_postsA | Search posts by keyword and/or filters. Returns posts with text snippets. Searches across text column and all searchable columns (ILIKE, case-insensitive). Either text_query or filters (or both) must be provided. Args: query_id: Dataset ID from list_data_queries text_query: Keyword or phrase to search (e.g. "배송 지연") filters: Dict with optional keys: platform, brand, sentiment, category, date_from (ISO date string), date_to (ISO date string) limit: Max results, up to 100 |
| get_posts_by_idsA | Retrieve full post details for a list of post IDs (max 50). Returns found posts and a list of any IDs not found. Args: query_id: Dataset ID from list_data_queries post_ids: List of post ID strings to retrieve (max 50) |
| get_ranked_postsA | Return posts ranked by a metric or recency (max 100, descending). Args: query_id: Dataset ID from list_data_queries rank_by: Metric to rank by. One of: engagement_count, like_count, comment_count, share_count, created_at filters: Dict with optional keys: platform, brand, sentiment, category, date_from, date_to limit: Max results, up to 100 |
| search_vocA | Search Voice of Customer posts by keyword and/or sentiment. Searches both main text and summary columns (if available). When only sentiment is provided (no query), returns top posts by engagement. Args: query_id: Dataset ID from list_data_queries query: Keyword to search in post text and summaries sentiment: Filter sentiment: "positive", "negative", or "neutral" filters: Additional filters: platform, brand, category, date_from, date_to limit: Max results, up to 100 |
| safe_queryA | Execute a SELECT-only SQL query against a dataset table. Safety: DROP/DELETE/UPDATE/INSERT/CREATE/ALTER/INSTALL/LOAD and other dangerous keywords are blocked. LIMIT is auto-applied if missing (max 500 rows). Args: query_id: Dataset ID (for validation context) sql: A SELECT SQL query, e.g. "SELECT id, sentiment FROM social_posts LIMIT 10" limit: Max rows to return (capped at 500) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/rimmade/syncly-dataset-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server