Skip to main content
Glama
TonyC793

SAMS Catalog MCP Server

by TonyC793

SAMS Catalog MCP Server

MCP server for catalog management service for the SAMS platform with ADK integration support.

Quick Start

Standalone Operation

  1. Install Dependencies

    pip install uv
    uv sync
  2. Configure the Server Create or modify config/config.json with your API configurations:

    {
      "api_connections": {
        "iqs": {
           "base_url"
          "timeout": 30,
          "max_retries": 3,
          "ssl_verify": false
        }
      },
      "server": {
        "host": "0.0.0.0",
        "port": 8080,
        "debug": true
      }
    }
  3. Run the Server

    # Simple command using uv
    uv run python main.py
    
    # Or using the script entry point (if defined in pyproject.toml)
    uv run mcp-server

Configuration via JSON

The server reads its configuration from a config.json file. The config file can be located in:

  1. Path specified by CONFIG_JSON_PATH environment variable

  2. /etc/secrets/config.json (for Docker/Kubernetes deployments)

  3. config/config.json (relative to the project root)

  4. config.json (current working directory)

Configuration Structure:

{
  "api_connections": {
    "iqs": {
      "base_url"
      "timeout": 30,
      "max_retries": 3,
      "ssl_verify": false
    },
    "iro": { ... },
    "elixir_v1": { ... },
    "elixir_v2": { ... },
    "score_v1": { ... },
    "mapper": { ... }
  },
  "server": {
    "host": "0.0.0.0",
    "port": 8080,
    "debug": true
  },
  "analysis": {
    "false_positive_threshold": 0.95,
    "merge_confidence_threshold": 0.8
  },
  "log_level": "INFO"
}

Environment Variables (Optional):

# Configuration Override
CONFIG_JSON_PATH=/path/to/your/config.json  # Override config file location

# Server Override (will override JSON values if set)
SERVER_PORT=8080          # Server port
DEBUG=true               # Debug mode
LOG_LEVEL=INFO          # Logging level

Development

# Run in development mode
DEBUG=true LOG_LEVEL=DEBUG uv run python main.py

# Run on different port
SERVER_PORT=9000 uv run python main.py

# Use custom config file
CONFIG_JSON_PATH=/path/to/custom/config.json uv run python main.py

Docker

### Docker

```bash
# Build and run with docker-compose (uses config/config.json)
docker-compose up --build

# Or direct docker run with custom config
docker run -v /path/to/your/config.json:/etc/secrets/config.json:ro -p 8080:8080 sams-catalog-mcp

docker build -t sams-catalog-mcp . docker run -p 8080:8080 --env-file .env sams-catalog-mcp


### Testing

```bash
# Test server health
curl http://localhost:8080/health

# Test MCP protocol
curl -X POST http://localhost:8080/mcp \
  -H "Content-Type: application/json" \
  -d '{"method": "tools/list"}'

# List available tools
curl http://localhost:8080/tools

Related MCP server: AXT-MCP

ADK Integration

The server now works seamlessly with ADK without command-line arguments:

{
  "mcpServers": {
    "sams-catalog-mcp": {
      "command": "uv",
      "args": ["run", "python", "main.py"],
      "transport": "streamable-http",
      "endpoint": "http://localhost:8080/mcp",
      "env": {
        "PYTHONPATH": "/path/to/sams-catalog-mcp",
        "PYTHONUNBUFFERED": "1",
        "SERVER_PORT": "8080"
      }
    }
  }
}

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Allows Large Language Models to interact with Kroger's grocery services, enabling product search, store lookup, and cart management through the Model Context Protocol.
    3
    MIT
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    A Model Context Protocol service registry and connector framework that enables seamless integration with multiple services and models through a standardized API interface. Provides an extensible architecture for custom service adapters, API integrations, and model registries.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Exposes backend APIs through Azure API Management as an MCP server to enable AI assistants to interact with product catalogs and order systems. It provides standardized tools for searching products, retrieving details, and managing orders via the Model Context Protocol.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TonyC793/sams-catalog-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server