Skip to main content
Glama
jambonz

@jambonz/mcp-schema-server

Official
by jambonz

@jambonz/mcp-schema-server

MCP server that provides jambonz verb schemas and documentation to AI agents via the Model Context Protocol.

How It Works

This server exposes the schemas and developer guide from the @jambonz/schema package as MCP tools. AI coding agents can query verb definitions, component types, callback payloads, and the full developer guide without needing local access to the schema files.

Related MCP server: openapi-mcp-proxy

Tools

Tool

Description

jambonz_developer_toolkit

Returns the full developer guide and schema index. Call this first before writing any jambonz code.

get_jambonz_schema

Fetch the JSON Schema for any verb, component, or callback (e.g. verb:say, component:synthesizer, callback:gather, guide:session-commands).

Usage

stdio transport

npx @jambonz/mcp-schema-server

HTTP transport

npx @jambonz/mcp-schema-server --http --port 3000

Configuration

Claude Code CLI

Add to .mcp.json in your project root:

{
  "mcpServers": {
    "jambonz": {
      "command": "npx",
      "args": ["-y", "@jambonz/mcp-schema-server"]
    }
  }
}

Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "jambonz": {
      "command": "npx",
      "args": ["-y", "@jambonz/mcp-schema-server"]
    }
  }
}

VS Code

Add to .vscode/mcp.json:

{
  "servers": {
    "jambonz": {
      "command": "npx",
      "args": ["-y", "@jambonz/mcp-schema-server"]
    }
  }
}

Remote Hosted Server

A hosted instance is available at:

https://mcp-server.jambonz.app/mcp

To use the remote server in .mcp.json:

{
  "mcpServers": {
    "jambonz": {
      "type": "url",
      "url": "https://mcp-server.jambonz.app/mcp"
    }
  }
}

Development

Local Testing

npm install
npm run build
node dist/index.js              # stdio transport
node dist/index.js --http       # HTTP on port 3000

Release Process

Publishing is handled by GitHub Actions on v* tags. To release:

# After updating dependencies in package.json
npm install
git add -A && git commit -m "chore: update dependencies"

# Bump version and create tag
npm version patch   # or minor/major

# Push commit and tag to trigger publish workflow
git push origin main --tags

License

MIT

Available Tools

4 tools
get_jambonz_schemaA

Get the JSON Schema for a jambonz verb or component. Available: verb:agent, verb:alert, verb:answer, verb:conference, verb:config, verb:deepgram_s2s, verb:dequeue, verb:dial, verb:dialogflow, verb:dtmf, verb:dub, verb:elevenlabs_s2s, verb:enqueue, verb:gather, verb:google_s2s, verb:hangup, verb:leave, verb:listen, verb:llm, verb:message, verb:openai_s2s, verb:pause, verb:play, verb:redirect, verb:rest_dial, verb:room, verb:s2s, verb:say, verb:sip-decline, verb:sip-refer, verb:sip-request, verb:stream, verb:tag, verb:transcribe, verb:transfer, verb:ultravox_s2s, component:actionHook, component:actionHookDelayAction, component:amd, component:auth, component:bidirectionalAudio, component:fillerNoise, component:handoff, component:hangup, component:llm-base, component:recognizer-assemblyAiOptions, component:recognizer-awsOptions, component:recognizer-azureOptions, component:recognizer-customOptions, component:recognizer-deepgramOptions, component:recognizer-elevenlabsOptions, component:recognizer-gladiaOptions, component:recognizer-googleOptions, component:recognizer-houndifyOptions, component:recognizer-ibmOptions, component:recognizer-nvidiaOptions, component:recognizer-openaiOptions, component:recognizer-sonioxOptions, component:recognizer-speechmaticsOptions, component:recognizer-xaiOptions, component:recognizer, component:synthesizer, component:target, component:transferOptions, component:vad, callback:agent-turn, callback:amd, callback:call-status, callback:conference-status, callback:conference-wait, callback:conference, callback:dequeue, callback:dial-dtmf, callback:dial-hold, callback:dial-refer, callback:dial, callback:enqueue-wait, callback:enqueue, callback:gather-partial, callback:gather, callback:listen, callback:llm, callback:message, callback:play, callback:session-new, callback:session-reconnect, callback:session-redirect, callback:sip-refer-event, callback:sip-refer, callback:sip-request, callback:transcribe-translation, callback:transcribe, callback:transfer, callback:tts-streaming-event, callback:verb-status, guide:bridged-call-patterns, guide:conference-monitoring, guide:session-commands, guide:node-sdk

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesVerb or component name (e.g. "say", "gather", "recognizer", "guide:node-sdk")

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full burden. It only states the return type (JSON Schema) but does not disclose behavioral traits like whether it's read-only, requires authentication, or possible side effects. Minimal transparency beyond the operation's nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description front-loads the purpose but then becomes verbose with a long list of items. While the list is useful, it could be better structured (e.g., grouped by type) for readability. The length exceeds what is necessary for a concise description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, the description does not detail the return value structure. However, 'JSON Schema' is self-explanatory for those familiar. The comprehensive input list provides completeness for parameter values, but missing output info slightly reduces overall completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 100% of parameters, and description adds significant value by listing all valid values for the 'name' parameter (e.g., verbs, components, callbacks, guides), which goes beyond the schema's brief example. This enriches parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get the JSON Schema for a jambonz verb or component.' It identifies the specific verb-resource relationship and distinguishes the tool from siblings like get_sdk_example (examples) and list_jambonz_tools (tools listing).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool over alternatives. Implicitly, if you need a schema, use this; but no mention of prerequisites or when not to use. Does not exclude alternative uses.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sdk_exampleA

Get full source code for an SDK example. Available: agent, assemblyai-autogenerate-prompt, bedrock-agent, call-recording, conference-supervision, deepgram-voice-agent, dial, echo, elevenlabs-voice-agent, hello-world, ivr-menu, llm-streaming, openai-realtime, queue-with-hold, realtime-translator, retell-hosted, room-play-tone, room-say, room-with-stream, s2s-move-to-room, stream-record, stream-then-room, two-stage-dialer, ultravox-voice-agent, voice-agent

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesExample name (e.g. "echo", "hello-world", "voice-agent"). Available: agent, assemblyai-autogenerate-prompt, bedrock-agent, call-recording, conference-supervision, deepgram-voice-agent, dial, echo, elevenlabs-voice-agent, hello-world, ivr-menu, llm-streaming, openai-realtime, queue-with-hold, realtime-translator, retell-hosted, room-play-tone, room-say, room-with-stream, s2s-move-to-room, stream-record, stream-then-room, two-stage-dialer, ultravox-voice-agent, voice-agent

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states 'Get full source code', which is a safe read operation. It does not disclose rate limits or auth, but for a simple retrieval tool this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence listing examples, which is concise but could be better structured (e.g., bullet list). No redundancy, but front-loading could improve scanning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter, no output schema, and no annotations, the description covers purpose and available options adequately. It lacks details on return format but is sufficient for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with the 'name' parameter described and listing examples. The description repeats the same list, adding no new meaning beyond the schema. Baseline is 3 due to high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get full source code for an SDK example' with a specific verb and resource. It also lists all available examples, making the tool's purpose unambiguous. It is distinct from sibling tools like get_jambonz_schema or list_jambonz_tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when you need SDK example source code, but lacks explicit guidance on when to use versus alternatives or exclusions. Since siblings are unrelated, the context is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

jambonz_developer_toolkitA

REQUIRED: call this before writing jambonz code. Returns the developer guide (verb model, transports, SDK API, patterns), lists all available schemas, and shows pre-built agent tools (weather, search, calculator, etc.) — check these before implementing custom toolHook handlers.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Describes the output but does not discuss side effects, auth needs, or state modifications. For a read-only knowledge retrieval tool, the disclosure is moderately adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with key requirement, no wasted words. Perfectly concise and structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no output schema, the description thoroughly describes the returned items (guide, schemas, tools). Could mention output format but is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so baseline is 4. The description adds value by explaining the output content beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns the developer guide, schemas, and pre-built tools. It distinguishes from siblings by being a prerequisite and advises checking pre-built tools before implementing custom handlers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'REQUIRED: call this before writing jambonz code' and 'check these before implementing custom toolHook handlers,' providing clear when-to-use guidance. Does not directly name sibling tools as alternatives but implies alternatives exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_jambonz_toolsA

List the pre-built tools from @jambonz/tools (v0.1.4) for jambonz agent apps, with full parameter schemas. Check here BEFORE hand-rolling a toolHook handler — use a ready-made tool if one fits. Available: calculator, get_datetime, web_search, get_weather, wikipedia.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided but the description fully discloses behavior: it lists tools with their schemas. The tool is read-only and non-destructive, appropriately conveyed for a listing operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences: purpose, usage guidance, and enumeration. Front-loaded with the core action, no redundancy, every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and no output schema, the description is fully complete. It tells the agent what to expect (list of tools with schemas) and includes actionable advice, leaving no gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has zero parameters, so description's mention of listing tools with schemas adds meaningful context. It emphasizes the value of the output without needing parameter details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: listing pre-built tools from @jambonz/tools with full parameter schemas. It uses a specific verb 'list' and resource 'pre-built tools', distinguishing it from sibling tools like get_jambonz_schema and get_sdk_example.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly advises to check here before hand-rolling a toolHook handler, encouraging use of ready-made tools if one fits. Also lists available tools, providing clear context for when to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 4 tool updatesv0.5.2
    • First observedget_jambonz_schema
    • First observedget_sdk_example
    • First observedjambonz_developer_toolkit
    • First observedlist_jambonz_tools

TDQS

A3.9/5.0
Disambiguation5/5

Each tool has a distinct purpose: schema retrieval, example code, developer guide, and tool listing. No overlap in functionality.

Naming Consistency3/5

Mix of 'get_' prefix for two tools, 'list_' for one, and a noun-phrase name for 'jambonz_developer_toolkit'. Not fully consistent but still readable.

Tool Count4/5

4 tools is appropriate for the server's focused purpose of providing jambonz schema, examples, and developer resources. Not too few or too many.

Completeness4/5

Covers key developer needs: schema access, examples, developer guide, and pre-built tool listing. No major gaps for its scope.

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
    Not graded
    quality
    F
    maintenance
    A MCP server that exposes OpenAPI schema information to LLMs like Claude. This server allows an LLM to explore and understand large OpenAPI schemas through a set of specialized tools, without needing to load the whole schema into the context
    358
    50
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Provides AI assistants with real-time access to the AGNO framework documentation by enabling them to browse, search, and fetch documentation pages. This server allows users to query information about AGNO's Agents, Teams, and Workflows directly through MCP-compatible clients.
    16
    -

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/jambonz/mcp-server'

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