Skip to main content
Glama

akb_publish

Create a public share URL for documents, files, or table queries without authentication. Returns a shareable link that can be optionally password-protected or set to expire.

Instructions

Create a public, no-auth share URL for a document, file, or table query. Document/file: pass the resource uri. Table query: pass query_sql plus vault (and query_vault_names if the query touches more than one). Returns the canonical publication dict — slug is the only identifier you need; share_url is always an absolute URL ready to paste.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
uriNoResource URI to publish — required when resource_type is document or file. Omit for table_query.
resource_typeNoKind of resource. document/file → pass `uri`. table_query → pass `query_sql` + `vault`.document
vaultNoVault name. Required only for resource_type=table_query (doc/file vault is inferred from the URI).
query_sqlNoSELECT/WITH SQL with :param placeholders. resource_type=table_query only.
query_vault_namesNoVaults the query reads from. Defaults to [vault]. resource_type=table_query only.
query_paramsNoParameter declarations: {name: {type, default, required}}. resource_type=table_query only.
passwordNoRequire this password to view the share.
max_viewsNoAuto-expire after N views.
expires_inNoExpiration window: '1h', '7d', '30d', or 'never' (default).
titleNoOverride the display title (defaults to the resource's own title).
section_filterNoFilter to a specific heading section. resource_type=document only.
allow_embedNoAllow the share to be embedded via iframe/oEmbed.
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states the share is public and no-auth, and describes the return value (canonical publication dict with `slug` and `share_url`). This provides sufficient transparency, though it could mention potential side effects like overwriting existing shares or limits.

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?

The description is extremely concise—two sentences that front-load the main purpose and systematically cover the two main use cases. Every sentence adds value, and there is no wasted text. The structure aids quick comprehension.

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 the complexity (12 parameters, conditional logic, no output schema), the description adequately explains the different resource types and the return value. It could be more complete by mentioning default values or how to use the returned dict, but it covers the essential points for tool invocation.

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 coverage is 100%, and the description adds meaning beyond the schema by explaining the conditional logic between resource types and the significance of the return value (`slug` is the only identifier needed). This helps an agent understand how parameters interact, going beyond mere repetition.

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 it creates a public, no-auth share URL for documents, files, or table queries. It specifies the verb 'Create' and the resource 'public share URL', distinguishing between resource types with conditional parameter usage. This effectively differentiates it from sibling tools like akb_set_public or akb_unpublish.

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 explicitly explains when to pass `uri` (for document/file) versus `query_sql` + `vault` (for table_query), and mentions optional parameters like `password`, `max_views`, `expires_in`. It does not explicitly state when not to use this tool or provide alternatives, but the context is clear enough for an AI agent to infer appropriate usage.

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

Install Server

Other Tools

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/dnotitia/akb'

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