Skip to main content
Glama

Publish a lambda's source code

open_source
DestructiveIdempotent

Publish a lambda's source code at /source/{publicKey} for anybody to read, star and download as a .NET project, change the license it is published under, or take it down. What is published is the program and what is written about it - every version's code, resources, documentation and tests, and the history of what each changed - never its data: not the database, not the workspace, not a secret's value. Not part of building: only do this when the user asks for it, and ask which license if they did not say (MIT unless they want another). With only privateKey it returns whether it is published. Once published, everything in every version is public, older ones included: keep keys, passwords and personal data out of the files - in secrets and the database.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
authorNoWho holds the copyright, as the license names them - the user's name or organization, only if they gave it. Left out, it stays as it is; empty, the license names 'the authors of' the lambda. Up to 100 characters.
removeNoTake the source down instead. Its stars are kept for when it is published again.
licenseNoThe SPDX identifier of the license: MIT, Apache-2.0, BSD-3-Clause, MPL-2.0, GPL-3.0-or-later, AGPL-3.0-or-later, Unlicense. Left out, it stays as it is - MIT when first published.
privateKeyYesThe editor key.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior4/5

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

The description adds significant behavioral context beyond the annotations: it details what data is never published (database, workspace, secrets), warns that older versions become public, and advises keeping secrets out. It also covers the read-only query behavior when only privateKey is provided. Annotations already flag destructiveHint and idempotentHint, but the description enriches with privacy and scope warnings.

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 dense but front-loads the core action and then layers on important caveats. It avoids unnecessary repetition, though the long final sentence about public versions and secrets is somewhat packed. Overall it is well-structured and 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 the complexity of this mutation tool (publishing, unpublishing, license changes) and the absence of an output schema, the description covers all critical aspects: what gets published, privacy implications, license handling, and the read-only mode. Nothing essential for correct invocation is missing.

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%, so the schema fully documents each parameter's meaning and defaults. The description adds a little extra context for the license default and the effect of omitting author/remove, but mostly repeats what is in the schema. The baseline 3 is appropriate when the schema does the heavy lifting.

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 states a specific verb and resource ('Publish a lambda's source code at /source/{publicKey}') and enumerates the full scope of what is published. It also clearly distinguishes the tool from siblings like deploy or write_code by emphasizing that it is 'not part of building' and is a separate publication action.

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?

It explicitly states when to use the tool ('only do this when the user asks for it'), provides a fallback behavior (ask which license if not specified, default MIT), and describes the no-op case with only privateKey. This gives clear operational guidance without needing to check other tools.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.