Skip to main content

MCP server for Teamcenter Knowledge Base with Azure AD and cookie authentication

Project description

Teamcenter MCP Server

Universal MCP server for integrating AI assistants with Teamcenter Knowledge Base APIs with Azure AD authentication support.

📦 Live on PyPI: https://pypi.org/project/teamcenter-mcp-server/

✨ What's New in v0.2.0

  • 🔐 Azure AD Authentication - Connect to real Teamcenter APIs
  • 🔄 Hybrid Mode - Seamless switching between localhost mock and production
  • 🌍 Environment Variables - Configure via TEAMCENTER_API_HOST
  • 🛡️ Secure - Uses cached Azure AD cookies, no secrets in code

📋 Project Status & Technical Analysis →

Quick Start (Just Copy & Paste)

🚀 Production Mode (Azure AD)

Add to ~/.continue/config.json:

{
  "experimental": {
    "modelContextProtocolServers": [{
      "transport": {
        "type": "stdio",
        "command": "uvx",
        "args": ["teamcenter-mcp-server@0.2.0"],
        "env": {
          "TEAMCENTER_API_HOST": "https://codesentinel.azurewebsites.net",
          "CODESESS_COOKIE": "<your-codesess-cookie>",
          "AZURE_CLIENT_ID": "<your-azure-client-id>",
          "AZURE_TENANT_ID": "<your-azure-tenant-id>"
        }
      }
    }]
  }
}

🔧 Development Mode (Localhost Mock)

Add to ~/.continue/config.json:

{
  "experimental": {
    "modelContextProtocolServers": [{
      "transport": {
        "type": "stdio",
        "command": "uvx",
        "args": ["teamcenter-mcp-server-test@0.1.2"]
      }
    }]
  }
}

VS Code (Production)

Note: VSCode MCP integration is currently not working within Siemens intranet environments. This configuration is on hold pending resolution of corporate network restrictions.

Add to .vscode/mcp.json:

{
  "servers": {
    "teamcenter": {
      "type": "stdio",
      "command": "uvx",
      "args": ["teamcenter-mcp-server@0.2.0"],
      "env": {
        "TEAMCENTER_API_HOST": "https://codesentinel.azurewebsites.net"
      }
    }
  }
}

JetBrains IDEs (Production)

Add to ~/.mcp.json:

{
  "mcpServers": {
    "teamcenter": {
      "command": "uvx",
      "args": ["teamcenter-mcp-server@0.2.0"],
      "env": {
        "TEAMCENTER_API_HOST": "https://codesentinel.azurewebsites.net"
      }
    }
  }
}

🔐 Azure AD Authentication Setup

Prerequisites

  1. Authenticate first using the working Python client:

    # Run this once to cache Azure AD credentials
    python /path/to/easy_auth_client.py ask "test"
    
  2. Verify authentication works:

    # Check for cached cookie
    ls ~/.teamcenter_easy_auth_cache.json
    

Environment Variables

  • TEAMCENTER_API_HOST: API endpoint URL
    • Production: https://codesentinel.azurewebsites.net
    • Development: http://localhost:8000 (default)

📦 Version History

  • v0.2.0 (Latest) - Azure AD authentication + hybrid mode
  • v0.1.2 - Azure AD authentication + hybrid mode
  • v0.1.1 - Localhost mock only (legacy)

Usage

See USAGE.md for copy & paste examples

Quick examples:

  • VS Code: @workspace get Teamcenter API documentation for part creation
  • Continue.dev: @MCP search for PLM workflow integration documentation

Production Setup

Replace http://localhost:8000 with your real Teamcenter API:

"args": ["teamcenter-mcp-server", "--base-url", "https://teamcenter.yourcompany.com"]

Testing

Quick Test

uvx teamcenter-mcp-server --version

Demo/Development Setup

Start mock API server:

git clone https://github.com/your-repo/teamcenter-mcp
cd teamcenter-mcp
uv run uvicorn main:app --reload

Server runs on http://localhost:8000 - use this URL in configs above.


Development (Advanced)

Click for development setup

Installation

curl -LsSf https://astral.sh/uv/install.sh | sh

Build Package

uv build

Run Tests

uv run pytest tests/ -v

Publishing to PyPI

See DEVELOPER.md for release instructions

Files Overview

  • auth_mcp_stdio_v2.py: Main MCP server with optimized imports
  • main.py: Mock API server for development
  • pyproject.toml: Package configuration

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

teamcenter_mcp_server-0.2.2.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

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

teamcenter_mcp_server-0.2.2-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file teamcenter_mcp_server-0.2.2.tar.gz.

File metadata

  • Download URL: teamcenter_mcp_server-0.2.2.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for teamcenter_mcp_server-0.2.2.tar.gz
Algorithm Hash digest
SHA256 28a1670b40f6987e05d5c7bf1b3ad7c100b91b023106f722db59c4a630c71788
MD5 cc8a98620821391ce009a59d19e3e9b1
BLAKE2b-256 be81914f5e61b605a49ce440bb69454ce5de348750bc97a6ad3052cdee01992a

See more details on using hashes here.

File details

Details for the file teamcenter_mcp_server-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for teamcenter_mcp_server-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b0d4fcbbd729fd86ad562daba55c2e848d8cc9e9f282561f38e168f87a568d27
MD5 fb172945ea8244ea11ade425a679f072
BLAKE2b-256 e4457dcc6a132fef83d20c65dd8d773c67d4755d652c592cb9aad05abe4dd3fe

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