How sassoftware/sas-mcp-server works
SAS Viya MCP Server exposes Viya analytics capabilities as tiered MCP tools. An MCP client invokes the server, which registers selected tool tiers; tool handlers use authenticated Viya sessions to perform domain operations against Viya and return results. Separate HTTP and stdio entry points, OAuth/token authentication, prompts, and interactive views round out the product. Edges reflect README statements or source-index references; some unsampled tool implementations are represented by their exact files, with no speculative internal call sequence.
Main entry points: __init__.py Tier Registration · viya_client.py Viya REST Client · landing.py HTTP Entry · stdio_server.py Stdio Entry
Components 25
MCP Server
- HTTP Entry
src/sas_mcp_server/landing.py - Stdio Entry
src/sas_mcp_server/stdio_server.py - MCP Server Core
src/sas_mcp_server/mcp_server.py - Tier Registration
src/sas_mcp_server/tools/__init__.py - Prompt Templates
src/sas_mcp_server/prompts.py
Analytics Tools
- Compute and Jobs
src/sas_mcp_server/tools/compute.py - Data Discovery
src/sas_mcp_server/tools/discovery.py - Data Operations
src/sas_mcp_server/tools/data_ops.py - AutoML
src/sas_mcp_server/tools/automl.py - Model Scoring
src/sas_mcp_server/tools/model_scoring.py - Reports
src/sas_mcp_server/tools/reports.py - Report Authoring
src/sas_mcp_server/helpers/report_authoring_helpers.py
Decisioning and Governance
- Decisioning Tools
src/sas_mcp_server/tools/decisioning.py - Decision Content
src/sas_mcp_server/tools/decisioning_content.py - Decision Assets
src/sas_mcp_server/helpers/decisioning_assets.py - Business Glossary
src/sas_mcp_server/tools/glossary.py - Glossary Operations
src/sas_mcp_server/helpers/glossary_helpers.py
Shared Services
- Configuration
src/sas_mcp_server/config.py - Viya Sessions
src/sas_mcp_server/tools/_common.py - Viya REST Client
src/sas_mcp_server/viya_client.py
Authentication and Experience
- OAuth and Tokens
src/sas_mcp_server/auth.py - Login Helper
src/sas_mcp_server/auth_login.py - Interactive Views
src/sas_mcp_server/ui/__init__.py
Other components
- MCP Client
- SAS Viya
Connections 30
- MCP Client → HTTP Entry: connects HTTP
README.md - MCP Client → Stdio Entry: starts stdio
README.md - HTTP Entry → MCP Server Core: serves MCP
- Stdio Entry → Tier Registration: registers tools
src/sas_mcp_server/stdio_server.py - HTTP Entry → Tier Registration: registers tools
src/sas_mcp_server/landing.py - Tier Registration → Compute and Jobs: registers tier
src/sas_mcp_server/tools/__init__.py - Tier Registration → Data Discovery: registers tier
src/sas_mcp_server/tools/__init__.py - Tier Registration → Data Operations: registers tier
src/sas_mcp_server/tools/__init__.py - Tier Registration → AutoML: registers tier
src/sas_mcp_server/tools/__init__.py - Tier Registration → Model Scoring: registers tier
src/sas_mcp_server/tools/__init__.py - Tier Registration → Reports: registers tier
src/sas_mcp_server/tools/__init__.py - Tier Registration → Decisioning Tools: registers tier
src/sas_mcp_server/tools/__init__.py - Tier Registration → Decision Content: registers tier
src/sas_mcp_server/tools/__init__.py - Tier Registration → Business Glossary: registers tier
src/sas_mcp_server/tools/__init__.py - Stdio Entry → Prompt Templates: loads prompts
src/sas_mcp_server/stdio_server.py - Reports → Report Authoring: uses authoring
src/sas_mcp_server/helpers/report_authoring_helpers.py - Decisioning Tools → Decision Assets: uses assets
src/sas_mcp_server/tools/decisioning.py - Decision Content → Decision Assets: uses assets
src/sas_mcp_server/tools/decisioning_content.py - Business Glossary → Glossary Operations: uses helpers
src/sas_mcp_server/tools/glossary.py - Viya Sessions → Viya REST Client: creates clients
src/sas_mcp_server/tools/_common.py - Data Discovery → Viya REST Client: uses REST client
src/sas_mcp_server/tools/discovery.py - Data Operations → Viya REST Client: uses REST client
src/sas_mcp_server/tools/data_ops.py - Reports → Viya REST Client: uses REST client
src/sas_mcp_server/tools/reports.py - Business Glossary → Viya REST Client: uses REST client
src/sas_mcp_server/tools/glossary.py - Decision Assets → Viya REST Client: uses REST client
src/sas_mcp_server/helpers/decisioning_assets.py - Viya REST Client → SAS Viya: calls REST APIs
src/sas_mcp_server/viya_client.py - Configuration → OAuth and Tokens: configures auth
src/sas_mcp_server/config.py - Login Helper → Configuration: reads environment
src/sas_mcp_server/auth_login.py - HTTP Entry → OAuth and Tokens: authenticates users
README.md - Tier Registration → Interactive Views: registers views
src/sas_mcp_server/tools/__init__.py