ticket-mock
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ticket-mockget 20 tickets"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Ticket mock MCP
A minimal remote MCP server for Node.js 24 and TypeScript. It exposes one tool over Streamable HTTP:
get_list_tickets
Every ticket has a detail field containing exactly 2,048 UTF-8 bytes. The full ticket object is slightly larger because it also includes metadata.
Install and run
npm install
npm run build
npm startThe public endpoint is https://test-mcp.codehub.io/mcp. The container listens on every host interface at port 3000, and requests are accepted with any incoming Host header. OAuth metadata always uses the canonical public hostname.
Point a remote-capable MCP host at the URL:
{
"mcpServers": {
"ticket-mock": {
"url": "https://test-mcp.codehub.io/mcp"
}
}
}Related MCP server: PDF MCP Server
OAuth and DCR
The MCP endpoint requires an OAuth bearer token. It publishes protected-resource and authorization-server metadata, supports RFC 7591 Dynamic Client Registration, and uses authorization code flow with S256 PKCE.
Test login:
Username:
hoaPassword:
123456
Registrations, authorization codes, and tokens are held in memory and reset whenever the process restarts. This fixed login is only for isolated testing.
Token expiry
Access tokens last one hour by default. Override it with MCP_OAUTH_ACCESS_TOKEN_TTL_SECONDS, which sets both the stored expiry and the expires_in field of the token response:
MCP_OAUTH_ACCESS_TOKEN_TTL_SECONDS=60 npm startThe value must be a positive whole number of seconds; anything else fails at startup rather than issuing tokens that cannot be used. Refresh tokens are fixed at 24 hours.
Variable | Default | Purpose |
|
| Listen address |
|
| Listen port |
|
| Canonical public origin used in OAuth metadata |
| (unset — clients are in memory) | Where DCR client registrations persist |
|
| Access token lifetime in seconds |
OAuth requires HTTPS for non-localhost clients. Terminate TLS for test-mcp.codehub.io at a reverse proxy and forward requests to port 3000:
docker compose up --build -dThen configure the MCP client with https://test-mcp.codehub.io/mcp. An OAuth-capable client will discover the metadata, register itself through DCR, and open the login page automatically.
Tool payload
Both fields are optional:
{
"number_of_tickets": 25,
"delay_ms": 500
}Field | Default | Accepted range |
|
|
|
|
|
|
An empty payload uses both defaults:
{}Verify
npm run checkDocker
Build and start the remote server:
docker compose up --build -dThe MCP URL is:
https://test-mcp.codehub.io/mcpStop it with:
docker compose downThis server cannot be deployed
Maintenance
Related MCP Connectors
Host your MCP tool over streamable HTTP in one command.
Streamable HTTP MCP server for DevExpress documentation search and retrieval.
21Minimal streamable HTTP MCP server used for owned-account registry connectivity tests.
Experimental MCP server for current empirical verification of explicit public HTTPS endpoint claims.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA demonstration MCP server that runs over HTTP with streamable transport, providing a simple greeting tool for testing MCP client-server communication. Built with FastMCP framework for educational purposes in learning MCP server development.-
- FlicenseNot gradedqualityDmaintenanceAn MCP server that exposes PDF files as resources, page by page, over Streamable HTTP.-
- AlicenseAqualityDmaintenanceRead-only MCP server for the HIT ticket management system that lists queues, searches/fetches ticket details, and lists ticket templates.411 npm1MIT
- FlicenseNot gradedqualityCmaintenanceAn MCP server exposing the internal Ticket API to MCP clients, built with FastMCP's OpenAPI integration.2-