Axiom MCP Server

Integrates with Axiom for executing APL queries and listing datasets, enabling log analysis, anomaly detection, and data-driven decision making.

Skills

Explore the skills and capabilities of this skillset.

queryApl

# Instructions 1. Query Axiom datasets using Axiom Processing Language (APL). The query must be a valid APL query string. 2. ALWAYS get the schema of the dataset before running queries rather than guessing. You can do this by getting a single event and projecting all fields. 3. Keep in mind that there's a maximum row limit of 65000 rows per query. 4. Prefer aggregations over non aggregating queries when possible to reduce the amount of data returned. 5. Be selective in what you project in each query (unless otherwise needed, like for discovering the schema). It's expensive to project all fields. 6. ALWAYS restrict the time range of the query to the smallest possible range that meets your needs. This will reduce the amount of data scanned and improve query performance. 7. NEVER guess the schema of the dataset. If you don't where something is, use search first to find in which fields it appears. # Examples Basic: - Filter: ['logs'] | where ['severity'] == "error" or ['duration'] > 500ms - Time range: ['logs'] | where ['_time'] > ago(2h) and ['_time'] < now() - Project rename: ['logs'] | project-rename responseTime=['duration'], path=['url'] Aggregations: - Count by: ['logs'] | summarize count() by bin(['_time'], 5m), ['status'] - Multiple aggs: ['logs'] | summarize count(), avg(['duration']), max(['duration']), p95=percentile(['duration'], 95) by ['endpoint'] - Dimensional: ['logs'] | summarize dimensional_analysis(['isError'], pack_array(['endpoint'], ['status'])) - Histograms: ['logs'] | summarize histogram(['responseTime'], 100) by ['endpoint'] - Distinct: ['logs'] | summarize dcount(['userId']) by bin_auto(['_time']) Search & Parse: - Search all: search "error" or "exception" - Parse logs: ['logs'] | parse-kv ['message'] as (duration:long, error:string) with (pair_delimiter=",") - Regex extract: ['logs'] | extend errorCode = extract("error code ([0-9]+)", 1, ['message']) - Contains ops: ['logs'] | where ['message'] contains_cs "ERROR" or ['message'] startswith "FATAL" Data Shaping: - Extend & Calculate: ['logs'] | extend duration_s = ['duration']/1000, success = ['status'] < 400 - Dynamic: ['logs'] | extend props = parse_json(['properties']) | where ['props.level'] == "error" - Pack/Unpack: ['logs'] | extend fields = pack("status", ['status'], "duration", ['duration']) - Arrays: ['logs'] | where ['url'] in ("login", "logout", "home") | where array_length(['tags']) > 0 Advanced: - Make series: ['metrics'] | make-series avg(['cpu']) default=0 on ['_time'] step 1m by ['host'] - Join: ['errors'] | join kind=inner (['users'] | project ['userId'], ['email']) on ['userId'] - Union: union ['logs-app*'] | where ['severity'] == "error" - Fork: ['logs'] | fork (where ['status'] >= 500 | as errors) (where ['status'] < 300 | as success) - Case: ['logs'] | extend level = case(['status'] >= 500, "error", ['status'] >= 400, "warn", "info") Time Operations: - Bin & Range: ['logs'] | where ['_time'] between(datetime(2024-01-01)..now()) - Multiple time bins: ['logs'] | summarize count() by bin(['_time'], 1h), bin(['_time'], 1d) - Time shifts: ['logs'] | extend prev_hour = ['_time'] - 1h String Operations: - String funcs: ['logs'] | extend domain = tolower(extract("://([^/]+)", 1, ['url'])) - Concat: ['logs'] | extend full_msg = strcat(['level'], ": ", ['message']) - Replace: ['logs'] | extend clean_msg = replace_regex("(password=)[^&]*", "\1***", ['message']) Common Patterns: - Error analysis: ['logs'] | where ['severity'] == "error" | summarize error_count=count() by ['error_code'], ['service'] - Status codes: ['logs'] | summarize requests=count() by ['status'], bin_auto(['_time']) | where ['status'] >= 500 - Latency tracking: ['logs'] | summarize p50=percentile(['duration'], 50), p90=percentile(['duration'], 90) by ['endpoint'] - User activity: ['logs'] | summarize user_actions=count() by ['userId'], ['action'], bin(['_time'], 1h)

listDatasets

List all available Axiom datasets

getDatasetInfoAndSchema

Get dataset info and schema

Configuration

Customize the skillset to fit your needs.
MCP Server

Connect to MCP Server

Axiom MCP Server

メヌルマヌケティングアシスタント
リヌドを芋぀け、3日間のフォロヌアップメヌルシヌケンスを自動的に送信したす。
AI プログラマヌ
AI Programmer は、あなたの生のリリヌスノヌトを最新の、公開可胜な HTML ペヌゞに倉換する AI ペヌゞです。
チケットマネヌゞャヌ
フォヌムやデヌタベヌスからのサポヌトチケットを収集、分析、管理し、効率的に远跡、優先順䜍付け、応答を支揎したす。
AIラむタヌ
AI補品やブランドに぀いお教えおください。ブランドの声ず補品の詳现に合わせお、魅力的なマヌケティングコピヌ、蚘事、゜ヌシャルメディア投皿を䜜成し、関連するリンクずむラストを添付したす。
カスタマヌサポヌト文曞䜜成者
カスタマヌサポヌトチヌムが高品質なサポヌトドキュメントFAQ、チケット返信、謝眪状、SOPを䜜成するのを支揎するAIアシスタント。内郚リ゜ヌスず顧客向け資料の䞡方の䜜成をガむドしたす。
オフィス文曞ヘルパヌ
瀟内業務向けに蚭蚈されたAI仮想事務アシスタント。お知らせ、䌚議録、芁玄、フォヌム、手順曞、人事蚘録など、高品質な瀟内文曞の迅速な䜜成をサポヌトしたす。
Discourse コミュニティマネヌゞャヌ
Discourse コミュニティマネヌゞャヌ゚ヌゞェントは、ナヌザヌポストに察しお明確で芪しみやすく、構造化された返信を迅速に生成するのを支揎し、コミュニティのモデレヌションをより簡単か぀プロフェッショナルにしたす。
コミュニティアクティビティアナリスト
コミュニティのスクリヌンショットを分析し、゚ンゲヌゞメントの傟向ずディスカッションのハむラむトを報告したす。コミュニティのやり取りのスクリヌンショットをアップロヌドするず、゚ヌゞェントが゚ンゲメントレベル、䞻芁なディスカッショントピック、および泚目のハむラむトを芁玄した明確なマヌクダりンレポヌトを生成したす — コミュニティマネヌゞャヌ、マヌケタヌ、補品チヌムに最適です。
ブランドデザむナヌ
スタヌトアップのデゞタル補品向けに特別に蚭蚈されたブランドマヌケティングAIアシスタントで、Product HuntやAppSumoなどのプラットフォヌムに適したオンラむンプロモヌション玠材を迅速に生成し、ビゞュアルクリ゚むティブ、プロモヌションスロヌガン、ブランドトヌン、セヌルスポむントのコミュニケヌションをカバヌしたす

Frequently Asked Questions

䞀蚀で説明Bika.aiずは䜕ですか
Bika.aiは䜕がそんなにナニヌクなのですか
"BIKA" ずいう略語は䜕を意味したすか
Bika.aiはどのようにしおAI自動化を実珟しおいたすか
Bika.aiは無料で䜿甚できたすか
Bika.aiずChatGPT、GeminiなどのAIアシスタントずの違いは䜕ですか
Bika.aiず倚次元スプレッドシヌトの違いは䜕ですか
Bika.aiでは、単䞀のテヌブルのデヌタ量が数䞇行、数十䞇行に達し、関連参照が増えた堎合、動䜜が遅くなりたすか?
Bika.aiの「スペヌスステヌション」ずは䜕ですか
支払い埌、いく぀の有料スペヌスを持っおいたすか
「リ゜ヌス」ずは䜕ですか
Bika.aiのチヌムはどのように「自瀟の補品を自ら䜿っおいる」のですか?
Bika.aiはどのようにしお䜜業効率を向䞊させたすか
Bika.aiのAI自動化機胜にはどのような特城がありたすか
Bika.aiの自動化テンプレヌトずは䜕ですか
Bika.aiはチヌム協力ず暩限機胜をサポヌトしおいたすか

Embark on Your AI Automation