Skip to content
GitHub
← All work

Scoped Support MCP / Public work sample

Give an assistant a smaller surface.

Two read-only MCP tools for a fictional support API, with tenant filtering and deliberately minimal responses.

Public source + verified CI

MCP SDKJavaScriptstdioGitHub Actions

The problem

An assistant looking up a support ticket should not receive an unrestricted API client or unrelated customer records.

What I did

I set the boundaries and reviewed the AI-assisted build, focusing on what each tool can read, return and fail safely on.

How it works

  • Expose two explicit read operations through the official MCP SDK over stdio.
  • Apply tenant filtering inside the adapter, even when the upstream fixture returns mixed records.
  • Validate arguments, minimize returned fields, bound failures and sanitize logs.

What you can verify

  • 15 automated tests passed on Windows and Ubuntu CI.
  • The runnable client retrieves the allowed ticket and is denied a ticket from another tenant.
  • Tests cover mixed-tenant records and malformed, oversized and timed-out responses.

Project scope

Tenant selection is configuration, not authenticated identity. This is not production OAuth, a commercial-host UI integration or a proof of model prompt-injection safety.