Skip to main content

MCP server exposing the Modern-Expo virtual Business Analyst Knowledge Base (read/derive tools).

Project description

ba-agent-mcp

An MCP server that exposes the Modern-Expo virtual Business Analyst Knowledge Base as a small set of read / derive tools. It never writes to SUPPA Docs or the Knowledge Base and is deliberately kept off the governed write path — authoring documents goes through the human-gated business-analyst skill, not this server.

Install

uvx ba-agent-mcp          # run on demand in an isolated environment (recommended)
# or
pip install ba-agent-mcp  # then run: ba-agent-mcp

Credentials — you supply your own

This package ships no credentials. Each user provides their own keys and their own SUPPA identity. Nothing is ever read from the MCP client JSON config; secrets are resolved from the environment, in this order:

  1. real environment variables in the launching shell, then
  2. an explicit env file at $BA_AGENT_ENV_FILE, then
  3. ~/.ba-agent/.env
# ~/.ba-agent/.env   (or export these in your shell)
SUPABASE_URL=https://<your-project>.supabase.co
SUPABASE_SERVICE_ROLE_KEY=...        # or SUPABASE_ANON_KEY for read-only
SUPPA_API_KEY=...                    # your own SUPPA identity (or SUPPA_TOKEN)
GEMINI_API_KEY=...                   # optional — enables hybrid (vector) search
FIGMA_TOKEN=...                      # optional — enables analyze_figma

Never put any secret in the MCP client JSON. A tool whose credentials are absent returns a clear, structured error instead of failing the server, so you can add capabilities incrementally.

Connect (any MCP client)

{
  "mcpServers": {
    "ba-agent": {
      "command": "uvx",
      "args": ["ba-agent-mcp"],
      "env": { "BA_AGENT_ENV_FILE": "/absolute/path/to/your/.env" }
    }
  }
}

Tools

Tool Returns
kb_search Ranked KB hits with provenance (title, breadcrumb, SUPPA anchor, data_class).
kb_assemble_context A cited grounding block for a question + coverage + strictest data_class.
kb_assemble_corpus The whole project corpus grouped by document, for cross-corpus analysis.
kb_list_docs Inventory of governed documents in a project (reads SUPPA under your own identity).
analyze_figma A structured design profile of a Figma file (requires FIGMA_TOKEN).

Data governance

The KB read tools connect with the Supabase service-role key, which bypasses row-level security, so they fail closed at the application layer: any chunk that is not explicitly data_class = 'internal' is excluded from results. Consequence — client-classed content is not readable over MCP. The append-only logs never contain document bodies, only ids, hashes, identity, and HTTP status.


Proprietary — Modern-Expo internal tooling. All rights reserved.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ba_agent_mcp-0.2.0.tar.gz (155.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ba_agent_mcp-0.2.0-py3-none-any.whl (185.3 kB view details)

Uploaded Python 3

File details

Details for the file ba_agent_mcp-0.2.0.tar.gz.

File metadata

  • Download URL: ba_agent_mcp-0.2.0.tar.gz
  • Upload date:
  • Size: 155.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ba_agent_mcp-0.2.0.tar.gz
Algorithm Hash digest
SHA256 30de1c0ea64c037f1664bfd7d9de4b0a5c8e10ef386c2d8b017a3aa620676795
MD5 3e85242c6a3d3ffe0f6e72899eec0bde
BLAKE2b-256 21654280d391f0238cd23ef8c0de0d85ba8d3db9a54902af2192406384a45ea7

See more details on using hashes here.

File details

Details for the file ba_agent_mcp-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: ba_agent_mcp-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 185.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ba_agent_mcp-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f26a45fbf877e8544b1f3044e556bc72dec75780ac352d0367a7a38b513a94f2
MD5 588e969cec931169704ce48d9d8c1778
BLAKE2b-256 48cf405ec608fd0736026747cbfc71de6082eca2843411beb0ad3cf671011d28

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page