SSOJet MCP Server

SSOJet MCP Server

An MCP server that authenticates users via SSOJet and provides tools such as adding two numbers. Enables secure access to tools after OIDC authentication.

Category
Visit Server

README

Model Context Protocol (MCP) Server (SSOJet)

This is a Model Context Protocol (MCP) server powered by SSOJet for authentication. Users must first sign in with SSOJet. Once authenticated, they can access and use secure tools such as the add tool exposed by this server.


Configuration

SSOJet Setup

  1. Go to your SSOJet dashboard.
  2. Create a new Single page web application.
  3. Set the callback URL for local development:
http://localhost:8788/callback
  1. Note the following details from your app:

    • Client ID
    • Client Secret
    • Issuer URL (e.g. https://<your-tenant>.auth.ssojet.com/v1/)

These will be used to configure your server.


Set up a KV Namespace

This project uses a Cloudflare KV namespace to store token metadata:

wrangler kv:namespace create "OAUTH_KV"

Then, add the KV binding to your wrangler.jsonc.


Environment Variables

The following environment variables must be configured to run the server:

Variable Description
SSOJET_CLIENT_ID The Client ID from your SSOJet application
SSOJET_CLIENT_SECRET The Client Secret from your SSOJet application
SSOJET_ISSUER The issuer URL (e.g. https://<your-tenant>.auth.ssojet.com/v1/)
SSOJET_SCOPE Scopes to request (e.g. openid profile email)
NODE_ENV Use development for local development
API_BASE_URL Not required in this case (unless your tool makes API calls externally)

Development

Create a .dev.vars file in the root of your project:

SSOJET_CLIENT_ID=<your_ssojet_client_id>
SSOJET_CLIENT_SECRET=<your_ssojet_client_secret>
SSOJET_ISSUER=https://<your-tenant>.auth.ssojet.com/v1/
SSOJET_SCOPE="openid profile email"
NODE_ENV=development

Then run the MCP server locally:

npm run dev

Tool Available

The server currently provides a single tool:

Tool Description
add Adds two numbers together. Useful for simple math operations.

Once the user signs in via SSOJet, this tool becomes accessible through compatible MCP clients such as the Workers AI LLM Playground.


Testing with MCP Inspector

You can test your server locally with MCP Inspector:

  1. Set the Transport to sse

  2. Set the URL to:

    http://localhost:8788/sse
    
  3. A popup will appear for SSOJet authentication

  4. Once logged in, you’ll see the available tools


Deploying to Cloudflare

Before deploying, set the necessary secrets in your Cloudflare environment:

wrangler secret put SSOJET_CLIENT_ID
wrangler secret put SSOJET_CLIENT_SECRET
wrangler secret put SSOJET_ISSUER
wrangler secret put SSOJET_SCOPE

Deploy with:

npm run deploy

Then, in the SSOJet dashboard, add your deployed callback URL:

https://mcp-ssojet-oidc.<your-subdomain>.workers.dev/callback

To use the deployed server with MCP Inspector or the LLM Playground, use this endpoint:

https://mcp-ssojet-oidc.<your-subdomain>.workers.dev/sse

Troubleshooting

Cloudflare Worker Logs

You can inspect logs and errors using Cloudflare’s observability dashboard:

🔗 Cloudflare Workers Logs

SSOJet Logs

Visit your SSOJet dashboard and check the Logs section to diagnose authentication issues.


Common Issues

  • Invalid credentials: Double-check that secrets match your SSOJet application.
  • Missing callback URL: Ensure all callback URLs are added in your SSOJet dashboard.
  • Tool not showing: Make sure you're authenticated and using the correct endpoint.
  • Local connection failed: Ensure the MCP server is running on http://localhost:8788.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured