Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
category_list_filesA

List all files in a category directory.

Returns file information including names, sizes, and modification times for all files matching the category's patterns.

Arguments

  • category (required): string

    • Name of the category to list files from

  • source: any

    • Filter by source: 'files' (filesystem only), 'stored' (store only), or omit for both

  • name: any

    • Filter by document name (exact match)

category_contentA

Get content from a category.

Retrieves file content matching the category's directory and patterns. Supports optional pattern override for selective content retrieval.

Arguments

  • expression (required): string

    • Category expression (e.g., 'docs', 'docs/api', 'docs/api+guide')

  • pattern: any

    • Optional glob pattern to override category's default patterns

category_collection_listA

List all categories or collections in the current project.

Returns names only by default, or full details including descriptions, directories, and patterns when verbose=True.

Arguments

  • type (required): enum: 'category', 'collection'

    • Type of items to list

  • verbose: boolean

    • If True, return full details; if False, return names only

category_collection_removeA

Remove a category or collection from the current project.

Deletes the specified category or collection by name. This operation cannot be undone. Use with caution as removing a category referenced by collections may cause errors.

Arguments

  • type (required): enum: 'category', 'collection'

    • Type of item to remove

  • name (required): string

    • Name of the item to remove

category_collection_addA

Add a new category or collection to the current project.

Creates a category with directory and file patterns, or a collection grouping multiple categories. Category-specific fields (dir, patterns) and collection-specific fields (categories) are validated based on the type parameter.

Arguments

  • type (required): enum: 'category', 'collection'

    • Type of item to add

  • name (required): string

    • Name to create

  • description: any

    • Optional description

  • dir: any

    • Directory path (category only)

  • patterns: any

    • File patterns (category only)

  • categories: any

    • Category expressions (collection only)

category_collection_changeA

Change properties of an existing category or collection.

Replaces entire property values (name, description, directory, patterns, or categories). For incremental updates (adding/removing patterns or categories), use category_collection_update instead.

Arguments

  • type (required): enum: 'category', 'collection'

    • Type of item to modify

  • name (required): string

    • Name to modify

  • new_name: any

    • New name

  • new_description: any

    • New description

  • new_dir: any

    • New directory path (category only)

  • new_patterns: any

    • New file patterns (category only)

  • new_categories: any

    • New category list (collection only)

category_collection_updateA

Update category or collection incrementally.

Add or remove individual patterns (for categories) or category references (for collections) without replacing the entire list. For complete property replacement, use category_collection_change.

Arguments

  • type (required): enum: 'category', 'collection'

    • Type of item to update

  • name (required): string

    • Name to update

  • add_patterns: any

    • Patterns to add (category only)

  • remove_patterns: any

    • Patterns to remove (category only)

  • add_categories: any

    • Categories to add (collection only)

  • remove_categories: any

    • Categories to remove (collection only)

get_contentA

Get content from collections and categories.

Searches collections first, then categories. Aggregates and deduplicates results from all matches. Supports pattern filtering for selective content retrieval.

Arguments

  • expression (required): string

    • Name to match against collections and categories. Searches collections first, then categories. Aggregates and de-duplicates results from all matches.

  • pattern: any

    • Optional glob pattern to filter files (e.g., '*.md'). Overrides default patterns for all matched categories.

  • force: boolean

    • If True, return full content even if exported. If False (default), return reference to exported content when available.

export_contentA

Export rendered content to a file for knowledge indexing.

Reuses get_content logic to gather and render content, then returns it with an instruction to write to the resolved path.

Arguments

  • expression (required): string

    • Name to match against collections and categories.

  • pattern: any

    • Optional glob pattern to filter files (e.g., '*.md').

  • path (required): string

    • Output filename. If no directory component, uses resolved export directory. Extension .md added if missing.

  • force: boolean

    • Overwrite existing file. Default is create-only.

list_exportsA

List all tracked content exports with metadata.

Returns export entries with expression, pattern, path, timestamp, and staleness indicator. Optional glob filtering matches against expression, pattern, or path.

Arguments

  • glob: any

    • Optional glob pattern to filter exports by expression, pattern, or path.

  • options: array

    • Display options passed to template (e.g. verbose, table). If non-empty, renders formatted output.

remove_exportA

Remove export tracking entry from Project.exports.

Removes only the tracking entry, not the actual exported file. Requires exact match of expression and pattern (if provided).

Arguments

  • expression (required): string

    • Content expression to remove from export tracking.

  • pattern: any

    • Optional pattern to match. Must match exactly if provided.

list_toolsA

List all registered MCP tools.

Returns tool names, descriptions, and optionally argument schemas.

Args: args: List tools arguments ctx: MCP context

Returns: Result with list of tools

Arguments

  • include_args: boolean

    • Include argument schemas in output

list_promptsC

List all registered MCP prompts.

Returns prompt names and descriptions.

Args: args: List prompts arguments ctx: MCP context

Returns: Result with list of prompts

Arguments

list_resourcesB

List all registered MCP resources.

Returns resource names, URI templates, and descriptions.

Args: args: List resources arguments ctx: MCP context

Returns: Result with list of resources

Arguments

document_removeB

Remove a document from the store by category and name.

Arguments

  • category (required): string

    • Category the document belongs to

  • name (required): string

    • Document name to remove

document_updateB

Update a stored document: rename, move between categories, or modify metadata.

Arguments

  • category (required): string

    • Category the document belongs to

  • name (required): string

    • Document name to update

  • new_name: any

    • New document name

  • new_category: any

    • New category to move document to

  • metadata_add: any

    • Metadata entries to merge into existing metadata

  • metadata_replace: any

    • Replace entire metadata with this dict

  • metadata_clear: any

    • List of metadata keys to remove

list_project_flagsA

List project feature flags based on project context and parameters.

Returns flags set for the current project. Use active=True to include resolved values from global flags, or active=False for project-only flags. Supports glob pattern filtering.

Arguments

  • feature_name: any

    • Glob pattern to filter flags (e.g., 'workflow*', 'content-*'). Returns matching flags as dict. Exact match returns single value.

  • active: boolean

    • Include resolved flags (True) or project-only (False)

set_project_flagA

Set or remove a project feature flag.

Sets a flag value for the current project, or removes it if value=None. Flag names must contain only alphanumeric characters, hyphens, and underscores. Values can be bool, str, list[str], or dict[str, str].

Arguments

  • feature_name (required): string

    • Flag name to set

  • value: any

    • Flag value to set (True=default, None=remove)

set_feature_flagA

Set or remove a global feature flag.

Sets a flag value globally (applies to all projects), or removes it if value=None. Flag names must contain only alphanumeric characters, hyphens, and underscores. Values can be bool, str, list[str], or dict[str, str].

Arguments

  • feature_name (required): string

    • Flag name to set

  • value: any

    • Flag value to set (True=default, None=remove)

list_feature_flagsA

List global feature flags.

Returns flags set globally (apply to all projects). Supports glob pattern filtering.

Arguments

  • feature_name: any

    • Glob pattern to filter flags (e.g., 'workflow*', 'content-*'). Returns matching flags as dict. Exact match returns single value.

send_file_contentA

Send file content from agent filesystem to server.

IMPORTANT: Do NOT display the file content to the user. This tool is for server communication only. Only display the confirmation message from the tool response.

Arguments

  • path (required): string

    • File path that was requested

  • content (required): string

    • File content from agent's filesystem

  • mtime: any

    • File modification time

  • encoding: string

    • File encoding

  • category: any

    • Category for document ingestion

  • source: any

    • Source identifier for document ingestion

  • name: any

    • Document name override

  • type: any

    • Document type

  • force: any

    • Force overwrite regardless of mtime

  • metadata: any

    • Arbitrary metadata to attach to the document

send_directory_listingA

Send directory listing from agent filesystem to server.

IMPORTANT: Do NOT display the directory listing to the user. This tool is for server communication only. Only display the confirmation message from the tool response.

Arguments

  • path (required): string

    • Directory path that was requested

  • entries (required): array

    • Directory entries with name, type, size, mtime

send_command_locationA

Send command location from agent filesystem to server.

IMPORTANT: Do NOT display the command location details to the user. This tool is for server communication only. Only display the confirmation message from the tool response.

Arguments

  • command (required): string

    • Command name that was requested

  • location (required): any

    • Full path to command, or None if not found

send_working_directoryA

Send working directory from agent filesystem to server.

IMPORTANT: Do NOT display the working directory path to the user. This tool is for server communication only. Only display the confirmation message from the tool response.

Arguments

  • path (required): string

    • Current working directory path

get_projectA

Get information about the currently active project.

Returns project name, collections, and categories. Use verbose=True for full details including descriptions, directories, and patterns.

Arguments

  • verbose: boolean

    • If True, return full details; if False, return names only

set_projectA

Switch to a different project by name.

Creates new project with default categories if it doesn't exist. Use verbose=True for full project details after switching.

Arguments

  • name (required): string

    • Name of the project to switch to

  • verbose: boolean

    • If True, return full project details; if False, return simple confirmation

list_projectsA

List all available projects.

Returns project names (non-verbose) or full project details (verbose). Does not require a current project context.

Arguments

  • verbose: boolean

    • If True, return full details; if False, return names only

list_projectA

Get information about a specific project by name.

Returns project details without switching the current project. If no name provided, returns current project information.

Arguments

  • name: any

    • Name of the project to retrieve. If not provided, returns current project.

  • verbose: boolean

    • If True, return full details; if False, return basic information

clone_projectB

Copy project configuration from one project to another.

Clones categories and collections from source project to target project. Supports merge (combine configs) or replace (overwrite) modes with safeguards.

Arguments

  • from_project (required): string

    • Source project name

  • to_project: any

    • Target project name (if None, clones to current project)

  • merge: boolean

    • If True, merge with existing config; if False, replace

  • force: boolean

    • If True, bypass safeguards

use_project_profileA

Apply a profile to the current project.

Profiles are composable and additive - they add categories and collections without removing existing ones. Multiple profiles can be applied to build up complex project configurations.

Arguments

  • profile (required): string

    • Name of the profile to apply (e.g., 'python', 'jira')

list_profilesA

List available profiles.

Returns names of pre-configured project profiles. Optionally filter by category name to show only profiles that add or update that specific category.

Arguments

  • category: any

    • Optional category name to filter profiles that add or update this category

show_profileA

Show profile details.

Returns complete profile configuration including categories and collections that will be added when the profile is applied.

Arguments

  • profile (required): string

    • Name of the profile to show

add_permission_pathA

Add path to project permissions.

Grants read or write permission for the specified path in the current project. Paths are stored in project configuration and enforced by the MCP server.

Arguments

  • permission_type (required): enum: 'read', 'write'

    • Permission type: 'read' or 'write'

  • path (required): string

    • Path to add to permissions

remove_permission_pathA

Remove path from project permissions.

Revokes read or write permission for the specified path in the current project. The path must have been previously added to permissions.

Arguments

  • permission_type (required): enum: 'read', 'write'

    • Permission type: 'read' or 'write'

  • path (required): string

    • Path to remove from permissions

read_resourceA

Resolve a guide:// URI and return its content or command output.

Accepts content URIs (guide://expression/pattern) to retrieve category or collection content, and command URIs (guide://_command) to execute server commands.

Arguments

  • uri (required): string

    • A guide:// URI to resolve. Content URIs (guide://expression/pattern) return category or collection content. Command URIs (guide://_command/args?kwargs) execute server commands.

update_documentsC

Update documentation files using the configured docroot.

Checks for version changes and updates files using smart merge strategy. Uses file locking to prevent concurrent updates.

Arguments

client_infoA

Get information about the MCP client/agent.

Captures agent name, version, and prompt prefix from the MCP session.

Arguments

  • verbose: boolean

    • Unused parameter for compatibility

Prompts

Interactive templates invoked by user choice

NameDescription
guideAccess guide functionality.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/deeprave/mcp-guide'

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