Singularity - MCP Discovery & Security Gateway

io.github.gaurav-kumar-sinha-060705Published by GitHub account gaurav-kumar-sinha-060705v0.2.0Updated Oct 24, 2026

Find, vet, and run MCP tools through a secure audited gateway with prompt-injection risk scoring

VerifiedStreamable HTTPWeb executableDeveloper ToolsSecurity & Monitoring

Overview

AI-generated overview

A remote MCP gateway that helps an assistant find, vet and compare MCP tools using trust and prompt-injection risk scores.

What you can do
  • Find ranked tool recommendations for a described problem, with fit, trust and rank scores plus plain-language security flags
  • Read a full trust report for a tool: permissions requested versus needed, injection-scan verdicts and publisher status
  • Compare shortlisted tools side by side in a trust table
  • Filter recommendations by result count and maximum pricing tier
When to use it
Useful when you are choosing which MCP servers to add and want a quick security and trust assessment before connecting them, or when you want an assistant to suggest candidate tools for a stated need.
Requirements
A remote streamable HTTP endpoint; OAuth is required to reach the MCP path, with an access token supplied through the authorization flow. No environment variables or headers are declared.
Before you install
The MCP endpoint requires OAuth, so an authorization flow and token handling are involved. Recommendations and trust verdicts come from the service's own index and static scanning, so treat them as advisory rather than authoritative; the README notes the scanner is a preview phase.

Installation

In SourceWeft

  1. Open Singularity - MCP Discovery & Security Gateway in the dashboard and add it to a workspace.
  2. Connect the required credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.gaurav-kumar-sinha-060705%2Fsingularity/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.

{
  "mcpServers": {
    "singularity-discovery-security-gateway": {
      "type": "http",
      "url": "https://singularity-osd2.onrender.com/mcp"
    }
  }
}

README

Singularity — MCP Discovery & Security Gateway

Perplexity for MCP. Discover the right tool for a problem, see its trust card (prompt-injection risk, permission overreach, publisher status), connect it in one click, and execute it through a secure, audited gateway — one product, one config.

See ROADMAP.md for the full plan. Blueprint: ../Singularity_Blueprint.md.

Quickstart (local)

powershell
pip install -r requirements.txtcopy .env.example .env          # optional, defaults are fine (SQLite)python scripts/seed_index.py    # builds index + embeddings (first run downloads ~35MB model)python -m uvicorn app.main:app --reload   # http://127.0.0.1:8000/docs

A fresh boot with an empty database auto-seeds itself — seed_index.py is only needed for manual re-seeding.

Use Singularity as an MCP server

Singularity is a native MCP server (streamable HTTP, stateless) at /mcp.

VS Code / Copilot Chat — .vscode/mcp.json:

json
{ "servers": { "singularity": { "type": "http", "url": "http://127.0.0.1:8000/mcp" } } }

Cursor — ~/.cursor/mcp.json:

json
{ "mcpServers": { "singularity": { "url": "http://127.0.0.1:8000/mcp" } } }

Claude Code CLI:

powershell
claude mcp add --transport http singularity http://127.0.0.1:8000/mcp

Then just ask your agent: "my team needs expense tracking" — it calls find_solutions and gets ranked options with trust cards and security flags.

One-click install (replace the URL after deploying): Install in VS Code

/mcp now requires OAuth (a popup at /authorize/<slug> supplies the access token). For a curl-able check use /health and /.well-known/oauth-authorization-server.

Tools

ToolWhat it does
find_solutions(problem, top_k?, max_pricing_tier?)Ranked, trust-scored recommendations with plain-language security flags
get_trust_report(slug)Full security card: permissions requested vs needed, injection-scan verdicts, publisher status
compare_tools(slugs[])Side-by-side trust table for shortlisted candidates

Every result carries fit_score, trust_score, rank_score, trust_flags, and a human-readable rationale. The seed index includes quickledger-pro, an intentionally poisoned fictional tool — ask about expenses and watch it get flagged (suspicious_description_imperative, hidden_unicode_characters, permission_overreach) and pushed down the ranking.

Deploy your own instance (Render + Supabase)

Full walkthrough in DEPLOY.md. Summary:

  1. Create a free Supabase project → copy the connection string → add +psycopg driver segment + ?sslmode=require
  2. Push this repo to GitHub → Render "New +" → "Blueprint" → it reads render.yaml
  3. Paste the Supabase URL into the SINGULARITY_DATABASE_URL env var when prompted
  4. First boot auto-creates tables and seeds the index; https://<app>.onrender.com/mcp is live

Publish to MCP registries

After deploying (public HTTPS required), list Singularity so others can find it:

  1. Official MCP Registry — edit placeholders in server.json (replace XXXX with your Render app name), then:
    powershell
    npx mcp-publisher@latest init      # scaffolds/validates server.jsonnpx mcp-publisher@latest login     # prove io.github.<you> ownership via GitHubnpx mcp-publisher@latest publish   # listed at https://registry.modelcontextprotocol.io within minutes
  2. Smithery — submit repo at https://smithery.ai/new (uses smithery.yaml)
  3. Glama — submit remote URL at https://glama.ai, then claim the listing
  4. GitHub topics — add mcp-server, mcp, ai-security topics to your repo; PulseMCP/MCP.so crawlers pick it up within 1–2 weeks

Tip: registries re-crawl weekly and strip verified badges from sleeping servers — Render's $7/mo Starter plan keeps Singularity always-on during listing/investor periods.

Tests

powershell
pytest -v

Layout

singularity/  main.py                     FastAPI app factory + lifespan (auto-seed, mounts MCP)  mcp_server.py               native MCP server: find_solutions / get_trust_report / compare_tools  config.py                   env-driven settings (SINGULARITY_* prefix)  database.py                 SQLAlchemy engine/session (SQLite dev, Postgres prod)  models.py                   Tool + AuditLog tables  schemas.py                  request/response contracts  middleware/    rate_limit.py             per-IP token-bucket limiter (X-Forwarded-For aware)  services/    discovery_engine.py       heuristic intent parsing    recommendation_index.py   in-memory vector search over seeded tools    ranking.py                fit/trust blend + rationale builder    scanner.py                static injection/overreach scan (Phase 2 preview)    seeder.py                 seed logic shared by CLI and boot-time auto-seed    embeddings.py             fastembed provider (bge-small-en-v1.5)  routers/    recommend.py              POST /recommend, GET /toolsdata/seed_tools.json          curated 21-tool index incl. demo attack sample (tier1/tier2/tier3)scripts/seed_index.py         manual seeding CLIscripts/smoke_execute.ps1     authenticated REST execute smoke testscripts/smoke_oauth.py        OAuth discovery + config smoke testDockerfile / render.yaml      one-command Render deploymentserver.json / smithery.yaml   registry publishing manifests (fill placeholders first)tests/                        pytest suite (API + scanner + MCP tools & endpoint)

Source: README.md at commit 4203499

Tools

0
This server asks you to sign in, so SourceWeft could not read its tools without an account and has not indexed them. What a connected account sees can depend on that account and its permissions.

Version history

1
  1. v0.2.0LatestSep 16, 2026

Score

75% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.