Skip to main content
Glama
nitin-ezzydoc

EzzyBills code-generation MCP server

EzzyBills code-generation MCP server

This TypeScript MCP server supplies ChatGPT with the EzzyBills developer contract needed to generate standalone applications. It is a read-only knowledge service: it does not call EzzyBills, access customer data, or perform approval actions at runtime.

Architecture

ChatGPT
   ↓
get_ezzybills_developer_spec
   ↓
EzzyBills API catalogue, authentication contract, schemas, ID rules,
and generation rules
   ↓
Generated application
   ↓
EzzyBills REST APIs

Generated applications run independently of MCP. When they require EzzyBills access, they authenticate through the Developer Portal credentials:

CLIENT_ID + CLIENT_SECRET
   ↓
POST /oauth/token
   ↓
Authorization: Bearer <token>
   ↓
EzzyBills REST APIs

The client secret belongs only in a generated application's backend environment. It must never be embedded in browser or React code.

Related MCP server: swagger-openapi-mcp

MCP capabilities

The server exposes one MCP tool:

get_ezzybills_developer_spec

It returns eleven structured sections:

  • coreArchitecture — actors and default stack

  • authContract — OAuth2 client-credentials, token lifecycle

  • universalRules — rules for all generated applications

  • contentSecurityRules — HTML sanitization, blob security, sandboxing

  • actionRiskRules — READ_ONLY / WRITE / DESTRUCTIVE_OR_EXTERNAL classifications

  • apiCatalogue — 9 verified endpoints including getPurchaseOrders3

  • workflowRecipes — step-by-step recipes for common tasks

  • applicationProfiles — optional UI blueprints (document-browser, approval-queue, etc.)

  • idRules — parentDocumentId vs attachmentInvoiceId

  • specificationGaps — items awaiting backend-developer verification

  • generationRules — flat compatibility alias

The server also exposes one MCP resource:

ezzybills://docs/developer-spec

The resource serves docs/mcp_api_spec.md.

Requirements

  • Node.js 20 or newer

  • npm

The MCP server itself does not require EzzyBills account credentials.

Install and run

npm install
npm run dev

For a compiled production-style run:

npm run build
npm start

The default endpoint is:

http://127.0.0.1:3000/mcp

The health endpoint is:

http://127.0.0.1:3000/

Configuration

Variable

Default

Purpose

HOST

127.0.0.1

Network interface on which the HTTP server listens

PORT

3000

HTTP port

ALLOWED_HOSTS

local hostnames

Additional accepted HTTP Host header names

ALLOWED_ORIGINS

local hostnames

Additional accepted Origin header hostnames

ALLOWED_HOSTS and ALLOWED_ORIGINS are comma-separated bare hostnames. Do not include a URL scheme or port.

Example production configuration:

HOST=0.0.0.0
PORT=3000
ALLOWED_HOSTS=mcp.ezzybills.com,<azure-container-app-hostname>

Configure ALLOWED_ORIGINS only when the connecting client sends an Origin header. Add the hostname actually used by that client.

Host and Origin validation protect request routing; they are not user authentication. If the developer specification is not intended to be public, protect /mcp with the authentication or private-ingress arrangement chosen for the deployment.

MCP Inspector

  1. Start the server with npm run dev.

  2. Select Streamable HTTP in MCP Inspector.

  3. Connect to http://127.0.0.1:3000/mcp.

  4. Confirm the single tool and resource listed above are available.

Docker

The multi-stage Dockerfile builds the TypeScript source, installs only production dependencies in the runtime image, and copies the Markdown specification required by the MCP resource.

docker build -t ezzybills-mcp .
docker run --rm -p 3000:3000 -e ALLOWED_HOSTS=localhost ezzybills-mcp

For Azure, set the production hostname in ALLOWED_HOSTS rather than using the local Docker value.

Scripts

Command

Purpose

npm run dev

Start the TypeScript server

npm run typecheck

Type-check source and tests

npm test

Run the test suite

npm run build

Compile src to dist

npm start

Run the compiled HTTP server

npm run check

Type-check, test, and build

Project layout

docs/mcp_api_spec.md
src/resources/ezzyBillsDeveloperResource.ts
src/tools/getEzzyBillsDeveloperSpec.ts
src/server.ts
src/httpConfig.ts
src/http.ts
test/developerSpec.test.ts
Dockerfile
.dockerignore

TestEzzyBillsMCP

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Exposes Swagger/OpenAPI API documentation to AI models, enabling exploration, search, and interaction with endpoints, schemas, and execution of API calls.
    14
    13
    2
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nitin-ezzydoc/TestEzzyBillsMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server