MCP App Store
by KeenEthics

Overview

Orion works 24/7, analyzing trends, uncovering opportunities, and teeing up your next move before you even log in. Your data is only telling half the story. Orion connects your business metrics with external data sources.

Tools

ask_orion

ChatGPT
Send a message to Orion and get an AI-powered data analysis response. Args: message: The question or analysis request to send to Orion. user_id: The user ID sending the message. project_id: Optional project ID to scope the analysis. conversation_id: Optional existing conversation ID to continue. checkpoint_answers: Answers the user approves for this conversation. Return the conversation_id with the response content. If escalation is present, it is a structured Warp Drive refusal. Offer Full Analysis only when can_escalate is true; after the user explicitly agrees, use continue_with_full_analysis with the exact question and IDs in this handoff. Do not retry the refusal as ordinary chat. If Orion returns checkpoint questions, show them to the user. Submit their answers through checkpoint_answers on the next call. Also restate the chosen answers in message as plain text, so the model reads them. Text approval alone does not record checkpoint answers.

continue_with_full_analysis

ChatGPT
Continue a Warp Drive refusal in Full Analysis in the same conversation. Call only after the user explicitly asks to continue with Full Analysis. This first asks the backend to authorize and persist Full Analysis, then resends the handoff's original question. Mode stays full for later turns until return_to_warp_drive is called. A denied mode change never sends the question. The resend addresses Orion so it also triggers in rooms. Full Analysis may still ask for clarification or fail. If status is recorded, the message was saved without starting a new analysis.

create_conversation

ChatGPT
Start a new Orion conversation. Args: user_id: The user ID creating the conversation. project_id: Optional project ID to scope the conversation. title: Optional title for the conversation.

create_project

ChatGPT
Create a new Orion project. The caller becomes a member of it. Requires an admin, analyst, or data hero role, or group admin or group analyst rights; other callers are rejected. Args: name: The project name. description: Optional project description.

create_state_page

ChatGPT
Create a persistent shared workspace that people and agents can inspect and edit. State combines a Markdown introduction, typed tables of evolving records, and query-driven cards. Use it for project trackers, decision registers, inventories, or an agent activity board. Use create_wiki_page for prose-only documentation. Check list_state_pages first and reuse a suitable page; do not create one per run. For a custom experience choose blank, call describe_state, then define_state_schema to define tables and pinned views with display settings. Once applied, add real records with write_state data ops, and verify with query_state. Templates include sample rows: inspect and adapt them before presenting the page as real. Returns page and state; page.id is the reference for subsequent tools. project_id enables the page in that project's context; update_wiki_page edits prose and metadata. The creator owns the page and owners bypass ordinary locks: a bot-owned page does not establish a human approval boundary.

create_wiki_page

ChatGPT
Create a new wiki/knowledge base page (applied immediately). Requires analyst, admin, or group-analyst permissions; other callers are rejected. Args: title: The page title. content: The page content in markdown. parent_id: Optional parent page ID to nest under. summary: Optional short description. tags: Optional list of tags. page_type: Either 'document' or 'folder'.

delete_artifact

ChatGPT
Delete a slide deck, dashboard, or report artifact. Args: artifact_id: The artifact ID to delete.

describe_state

ChatGPT
Describe a state page: tables, columns (type, enum values, allowed status transitions, link kinds), row counts, saved views, current version, locks, and whether you may write data or schema. Call this before write_state or define_state_schema, and pass its version as base_version when the change depends on what you read. links resolves orion:// URIs. Link state in_context: usable. link_only: lives in another project; cite its title and href, and never fetch its content, even if another tool could. Use the row's own captured text (e.g. captured_note) instead. no_access: the user cannot see it; do not guess what it is. missing or invalid: the link is broken. Links are optional; plain text columns are fine.

disable_project_wiki_page

ChatGPT
Disable a knowledge base page for a project. The page itself is not deleted. Requires analyst-level access to the project. Args: project_id: The project ID. wiki_page_id: The wiki page ID to disable.

enable_project_wiki_pages

ChatGPT
Enable knowledge base pages for a project, so Orion uses them there. Pages that are already enabled are reported, not duplicated. Requires analyst-level access to the project. Args: project_id: The project ID. wiki_page_ids: Wiki page IDs to enable.

execute_metric

ChatGPT
Trigger execution of a metric to refresh its value. Every execution adds a new run to the metric's history (get_metric_results). For table and view metrics that run is a fresh snapshot of the dataset. Args: metric_id: The metric ID to execute.

get_artifact

ChatGPT
Get the content of a slide deck, dashboard, or report as markdown. Args: artifact_id: The artifact ID to retrieve.

get_conversation_history

ChatGPT
Read messages from an existing Orion conversation. Args: conversation_id: The conversation ID to get history for. limit: Maximum number of messages to return (default 50).

get_metric

ChatGPT
Get full metric detail including definition, Python code, data sources, and latest result. When a result's value_data.storage is "gcs", the rows are not in the result; they live in storage. value_data holds a column profile (row count, per-column distinct and null counts, numeric min/max/mean), a short preview (preview.n rows, cells truncated at 256 bytes), and storage pointers this tool cannot follow. The profile has no sums. Read row count and column stats from it, and treat the preview as a sample: never sum or count it as if it were the full dataset. For computations over the full rows, use ask_orion. Older results without storage "gcs" carry their rows inline. Args: metric_id: The metric ID.

get_metric_insights

ChatGPT
Get auto-detected metric insights (significant changes, anomalies) for a project. Args: project_id: The project ID. change_threshold: Minimum change percentage to flag (0.0-1.0, default 0.2 = 20%).

get_metric_results

ChatGPT
Get historical execution results for a metric, newest first. Each result is one run. A run whose value_data.storage is "gcs" carries a column profile and a short preview, not the full rows; see get_metric. Older runs may carry their rows inline. Args: metric_id: The metric ID. limit: Maximum number of results (default 20).

get_wiki_page

ChatGPT
Get a single wiki/knowledge base page with its full markdown content. Args: page_id: The wiki page ID. Find one via search_wiki or list_wiki_pages.

get_wiki_page_by_path

ChatGPT
Get a wiki page by its hierarchical path (e.g. /internal/icp). Args: path: The full hierarchical path to the page.

get_workflow

ChatGPT
Get workflow detail including its definition (steps, outputs) and schedule. Args: workflow_id: The workflow ID.

get_workflow_report_content

ChatGPT
Read a workflow report artifact's content. Text formats (markdown report, slide deck, dashboard) return their content as markdown. Binary formats (podcast audio) are not readable inline; instead this returns a short-lived signed download URL to give to the user. Args: artifact_id: A report artifact ID from get_workflow_run_reports.

get_workflow_run_reports

ChatGPT
List the report artifacts a workflow run produced. This is where every output of a run lives: markdown reports, slide decks, podcasts, and CSV exports each appear as one item with a format and an id. Pass an item's id to get_workflow_report_content to read it. When present, an item's share_url is its full public link; only share that exact URL, never assemble one yourself. Args: run_id: The workflow run ID.

get_workflow_runs

ChatGPT
List a workflow's runs, newest first. Each run has an id — pass it to get_workflow_run_reports to see the reports, slide decks, and podcasts that run produced. Args: workflow_id: The workflow ID. limit: Maximum number of runs to return (default 10).

list_artifacts

ChatGPT
List slides, dashboards, or reports for a project. When present, each item's share_url is the artifact's full public link. Only share that exact URL; never assemble one from the vanity_url slug. Args: project_id: The project ID to list artifacts for. artifact_type: Filter by type: 'html_slides', 'html_dashboard', or 'markdown_report'. limit: Maximum number of artifacts to return (default 20). offset: Number of artifacts to skip for pagination (default 0). visibility: Filter by visibility: 'user_board' or 'shared_board'. created_by: Filter by creator user ID (UUID format). has_workflow: Filter by workflow status: true for workflow, false for static.

list_conversations

ChatGPT
List chat conversations for a user. Args: user_id: The user ID to list conversations for. project_id: Optional project ID to filter by. limit: Maximum number of conversations to return (default 20).

list_metrics

ChatGPT
List metrics (KPIs) and views for a project. Each item's value_type is the declared type. number, percentage, currency, string and boolean are scalars; array and object are inline collections. table and view are datasets: a view is a large checkpoint meant as a base for further analysis, a table is the same shape at a size the Orion UI shows whole. graph is a promoted chart spec plus a reference to the rows it draws. A result can differ from the declared type: an over-budget table runs as a view, and a large array or object becomes tabular. The result's own value_type and coerced_from say so. Args: project_id: The project ID. pinned: If True, only return pinned metrics.

list_project_wiki_pages

ChatGPT
List the knowledge base pages enabled for a project. Args: project_id: The project ID.

list_projects

ChatGPT
List Orion projects the user has access to. Args: search: Optional search text to filter projects by name. limit: Maximum number of projects to return (default 20).

list_recommendations

ChatGPT
Get AI-generated recommendations for a project. Args: project_id: The project ID. limit: Maximum number of recommendations (default 10).

list_state_pages

ChatGPT
List state pages: knowledge base pages that hold structured tables (trackers, missions, decision logs, status boards). Match the user's words against table names too, not only titles: call describe_state on likely candidates. If an existing page fits, add rows there instead of creating a new page.

list_users

ChatGPT
List all users in the Orion organization.

list_wiki_pages

ChatGPT
List or browse wiki pages and folders to navigate the knowledge base. Args: parent_id: Filter to children of this parent page. page_type: Filter by 'document' or 'folder'. search: Filter by text in title/content. limit: Maximum number of pages to return (default 50). offset: Number of pages to skip for pagination (default 0).

list_workflows

ChatGPT
List workflows for a project (the workflow-builder pipelines that produce reports). Args: project_id: The project ID. search: Filter by text in the workflow name. limit: Maximum number of workflows to return (default 50).

query_state

ChatGPT
Read a state page. Give exactly one of view, sql or table. Prefer a saved view when one answers the question: it is the page owner's definition. sql runs a read-only SQLite SELECT (joins, aggregates); writes are rejected, use write_state. table returns rows as {column: value} objects with a total count. Results over 200 rows or 64 KB come back with truncated true and a hint; narrow the query rather than paging blindly.

run_workflow

ChatGPT
Trigger execution of a workflow. Returns the created run, including its id. Runs take minutes; poll get_workflow_run_reports with the run id to see outputs as they land. Args: workflow_id: The workflow ID to run.

search_wiki

ChatGPT
Search the Orion wiki/knowledge base. Args: text: Search text. project_id: Optional project ID to scope the search. limit: Maximum number of results (default 20).

update_project

ChatGPT
Rename a project or replace its description. Only the provided fields change. Requires analyst-level access to the project. Args: project_id: The project ID. name: New project name. description: New project description.

update_wiki_page

ChatGPT
Update an existing wiki page. Only the provided fields are changed. Edits to an unlocked page apply immediately with no review. On a locked page, only the page's creator edits directly; for anyone else the change is submitted as a change request for review. Args: page_id: The wiki page ID to update. title: New page title. content: New page content in markdown. summary: New short description. tags: New list of tags. edit_summary: Short description of the change, for revision history.

ask_orion

Claude

create_conversation

Claude

delete_artifact

Claude

execute_metric

Claude

get_artifact

Claude

get_company

Claude

get_conversation_history

Claude

get_metric

Claude

get_metric_insights

Claude

get_metric_results

Claude

get_workflow

Claude

get_workflow_results

Claude

list_artifacts

Claude

list_conversations

Claude

list_metrics

Claude

list_projects

Claude

list_recommendations

Claude

list_users

Claude

list_workflows

Claude

run_workflow

Claude

search_wiki

Claude

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

App Stats

58

Tools

3

Prompts

ChatGPT, Claude

Platforms

Works with

ChatGPT
Claude

Data refreshed daily