niro-mcp-server
An MCP (Model Context Protocol) server that exposes AU-SG Retail BI domain intelligence as tools for Kiro and other MCP-compatible AI clients.
What It Does
NIRO MCP Server acts as a virtual BIE — it knows your metrics, dashboards, data lineage, and team conventions. Install it once and any MCP client (Kiro, Claude Desktop, etc.) can:
- Look up metrics — definitions, formulas, source tables, ETL jobs, aliases
- Classify intent — determine if a request is a CHANGE, STATUS, or DATA query
- Triage requests — find duplicates, suggest assignees, recommend actions
- Generate proposals — structured solution proposals with draft SQL and effort estimates
- Trace lineage — upstream/downstream data flow from any table, ETL, or dashboard
- Assess impact — what breaks if a source table or ETL changes
- Check freshness — expected refresh schedules and acceptable lag
- Detect deprecation — find deprecated sources and their replacements
- Search domain knowledge — full-text search across all BI knowledge
- Create SIM tickets — file new requests in the AU-Retail-BI resolver group
- Synthesize status — unified view of SIM tickets, ETL health, and sprint progress
Installation
pip install niro-mcp-server
Or run without installing (requires uv):
uvx niro-mcp-server
Configuration for Kiro
Add to your .kiro/settings/mcp.json:
{
"mcpServers": {
"niro": {
"command": "niro-mcp-server",
"env": {"FASTMCP_LOG_LEVEL": "ERROR"},
"autoApprove": [
"niro_lookup_metric",
"niro_classify_intent",
"niro_find_similar",
"niro_trace_lineage",
"niro_impact_analysis",
"niro_check_freshness",
"niro_check_deprecation",
"niro_domain_search",
"niro_synthesize_status"
]
}
}
}
Or use uvx for zero-install:
{
"mcpServers": {
"niro": {
"command": "uvx",
"args": ["niro-mcp-server"],
"env": {"FASTMCP_LOG_LEVEL": "ERROR"}
}
}
}
Prerequisites
- Python 3.10+
- Midway authentication (optional) — needed for SIM/Taskei operations. Run
mwinitto authenticate. All read-only tools work without it. - AWS credentials (optional) — needed for LLM-powered proposals via Amazon Bedrock. Without credentials, proposals use template-based generation.
Available Tools
| Tool | Description | Auth Required |
|---|---|---|
niro_lookup_metric |
Look up metric by name or alias | No |
niro_classify_intent |
Classify text as CHANGE/STATUS/DATA/AMBIGUOUS | No |
niro_find_similar |
Find similar SIM tickets | No |
niro_trace_lineage |
Trace data lineage upstream/downstream | No |
niro_impact_analysis |
Assess downstream impact of a change | No |
niro_check_freshness |
Check data source refresh schedule | No |
niro_check_deprecation |
Check if a source is deprecated | No |
niro_domain_search |
Search across all domain knowledge | No |
niro_synthesize_status |
Unified status report | Midway (optional) |
niro_triage_request |
Triage a BI request | Midway (optional) |
niro_generate_proposal |
Generate solution proposal | AWS (optional) |
niro_create_sim |
Create a SIM/Taskei ticket | Midway |
License
MIT
Metadata
Release files for niro-mcp-server 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| niro_mcp_server-1.0.0.tar.gz | 41.6 kB | Without provenance | Details for niro_mcp_server-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| niro_mcp_server-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for niro_mcp_server-1.0.0-py3-none-any.whl |
Total release size: 95.2 kB
Release files / niro_mcp_server-1.0.0.tar.gz
| Download URL | niro_mcp_server-1.0.0.tar.gz |
|---|---|
| Size | 41.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1fc4bfc4b7eee332f930b6176eb3ad58b972f82df9b5373e6b03c8fb45226c1a
|
|
BLAKE2b-256 checksum How to use checksums |
bfea72def322f4945802e6a02a7de803d493f04e95e9576849923c0417bfd202
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|
Release files / niro_mcp_server-1.0.0-py3-none-any.whl
| Download URL | niro_mcp_server-1.0.0-py3-none-any.whl |
|---|---|
| Size | 53.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1f4efedeb8b3aa64db2ccaeab594d95a1639e4d0f1762f9cd665f4f0ee56f86e
|
|
BLAKE2b-256 checksum How to use checksums |
cec353eaf8c98f0cba5fc564503c8e83c077354d80151c37bebdb5167685fa52
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|
Security for niro-mcp-server 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.