Skip to main content
Glama
reference.py3.37 kB
"""Word 引用工具(书签、超链接、批注).""" from typing import Any from fastmcp import FastMCP from loguru import logger from office_mcp_server.handlers.word_handler import WordHandler def register_reference_tools(mcp: FastMCP, word_handler: WordHandler) -> None: """注册 Word 引用工具.""" @mcp.tool() def add_word_bookmark( filename: str, paragraph_index: int, bookmark_name: str, ) -> dict[str, Any]: """向 Word 文档添加书签. Args: filename: 文件名 paragraph_index: 段落索引 (从0开始) bookmark_name: 书签名称 Returns: dict: 操作结果 """ logger.info(f"MCP工具调用: add_word_bookmark(filename={filename})") return word_handler.add_bookmark(filename, paragraph_index, bookmark_name) @mcp.tool() def list_word_bookmarks( filename: str, ) -> dict[str, Any]: """列出 Word 文档中的所有书签. Args: filename: 文件名 Returns: dict: 书签列表 """ logger.info(f"MCP工具调用: list_word_bookmarks(filename={filename})") return word_handler.list_bookmarks(filename) @mcp.tool() def delete_word_bookmark(filename: str, bookmark_name: str) -> dict[str, Any]: """删除 Word 文档中的书签. Args: filename: 文件名 bookmark_name: 书签名称 Returns: dict: 操作结果 """ logger.info(f"MCP工具调用: delete_word_bookmark(filename={filename})") return word_handler.delete_bookmark(filename, bookmark_name) @mcp.tool() def add_word_hyperlink( filename: str, paragraph_index: int, text: str, url: str, link_type: str = "url", ) -> dict[str, Any]: """向 Word 文档添加超链接. Args: filename: 文件名 paragraph_index: 段落索引 (从0开始) text: 链接文本 url: 链接地址 link_type: 链接类型 ('url'网址, 'email'邮箱, 'bookmark'书签) Returns: dict: 操作结果 """ logger.info(f"MCP工具调用: add_word_hyperlink(filename={filename})") return word_handler.add_hyperlink(filename, paragraph_index, text, url, link_type) @mcp.tool() def extract_word_hyperlinks( filename: str, ) -> dict[str, Any]: """提取 Word 文档中的所有超链接. Args: filename: 文件名 Returns: dict: 超链接列表 """ logger.info(f"MCP工具调用: extract_word_hyperlinks(filename={filename})") return word_handler.extract_hyperlinks(filename) @mcp.tool() def batch_update_word_hyperlinks(filename: str, old_domain: str, new_domain: str) -> dict[str, Any]: """批量更新 Word 文档中的超链接域名. Args: filename: 文件名 old_domain: 旧域名 new_domain: 新域名 Returns: dict: 操作结果,包含更新数量 """ logger.info(f"MCP工具调用: batch_update_word_hyperlinks(filename={filename})") return word_handler.batch_update_hyperlinks(filename, old_domain, new_domain)

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/walkingzzzy/office-mcp'

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