Index
Tool
Bases: BaseModel
Internal tool registration info.
Source code in src/mcp/server/mcpserver/tools/base.py
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | |
from_function
classmethod
from_function(
fn: Callable[..., Any],
name: str | None = None,
title: str | None = None,
description: str | None = None,
context_kwarg: str | None = None,
annotations: ToolAnnotations | None = None,
icons: list[Icon] | None = None,
meta: dict[str, Any] | None = None,
structured_output: bool | None = None,
) -> Tool
Create a Tool from a function.
Source code in src/mcp/server/mcpserver/tools/base.py
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | |
run
async
run(
arguments: dict[str, Any],
context: Context[LifespanContextT, RequestT],
convert_result: bool = False,
) -> Any
Run the tool with arguments.
Raises:
| Type | Description |
|---|---|
ToolError
|
If the tool function raises during execution. |
Source code in src/mcp/server/mcpserver/tools/base.py
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | |
ToolManager
Manages MCPServer tools.
Source code in src/mcp/server/mcpserver/tools/tool_manager.py
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | |
get_tool
Get tool by name.
Source code in src/mcp/server/mcpserver/tools/tool_manager.py
30 31 32 | |
list_tools
List all registered tools.
Source code in src/mcp/server/mcpserver/tools/tool_manager.py
34 35 36 | |
add_tool
add_tool(
fn: Callable[..., Any],
name: str | None = None,
title: str | None = None,
description: str | None = None,
annotations: ToolAnnotations | None = None,
icons: list[Icon] | None = None,
meta: dict[str, Any] | None = None,
structured_output: bool | None = None,
) -> Tool
Add a tool to the server.
Source code in src/mcp/server/mcpserver/tools/tool_manager.py
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | |
remove_tool
remove_tool(name: str) -> None
Remove a tool by name.
Source code in src/mcp/server/mcpserver/tools/tool_manager.py
68 69 70 71 72 | |
call_tool
async
call_tool(
name: str,
arguments: dict[str, Any],
context: Context[LifespanContextT, RequestT],
convert_result: bool = False,
) -> Any
Call a tool by name with arguments.
Source code in src/mcp/server/mcpserver/tools/tool_manager.py
74 75 76 77 78 79 80 81 82 83 84 85 86 | |