Provides 8 MCP tools for Confluence Cloud: - confluence_list_spaces, confluence_create_space - confluence_search, confluence_get_page - confluence_create_page, confluence_update_page - confluence_get_comments, confluence_add_comment Uses Confluence REST API v2 with basic auth. Registered in Claude Code and mcp-proxy. Refs: CF-935 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
68 lines
2.1 KiB
TypeScript
68 lines
2.1 KiB
TypeScript
/**
|
|
* Confluence Cloud REST API v2 client.
|
|
* Uses basic auth with Atlassian API token.
|
|
*/
|
|
export interface Space {
|
|
id: string;
|
|
key: string;
|
|
name: string;
|
|
type: string;
|
|
status: string;
|
|
description?: string;
|
|
}
|
|
export interface Page {
|
|
id: string;
|
|
status: string;
|
|
title: string;
|
|
spaceId: string;
|
|
parentId?: string;
|
|
authorId: string;
|
|
createdAt: string;
|
|
version: {
|
|
number: number;
|
|
message?: string;
|
|
createdAt: string;
|
|
authorId?: string;
|
|
};
|
|
body?: {
|
|
storage?: {
|
|
representation: string;
|
|
value: string;
|
|
};
|
|
atlas_doc_format?: {
|
|
representation: string;
|
|
value: string;
|
|
};
|
|
};
|
|
_links?: {
|
|
webui?: string;
|
|
editui?: string;
|
|
};
|
|
}
|
|
export interface Comment {
|
|
id: string;
|
|
status: string;
|
|
title: string;
|
|
body?: {
|
|
storage?: {
|
|
representation: string;
|
|
value: string;
|
|
};
|
|
};
|
|
version: {
|
|
number: number;
|
|
createdAt: string;
|
|
};
|
|
}
|
|
export declare function listSpaces(limit?: number): Promise<Space[]>;
|
|
export declare function getSpace(spaceIdOrKey: string): Promise<Space>;
|
|
export declare function createSpace(key: string, name: string, description?: string): Promise<Space>;
|
|
export declare function searchPages(query: string, spaceId?: string, limit?: number): Promise<Page[]>;
|
|
export declare function getPage(pageId: string, includeBody?: boolean): Promise<Page>;
|
|
export declare function getPageByTitle(spaceId: string, title: string): Promise<Page | null>;
|
|
export declare function createPage(spaceId: string, title: string, body: string, parentId?: string): Promise<Page>;
|
|
export declare function updatePage(pageId: string, title: string, body: string, versionNumber: number, versionMessage?: string): Promise<Page>;
|
|
export declare function getPageComments(pageId: string, limit?: number): Promise<Comment[]>;
|
|
export declare function addPageComment(pageId: string, body: string): Promise<Comment>;
|
|
export declare function getWebUrl(page: Page): string;
|