@aashari/mcp-server-atlassian-confluence
Version:
Node.js/TypeScript MCP server for Atlassian Confluence. Provides tools enabling AI systems (LLMs) to list/get spaces & pages (content formatted as Markdown) and search via CQL. Connects AI seamlessly to Confluence knowledge bases using the standard MCP in
88 lines (87 loc) • 2.71 kB
TypeScript
import { ContentStatus, BodyFormat, PageSortOrder } from '../services/vendor.atlassian.pages.types.js';
import { PaginationOptions, EntityIdentifier } from '../types/common.types.js';
/**
* Page identifier for retrieving specific pages.
* Used as the parameter to get() method.
*/
export interface PageIdentifier extends EntityIdentifier {
/**
* The ID of the page to retrieve.
* This is the unique numeric identifier for the Confluence page.
*/
pageId: string;
}
/**
* Options for listing Confluence pages.
* These options control filtering and pagination of page listings.
*/
export interface ListPagesOptions extends PaginationOptions {
/**
* Filter pages by space ID.
* Limits results to pages in the specified spaces.
*/
spaceId?: string[];
/**
* Standardized alternative to spaceId for consistency across services.
* Has the same functionality as spaceId but provides a consistent parameter
* name across different Atlassian services.
*/
containerId?: string[];
/**
* Filter pages by status.
* Examples: 'current', 'draft', 'archived'
*/
status?: ContentStatus[];
/**
* Text-based filter for pages.
* Search by title, content, or labels.
*/
query?: string;
/**
* Property to sort by (e.g., 'title', '-modified-date')
* Default: '-modified-date' (most recently modified first)
*/
sort?: PageSortOrder;
}
/**
* Options for getting detailed page information.
* These options control what additional data is included in the response.
*/
export interface GetPageOptions {
/**
* Format of the page body to retrieve.
* Controls how the page content is formatted in the response.
* Default: 'view'
*/
bodyFormat?: BodyFormat;
/**
* Whether to include page labels.
* When true, retrieves the labels associated with the page.
* Default: true
*/
includeLabels?: boolean;
/**
* Whether to include page properties.
* When true, retrieves the custom properties associated with the page.
* Default: true
*/
includeProperties?: boolean;
/**
* Whether to include web resources.
* When true, retrieves web resources associated with the page.
* Default: true
*/
includeWebresources?: boolean;
/**
* Whether to include collaborators.
* When true, retrieves information about page contributors.
* Default: true
*/
includeCollaborators?: boolean;
/**
* Whether to include version information.
* When true, retrieves version history metadata for the page.
* Default: false
*/
includeVersion?: boolean;
}