From 496dfd131c4d5c8f8858563b739fafcb3606c72b Mon Sep 17 00:00:00 2001 From: Rick Hennigan Date: Wed, 24 Jun 2026 09:46:44 -0400 Subject: [PATCH 1/3] Testing hypothesis that notebooks missing cache is contributing to deadlocks during paclet check --- .cspell.json | 1 + Scripts/BuildPaclet.wls | 16 +++++++----- Scripts/UnformatFiles.wls | 54 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 64 insertions(+), 7 deletions(-) create mode 100644 Scripts/UnformatFiles.wls diff --git a/.cspell.json b/.cspell.json index df8e3ee2..04f17e2c 100644 --- a/.cspell.json +++ b/.cspell.json @@ -65,6 +65,7 @@ "unbuilt", "Underspecified", "unformat", + "Unformatting", "Unparseable", "USERBASE", "USERPROFILE", diff --git a/Scripts/BuildPaclet.wls b/Scripts/BuildPaclet.wls index 479b26ca..d8fd2ad4 100644 --- a/Scripts/BuildPaclet.wls +++ b/Scripts/BuildPaclet.wls @@ -6,21 +6,23 @@ BeginPackage[ "Wolfram`MCPServerScripts`" ]; (* ::Section::Closed:: *) (*Initialization*) If[ ! TrueQ @ $loadedDefinitions, Get @ FileNameJoin @ { DirectoryName @ $InputFileName, "Common.wl" } ]; -If[ ! StringQ @ Environment[ "GITHUB_ACTIONS" ], System`$PublisherID = "Wolfram" ]; +If[ ! $inCICD, System`$PublisherID = "Wolfram" ]; (* ::**************************************************************************************************************:: *) (* ::Subsection::Closed:: *) (*Arguments*) -$check = getBooleanArgument[ { "c", "check" }, True ]; -$install = getBooleanArgument[ { "i", "install" }, False ]; -$mx = getBooleanArgument[ { "m", "mx" }, True ]; -$keepMX = getBooleanArgument[ { "k", "keep-mx" }, StringQ @ Environment[ "GITHUB_ACTIONS" ] ]; +$check = getBooleanArgument[ { "c", "check" }, True ]; +$install = getBooleanArgument[ { "i", "install" }, False ]; +$mx = getBooleanArgument[ { "m", "mx" }, True ]; +$unformat = getBooleanArgument[ { "u", "unformat" }, $inCICD ]; +$keepMX = getBooleanArgument[ { "k", "keep-mx" }, $inCICD ]; (* ::**************************************************************************************************************:: *) (* ::Subsection::Closed:: *) (*Optional Dependencies*) -If[ $mx , Get @ cFile @ FileNameJoin @ { $scriptDir, "BuildMX.wls" } ]; -If[ $check, Get @ cFile @ FileNameJoin @ { $scriptDir, "Resources", "CodeInspectorRules.wl" } ]; +If[ $unformat, Get @ cFile @ FileNameJoin @ { $scriptDir, "UnformatFiles.wls" } ]; +If[ $mx , Get @ cFile @ FileNameJoin @ { $scriptDir, "BuildMX.wls" } ]; +If[ $check , Get @ cFile @ FileNameJoin @ { $scriptDir, "Resources", "CodeInspectorRules.wl" } ]; (* ::**************************************************************************************************************:: *) (* ::Subsection::Closed:: *) diff --git a/Scripts/UnformatFiles.wls b/Scripts/UnformatFiles.wls new file mode 100644 index 00000000..eccd135f --- /dev/null +++ b/Scripts/UnformatFiles.wls @@ -0,0 +1,54 @@ +#!/usr/bin/env wolframscript + +BeginPackage[ "Wolfram`MCPServerScripts`" ]; + +If[ ! TrueQ @ $loadedDefinitions, Get @ FileNameJoin @ { DirectoryName @ $InputFileName, "Common.wl" } ]; + +Needs[ "PacletTools`" -> "pt`" ]; +Needs[ "Wolfram`PacletCICD`" -> "cicd`" ]; + +(* ::**************************************************************************************************************:: *) +(* ::Section::Closed:: *) +(*Definitions*) + +(* ::**************************************************************************************************************:: *) +(* ::Subsection::Closed:: *) +(*unformat*) +unformat[ file_ ] := + Enclose @ Module[ { nb, exported }, + nb = ConfirmMatch[ Import[ file, "NB" ], _Notebook, "Import" ]; + exported = ConfirmBy[ Export[ file, nb, "NB" ], FileExistsQ, "Export" ]; + ConfirmAssert[ StringContainsQ[ Import[ file, "String" ], "(* Internal cache information *)" ], "CacheCheck" ]; + cicd`ConsoleLog[ " "<>exported ]; + exported + ]; + +(* ::**************************************************************************************************************:: *) +(* ::Section::Closed:: *) +(*Run*) +files = cicd`ScriptConfirmMatch[ + DeleteDuplicates @ Flatten @ { + FileNameJoin @ { $pacletDir, "ResourceDefinition.nb" }, + FileNames[ + "*.nb", + DeleteDuplicates @ Flatten @ DeleteCases[ + Values @ pt`PacletExtensionDirectory @ File @ $pacletDir, + StringDelete[ $pacletDir, $PathnameSeparator~~EndOfString ] + ], + Infinity + ] + }, + { __String } +]; + +cicd`ConsoleLog[ "Unformatting " <> ToString @ Length @ files <> " files..." ]; + +result = cicd`ScriptConfirmMatch[ UsingFrontEnd[ + CurrentValue[ $FrontEndSession, { PrivateFrontEndOptions, "ExperimentalNotebookParser" } ] = False; (* ensure the file outline cache is built with the old parser *) + CurrentValue[ $FrontEndSession, DynamicUpdating ] = False; + unformat /@ files +], { __String } ]; + +EndPackage[ ]; + +Wolfram`MCPServerScripts`result \ No newline at end of file From 3fc344f999ffe24b6b41c4838cf4842383022bb3 Mon Sep 17 00:00:00 2001 From: Rick Hennigan Date: Wed, 24 Jun 2026 09:58:00 -0400 Subject: [PATCH 2/3] Be consistent with `UsingFrontEnd` --- Kernel/PreferencesContent.wl | 112 +++++++++++++++++------------------ Scripts/TestPaclet.wls | 2 +- 2 files changed, 57 insertions(+), 57 deletions(-) diff --git a/Kernel/PreferencesContent.wl b/Kernel/PreferencesContent.wl index 127fdeb3..17c4496b 100644 --- a/Kernel/PreferencesContent.wl +++ b/Kernel/PreferencesContent.wl @@ -93,12 +93,12 @@ clientInterfaces[] := Style[tr["prefsNoMCPClients"], Italic, FontColor -> ldsGray[0.5]], MatchQ[servers, Except[{__String}]], Style[tr["prefsNoMCPServers"], Italic, FontColor -> ldsGray[0.5]], - + True, Column[ { If[ - globallyConfiguredClients === {}, Nothing, + globallyConfiguredClients === {}, Nothing, Framed[ Column[ Prepend[ @@ -123,7 +123,7 @@ clientInterfaces[] := RoundingRadius -> 6 ] ], - + If[ detectedClients === {}, Nothing, Framed[ @@ -154,7 +154,7 @@ clientInterfaces[] := Prepend[ clientRow["Other", #, clientNameSpacer, Dynamic[refresh]]& /@ otherClients, Style[ - If[globallyConfiguredClients === detectedClients === {}, + If[globallyConfiguredClients === detectedClients === {}, tr["prefsHarnessesAll"], tr["prefsHarnessesMore"] ], @@ -198,7 +198,7 @@ clientInterfaces[] := CompoundExpression[update, evals], (* globallyConfiguredClients is the list of clients with a relevant, global configuration. - If there are clients with relevant, per-directory configs but without a global config, + If there are clients with relevant, per-directory configs but without a global config, those will be in locallyConfiguredClients -- and thus in detectedClients -- instead. *) With[{ configured = {#["ClientName"], #["Toolset"], #["Scope"]}& /@ DeployedAgentTools[ ] }, @@ -213,7 +213,7 @@ clientInterfaces[] := ManageWelcomeScreenData["Update"]; ++update; ]; - + refresh[ ]; initDone = True; ), @@ -226,7 +226,7 @@ clientInterfaces[] := (*configureAllButton*) -configureAllButton[detectedClients_, Dynamic[refresh_]] := +configureAllButton[detectedClients_, Dynamic[refresh_]] := DynamicModule[{clicked = False}, MouseAppearance[ Button[ @@ -378,7 +378,7 @@ clientControls[category_, client_, Dynamic[refresh_]] := (*clientMenu*) -clientMenu[category_, client_, Dynamic[refresh_]] := +clientMenu[category_, client_, Dynamic[refresh_]] := PopupMenu[ Dynamic[ CurrentValue[$FrontEnd, {PrivateFrontEndOptions, "InterfaceSettings", "ServicesForAIs", "SelectedToolset", client}], @@ -426,7 +426,7 @@ clientMenu[category_, client_, Dynamic[refresh_]] := ] // dimUnconfigured[category] -dimUnconfigured[category_][expr_] := +dimUnconfigured[category_][expr_] := If[ category === "Configured", expr, @@ -472,7 +472,7 @@ clientButtonTemplate[label_, action_] := ] -clientButton[category: "Configured", client_, Dynamic[refresh_]] := +clientButton[category: "Configured", client_, Dynamic[refresh_]] := clientButtonTemplate[ (* Disable button *) PaneSelector[{0 -> tr["prefsDisableButton"], 1 -> tr["prefsConfigureButton"]}, 0, Alignment -> Center], refresh @ DeleteObject @ Select[ @@ -482,7 +482,7 @@ clientButton[category: "Configured", client_, Dynamic[refresh_]] := ] -clientButton[category_, client_, Dynamic[refresh_]] := +clientButton[category_, client_, Dynamic[refresh_]] := clientButtonTemplate[ (* Configure button *) PaneSelector[{0 -> tr["prefsDisableButton"], 1 -> tr["prefsConfigureButton"]}, 1, Alignment -> Center], refresh @ DeployAgentTools[ @@ -500,7 +500,7 @@ clientButton[category_, client_, Dynamic[refresh_]] := (* Styling of this link/tooltip matches the standard Preferences dialog styling for such. *) -clientInfoButton[category_, client_] := +clientInfoButton[category_, client_] := Module[{objects, info, locations}, Switch[category, "Configured", @@ -562,13 +562,13 @@ clientInfoButton[category_, client_] := (*clientDirectorySettings*) -clientDirectorySettings[category_, dirSettings_] := +clientDirectorySettings[category_, dirSettings_] := Pane[ Dynamic[ Grid[ { { - Style[tr["prefsSpecificDirectories"], + Style[tr["prefsSpecificDirectories"], FontSize -> Inherited - 2, FontColor -> ldsGray[0.537] ], @@ -665,7 +665,7 @@ CreatePreferencesContent // beginDefinition; CreatePreferencesContent[] := -Deploy[ +UsingFrontEnd @ Deploy[ Pane[ Column[ { @@ -675,7 +675,7 @@ Deploy[ Pane[ StringTemplate[ FrontEndResource["AgentToolsStrings", "prefsSubtitle"], - CombinerFunction -> Row, + CombinerFunction -> Row, InsertionFunction -> Identity] @@ Table[ Tooltip[ @@ -697,7 +697,7 @@ Deploy[ ], Alignment -> Left, ImageMargins -> {{25,25},{0,15}} - ], + ], ItemSize -> Fit ], Pane[ @@ -705,7 +705,7 @@ Deploy[ Alignment -> Left, ImageMargins -> {{0,20},{0,0}} ] - + }}, Alignment -> {Left, Center}, BaseStyle -> {LinebreakAdjustments -> {1, 10, 1, 0, 1}}, @@ -797,16 +797,16 @@ updateWelcomeScreenData[assoc_] := ]; -updateDeployedAgentsData[deployedAssoc_, closeButtonClicked_] := +updateDeployedAgentsData[deployedAssoc_, closeButtonClicked_] := Module[ { assoc, deployedDate, previousShowState }, - + assoc = deployedAssoc; - + If[AssociationQ[assoc], deployedDate = assoc["Date"]; previousShowState = assoc["ShowAIBanner"]; @@ -818,8 +818,8 @@ updateDeployedAgentsData[deployedAssoc_, closeButtonClicked_] := previousShowState = False; assoc = <|"Date" -> Today, "ShowAIBanner" -> True|> ]; - - (* + + (* If the CloseButton was clicked, increment the expiration date and set ShowDeployedBanner to False only if: * the stripe was previously open @@ -833,9 +833,9 @@ updateDeployedAgentsData[deployedAssoc_, closeButtonClicked_] := assoc["Date"] = incrementExpirationDate[]; assoc["ShowAIBanner"] = False ]; - + assoc["DeployedAITools"] = getDeployedClients[]; - + KeyTake[assoc, { "Date", "ShowAIBanner", @@ -850,26 +850,26 @@ updateAllClientData[clientAssocs_, closeButtonClicked_] := assocs, clientNames }, - + assocs = clientAssocs; - + clientNames = Last /@ clientNameRules[]; - + If[MatchQ[assocs, {__?AssociationQ}], (* Update existing client data *) ( (* Cleanup: Discard unrecognized client associations *) - assocs = Select[assocs, MemberQ[clientNames, #["ClientName"]]&]; - + assocs = Select[assocs, MemberQ[clientNames, #["ClientName"]]&]; + Module[ {clientAssoc, name = #}, clientAssoc = First[Select[assocs, #["ClientName"] === name&], $Failed]; - + If[AssociationQ[clientAssoc], updateClientData[clientAssoc, closeButtonClicked], initializeClientData[name] ] - + ]& /@ clientNames ) , @@ -879,7 +879,7 @@ updateAllClientData[clientAssocs_, closeButtonClicked_] := ]; -updateClientData[clientAssoc_, closeButtonClicked_] := +updateClientData[clientAssoc_, closeButtonClicked_] := Module[ { assoc, @@ -889,44 +889,44 @@ updateClientData[clientAssoc_, closeButtonClicked_] := currentInstalledState, (* the current installed state *) previousShowState (* the previous show state (i.e., did the stripe display and was the ClientName listed) *) }, - + assoc = clientAssoc; - + installedClients = getInstalledMCPClients[]; - + (* Previous installed state *) previousInstalledState = assoc["IsInstalled"]; - + (* Current installed state *) currentInstalledState = MemberQ[installedClients, assoc["ClientName"]]; - + (* Previous show state *) previousShowState = assoc["ShowAIBanner"]; - - (* - If previousInstalledState === True (was previously installed) and + + (* + If previousInstalledState === True (was previously installed) and currentInstalledState === True (is currently installed), make no changes to the client's Association. *) If[!(TrueQ[previousInstalledState] && TrueQ[currentInstalledState]), - (* - If the client is not currently installed, or was previously uninstalled + (* + If the client is not currently installed, or was previously uninstalled but its status changed to installed, reset its expiration date to Today which is instantly expired. That allows the client to be made visible in the InstalledClientsBanner as soon as it's installed. *) assoc["Date"] = Today; - + (* Because the expiration date is pre-expired, there's no need to check whether - to immediately display an installed client aside from knowing that it's + to immediately display an installed client aside from knowing that it's actually installed (in this particular case). *) assoc["IsInstalled"] = TrueQ[currentInstalledState]; assoc["ShowAIBanner"] = TrueQ[currentInstalledState] ]; - - (* + + (* If the CloseButton click was detected, increment the expiration date, and set ShowInstalledClient to False only if all of the following criteria are met: @@ -941,7 +941,7 @@ updateClientData[clientAssoc_, closeButtonClicked_] := assoc["Date"] = incrementExpirationDate[]; assoc["ShowAIBanner"] = False ]; - + KeyTake[assoc, { "ClientName", "Date", @@ -958,15 +958,15 @@ initializeClientData[clientName_] := installed, installedClients }, - + installedClients = getInstalledMCPClients[]; installed = MemberQ[installedClients, clientName]; assoc = <| "ClientName" -> clientName, - "Date" -> Today, + "Date" -> Today, "IsInstalled" -> installed |>; - + assoc["ShowAIBanner"] = showInstalledClientQ[assoc]; assoc ]; @@ -981,17 +981,17 @@ showInstalledClientQ[clientAssoc_Association] := Module[{installedClients, deployedClients, isInstalled}, installedClients = getInstalledMCPClients[]; deployedClients = getDeployedClients[]; - + (* Remove those clients from the installedClients list that are also deployed *) installedClients = Complement[installedClients, deployedClients]; - + isInstalled = MemberQ[installedClients, clientAssoc["ClientName"]]; - + And[ dateExpiredQ[clientAssoc["Date"]], TrueQ[isInstalled] ] - + ]; @@ -1017,7 +1017,7 @@ clientNameRules[] := KeyValueMap[#1 -> #2["DisplayName"] &, $SupportedMCPClients]; -getDeployedClients[] := +getDeployedClients[] := Module[{deployed, nameRules}, deployed = {#["ClientName"], #["Server"]}& /@ DeployedAgentTools[]; nameRules = clientNameRules[]; diff --git a/Scripts/TestPaclet.wls b/Scripts/TestPaclet.wls index ae27a7f0..43e56b5d 100644 --- a/Scripts/TestPaclet.wls +++ b/Scripts/TestPaclet.wls @@ -86,7 +86,7 @@ $testFiles = Flatten[ If[ DirectoryQ[ # ], FileNames[ "*.wlt", # ], { # } ] & /@ (*Run Tests*) (* When running tests in a GitHub Actions workflow, use the `TestPaclet` tool to generate proper GitHub annotations *) runTests[ ___ ] /; StringQ @ Environment[ "GITHUB_ACTIONS" ] := - UsingFrontEnd @ checkResult @ cicd`TestPaclet @ FileNameJoin @ { $pacletDir, "Tests" }; + checkResult @ cicd`TestPaclet @ FileNameJoin @ { $pacletDir, "Tests" }; (* Use the `TestReportToolFunction` to generate nice readable markdown when running tests locally *) runTests[ testFiles_List ] := From 9eb8cebf1b4e260543b87e672b6173815636d5ab Mon Sep 17 00:00:00 2001 From: Rick Hennigan Date: Fri, 26 Jun 2026 12:40:20 -0400 Subject: [PATCH 3/3] Testing hypothesis that issue started when translated docs were added --- Documentation/Japanese/Guides/AgentTools.nb | 411 - .../Symbols/$DefaultMCPServers.nb | 5186 ---- .../Symbols/$DefaultMCPToolOptions.nb | 809 - .../Symbols/$DefaultMCPTools.nb | 4446 ---- .../Symbols/$SupportedMCPClients.nb | 1290 - .../ReferencePages/Symbols/CreateMCPServer.nb | 7146 ----- .../Symbols/InstallMCPServer.nb | 22191 ---------------- .../ReferencePages/Symbols/MCPServerObject.nb | 6261 ----- .../Symbols/MCPServerObjectQ.nb | 1950 -- .../Symbols/MCPServerObjects.nb | 3552 --- .../Symbols/UninstallMCPServer.nb | 7084 ----- .../Japanese/Tutorials/DefaultTools.nb | 5983 ----- .../QuickStartforAICodingApplications.nb | 4000 --- .../Tutorials/QuickStartforChatClients.nb | 2865 -- 14 files changed, 73174 deletions(-) delete mode 100644 Documentation/Japanese/Guides/AgentTools.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPServers.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPToolOptions.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPTools.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/$SupportedMCPClients.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/CreateMCPServer.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/InstallMCPServer.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/MCPServerObject.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/MCPServerObjectQ.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/MCPServerObjects.nb delete mode 100644 Documentation/Japanese/ReferencePages/Symbols/UninstallMCPServer.nb delete mode 100644 Documentation/Japanese/Tutorials/DefaultTools.nb delete mode 100644 Documentation/Japanese/Tutorials/QuickStartforAICodingApplications.nb delete mode 100644 Documentation/Japanese/Tutorials/QuickStartforChatClients.nb diff --git a/Documentation/Japanese/Guides/AgentTools.nb b/Documentation/Japanese/Guides/AgentTools.nb deleted file mode 100644 index 9a7c6e58..00000000 --- a/Documentation/Japanese/Guides/AgentTools.nb +++ /dev/null @@ -1,411 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell[ - "\:30a8\:30fc\:30b8\:30a7\:30f3\:30c8\:30c4\:30fc\:30eb", - "GuideTitle", - CellID -> 66967217 - ], - Cell[ - CellGroupData[ - { - Cell[ - "MCP\:30b5\:30fc\:30d0\:7ba1\:7406", - "GuideFunctionsSubsection", - CellID -> 252514811 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineGuideFunction", - TaggingRules -> {"PageType" -> "Function"}, - CellTags -> "c40ac8e4-27e1-4161-a8df-4d4f38357a23" - ], - " \[LongDash] \:5916\:90e8\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3092MCP\:30b5\:30fc\:30d0\:3092\:4f7f\:7528\:3059\:308b\:3088\:3046\:306b\:5b8c\:5168\:306b\:69cb\:200b\:200b\:6210\:3059\:308b" - } - ], - "GuideText", - CellID -> 500994432 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ] - ], - "InlineGuideFunction", - TaggingRules -> {"PageType" -> "Function"}, - CellTags -> "fbf4ba60-7a72-45ec-b45a-a15490a8defc" - ], - " \[LongDash] \:5916\:90e8\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:304b\:3089\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:6e08\:307f\:306eMCP\:30b5\:30fc\:30d0\:3092\:524a\:9664\:3059\:308b" - } - ], - "GuideText", - CellID -> 751509667 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineGuideFunction", - TaggingRules -> {"PageType" -> "Function"}, - CellTags -> "fbf4ba60-7a72-45ec-b45a-a15490a8defc" - ], - " \[LongDash] MCP\:30b5\:30fc\:30d0\:306e\:8a18\:53f7\:7684\:8868\:73fe" - } - ], - "GuideText", - CellID -> 683007992 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b5\:30fc\:30d0\:306e\:30ab\:30b9\:30bf\:30de\:30a4\:30ba", - "GuideFunctionsSubsection", - CellID -> 538656471 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineGuideFunction", - TaggingRules -> {"PageType" -> "Function"}, - CellTags -> "c5c6736a-1ff4-4e4e-8fcf-2d9846cbae62" - ], - " \[LongDash] ", - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:304b\:3089\:30ab\:30b9\:30bf\:30e0\:306eMCP\:30b5\:30fc\:30d0\:3092\:4f5c\:6210\:3059\:308b" - } - ], - "GuideText", - CellID -> 450596874 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObjects", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjects" - ] - ], - "InlineGuideFunction", - TaggingRules -> {"PageType" -> "Function"}, - CellTags -> "fbf4ba60-7a72-45ec-b45a-a15490a8defc" - ], - " \[LongDash] ", - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineFormula" - ], - "\:3092\:7528\:3044\:3066\:4f5c\:6210\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0\:306e\:30ea\:30b9\:30c8\:3092\:53d6\:5f97\:3059\:308b" - } - ], - "GuideText", - CellID -> 259941104 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPServers", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPServers" - ] - ], - "InlineGuideFunction" - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPTools", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPTools" - ] - ], - "InlineGuideFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObjectQ", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjectQ" - ] - ], - "InlineGuideFunction", - TaggingRules -> {"PageType" -> "Function"}, - CellTags -> "499d1fa4-0fdc-487d-b6f2-f1d012e199a1" - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "85790706-31b7-4d81-9083-bab750617578", - "ed77086f-bc31-46f3-b204-2deffb96ee10" - ], - cellobj$$ = - CellObject[ - "29ae8455-571b-4029-a63d-8c7e06e9acd2", - "33f4210e-2ad6-4719-9788-45c05d73f2e1" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "InlineGuideFunctionListing", - CellID -> 156833729 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Tech Notes", - "GuideTutorialsSection", - CellID -> 9818744 - ], - Cell[ - TextData[ - ButtonBox[ - "AI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306e\:30af\:30a4\:30c3\:30af\:30b9\:30bf\:30fc\:30c8", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/tutorial/QuickStartforAICodingApplications" - ] - ], - "GuideTutorial", - CellID -> 525159485 - ], - Cell[ - TextData[ - ButtonBox[ - "\:30c1\:30e3\:30c3\:30c8\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306e\:30af\:30a4\:30c3\:30af\:30b9\:30bf\:30fc\:30c8", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/tutorial/QuickStartforChatClients" - ] - ], - "GuideTutorial", - CellID -> 65981070 - ], - Cell[ - TextData[ - ButtonBox[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30c4\:30fc\:30eb", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/tutorial/DefaultTools" - ] - ], - "GuideTutorial", - CellID -> 56397439 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Related Guides", - "GuideMoreAboutSection", - CellID -> 387625190 - ], - Cell["XXXX", "GuideMoreAbout", CellID -> 77090600], - Cell["XXXX", "GuideMoreAbout", CellID -> 739768088] - }, - Open - ] - ], - Cell[ - "Related Links", - "GuideRelatedLinksSection", - CellID -> 764788054 - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 447262185], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 316197786 - ], - Cell[ - CellGroupData[ - { - Cell[ - "Categorization", - "CategorizationSection", - CellID -> 51418852 - ], - Cell[ - "Guide", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 131112038 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 372802092 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 53987209 - ], - Cell[ - "Wolfram/AgentTools/guide/AgentTools", - "Categorization", - CellLabel -> "URI", - CellID -> 180858926 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 454644389], - Cell["XXXX", "Keywords", CellID -> 117574774] - }, - Open - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "GuidePageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPServers.nb b/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPServers.nb deleted file mode 100644 index e39c2a92..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPServers.nb +++ /dev/null @@ -1,5186 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell[ - "$DefaultMCPServers", - "ObjectName", - CellID -> 138143581 - ], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPServers", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPServers" - ] - ], - "InlineFormula" - ], - " \[LineSeparator]\:5b9a\:7fa9\:6e08\:307fMCP\:30b5\:30fc\:30d0\:306e\:9023\:60f3\:3092\:4e0e\:3048\:308b\:ff0e" - } - ], - "Usage", - CellID -> 457971683 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - RowBox[ - { - ButtonBox["Keys", BaseStyle -> "Link"], - "[", - ButtonBox[ - "$DefaultMCPServers", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPServers" - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\:306f\:ff0c", - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[ - { - StyleBox["\[Ellipsis]", "TR"], - ",", - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"" - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\:3067\:5e38\:306b\:4f7f\:7528\:53ef\:80fd\:306a\:540d\:524d\:306e\:30ea\:30b9\:30c8\:3092\:4e0e\:3048\:308b\:ff0e" - } - ], - "Notes", - CellID -> 259535991 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPTools", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPTools" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "ae6f8e1a-e541-44ae-8aae-48b4b7bf9972" - ], - cellobj$$ = - CellObject[ - "c480e9b6-4d8d-41d8-b7de-0db016448dc2", - "3c6ec690-8ef3-4f32-92a4-7af4fb3b1169" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 102244090 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell["XXXX", "Tutorials", CellID -> 6861044] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 282594497] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 94007053] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 723392607 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - "\:4f7f\:7528\:53ef\:80fd\:306a\:5b9a\:7fa9\:6e08\:307f\:306e\:30b5\:30fc\:30d0\:3092\:53d6\:5f97\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 114158381 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData["$DefaultMCPServers"], - "Input", - CellLabel -> "In[1]:=", - CellID -> 134936904 - ], - Cell[ - BoxData[ - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Wolfram\"", - "\[Rule]", - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.6.25", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - ",", - RowBox[ - { - "\"WolframAlpha\"", - "\[Rule]", - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframAlpha\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframAlpha\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - {"\"WolframAlphaContext\"", "\"WolframAlpha\"", "", "", ""} - }, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> {"WolframAlphaContext", "WolframAlpha"}, - "MCPPrompts" -> {"WolframAlphaSearch"} - |>, - "Name" -> "WolframAlpha", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.6.25", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - ",", - RowBox[ - { - "\"WolframLanguage\"", - "\[Rule]", - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"ReadNotebook\"", - "\"SymbolDefinition\"", - "\"TestReport\"", - "" - }, - { - "\"WolframLanguageEvaluator\"", - "\"WriteNotebook\"", - "\"CodeInspector\"", - "", - "" - } - }, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframLanguageContext", - "WolframLanguageEvaluator", - "ReadNotebook", - "WriteNotebook", - "SymbolDefinition", - "CodeInspector", - "TestReport" - }, - "MCPPrompts" -> {"WolframLanguageSearch", "Notebook"} - |>, - "Name" -> "WolframLanguage", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.6.25", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - ",", - RowBox[ - { - "\"WolframPacletDevelopment\"", - "\[Rule]", - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframPacletDevelopment\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframPacletDevelopment\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframPacletDevelopment\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframPacletDevelopment\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"ReadNotebook\"", - "\"SymbolDefinition\"", - "\"TestReport\"", - "\"EditSymbolDoc\"" - }, - { - "\"WolframLanguageEvaluator\"", - "\"WriteNotebook\"", - "\"CodeInspector\"", - "\"CreateSymbolDoc\"", - "\"EditSymbolDocExamples\"" - } - }, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframLanguageContext", - "WolframLanguageEvaluator", - "ReadNotebook", - "WriteNotebook", - "SymbolDefinition", - "CodeInspector", - "TestReport", - "CreateSymbolDoc", - "EditSymbolDoc", - "EditSymbolDocExamples" - }, - "MCPPrompts" -> {"WolframLanguageSearch", "Notebook"} - |>, - "Name" -> "WolframPacletDevelopment", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.6.25", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ] - } - ], - "\[RightAssociation]" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 360086599 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 266068114 - ], - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30b5\:30fc\:30d0\:3067\:4f7f\:7528\:3055\:308c\:308b\:30c4\:30fc\:30eb\:306e\:30ea\:30b9\:30c8\:3092\:53d6\:5f97\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 408635816 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - RowBox[ - {"$DefaultMCPServers", "[", "\"WolframLanguage\"", "]"} - ], - "[", - "\"Tools\"", - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 4278626 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve information from various sources that can be\\nused to help write Wolfram Language code. Always use this tool at the start of\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve information from various sources that can be\\nused to help write Wolfram Language code. Always use this tool at the start of\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Common`relatedDocumentation", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"context\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"A detailed summary of what the user is trying to achieve or learn about.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"A detailed summary of what the user is trying to achieve or learn about.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "DisplayName" -> "Wolfram Language Context", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Function" -> Wolfram`AgentTools`Common`relatedDocumentation, - "LLMKit" -> "Suggested", - "Initialization" :> - Wolfram`AgentTools`Common`initializeVectorDatabases[], - "Options" -> { }, - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\\nThe user does not automatically see the result, so you must include the result\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\\nThe user does not automatically see the result, so you must include the result\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`WolframLanguageEvaluator`Private`evaluateWolframLanguage", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"code\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The Wolfram Language code to evaluate.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The Wolfram Language code to evaluate.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"timeConstraint\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The time constraint for the evaluation (default is 60 seconds).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The time constraint for the evaluation (default is 60 seconds).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "DisplayName" -> "Wolfram Language Evaluator", - "Description" -> "Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\nThe user does not automatically see the result, so you must include the result in your response in order for them to see it.\nIf a formatted result is provided as a markdown link, use that in your response instead of typing out the output.\nDo not ask permission to evaluate code.\nYou have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks.\nNatural language input is parsed before evaluation, so it works like macro expansion.\nYou should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\[FreeformPrompt] should be written as \\uf351 in JSON.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Function" -> Wolfram`AgentTools`Tools`WolframLanguageEvaluator`Private`evaluateWolframLanguage, - "Options" -> { }, - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"notebook\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The Wolfram notebook to read, specified as a file path or a NotebookObject[...]\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The Wolfram notebook to read, specified as a file path or a NotebookObject[...]\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "ReadNotebook", - "DisplayName" -> "Read Notebook", - "Description" -> "Reads the contents of a Wolfram notebook (.nb) as markdown text.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram notebook to read, specified as a file path or a NotebookObject[...]", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"file\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The file to write the notebook to (must end in .nb).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The file to write the notebook to (must end in .nb).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"overwrite\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Whether to overwrite an existing file (default is False).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Whether to overwrite an existing file (default is False).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Boolean\"", - RowBox[{"Interpreter", "[", "\"Boolean\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"markdown\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The markdown text to write to a notebook.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The markdown text to write to a notebook.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WriteNotebook", - "DisplayName" -> "Write Notebook", - "Description" -> "Converts markdown text to a Wolfram notebook and saves it to a file.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook, - "Options" -> { }, - "Parameters" -> { - "file" -> <| - "Interpreter" -> "String", - "Help" -> "The file to write the notebook to (must end in .nb).", - "Required" -> True - |>, - "overwrite" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to overwrite an existing file (default is False).", - "Required" -> False - |>, - "markdown" -> <| - "Interpreter" -> "String", - "Help" -> "The markdown text to write to a notebook.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ], - ScrollPosition -> {0.0, 0.0} - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"SymbolDefinition\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Retrieves the definitions of one or more Wolfram Language symbols and returns\\nthem in a readable markdown format.\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"SymbolDefinition\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Retrieves the definitions of one or more Wolfram Language symbols and returns\\nthem in a readable markdown format.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`SymbolDefinition`Private`getSymbolDefinition", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"symbols\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The fully qualified symbol name (or multiple names, comma separated).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The fully qualified symbol name (or multiple names, comma separated).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"includeContextDetails\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Whether to include a JSON map showing which symbols belong to which contexts (default: false).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Whether to include a JSON map showing which symbols belong to which contexts (default: false).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Boolean\"", - RowBox[{"Interpreter", "[", "\"Boolean\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"maxLength\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Maximum character length for output before truncation (default: 10000).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Maximum character length for output before truncation (default: 10000).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "SymbolDefinition", - "DisplayName" -> "Symbol Definition", - "Description" -> "Retrieves the definitions of one or more Wolfram Language symbols and returns them in a readable markdown format.\nThe tool generates clean, formatted definition strings by intelligently managing the context path to minimize fully qualified symbol names.\n\nUse fully qualified symbol names (e.g., System`Plus, Wolfram`AgentTools`CreateMCPServer).\nMultiple symbols can be requested by separating them with commas.", - "Function" -> Wolfram`AgentTools`Tools`SymbolDefinition`Private`getSymbolDefinition, - "Options" -> { }, - "Parameters" -> { - "symbols" -> <| - "Interpreter" -> "String", - "Help" -> "The fully qualified symbol name (or multiple names, comma separated).", - "Required" -> True - |>, - "includeContextDetails" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to include a JSON map showing which symbols belong to which contexts (default: false).", - "Required" -> False - |>, - "maxLength" -> <| - "Interpreter" -> "Integer", - "Help" -> "Maximum character length for output before truncation (default: 10000).", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"CodeInspector\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Inspects Wolfram Language code using the CodeInspector package and returns a\\nformatted report of issues found. The tool supports inspecting code strings,\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"CodeInspector\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Inspects Wolfram Language code using the CodeInspector package and returns a\\nformatted report of issues found. The tool supports inspecting code strings,\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["CodeInspectorToolFunction", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"code\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Wolfram Language code string to inspect.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Wolfram Language code string to inspect.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"file\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"File or directory path to inspect. For directories, recursively inspects all .wl, .m, and .wls files.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"File or directory path to inspect. For directories, recursively inspects all .wl, .m, and .wls files.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"tagExclusions\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Comma-separated list of tags to exclude (e.g., \\\"UnusedVariable,SuspiciousSessionSymbol\\\").\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Comma-separated list of tags to exclude (e.g., \"UnusedVariable,SuspiciousSessionSymbol\").\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"severityExclusions\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Comma-separated list of severities to exclude. Default: \\\"Formatting,Scoping\\\". Available: Fatal, Error, Warning, Scoping, Remark, Formatting.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Comma-separated list of severities to exclude. Default: \"Formatting,Scoping\". Available: Fatal, Error, Warning, Scoping, Remark, Formatting.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"confidenceLevel\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Minimum confidence level (0.0 to 1.0). Default: 0.75. Issues below this confidence are excluded.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Minimum confidence level (0.0 to 1.0). Default: 0.75. Issues below this confidence are excluded.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Number\"", - RowBox[{"Interpreter", "[", "\"Number\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"limit\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Maximum number of issues to display. Default: 100.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Maximum number of issues to display. Default: 100.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "CodeInspector", - "DisplayName" -> "Code Inspector", - "Description" -> "Inspects Wolfram Language code using the CodeInspector package and returns a formatted report of issues found. The tool supports inspecting code strings, individual files, or entire directories of Wolfram Language source files.", - "Function" -> Wolfram`AgentTools`CodeInspectorToolFunction, - "Options" -> { }, - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "Wolfram Language code string to inspect.", - "Required" -> False - |>, - "file" -> <| - "Interpreter" -> "String", - "Help" -> "File or directory path to inspect. For directories, recursively inspects all .wl, .m, and .wls files.", - "Required" -> False - |>, - "tagExclusions" -> <| - "Interpreter" -> "String", - "Help" -> "Comma-separated list of tags to exclude (e.g., \"UnusedVariable,SuspiciousSessionSymbol\").", - "Required" -> False - |>, - "severityExclusions" -> <| - "Interpreter" -> "String", - "Help" -> "Comma-separated list of severities to exclude. Default: \"Formatting,Scoping\". Available: Fatal, Error, Warning, Scoping, Remark, Formatting.", - "Required" -> False - |>, - "confidenceLevel" -> <| - "Interpreter" -> "Number", - "Help" -> "Minimum confidence level (0.0 to 1.0). Default: 0.75. Issues below this confidence are excluded.", - "Required" -> False - |>, - "limit" -> <| - "Interpreter" -> "Integer", - "Help" -> "Maximum number of issues to display. Default: 100.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"TestReport\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Runs Wolfram Language test files (.wlt) and returns a report of the results\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"TestReport\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Runs Wolfram Language test files (.wlt) and returns a report of the results\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`TestReport`Private`testReport", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"paths\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Comma separated list of paths to Wolfram Language test files (.wlt) or directories of test files\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Comma separated list of paths to Wolfram Language test files (.wlt) or directories of test files\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"timeConstraint\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"An optional time constraint (in seconds) for each test file\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"An optional time constraint (in seconds) for each test file\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"memoryConstraint\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"An optional memory constraint (in bytes) for each test file\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"An optional memory constraint (in bytes) for each test file\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"newKernel\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Whether to use a fresh kernel for running tests (default is true)\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Whether to use a fresh kernel for running tests (default is true)\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Boolean\"", - RowBox[{"Interpreter", "[", "\"Boolean\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "TestReport", - "DisplayName" -> "Test Report", - "Description" -> "Runs Wolfram Language test files (.wlt) and returns a report of the results", - "Function" -> Wolfram`AgentTools`Tools`TestReport`Private`testReport, - "Options" -> { }, - "Parameters" -> { - "paths" -> <| - "Interpreter" -> "String", - "Help" -> "Comma separated list of paths to Wolfram Language test files (.wlt) or directories of test files", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "An optional time constraint (in seconds) for each test file", - "Required" -> False - |>, - "memoryConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "An optional memory constraint (in bytes) for each test file", - "Required" -> False - |>, - "newKernel" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to use a fresh kernel for running tests (default is true)", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 335004943 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 143733879 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 174475330 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 475207346 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 137700829 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 417954639 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 709194235 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 226919122 - ], - Cell[ - TextData[ - { - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30b5\:30fc\:30d0\:540d\:306e", - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ], - "[", - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - "]" - } - ] - ], - "InlineFormula" - ], - "\:306f\:ff0c\:4e8b\:5b9f\:4e0a\:ff0c", - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "$DefaultMCPServers", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPServers" - ], - "[", - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - "]" - } - ] - ], - "InlineFormula" - ], - "\:306b\:7b49\:3057\:3044\:ff1a" - } - ], - "ExampleText", - CellID -> 114173276 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - RowBox[{"MCPServerObject", "[", "\"Wolfram\"", "]"}], - "===", - RowBox[{"$DefaultMCPServers", "[", "\"Wolfram\"", "]"}] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 75557863 - ], - Cell[ - BoxData["True"], - "Output", - CellLabel -> "Out[1]=", - CellID -> 679781572 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 120824910 - ], - Cell[ - TextData[ - { - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30b5\:30fc\:30d0\:3092", - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:3068\:3057\:3066\:4f7f\:3046\:ff1a" - } - ], - "ExampleText", - CellID -> 100559012 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "LLMSynthesize", - "[", - RowBox[ - { - RowBox[ - { - "\"Please summarize this notebook for me: \"", - "<>", - RowBox[{"NotebookFileName", "[", "]"}] - } - ], - ",", - RowBox[ - { - "LLMEvaluator", - "->", - RowBox[ - { - "LLMConfiguration", - "[", - RowBox[ - {"$DefaultMCPServers", "[", "\"WolframLanguage\"", "]"} - ], - "]" - } - ] - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 213048869 - ], - Cell[ - BoxData[ - "\"The notebook `$DefaultMCPServers` provides information about predefined MCP (Multi-Channel Processing) servers in the Wolfram Language. Here's a summary of its key sections:\\n\\n- **Definition**: `$DefaultMCPServers` is defined as an association of predefined MCP servers.\\n\\n- **Related Functions**:\\n - `$DefaultMCPTools`\\n - `CreateMCPServer`\\n\\n- **Initialization**: Before using examples, you need to load the MCP server package using:\\n ```wl\\n Needs[\\\"Wolfram`AgentTools`\\\"]\\n ```\\n\\n- **Basic Examples**:\\n 1. To get a list of available predefined servers, simply use:\\n ```wl\\n $DefaultMCPServers\\n ```\\n\\n 2. To retrieve the tools used by a specific default server, for example, \\\"WolframLanguage\\\":\\n ```wl\\n $DefaultMCPServers[\\\"WolframLanguage\\\"][\\\"Tools\\\"]\\n ```\\n\\n- **Scope and Properties**:\\n - The notebook outlines that the default server names can be accessed through `MCPServerObject`, providing equivalence between the two methods.\\n - Additionally, a default server can be used as an `LLMConfiguration`.\\n\\nThe notebook includes placeholders for related guides, links, tech notes, and additional examples but contains mostly instructional content with examples showing how to utilize the `$DefaultMCPServers` in practice.\"" - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 38467958 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 270206179 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 55879238 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 47798257 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 340647579], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 2107231 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 69824611 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 503355328 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 50661050 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 349248699 - ], - Cell[ - "Wolfram/AgentTools/ref/$DefaultMCPServers", - "Categorization", - CellLabel -> "URI", - CellID -> 654457525 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 121200396], - Cell["XXXX", "Keywords", CellID -> 316841311] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 62109140 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 27478487 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 132645174 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 124000116 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 894295172 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPToolOptions.nb b/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPToolOptions.nb deleted file mode 100644 index 1a7ca69f..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPToolOptions.nb +++ /dev/null @@ -1,809 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell[ - "$DefaultMCPToolOptions", - "ObjectName", - CellID -> 23378113 - ], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPToolOptions", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions" - ] - ], - "InlineFormula" - ], - " \[LineSeparator]\:7d44\:8fbc\:307f\:30c4\:30fc\:30eb\:306b\:3088\:3063\:3066\:4f7f\:7528\:3055\:308c\:308b\:30c7\:30d5\:30a9\:30eb\:30c8\:306e\:30c4\:30fc\:30eb\:30aa\:30d7\:30b7\:30e7\:30f3\:3092\:542b\:3080\:9023\:60f3\:3092\:8fd4\:3059\:ff0e" - } - ], - "Usage", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8e0c8e05-cc00-4496-9621-16a52ea75645", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 7, 4, 50.373}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[\" \", \"ModInfo\"], Cell[BoxData[ButtonBox[\"$DefaultMCPToolOptions\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions\"]], \"InlineFormula\"], \" \[LineSeparator]gives an association containing the default tool options used by built-in tools.\"}], \"Usage\", CellID -> 67098767]" - |>, - CellTags -> "Translated", - CellID -> 67098767 - ], - Cell[ - TextData[ - { - ButtonBox[ - "Default Tools", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/tutorial/DefaultTools" - ], - "\:30da\:30fc\:30b8\:3092\:53c2\:7167\:3057\:3066\:ff0c\:5229\:7528\:53ef\:80fd\:306a\:30c4\:30fc\:30eb\:30aa\:30d7\:30b7\:30e7\:30f3\:306e\:8a73\:7d30\:3092\:78ba\:8a8d\:3059\:308b\:ff0e" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f77f73b8-aab8-4ec3-8dd8-baae4775e7be", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 7, 4, 20.4894}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"See the \", ButtonBox[\"Default Tools\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/tutorial/DefaultTools\"], \" page for details on available tool options.\"}], \"ExampleText\", CellID -> 53559494]" - |>, - CellTags -> "Translated", - CellID -> 53559494 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPTools", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPTools" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "6e4361ea-926e-4e6c-b82f-ea5b6bed9b68" - ], - cellobj$$ = - CellObject[ - "4ac44cfb-3935-4412-b757-8fd1e9bfc159", - "45aad738-8897-472a-be07-e0cb8464af56" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 895230724 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell[ - TextData[ - ButtonBox[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30c4\:30fc\:30eb", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/tutorial/DefaultTools" - ] - ], - "Tutorials", - CellID -> 46422255 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 25294759] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 203845618] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 264046369 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:306e\:30c4\:30fc\:30eb\:30aa\:30d7\:30b7\:30e7\:30f3\:4e00\:5f0f\:3092\:53d6\:5f97\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2eae56db-ef25-419f-b22a-48885960d913", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 7, 3, 59.4679}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Get the full set of default tool options:\", \"ExampleText\", CellID -> 862745749]" - |>, - CellTags -> "Translated", - CellID -> 862745749 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData["$DefaultMCPToolOptions"], - "Input", - CellLabel -> "In[1]:=", - CellID -> 219685861 - ], - Cell[ - BoxData[ - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"WolframAlphaContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"MaxItems\"", "\[Rule]", "Automatic"}], - ",", - RowBox[ - { - "\"IncludeWolframLanguageResults\"", - "\[Rule]", - "Automatic" - } - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"WolframLanguageMaxItems\"", "\[Rule]", "10"}], - ",", - RowBox[ - {"\"WolframAlphaMaxItems\"", "\[Rule]", "Automatic"} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframLanguageContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[{"\"MaxItems\"", "\[Rule]", "10"}], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframLanguageEvaluator\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"Method\"", "\[Rule]", "\"Session\""}], - ",", - RowBox[{"\"ImageExportMethod\"", "\[Rule]", "\"None\""}], - ",", - RowBox[{"\"TimeConstraint\"", "\[Rule]", "60"}] - } - ], - "\[RightAssociation]" - } - ] - } - ] - } - ], - "\[RightAssociation]" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 399252451 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 41040451 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 558195240 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 36678541 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 536007796 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 240232196 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 292480186 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 4934297 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 317852225 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 505767865 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 116613429 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 109305845], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 342308289 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 190832110 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 362763309 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 575034655 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 282623659 - ], - Cell[ - "Wolfram/AgentTools/ref/$DefaultMCPToolOptions", - "Categorization", - CellLabel -> "URI", - CellID -> 853236353 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 109492948], - Cell["XXXX", "Keywords", CellID -> 4391113] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 585727405 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 986867602 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 157156253 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 839873100 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 121268831 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPTools.nb b/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPTools.nb deleted file mode 100644 index 88a30786..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/$DefaultMCPTools.nb +++ /dev/null @@ -1,4446 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell["$DefaultMCPTools", "ObjectName", CellID -> 57570080], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPTools", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPTools" - ] - ], - "InlineFormula" - ], - " \[LineSeparator]", - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPServers", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPServers" - ] - ], - "InlineFormula" - ], - "\:306e\:30b5\:30fc\:30d0\:304c\:4f7f\:7528\:3059\:308b", - Cell[ - BoxData[ButtonBox["LLMTool", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:30aa\:30d6\:30b8\:30a7\:30af\:30c8\:306e\:9023\:60f3\:3092\:4e0e\:3048\:308b\:ff0e" - } - ], - "Usage", - TaggingRules -> <| - "OrignialExpressionUUID" -> "d43a14a5-0461-496f-85b4-5233252b4d66", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 6, 35, 8.24981}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[\" \", \"ModInfo\"], Cell[BoxData[ButtonBox[\"$DefaultMCPTools\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$DefaultMCPTools\"]], \"InlineFormula\"], \" \[LineSeparator]gives an association of \", Cell[BoxData[ButtonBox[\"LLMTool\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \" objects used by servers in \", Cell[BoxData[ButtonBox[\"$DefaultMCPServers\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$DefaultMCPServers\"]], \"InlineFormula\"]}], \"Usage\", CellID -> 81337207]" - |>, - CellTags -> "Translated", - CellID -> 81337207 - ], - Cell["XXXX", "Notes", CellID -> 23335083] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPToolOptions", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPServers", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPServers" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "45dc9024-772a-4a1e-937d-bcc08313b332" - ], - cellobj$$ = - CellObject[ - "8883a09d-e77f-4f2b-bc0b-3e23beaa19df", - "5b0b64db-e8fa-4a0a-a1b3-6eea95c8d7b2" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 461228275 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell[ - TextData[ - ButtonBox[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30c4\:30fc\:30eb", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/tutorial/DefaultTools" - ] - ], - "Tutorials", - CellID -> 79453925 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 171025795] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 333353490] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 349236721 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - "\:4f7f\:7528\:53ef\:80fd\:306a\:5b9a\:7fa9\:6e08\:307f\:306e\:5168\:30c4\:30fc\:30eb\:3092\:53d6\:5f97\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3fbbd476-5eca-44c1-a5b7-68d6cc8cb71c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 6, 35, 50.3144}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Get all available predefined tools:\", \"ExampleText\", CellID -> 917811693]" - |>, - CellTags -> "Translated", - CellID -> 917811693 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"Dataset", "[", "$DefaultMCPTools", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 86367040 - ], - Cell[ - BoxData[ - TagBox[ - TagBox[ - DynamicModuleBox[ - { - TypeSystem`NestedGrid`PackagePrivate`$state$$ = <| - "InitialData" -> <| - "CodeInspector" -> - LLMTool[ - <| - "Name" -> "CodeInspector", - "DisplayName" -> "Code Inspector", - "Description" -> "Inspects Wolfram Language code using the CodeInspector package and returns a formatted report of issues found. The tool supports inspecting code strings, individual files, or entire directories of Wolfram Language source files.", - "Function" -> Wolfram`AgentTools`CodeInspectorToolFunction, - "Options" -> { }, - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "Wolfram Language code string to inspect.", - "Required" -> False - |>, - "file" -> <| - "Interpreter" -> "String", - "Help" -> "File or directory path to inspect. For directories, recursively inspects all .wl, .m, and .wls files.", - "Required" -> False - |>, - "tagExclusions" -> <| - "Interpreter" -> "String", - "Help" -> "Comma-separated list of tags to exclude (e.g., \"UnusedVariable,SuspiciousSessionSymbol\").", - "Required" -> False - |>, - "severityExclusions" -> <| - "Interpreter" -> "String", - "Help" -> "Comma-separated list of severities to exclude. Default: \"Formatting,Scoping\". Available: Fatal, Error, Warning, Scoping, Remark, Formatting.", - "Required" -> False - |>, - "confidenceLevel" -> <| - "Interpreter" -> "Number", - "Help" -> "Minimum confidence level (0.0 to 1.0). Default: 0.75. Issues below this confidence are excluded.", - "Required" -> False - |>, - "limit" -> <| - "Interpreter" -> "Integer", - "Help" -> "Maximum number of issues to display. Default: 100.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "CreateSymbolDoc" -> - LLMTool[ - <| - "Name" -> "CreateSymbolDoc", - "DisplayName" -> "Create Symbol Documentation", - "Description" -> "Creates a new symbol documentation page for a Wolfram Language paclet. The tool generates a properly structured .nb file in the correct location within the paclet's documentation directory.", - "Function" -> Wolfram`AgentTools`Tools`PacletDocumentation`Private`createSymbolPacletDocumentation, - "Options" -> { }, - "Parameters" -> { - "pacletDirectory" -> <| - "Interpreter" -> "String", - "Help" -> "Absolute path to the paclet root directory.", - "Required" -> True - |>, - "symbolName" -> <| - "Interpreter" -> "String", - "Help" -> "Name of the symbol being documented (e.g., \"MyFunction\").", - "Required" -> True - |>, - "pacletName" -> <| - "Interpreter" -> "String", - "Help" -> "Name of the paclet (e.g., \"AgentTools\" or \"Wolfram/AgentTools\").", - "Required" -> True - |>, - "publisherID" -> <| - "Interpreter" -> "String", - "Help" -> "Publisher ID for the paclet (e.g., \"Wolfram\"). Can be omitted for legacy paclets or included in pacletName.", - "Required" -> False - |>, - "context" -> <| - "Interpreter" -> "String", - "Help" -> "Full context for the symbol. Defaults based on pacletName/publisherID.", - "Required" -> False - |>, - "usage" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown string with usage cases as bullet points: `- \\`MyFunc[x]\\` does something with *x*`", - "Required" -> True - |>, - "notes" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown string for Details & Options section. Each paragraph becomes a note cell.", - "Required" -> False - |>, - "seeAlso" -> <| - "Interpreter" -> "String", - "Help" -> "Symbol names separated by newlines or commas (e.g., \"Plus\\nMinus\" or \"Plus, Minus\").", - "Required" -> False - |>, - "techNotes" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown links to tutorials, one per line: `[Title](paclet:Publisher/Paclet/tutorial/Name)`", - "Required" -> False - |>, - "relatedGuides" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown links to guides, one per line: `[Title](paclet:Publisher/Paclet/guide/Name)`", - "Required" -> False - |>, - "relatedLinks" -> <| - "Interpreter" -> "String", - "Help" -> "External links in markdown format, one per line: `[label](url)`", - "Required" -> False - |>, - "keywords" -> <| - "Interpreter" -> "String", - "Help" -> "Keywords separated by newlines or commas.", - "Required" -> False - |>, - "newInVersion" -> <| - "Interpreter" -> "String", - "Help" -> "Version string for \"New in:\" field (e.g., \"1.0\").", - "Required" -> False - |>, - "basicExamples" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown content for Basic Examples section. Code blocks will be evaluated automatically.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "EditSymbolDoc" -> - LLMTool[ - <| - "Name" -> "EditSymbolDoc", - "DisplayName" -> "Edit Symbol Documentation", - "Description" -> "Edits an existing symbol documentation page. Supports operations like setting usage, notes, see also, and adding/modifying examples. Example inputs are automatically evaluated and outputs are generated.", - "Function" -> Wolfram`AgentTools`Tools`PacletDocumentation`Private`editSymbolPacletDocumentation, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "Path to the notebook file or documentation URI.", - "Required" -> True - |>, - "operation" -> <| - "Interpreter" -> "String", - "Help" -> "The edit operation: setUsage, setNotes, addNote, setDetailsTable, setSeeAlso, setTechNotes, setRelatedGuides, setRelatedLinks, setKeywords, setHistory.", - "Required" -> True - |>, - "content" -> <| - "Interpreter" -> "String", - "Help" -> "New content in markdown or appropriate format for the operation.", - "Required" -> False - |>, - "position" -> <| - "Interpreter" -> "Integer", - "Help" -> "Position for addNote operation (1-indexed). Negative values count from the end (-1 = last).", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "EditSymbolDocExamples" -> - LLMTool[ - <| - "Name" -> "EditSymbolDocExamples", - "DisplayName" -> "Edit Symbol Documentation Examples", - "Description" -> "Edits example sections of an existing symbol documentation page. Supports operations for appending, prepending, inserting, replacing, removing, clearing, and setting examples. Example code is automatically evaluated and output cells are generated. Returns the generated content as markdown for verification.", - "Function" -> Wolfram`AgentTools`Tools`PacletDocumentation`Private`editSymbolPacletDocumentationExamples, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "Path to the notebook file or documentation URI.", - "Required" -> True - |>, - "operation" -> <| - "Interpreter" -> "String", - "Help" -> "The edit operation: appendExample, prependExample, insertExample, replaceExample, removeExample, clearExamples, setExamples.", - "Required" -> True - |>, - "section" -> <| - "Interpreter" -> "String", - "Help" -> "Target example section: BasicExamples, Scope, GeneralizationsExtensions, Options, Applications, PropertiesRelations, PossibleIssues, InteractiveExamples, NeatExamples.", - "Required" -> True - |>, - "content" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown content for example cells. Code blocks are evaluated automatically. Use --- to separate example groups.", - "Required" -> False - |>, - "position" -> <| - "Interpreter" -> "Integer", - "Help" -> "Position for insert/replace/remove operations (1-indexed). Negative values count from the end (-1 = last).", - "Required" -> False - |>, - "subsection" -> <| - "Interpreter" -> "String", - "Help" -> "For Options section, the option name to target.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "ReadNotebook" -> - LLMTool[ - <| - "Name" -> "ReadNotebook", - "DisplayName" -> "Read Notebook", - "Description" -> "Reads the contents of a Wolfram notebook (.nb) as markdown text.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram notebook to read, specified as a file path or a NotebookObject[...]", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "SymbolDefinition" -> - LLMTool[ - <| - "Name" -> "SymbolDefinition", - "DisplayName" -> "Symbol Definition", - "Description" -> "Retrieves the definitions of one or more Wolfram Language symbols and returns them in a readable markdown format.\nThe tool generates clean, formatted definition strings by intelligently managing the context path to minimize fully qualified symbol names.\n\nUse fully qualified symbol names (e.g., System`Plus, Wolfram`AgentTools`CreateMCPServer).\nMultiple symbols can be requested by separating them with commas.", - "Function" -> Wolfram`AgentTools`Tools`SymbolDefinition`Private`getSymbolDefinition, - "Options" -> { }, - "Parameters" -> { - "symbols" -> <| - "Interpreter" -> "String", - "Help" -> "The fully qualified symbol name (or multiple names, comma separated).", - "Required" -> True - |>, - "includeContextDetails" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to include a JSON map showing which symbols belong to which contexts (default: false).", - "Required" -> False - |>, - "maxLength" -> <| - "Interpreter" -> "Integer", - "Help" -> "Maximum character length for output before truncation (default: 10000).", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "TestReport" -> - LLMTool[ - <| - "Name" -> "TestReport", - "DisplayName" -> "Test Report", - "Description" -> "Runs Wolfram Language test files (.wlt) and returns a report of the results", - "Function" -> Wolfram`AgentTools`Tools`TestReport`Private`testReport, - "Options" -> { }, - "Parameters" -> { - "paths" -> <| - "Interpreter" -> "String", - "Help" -> "Comma separated list of paths to Wolfram Language test files (.wlt) or directories of test files", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "An optional time constraint (in seconds) for each test file", - "Required" -> False - |>, - "memoryConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "An optional memory constraint (in bytes) for each test file", - "Required" -> False - |>, - "newKernel" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to use a fresh kernel for running tests (default is true)", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "WolframAlpha" -> - LLMTool[ - <| - "Name" -> "WolframAlpha", - "DisplayName" -> "Wolfram|Alpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Function" -> Wolfram`AgentTools`Tools`WolframAlpha`Private`wolframAlphaToolEvaluate, - "Options" -> { }, - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "The query to send to Wolfram|Alpha.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "WolframAlphaContext" -> - LLMTool[ - <| - "Name" -> "WolframAlphaContext", - "DisplayName" -> "Wolfram|Alpha Context", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram Alpha. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible (up to 250 words).", - "Function" -> Wolfram`AgentTools`Tools`Context`Private`relatedWolframAlphaPrompt, - "LLMKit" -> "Required", - "Initialization" :> - Wolfram`AgentTools`Common`initializeVectorDatabases[], - "Options" -> { }, - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "WolframContext" -> - LLMTool[ - <| - "Name" -> "WolframContext", - "DisplayName" -> "Wolfram Context", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible (up to 250 words).", - "Function" -> Wolfram`AgentTools`Common`relatedWolframContext, - "LLMKit" -> "Suggested", - "Initialization" :> - Wolfram`AgentTools`Common`initializeVectorDatabases[], - "Options" -> { }, - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "WolframLanguageContext" -> - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "DisplayName" -> "Wolfram Language Context", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Function" -> Wolfram`AgentTools`Common`relatedDocumentation, - "LLMKit" -> "Suggested", - "Initialization" :> - Wolfram`AgentTools`Common`initializeVectorDatabases[], - "Options" -> { }, - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "WolframLanguageEvaluator" -> - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "DisplayName" -> "Wolfram Language Evaluator", - "Description" -> "Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\nThe user does not automatically see the result, so you must include the result in your response in order for them to see it.\nIf a formatted result is provided as a markdown link, use that in your response instead of typing out the output.\nDo not ask permission to evaluate code.\nYou have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks.\nNatural language input is parsed before evaluation, so it works like macro expansion.\nYou should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\[FreeformPrompt] should be written as \\uf351 in JSON.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Function" -> Wolfram`AgentTools`Tools`WolframLanguageEvaluator`Private`evaluateWolframLanguage, - "Options" -> { }, - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - "WriteNotebook" -> - LLMTool[ - <| - "Name" -> "WriteNotebook", - "DisplayName" -> "Write Notebook", - "Description" -> "Converts markdown text to a Wolfram notebook and saves it to a file.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook, - "Options" -> { }, - "Parameters" -> { - "file" -> <| - "Interpreter" -> "String", - "Help" -> "The file to write the notebook to (must end in .nb).", - "Required" -> True - |>, - "overwrite" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to overwrite an existing file (default is False).", - "Required" -> False - |>, - "markdown" -> <| - "Interpreter" -> "String", - "Help" -> "The markdown text to write to a notebook.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ] - |>, - "AllowEmbedding" -> True, - "InitialShape" -> - TypeSystem`PackageScope`Limited[ - TypeSystem`PackageScope`ColumnShape[ - TypeSystem`PackageScope`KeyValueShape[ - TypeSystem`PackageScope`AtomShape[252.0], - TypeSystem`PackageScope`UnknownShape[False] - ] - ], - 13, - Infinity, - { } - ], - "InitialType" -> - TypeSystem`Assoc[ - TypeSystem`Atom[ - TypeSystem`Enumeration[ - "CodeInspector", - "CreateSymbolDoc", - "EditSymbolDoc", - "EditSymbolDocExamples", - "ReadNotebook", - "SymbolDefinition", - "TestReport", - "WolframAlpha", - "WolframAlphaContext", - "WolframContext", - "WolframLanguageContext", - "WolframLanguageEvaluator", - "WriteNotebook" - ] - ], - TypeSystem`AnyType, - 13 - ], - "Meta" -> <| |>, - "RowTarget" -> 20, - "ColumnTarget" -> 10, - "Shape" -> - TypeSystem`PackageScope`Limited[ - TypeSystem`PackageScope`ColumnShape[ - TypeSystem`PackageScope`KeyValueShape[ - TypeSystem`PackageScope`AtomShape[252.0], - TypeSystem`PackageScope`UnknownShape[False] - ] - ], - 13, - Infinity, - { } - ], - "Type" -> - TypeSystem`Assoc[ - TypeSystem`Atom[ - TypeSystem`Enumeration[ - "CodeInspector", - "CreateSymbolDoc", - "EditSymbolDoc", - "EditSymbolDocExamples", - "ReadNotebook", - "SymbolDefinition", - "TestReport", - "WolframAlpha", - "WolframAlphaContext", - "WolframContext", - "WolframLanguageContext", - "WolframLanguageEvaluator", - "WriteNotebook" - ] - ], - TypeSystem`AnyType, - 13 - ], - "Path" -> { }, - "DisplayedRowCount" -> 13, - "DisplayedColumnCount" -> 1, - "DataRowCount" -> 13, - "DataColumnCount" -> 1, - "SortPaths" -> { }, - "SortDirections" -> { }, - "HiddenItemsMap" -> Null, - "UpdateType" -> 1 - |>, - TypeSystem`NestedGrid`PackagePrivate`$outputID$$, - TypeSystem`NestedGrid`PackagePrivate`$path$$ = { }, - TypeSystem`NestedGrid`PackagePrivate`$vPos$$ = 1, - TypeSystem`NestedGrid`PackagePrivate`$hPos$$ = 1, - TypeSystem`NestedGrid`PackagePrivate`$grid$$ = - DynamicModule[ - { - TypeSystem`NestedGrid`PackagePrivate`renderedGrid = - Deploy[ - Style[ - Grid[ - { - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "CodeInspector", - Style[ - "CodeInspector", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["CodeInspector"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["CodeInspector"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"CodeInspector\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Inspects Wolfram Language code using the CodeInspector package and returns a\\nformatted report of issues found. The tool supports inspecting code strings,\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["CodeInspector"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "CreateSymbolDoc", - Style[ - "CreateSymbolDoc", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["CreateSymbolDoc"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["CreateSymbolDoc"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"CreateSymbolDoc\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Creates a new symbol documentation page for a Wolfram Language paclet. The tool\\ngenerates a properly structured .nb file in the correct location within the pacl\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["CreateSymbolDoc"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "EditSymbolDoc", - Style[ - "EditSymbolDoc", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["EditSymbolDoc"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["EditSymbolDoc"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"EditSymbolDoc\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Edits an existing symbol documentation page. Supports operations like setting\\nusage, notes, see also, and adding/modifying examples. Example inputs are\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["EditSymbolDoc"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "EditSymbolDocExamples", - Style[ - "EditSymbolDocExamples", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["EditSymbolDocExamples"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["EditSymbolDocExamples"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"EditSymbolDocExamples\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Edits example sections of an existing symbol documentation page. Supports\\noperations for appending, prepending, inserting, replacing, removing, clearing,\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["EditSymbolDocExamples"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "ReadNotebook", - Style[ - "ReadNotebook", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["ReadNotebook"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["ReadNotebook"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["ReadNotebook"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "SymbolDefinition", - Style[ - "SymbolDefinition", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["SymbolDefinition"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["SymbolDefinition"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"SymbolDefinition\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Retrieves the definitions of one or more Wolfram Language symbols and returns\\nthem in a readable markdown format.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["SymbolDefinition"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "TestReport", - Style[ - "TestReport", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["TestReport"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["TestReport"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"TestReport\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Runs Wolfram Language test files (.wlt) and returns a report of the results\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["TestReport"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframAlpha", - Style[ - "WolframAlpha", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframAlpha"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframAlpha"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Use natural language queries with Wolfram|Alpha to get up-to-date computational\\nresults about entities in chemistry, physics, geography, history, art, astronomy\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframAlpha"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframAlphaContext", - Style[ - "WolframAlphaContext", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframAlphaContext"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframAlphaContext"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlphaContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve any relevant information from Wolfram Alpha.\\nAlways use this tool at the start of new conversations or if the topic changes\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframAlphaContext"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframContext", - Style[ - "WolframContext", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframContext"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframContext"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve any relevant information from Wolfram. Always\\nuse this tool at the start of new conversations or if the topic changes to\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframContext"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframLanguageContext", - Style[ - "WolframLanguageContext", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframLanguageContext"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframLanguageContext"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve information from various sources that can be\\nused to help write Wolfram Language code. Always use this tool at the start of\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframLanguageContext"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframLanguageEvaluator", - Style[ - "WolframLanguageEvaluator", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframLanguageEvaluator"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframLanguageEvaluator"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\\nThe user does not automatically see the result, so you must include the result\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframLanguageEvaluator"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WriteNotebook", - Style[ - "WriteNotebook", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WriteNotebook"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WriteNotebook"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WriteNotebook"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - } - }, - BaseStyle -> { - ContextMenu -> - Dynamic[ - TypeSystem`NestedGrid`PackagePrivate`$contextMenuTrigger; - Which[ - UnsameQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastOutputID, - TypeSystem`NestedGrid`PackagePrivate`localHold[ - TypeSystem`NestedGrid`PackagePrivate`$outputID$$ - ] - ], - { }, - SameQ[ - TypeSystem`NestedGrid`PackagePrivate`$contextMenuTrigger, - TypeSystem`NestedGrid`PackagePrivate`$lastContextMenuTrigger - ], - TypeSystem`NestedGrid`PackagePrivate`$lastContextMenu, - True, - - TypeSystem`NestedGrid`PackagePrivate`$lastContextMenuTrigger = - TypeSystem`NestedGrid`PackagePrivate`$contextMenuTrigger; - - TypeSystem`NestedGrid`PackagePrivate`$lastContextMenu = - Block[ - { - TypeSystem`NestedGrid`PackagePrivate`$globalScrollPos = { - TypeSystem`NestedGrid`PackagePrivate`$vPos$$, - TypeSystem`NestedGrid`PackagePrivate`$hPos$$ - } - }, - With[ - { - TypeSystem`NestedGrid`PackagePrivate`lastPath$ = - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`lastPathType$ = - TypeSystem`NestedGrid`PackagePrivate`$lastPathType, - TypeSystem`NestedGrid`PackagePrivate`isLeafHeader$ = - TypeSystem`NestedGrid`PackagePrivate`$lastPathIsLeafHeader, - TypeSystem`NestedGrid`PackagePrivate`headerHidden$ = - And[ - MatchQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPathType, - Alternatives["RowHeader", "ColumnHeader"] - ], - TypeSystem`NestedGrid`PackagePrivate`headerHiddenQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ] - ], - TypeSystem`NestedGrid`PackagePrivate`allHidden$ = - TypeSystem`NestedGrid`PackagePrivate`allHiddenQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`anyHidden$ = - TypeSystem`NestedGrid`PackagePrivate`anyHiddenQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`sortDirection$ = - TypeSystem`NestedGrid`PackagePrivate`columnSortDirection[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$["SortPaths"], - TypeSystem`NestedGrid`PackagePrivate`$state$$[ - "SortDirections" - ] - ], - TypeSystem`NestedGrid`PackagePrivate`haveData$ = - Not[ - FailureQ[ - TypeSystem`NestedGrid`PackagePrivate`datasetInitialData[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`isKeyDummy$ = - Not[ - FreeQ[TypeSystem`NestedGrid`PackagePrivate`$lastPath, Keys] - ] - }, - Join[ - { - If[ Or[ - Not[TypeSystem`NestedGrid`PackagePrivate`haveData$], - Not[TypeSystem`NestedGrid`PackagePrivate`anyHidden$], - TypeSystem`NestedGrid`PackagePrivate`isKeyDummy$ - ], - Nothing, - MenuItem[ - StringJoin[ - "Show ", - Which[ - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "Item" - ], - "", - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "RowHeader" - ], - "Row", - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "ColumnHeader" - ], - "Column", - True, - "" - ] - ], - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateHiddenItems[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - "remove" - ] - ], - MenuEvaluator -> Automatic - ] - ], - If[ Or[ - Not[TypeSystem`NestedGrid`PackagePrivate`haveData$], - TypeSystem`NestedGrid`PackagePrivate`pathEmptyQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`isKeyDummy$, - And[ - TypeSystem`NestedGrid`PackagePrivate`allHidden$, - TypeSystem`NestedGrid`PackagePrivate`headerHidden$ - ] - ], - Nothing, - MenuItem[ - StringJoin[ - "Hide ", - Which[ - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "Item" - ], - "", - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "RowHeader" - ], - "Row", - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "ColumnHeader" - ], - "Column", - True, - "" - ] - ], - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateHiddenItems[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - "add" - ] - ], - MenuEvaluator -> Automatic - ] - ], - Delimiter - }, - If[ And[ - TypeSystem`NestedGrid`PackagePrivate`haveData$, - MatchQ[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - Alternatives["ColumnHeader", "KeyDummy"] - ], - TypeSystem`NestedGrid`PackagePrivate`isLeafHeader$, - Not[TypeSystem`NestedGrid`PackagePrivate`allHidden$] - ], - { - If[ UnsameQ[ - TypeSystem`NestedGrid`PackagePrivate`sortDirection$, - "Ascending" - ], - MenuItem[ - "Sort", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateSort[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - "Ascending" - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ], - If[ UnsameQ[ - TypeSystem`NestedGrid`PackagePrivate`sortDirection$, - "Descending" - ], - MenuItem[ - "Reverse Sort", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateSort[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - "Descending" - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ], - If[ UnsameQ[ - TypeSystem`NestedGrid`PackagePrivate`sortDirection$, - None - ], - MenuItem[ - "Unsort", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateSort[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - None - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ], - Delimiter - }, - { } - ], - { - MenuItem[ - "Copy Position to Clipboard", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`toCurrentPosition[ - TypeSystem`NestedGrid`PackagePrivate`copyClip - ] - ], - MenuEvaluator -> Automatic - ], - If[ TypeSystem`NestedGrid`PackagePrivate`haveData$, - MenuItem[ - "Copy Data to Clipboard", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`toCurrentData[ - TypeSystem`NestedGrid`PackagePrivate`$state$$, - TypeSystem`NestedGrid`PackagePrivate`copyClip - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ], - Delimiter, - MenuItem[ - "Paste Position in New Cell", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`toCurrentPosition[ - TypeSystem`NestedGrid`PackagePrivate`cellPaste - ] - ], - MenuEvaluator -> Automatic - ], - If[ TypeSystem`NestedGrid`PackagePrivate`haveData$, - MenuItem[ - "Paste Data in New Cell", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`toCurrentData[ - TypeSystem`NestedGrid`PackagePrivate`$state$$, - TypeSystem`NestedGrid`PackagePrivate`cellPaste - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ] - } - ] - ] - ] - ] - ], - FontFamily -> "Source Sans Pro", - FontSize -> 14, - FontWeight -> Plain - }, - Dividers -> All, - FrameStyle -> RGBColor[0.749004, 0.749004, 0.749004], - Spacings -> {0, 0}, - Alignment -> Left, - BaseStyle -> { - FontFamily -> "Source Sans Pro", - FontSize -> 14, - FontWeight -> Plain - } - ], - LineBreakWithin -> False, - ContextMenu -> { }, - NumberMarks -> False, - ShowAutoStyles -> False - ] - ], - TypeSystem`NestedGrid`PackagePrivate`initialQ = True - }, - Dynamic[ - TypeSystem`NestedGrid`PackagePrivate`setupViewPath[ - TypeSystem`NestedGrid`PackagePrivate`$path$$, - - If[ Not[TypeSystem`NestedGrid`PackagePrivate`initialQ], - Module[ - { - TypeSystem`NestedGrid`PackagePrivate`tmpGrid$ = $Failed, - TypeSystem`NestedGrid`PackagePrivate`tmpData$ = - TypeSystem`NestedGrid`PackagePrivate`datasetData[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ] - }, - - TypeSystem`NestedGrid`PackagePrivate`tmpGrid$ = - If[ FailureQ[TypeSystem`NestedGrid`PackagePrivate`tmpData$], - TypeSystem`NestedGrid`PackagePrivate`renderedGrid, - TypeSystem`NestedGrid`PackagePrivate`renderGrid[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - TypeSystem`NestedGrid`PackagePrivate`tmpData$ - ] - ]; - - If[ Not[ - FailureQ[TypeSystem`NestedGrid`PackagePrivate`tmpGrid$] - ], - TypeSystem`NestedGrid`PackagePrivate`renderedGrid = - TypeSystem`NestedGrid`PackagePrivate`tmpGrid$ - ]; - ] - ]; - - TypeSystem`NestedGrid`PackagePrivate`initialQ = False; - TypeSystem`NestedGrid`PackagePrivate`$vPos$$; - TypeSystem`NestedGrid`PackagePrivate`$hPos$$; - If[ FailureQ[TypeSystem`NestedGrid`PackagePrivate`renderedGrid], - TypeSystem`SparseGrid[ - TypeSystem`H["(data no longer present)"] - ], - TypeSystem`NestedGrid`PackagePrivate`renderedGrid - ] - ], - TrackedSymbols :> { - TypeSystem`NestedGrid`PackagePrivate`$vPos$$, - TypeSystem`NestedGrid`PackagePrivate`$hPos$$ - } - ], - DynamicModuleValues :> { } - ], - TypeSystem`NestedGrid`PackagePrivate`$topBar$$ = - Dynamic[ - TypeSystem`NestedGrid`PackagePrivate`makeFramedBar[ - TypeSystem`PackageScope`SubViewPathbar[ - TypeSystem`NestedGrid`PackagePrivate`$path$$, - TypeSystem`NestedGrid`PackagePrivate`updateState[ - TypeSystem`NestedGrid`PackagePrivate`$state$$, - TypeSystem`NestedGrid`PackagePrivate`$path$$, - TypeSystem`NestedGrid`PackagePrivate`$vPos$$, - TypeSystem`NestedGrid`PackagePrivate`$hPos$$, - TypeSystem`NestedGrid`PackagePrivate`$grid$$, - TypeSystem`NestedGrid`PackagePrivate`localHold[ - TypeSystem`NestedGrid`PackagePrivate`$outputID$$ - ] - ] - ] - ], - TrackedSymbols :> {TypeSystem`NestedGrid`PackagePrivate`$path$$} - ], - TypeSystem`NestedGrid`PackagePrivate`$bottomBar$$ = - Dynamic[ - Replace[ - Replace[ - TypeSystem`NestedGrid`PackagePrivate`mouseAnnotation$$, - { - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - Null, - Blank[] - ] -> "", - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - Pattern[ - TypeSystem`NestedGrid`PackagePrivate`path$, - Blank[] - ], - Pattern[ - TypeSystem`NestedGrid`PackagePrivate`pathType$, - Blank[] - ], - Pattern[ - TypeSystem`NestedGrid`PackagePrivate`isLeafHeader$, - Blank[] - ] - ] :> - ( - Increment[ - TypeSystem`NestedGrid`PackagePrivate`$contextMenuTrigger - ]; - - - TypeSystem`NestedGrid`PackagePrivate`$lastPath = - TypeSystem`NestedGrid`PackagePrivate`path$; - - - TypeSystem`NestedGrid`PackagePrivate`$lastPathType = - TypeSystem`NestedGrid`PackagePrivate`pathType$; - - - TypeSystem`NestedGrid`PackagePrivate`$lastPathIsLeafHeader = - TypeSystem`NestedGrid`PackagePrivate`isLeafHeader$; - - - TypeSystem`NestedGrid`PackagePrivate`$lastOutputID = - TypeSystem`NestedGrid`PackagePrivate`localHold[ - TypeSystem`NestedGrid`PackagePrivate`$outputID$$ - ]; - - TypeSystem`NestedGrid`PackagePrivate`makePathTrail[ - TypeSystem`NestedGrid`PackagePrivate`path$, - TypeSystem`NestedGrid`PackagePrivate`makePathElements - ]), - Null :> Spacer[10], - Blank[] :> Spacer[10] - } - ], - Pattern[ - TypeSystem`NestedGrid`PackagePrivate`bar, - Except[Alternatives[Blank[Spacer], ""]] - ] :> - TypeSystem`NestedGrid`PackagePrivate`makeFramedPathbar[ - TypeSystem`NestedGrid`PackagePrivate`bar - ] - ], - TrackedSymbols :> {TypeSystem`NestedGrid`PackagePrivate`mouseAnnotation$$} - ], - TypeSystem`NestedGrid`PackagePrivate`mouseAnnotation$$ = - Null - }, - DynamicWrapperBox[ - DynamicBox[ - ToBoxes[ - Dataset`DatasetContent[ - 2, - "Path" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$path$$], - "Grid" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$grid$$], - "State" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$state$$], - "VPos" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$vPos$$], - "HPos" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$hPos$$], - "TopBar" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$topBar$$], - "BottomBar" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$bottomBar$$], - "OutputID" -> - Hold[ - TypeSystem`NestedGrid`PackagePrivate`localHold[ - TypeSystem`NestedGrid`PackagePrivate`$outputID$$ - ] - ] - ], - StandardForm - ], - ImageSizeCache -> {788.0, {424.992, 430.283}}, - TrackedSymbols :> { - TypeSystem`NestedGrid`PackagePrivate`$state$$, - TypeSystem`NestedGrid`PackagePrivate`$grid$$ - } - ], - TypeSystem`NestedGrid`PackagePrivate`mouseAnnotation$$ = - MouseAnnotation[], - ImageSizeCache -> {788.0, {424.992, 430.283}} - ], - BaseStyle -> { - LineBreakWithin -> False, - LightDarkAutoColorRules -> Association["MarkedColors" -> True] - }, - DynamicModuleValues :> { }, - Initialization :> - (TypeSystem`NestedGrid`PackagePrivate`$outputID$$ = - CreateUUID[]), - UnsavedVariables :> {TypeSystem`NestedGrid`PackagePrivate`$outputID$$} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - Dataset`InterpretDataset[1], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 18304493 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 105171952 - ], - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30c4\:30fc\:30eb\:3092\:305d\:306e\:540d\:524d\:3067\:4f7f\:3046\:30ab\:30b9\:30bf\:30e0\:306eMCP\:30b5\:30fc\:30d0\:3092\:4f5c\:6210\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 452588078 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"WolframNotebooks\"", - ",", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[{"\"ReadNotebook\"", ",", "\"WriteNotebook\""}], - "}" - } - ] - } - ], - "|>" - } - ] - } - ], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 121034839 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframNotebooks\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframNotebooks\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframNotebooks\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframNotebooks\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"ReadNotebook\"", "\"WriteNotebook\"", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\AgentTools\\\\Servers\\\\WolframNotebooks\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> Association["Tools" -> {"ReadNotebook", "WriteNotebook"}], - "Name" -> "WolframNotebooks", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.0.0", - "Transport" -> "StandardInputOutput", - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\WolframNotebooks" - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 45777125 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"server", "[", "\"Tools\"", "]"}]], - "Input", - CellLabel -> "In[2]:=", - CellID -> 303888320 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"notebook\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The Wolfram notebook to read, specified as a file path or a NotebookObject[...]\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The Wolfram notebook to read, specified as a file path or a NotebookObject[...]\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "ReadNotebook", - "DisplayName" -> "Read Notebook", - "Description" -> "Reads the contents of a Wolfram notebook (.nb) as markdown text.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram notebook to read, specified as a file path or a NotebookObject[...]", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"file\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The file to write the notebook to (must end in .nb).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The file to write the notebook to (must end in .nb).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"overwrite\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Whether to overwrite an existing file (default is False).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Whether to overwrite an existing file (default is False).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Boolean\"", - RowBox[{"Interpreter", "[", "\"Boolean\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"markdown\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The markdown text to write to a notebook.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The markdown text to write to a notebook.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WriteNotebook", - "DisplayName" -> "Write Notebook", - "Description" -> "Converts markdown text to a Wolfram notebook and saves it to a file.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook, - "Options" -> { }, - "Parameters" -> { - "file" -> <| - "Interpreter" -> "String", - "Help" -> "The file to write the notebook to (must end in .nb).", - "Required" -> True - |>, - "overwrite" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to overwrite an existing file (default is False).", - "Required" -> False - |>, - "markdown" -> <| - "Interpreter" -> "String", - "Help" -> "The markdown text to write to a notebook.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 7660553 - ] - }, - Open - ] - ], - Cell[ - BoxData[RowBox[{"DeleteObject", "[", "server", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 31594874 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 793340212 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 153150105 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 159729737 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 291967928 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 321481715 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 485902214 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 937976293 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 11682111 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 38903073 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 34543026 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 125951119], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 327939220 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 52474684 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 196388113 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 243996339 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 441177150 - ], - Cell[ - "Wolfram/AgentTools/ref/$DefaultMCPTools", - "Categorization", - CellLabel -> "URI", - CellID -> 671302494 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 290426534], - Cell["XXXX", "Keywords", CellID -> 284091604] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 303035979 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 121615627 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 555317820 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 71909838 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 400316296 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/$SupportedMCPClients.nb b/Documentation/Japanese/ReferencePages/Symbols/$SupportedMCPClients.nb deleted file mode 100644 index a8949d7e..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/$SupportedMCPClients.nb +++ /dev/null @@ -1,1290 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell[ - "$SupportedMCPClients", - "ObjectName", - CellID -> 67259536 - ], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - ButtonBox[ - "$SupportedMCPClients", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$SupportedMCPClients" - ] - ], - "InlineFormula" - ], - " \[LineSeparator]", - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineFormula" - ], - "\:304c\:30b5\:30dd\:30fc\:30c8\:3059\:308bMCP\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306e\:60c5\:5831\:3092\:542b\:3080\:9023\:60f3\:3092\:4e0e\:3048\:308b\:ff0e" - } - ], - "Usage", - CellID -> 205888551 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "$SupportedMCPClients", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$SupportedMCPClients" - ] - ], - "InlineFormula" - ], - "\:306e\:30ad\:30fc\:306f\:ff0c", - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[ - { - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - ",", - StyleBox["\[Ellipsis]", "TR"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\:3067\:4f7f\:7528\:53ef\:80fd\:306a\:6709\:52b9\:306a\:540d\:524d\:306b\:5bfe\:5fdc\:3059\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ad4ab50c-7087-49f5-af27-ba18f984a667", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 6, 42, 26.4048}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The keys in \", Cell[BoxData[ButtonBox[\"$SupportedMCPClients\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$SupportedMCPClients\"]], \"InlineFormula\"], \" correspond to valid names usable in \", Cell[BoxData[RowBox[{ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"], \"[\", RowBox[{\"\\\"\\!\\(\\*StyleBox[\\\"name\\\", \\\"TI\\\"]\\)\\\"\", \",\", StyleBox[\"\[Ellipsis]\", \"TR\"]}], \"]\"}]], \"InlineFormula\"], \".\"}], \"Notes\", CellID -> 309537812]" - |>, - CellTags -> "Translated", - CellID -> 309537812 - ], - Cell[ - "\:5024\:306f\:ff0c\:4ee5\:4e0b\:306e\:30ad\:30fc\:3068\:5024\:306e\:30da\:30a2\:3092\:542b\:3080\:9023\:60f3\:3067\:3042\:308b\:ff0e", - "Notes", - CellID -> 343949418 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"ConfigFormat\"", - Cell[ - "\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:3067\:4f7f\:308f\:308c\:308b\:30d5\:30a1\:30a4\:30eb\:5f62\:5f0f", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"ConfigKey\"", - Cell[ - "\:305d\:308c\:306b\:3088\:3063\:3066MCP\:30b5\:30fc\:30d0\:304c\:69cb\:6210\:3055\:308c\:308b\:30ad\:30fc", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"ProjectSupport\"", - Cell[ - "\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:30d9\:30fc\:30b9\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:304c\:30b5\:30dd\:30fc\:30c8\:3055\:308c\:3066\:3044\:308b\:304b\:3069\:3046\:304b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"URL\"", - Cell["\:30a2\:30d7\:30ea\:306eURL", "TableText"] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> {"Alphabetized" -> True}, - CellID -> 44550766 - ], - Cell[ - TextData[ - { - Cell[BoxData["\"ProjectSupport\""], "InlineFormula"], - "\:304c", - Cell[ - BoxData[ButtonBox["True", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:306a\:3089\:ff0c\:7279\:5b9a\:306e\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:306b\:7279\:6709\:306eMCP\:30b5\:30fc\:30d0\:304c", - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[ - { - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - ",", - "\"\!\(\*StyleBox[RowBox[{RowBox[{\"path\", \"/\", \"to\"}], \"/\", \"dir\"}], \"TI\"]\)\"" - } - ], - "}" - } - ], - ",", - StyleBox["\[Ellipsis]", "TR"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\:3092\:4f7f\:3063\:3066\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3067\:304d\:308b\:ff0e" - } - ], - "Notes", - CellID -> 385484522 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "1ed7fa3a-580b-4fc0-9b70-8576c10f0a31" - ], - cellobj$$ = - CellObject[ - "a6ac940b-9ce9-43b0-a973-a767a57f0a8c", - "ad0afee3-e47a-43c0-a63e-3492974eb982" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 262159146 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell["XXXX", "Tutorials", CellID -> 102798855] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 32086504] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 747905538] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 887307835 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[ - { - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - ",", - StyleBox["\[Ellipsis]", "TR"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\:3092\:4ecb\:3057\:3066\:73fe\:5728\:30b5\:30dd\:30fc\:30c8\:3055\:308c\:3066\:3044\:308bMCP\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306b\:3064\:3044\:3066\:306e\:60c5\:5831\:3092\:53d6\:5f97\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 190721999 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData["$SupportedMCPClients"], - "Input", - CellLabel -> "In[1]:=", - CellID -> 106189953 - ], - Cell[ - BoxData[ - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Antigravity\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Aliases\"", - "\[Rule]", - RowBox[{"{", "\"GoogleAntigravity\"", "}"}] - } - ], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcpServers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Antigravity\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"Antigravity\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "False"}], - ",", - RowBox[ - {"\"URL\"", "\[Rule]", "\"https://antigravity.google\""} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"ClaudeCode\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"Aliases\"", "\[Rule]", RowBox[{"{", "}"}]}], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcpServers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Claude Code\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"ClaudeCode\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "True"}], - ",", - RowBox[ - {"\"URL\"", "\[Rule]", "\"https://code.claude.com\""} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"ClaudeDesktop\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Aliases\"", - "\[Rule]", - RowBox[{"{", "\"Claude\"", "}"}] - } - ], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcpServers\""}], - ",", - RowBox[ - {"\"DisplayName\"", "\[Rule]", "\"Claude Desktop\""} - ], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"ClaudeDesktop\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "False"}], - ",", - RowBox[ - {"\"URL\"", "\[Rule]", "\"https://claude.ai/download\""} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"Cline\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"Aliases\"", "\[Rule]", RowBox[{"{", "}"}]}], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcpServers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Cline\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"Cline\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "False"}], - ",", - RowBox[{"\"URL\"", "\[Rule]", "\"https://cline.bot\""}] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"Codex\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Aliases\"", - "\[Rule]", - RowBox[{"{", "\"OpenAICodex\"", "}"}] - } - ], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"TOML\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcp_servers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Codex CLI\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"Codex\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "False"}], - ",", - RowBox[ - {"\"URL\"", "\[Rule]", "\"https://openai.com/codex\""} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"CopilotCLI\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Aliases\"", - "\[Rule]", - RowBox[{"{", "\"Copilot\"", "}"}] - } - ], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcpServers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Copilot CLI\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"CopilotCLI\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "False"}], - ",", - RowBox[ - { - "\"URL\"", - "\[Rule]", - "\"https://github.com/features/copilot/cli\"" - } - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"Cursor\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"Aliases\"", "\[Rule]", RowBox[{"{", "}"}]}], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcpServers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Cursor\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"Cursor\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "False"}], - ",", - RowBox[ - {"\"URL\"", "\[Rule]", "\"https://www.cursor.com\""} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"GeminiCLI\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Aliases\"", - "\[Rule]", - RowBox[{"{", "\"Gemini\"", "}"}] - } - ], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcpServers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Gemini CLI\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"GeminiCLI\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "False"}], - ",", - RowBox[ - { - "\"URL\"", - "\[Rule]", - "\"https://github.com/google-gemini/gemini-cli\"" - } - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"OpenCode\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"Aliases\"", "\[Rule]", RowBox[{"{", "}"}]}], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcp\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"OpenCode\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"OpenCode\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "True"}], - ",", - RowBox[{"\"URL\"", "\[Rule]", "\"https://opencode.ai\""}] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"VisualStudioCode\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Aliases\"", - "\[Rule]", - RowBox[{"{", "\"VSCode\"", "}"}] - } - ], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcp.servers\""}], - ",", - RowBox[ - {"\"DisplayName\"", "\[Rule]", "\"Visual Studio Code\""} - ], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"VisualStudioCode\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "True"}], - ",", - RowBox[ - {"\"URL\"", "\[Rule]", "\"https://code.visualstudio.com\""} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"Windsurf\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"Aliases\"", - "\[Rule]", - RowBox[{"{", "\"Codeium\"", "}"}] - } - ], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"mcpServers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Windsurf\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"Windsurf\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "False"}], - ",", - RowBox[ - {"\"URL\"", "\[Rule]", "\"https://codeium.com/windsurf\""} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"Zed\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"Aliases\"", "\[Rule]", RowBox[{"{", "}"}]}], - ",", - RowBox[{"\"ConfigFormat\"", "\[Rule]", "\"JSON\""}], - ",", - RowBox[{"\"ConfigKey\"", "\[Rule]", "\"context_servers\""}], - ",", - RowBox[{"\"DisplayName\"", "\[Rule]", "\"Zed\""}], - ",", - RowBox[{"\"Name\"", "\[Rule]", "\"Zed\""}], - ",", - RowBox[{"\"ProjectSupport\"", "\[Rule]", "True"}], - ",", - RowBox[{"\"URL\"", "\[Rule]", "\"https://zed.dev\""}] - } - ], - "\[RightAssociation]" - } - ] - } - ] - } - ], - "\[RightAssociation]" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 573242543 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 80555562 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 162761349 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 19688071 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 437514791 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 4207953 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 91254136 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 260798594 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 353055748 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 416117987 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 75871097 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 149448601], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 248187649 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 181867412 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 297325831 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 603046235 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 107898593 - ], - Cell[ - "Wolfram/AgentTools/ref/$SupportedMCPClients", - "Categorization", - CellLabel -> "URI", - CellID -> 8449599 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 184289076], - Cell["XXXX", "Keywords", CellID -> 260749161] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 187747287 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 155658057 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 90743871 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 1031926 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 385123573 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/CreateMCPServer.nb b/Documentation/Japanese/ReferencePages/Symbols/CreateMCPServer.nb deleted file mode 100644 index b179e2a7..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/CreateMCPServer.nb +++ /dev/null @@ -1,7146 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell["CreateMCPServer", "ObjectName", CellID -> 528220233], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ], - "[", - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - "]" - } - ] - ], - "InlineFormula" - ], - " \[LineSeparator]\:73fe\:884c\:306e", - Cell[ - BoxData[ButtonBox["$LLMEvaluator", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:306b\:57fa\:3065\:3044\:3066MCP\:30b5\:30fc\:30d0\:3092\:4f5c\:6210\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ], - "[", - RowBox[ - { - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - ",", - StyleBox["config", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]", - Cell[BoxData[StyleBox["config", "TI"]], "InlineFormula"], - " \:3067\:6307\:5b9a\:3055\:308c\:305f", - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - " \:304b\:3089MCP\:30b5\:30fc\:30d0\:3092\:4f5c\:6210\:3059\:308b\:ff0e" - } - ], - "Usage", - CellID -> 26078384 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineFormula" - ], - "\:306f", - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\:3092\:4e0e\:3048\:308b\:ff0e" - } - ], - "Notes", - CellID -> 220202730 - ], - Cell[ - TextData[ - { - "\:4f5c\:6210\:3057\:305fMCP\:30b5\:30fc\:30d0\:3092\:5916\:90e8\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3067\:4f7f\:7528\:3059\:308b\:969b\:306f\:ff0c", - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineFormula" - ], - "\:3092\:4f7f\:3046\:ff0e" - } - ], - "Notes", - CellID -> 331277433 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineFormula" - ], - "\:306f\:6b21\:306e\:30aa\:30d7\:30b7\:30e7\:30f3\:3092\:53d6\:308b\:ff0e" - } - ], - "Notes", - CellID -> 350233383 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - ButtonBox["OverwriteTarget", BaseStyle -> "Link"], - ButtonBox["False", BaseStyle -> "Link"], - Cell[ - "\:540c\:540d\:306e\:30b5\:30fc\:30d0\:304c\:5b58\:5728\:3059\:308b\:969b\:306b\:3053\:308c\:3092\:4e0a\:66f8\:304d\:3059\:308b\:304b\:3069\:3046\:304b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - ButtonBox["IncludeDefinitions", BaseStyle -> "Link"], - ButtonBox["True", BaseStyle -> "Link"], - Cell[ - "\:4f9d\:5b58\:95a2\:4fc2\:3092\:81ea\:52d5\:7684\:306b\:542b\:3081\:308b\:304b\:3069\:3046\:304b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - ButtonBox["Initialization", BaseStyle -> "Link"], - ButtonBox["None", BaseStyle -> "Link"], - Cell[ - "MCP\:30b5\:30fc\:30d0\:306e\:8d77\:52d5\:6642\:306b\:8a55\:4fa1\:3059\:308b\:5f0f", - "TableText" - ] - } - } - ] - ], - "3ColumnTableMod", - CellID -> 224738736 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPTools", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPTools" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "bd117881-ecd6-465b-aa2d-6f28ac3261c9" - ], - cellobj$$ = - CellObject[ - "77be4229-2da0-48aa-8fe2-7519c4b85f4b", - "8d45ef83-d886-4043-a9a8-c62f34271676" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 54248248 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell["XXXX", "Tutorials", CellID -> 27660513] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 27324211] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 384003408] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 86484106 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:304b\:3089MCP\:30b5\:30fc\:30d0\:3092\:4f5c\:6210\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 557332490 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "config", - "=", - RowBox[ - { - "LLMConfiguration", - "[", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[ - { - "LLMTool", - "[", - RowBox[ - { - "\"PrimeFinder\"", - ",", - RowBox[{"{", RowBox[{"\"n\"", "->", "\"Integer\""}], "}"}], - ",", - RowBox[{RowBox[{"Prime", "[", "#n", "]"}], "&"}] - } - ], - "]" - } - ], - "}" - } - ] - } - ], - "|>" - } - ], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 599567234 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["LLMConfiguration", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Model: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["Automatic", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Model: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["Automatic", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tools: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TemplateBox[ - { - "\"PrimeFinder\"", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"PrimeFinder\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - TooltipBox[ - "None", - "\"A description would help the LLM figure out tool usage and increase the call sucess odds.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "A description would help the LLM figure out tool usage and increase the call sucess odds.", - "Tooltip" - ] - ] - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"PrimeFinder\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - TooltipBox[ - "None", - "\"A description would help the LLM figure out tool usage and increase the call sucess odds.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "A description would help the LLM figure out tool usage and increase the call sucess odds.", - "Tooltip" - ] - ] - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[{RowBox[{"Prime", "[", "#n", "]"}], "&"}], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"n\"", - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Selectable -> False, - Editable -> False, - SelectWithContents -> True - ] - }, - "ClickToCopy2" - ] - } - }, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - DefaultBaseStyle -> "Column", - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Column" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMConfiguration[ - <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 120701252 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[{"\"My MCP Server\"", ",", "config"}], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 5622128 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\AgentTools\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 756450997 - ] - }, - Open - ] - ], - Cell[ - TextData[ - { - ButtonBox[ - "Claude Desktop", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://claude.ai/download"], None}, - ButtonNote -> "https://claude.ai/download" - ], - "\:3067\:4f7f\:7528\:3059\:308b\:305f\:3081\:306b\:30b5\:30fc\:30d0\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 624404051 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"ClaudeDesktop\"", ",", "server"}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 271849133 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"My MCP Server\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"My MCP Server\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\AgentTools\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"My MCP Server", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 529162718 - ] - }, - Open - ] - ], - Cell[ - "Claude Desktop\:3092\:518d\:8d77\:52d5\:3059\:308b\:3068\:30c4\:30fc\:30eb\:304cClaude\:3067\:4f7f\:3048\:308b\:3088\:3046\:306b\:306a\:308b\:ff1a", - "ExampleText", - CellID -> 454807299 - ], - Cell[ - BoxData[ - GraphicsBox[ - TagBox[ - RasterBox[ - CompressedData[ - "\n1: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\nnZE2zzedH51Hx7IVNVbDsl3X9kmuI8UtlibDo+W5I9Te8662OO4S99GPvhqn\nS97rLMFzy8c9Q+9MmHiLc0jeoyHgnoY3yaMr4N4TtEaH89gu0u21jGi42Dca\nE00a+mUlmUHvpneXOvRuQgghhJCw6T3SFe9D3lDZJmlc8e62BifHHc/winc7\nHtqk3t2pqe1Uru0Zrpt6di3b1WpXrl1ljsTpbOuOP2lTuqMOzpNoV2t3V9Jj\nNx4TryrOprrczYqDu7vzpN5Ko8ujm4v3Hp2Talbvdr5YcKQbJ25kwKW5XAd3\nvBttCBrjXfSr0bChX1ySAfRuenepQ+8mhBBCCAmbluY6J9Pd6Bl3o9utOtLk\nZbobNbvd7kpos9tz2+fdZk7Zzjgnp6c9s47LuNi0J9Qq0a2uent+HfAY9db0\nNuhsx3keX9iqVt6lJt7pabj2VHdy8ZqRT/RCN/rJu/3PvdOXLuheQzVqR/SI\nl/huaqhCw4Z+cUkG0Lvp3aUOvZsQQgghJFSgkJBudxy3O4Lb60/e3tTh827F\n8m4zx225tmO7CRdWyxYjdg3ayG73RCPdLm0KFvZ0R8zHxFucNXuS3hJJSpd3\nqYy3qpVrJ3Y3C284uPY/93u3dqpv1z7noF29W0d/N7a1NqBhsWbol5j0B72b\n3l3q0LsJIYQQQkKlvq6ytbVeepW7OW5jLLNbMM0Z6Zzwa01tJ+e1vQyy13W8\n09NbVV1Xvc2EdaQ72bKj3sKe7va4X8vzpNUSuK92OxouC7sSm+1xtykOHokG\n9Vc3DyygI7qbAW+1TlyqxmkG3P2OQjPg3uhvNGx9fWXol5j0B72b3l3q0LsJ\nIYQQQsIDdllfVy6JWs1xd7r9yZNy3Gm8W3EyyO6Q6u5oQmzVpl2ndjPariDD\nr13L7haDbleOOPR4j37cV3va9Y1HxNZlhajr49GE4Ad0Vnd7s3fpqPNIlwi4\n5sEDvLsl2bvd7yi8od8J+26oq8CmQr/QJC30bnp3qUPvJoQQQggJj9aW+qam\nWqNiuenannF7pb/dUdvtSf3JE7213Z7kjm47z7u7rFyz6b9ewtrtNJ7s0WrW\nPR1xnCfdzhLz0V1BH60tGEbf7Qm44fvBg8SjOrrcOyNzerLEtw1mnfb2Zr+D\n64jvpsYaTitW9NC76d2lDr2bEEIIISQ8GhtqIq0NMhO3Jm0Dc9w63Xayd8cT\n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\nMvVBTUY3NtTedttErHPNNVe1NDcE7loubmAHBrkloL0rVy43Wbd2Nf6tm2tC\nIceNuwHH4x99ANOc9shDuLIffvCetZ1vv/3qppuux2PM+4JFHFzfi03h+LEc\nr8qmXnzxOezl008+NHfx/crlv/jFCeeee5aZ9d61c9voy0f5c8o4xyy8W9i4\n4cf/8e//Zt2icnUyV2msv3PHVvN7CUIIIWm9251Fy+/dgX3Lu7vt3tptrY0H\nD+5Z88N3P/24qqb6EDboX7+luW7hgnlz58zEI54Xbh6xAS038Ht3jzOlWldn\nxFLvcL0b0mqKNp7gRywM/ZZLj3w/oBQqR0/vLnHvhizD6SQ1PGH8NZLUdjoz\nH5aR0dJbW3PHkFnNtGKFRQvnqXeH/jtinZce81D0bpVus4+B+erNTjeD3Ko3\npCnQu8HBsr0QurwOiU3l3QUG9gqTTTUEOE/eDReDLKMFqioP3nzzOOsqbNu6\n8cknH7N8Fj9OmHCTpLw7O1pjzhcUzz33tLWadNRP1aryDcMf//gHyYxb3g1V\nHzfuRuw9/cFLuhw6vHDBu/6vR+rrqu+efGd1dUD3DGwZ25dvCf6xZGHgvTf/\n3bexHK/GnJtw+PAzLjh/RFXlIXMdfMCAsGO1l156Qb6X2Ld356WXXBR41oPx\nbmwN2/RvVg4s1e8OIYSQfmloqE7qYd6RmCdLJ7BOynHHu5e7lceOyDjoIG/d\ntWPzfffefubpvz/tlN8oZ/3p5Ccff/DQwb3m+g31leP+ejVexSOeF6l3G/XW\n8BhNHuvt9Lo32q3Tq3Pu9DPHY0N9oftZWcluoWirq+GQBO0PjydAvjp4fe5M\nXSGQXBwDvbvEvRuiLR3F8QgBD1xHxkqrxpo9nPGW4vTumNFDe8h5N1oYhw2z\nDpRuRdQ7hx3O03g3dKajvRmPUpxqxownrrpqrHY2thbKCNzLRl0MFzv//BFL\n3lvgLyGFt3y/cvn48X+F8YHbb79lw/p1fu+GSy6Y/87Iiy4wldBciEPaumXD\nLbdMwEZ+97tfP/7YtMaGWmtf0DQcm3TPxvFMf3Tq888/g5MdO/YKa6gyXGzm\nzBckj4wNXjzyQhnDqwlW07vraqvguZDWn/3sX2644botm+2LJceGXeDAsM61\n117tH61sgQOAElpXQZrdv/LLL7+YPpcd81K0oy8fFTgiG5cAGrt61Qq0vN+7\nDx/aj43jMc0BS8dvvBdNOqBCYZJnf+vN182GxRlZq4l3y1Dxb775As/RnrgV\nrdWkKztOE1f/22+/khETuI4jRpxjVieIJXs3Dn7uq7NxS2BN3K4rVnydvsh5\nKu/WUdtyY7S2NOJ4rhh9mVzEdWtX417F1cclkOp89025556771LxD/z1kc4P\nuEXxdjkqvd9wZ+Ie9t/n8kbsFzcbbrn777s3k2HvhBBSDEi+Wz1RHp3xRG4h\nNbOWmvrmES/T7Z+TKxqNfPnFx+ede5pp3CYXX3TW2jUrdf16w7vr1bvDnlMs\n8Ll71okpxrTGmnxB4VY4N1tSvtPId74birps6RIARYWrAlFsq5CaVFeT/ttS\nbE2m9gZhybh8P2Chhx34qp9cHDy9u5S9G1qno7Mh4OlXXrfmO1mzbP8uXUjv\nzgeLF76ZSS4bxg31BniSE/tO490C/O6mm663BvlaC3ds3zxu3A2wA8iOlErz\ndwyWYcjwl2WffgybqKmpeOftecOGnYw1Tal5dc7ftd+1KqG5EKI0e/bLv/rV\nLyHIOur5gfvvNfsqr/r+WxzGbbdNxO8QrAcWc+65Z0Gylry3YNojD1neXV1d\nPmvW3+6efCe2g9WgQtBJgHfJCqKHTz752MqVy08++ffQugsvOA+aI+ubmoN9\nvfLKy2iHhQvexQlKbhdH/uKLz6Xx00DvToU4afrULcQWO128aIHfKOF6kG6o\nt/Q08Hs3nP2GG65LI/Uxp/Aati9SOaCbbcP6dWi6g2V75Udx6uHDz8D9o+tI\nIlsbVho/8HxxgeTm2b5t83uL5z/x+KMnnfTb//Hv//bwQ/fLFcRCfAiJGd4N\n/8WWcdvoQHg84qjSHHNq73avGvb72bKl2K8OFsCRYy/yq7F1ywbsS17Ss7B+\nfXCfoDFx2+hRye6+/PIzud+A3P/WfS5d/fHe1au+w/PPPvvkT386LXDYOyGE\nFCH1dY53xyehbnGrc3dpAXO7llpS9/IUflpWtnvsFSNFsa+9+s8L5r+x5ofv\nVn735cszn4Zxy3KssH/fziHn3dbpGy3TljTTd6eZ9Y53Nc+fd+v03H6sZHfM\n0Vjx8UDCqnZ+28RrFOvrAvVucx2LHPWcp3fnUrpN7+51Qr0bjdPV1aXe3dLS\n0tTUpN5dWVmp3r1z585t27ah5d97771FixYN5vomKo/dNb7f0dlYYcaTU62e\nz/TufCDJ7gGdI8C1GKR9B3o3PvM/9OB9ajr4qP/B+4thFmZxLV0IU3j8sWlw\nDbE8HfqqfaF1IdaE8Zk7+vrrLyzvxka2b9tkKaG5ECa7etUK1VgZ53v66afu\n3+d+NQQZvPLKMbA59buYY+I4VEtbTNJ0RRb1O+ec4Qvmv6NDdCsrykZfPkq7\nQwvw+t/85kTzHLE+Dji93GXu3TJu2uxcbYGFOBHo2xdfLPOny2tqKtAy4uOp\nvBsuLEn/66+/dvbsl3fu2Gp9Y9DW2gTXkzHmeGnTxh9fnfN3XFxstqryYJqD\nF6HGraIF06CKOB5s6mc/+5eXX35R2hatB3lUc5TGx/H4h1GLEQ8bdvLuXdtj\naccsyMXFS9iL1ijAiUjC+tlnZ6Q57FTeDXe+5pqr8PbXX5sTc+q5SbPMf/et\nR6c9DFPGb9Zrc1/Bn9D2SDNa0rq7Uv36NDfVy3ZwLtiUjiBAO5900m/N+xyb\nunvynWPGjMZl1aOCwmO1LL4SIYSQwhPPd/tGdkedActe32nJdzsZcK+WmjWy\n23z8dOk/RK7vvP2mxvoq89XKyrJbJ14vr/7txRlw0sB+5qm2XCyPXo01r0Hc\nfLemvP2jvOvz1s9ctFRy3JK/lhR2mhSwdOeWFLlkvaU7Nwj9blTRlnORsd4F\n+UIgpXfD+MS74YAwQfXuiooK9W6YI/xRvRteaXo3rNNUb9HSfKg3vTuQsv27\nTGXL5C1bt65/47VZ5pxi6b1bJxoDSz9eLBOTWYKPH3EkOnOZlXZP/6q1I6yj\ne8FB9uvdsuXl38Q3KzOmFYN3SyfzDAduS/vjBKXPueS+s96137vx+X/hgnct\nAxX7sIpaBy6Mef2czeU//bgGS0znEqoqD11w/ghLatRDTSUMXBgz9EeXy94h\nL2Zda1ktzUDyfr3bP75bmk6XV1Udhh76z1HenkbuMvdu2UXgWUS7IqtXfQfH\nnzhx/JbN6/3SLZ3DtWd4Ku+GRVq1x2HBy5d/qRuE2f3mNyeec87wzz//9IrR\nl5lrQp/nvjo7VWZfOiHgTjAXyqDs47xZ0u666/Yp995tdiGQq/nP//zfvv76\nC2uDlhH3693+i5smmZ5qL8qKFV9b9dbkfrjllgnz333b+non8ABS/frIJbDu\nN3j06MtHoR20G8a33371b//9X6VCnXUvmav5QfM+8cT09N3RJ0y4if3VCSH5\n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\ntS5j1LaYu+z3x3Xfi+briHLTu597ZjrWt44Thi6vLlowLzEqPBqZ9/rfXYX/\ncunQ8u6YN0w7k3m1ZJpsSrcBvbs0vVs6M6dR3QxJ5d1bt66HLFtp6Fh8MrIV\ngXlt3U7gwQRWSFNVfyNZ7ZVAW5eF2Huia30srvDbnQPWDgBy2GF5t5xv+sm7\nY8Y034Fvz6Kreb+jQYXBeLf08Q4c+5wn7963d+dDD96HbWLhypXL8dhveedc\n9TOH3aefD9pPeu+GdF977dVQJPPAWlsa4cI93R0fvL/4uuuuKTuwJ/B0YLUb\n1q+DU5vGnca7161dPXbsFdYEcDFPqKVxsGVIcaDxyXW3VBp/ya644nKrvHya\nmyfm1DlPVT5O0AnEzZz4MeXd0s8cF6Lf7grpUfWmdBNCCo/n3c48YoZ3x4uq\ndSVmyMJjT7cn3Xj0bDTN3FvYyKGDe7/6cumsl565/ZYbdRIx4emnprW3N5t9\nwm+8fmxtbbluB8+xRPqK792zXZe3tTVu3LDm3XdemztnpvDs09PF0B95+J7W\n1kZzm2OvGFlWttt/bDgkOYzHpz+g2wHYgiyfM/vFwPNyi6rF20HUu81spag7\nvtvtM+B5d2thvDtmzNCdfjXpXp6jGbgKx7KlS6Rsex56xdO7S9O7zXy3pcAD\nIpV3S/9wMw0tS1SWrUHlWXi3ToKWaih04Luk8tjkSeO1BPqihW9izaedGmt4\nxI/fOP3PY+F5Nw7YX6fOAlotq/n1XBqzX233UwDv1tmv/IKTD++uqjx44QXn\nDXQK48F7twgpBNMcRi1AkPFqqv7Jaby7saH2ttsmWtItBedff20O9BaSG9iR\nAKefKitttrzZbp0drSKzMjGWiRQVl68UpKa6Dvf279Qqniat5y/zvn/frtNP\nPzVwgjA5tsCXYk5fdOnrjqM1d3RMebfWKrQaQUC7mVX10iPqTekmhBQe07vj\nj15dte6uVlik5ZUJ7x74/NfRaAQa/uTjD4vYujadev5uc4y2evfG9T9YldBM\n/N4dOCd4JNI0fdr9qTbiFWN/Jti7Ey0Qsb6XiDotpt7tNGmhvRtmmsnEW5IZ\nL2DVssGiQ9GVXB88vbs0vdsc3+3kRu1+2hnS7/zdOpXYG6/Nkvrhxk7L/dvJ\n3Lu1chrcOXDXad4F75YS6HEemoQ1pZL5wQO7imQeMW2HwLS11E9L9Z2DdD4f\n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\nOhou7plihuvqqoO3TnR7g8Ntb7/lxrffenX1quUff7T4nkm36Pxic2a/KO6c\nuXeXle2WybvPP/e0r7/6RI5286Z1N914lY4Zh+ln4t1wbRi3W1z9nttg7hXl\nBz58f4HkzXGQEHPbuw3i30hEI6kqqmmmWxu2MN4tVcrNTubWmOgnHpui6jq0\nhniLm0tFNekkX8h+5vA+2J94N3xw//79cEMYIjyxtrZWvbu1tRUuCaOEV8Iu\n4Zjq3aZ6q5mGot7HoHfHnJS35n8n3zU+/YhgfIZ/w+klbtZhC/RuMxktiWNF\n65lb3p2qzrkQWJnc/NIg8MgD3/WG19Ed73JT3oZ3t0ea1q357uEHJ012ph0P\ny7sDka8sMplfDOtYU5Yfm0gFMH/WXsD/oFtvvTlVt2dCCCGEFAzxbq+fedIo\nb1ikVVfNQXLfhof65ts6fGjf7bfemKZqWeA8Yton3Fqu/cw7nZnB/Vsb/ecL\ntFh6vB5af/3MZft792y79qpRgYc3d85Mc56yRCdz0XApY57s3Y56J7xbR3YL\nhfFuc3C3yimMFT4uWW+tSKb22u9I8CLBnxbP9eB0encpezesc9HCN1W9pz44\nKZV619YchrFO8IqB6/JA7zbl2sx3w8HVhS0lN1Vd66RpCXRVbHPXVj95Gaat\nb8SBBb5LU/ai3jj9dWtXYOH2reuxhTdenwXj1ux/UXl3zBu4fbM3zVkqZAB4\nFvOIlRji3aMvH+WfjVo65Z5yyrDvVy4P/TgJIYSQY5y4d8v47na7t3ncu7si\nrm4nebdn346AOx3O7XmuO9qbv/j8oxv/MsZS2ssuwQfU9/Cq36/79W4s7+ho\nWfrRYnNKsocemFRddXDjhjVS5zxz78bzmupDTz7+kKbg5fCWvPdOh5OI1/WP\neLXUDOxvJCTZ7e9hLm1bX5Dx3ZLdhlBrmtvSaq1IJgXKimSId4ZsWL9aRoLj\nLPKQpqd3l7J3xzz1nuzVWIPAwmdhvjIL2DbHRiGh2mfb7NetGXD1ZenXako0\ntowNYgvYC94IVPPnvTYLbxGFhCQmNNl5i9RkkxLoeniSpBYxx77M6uh4joPE\nq9hRvJjbQ/a7tCO9meXHE6wme9Gt4e1yIsXm3TFHvc1ia1JpzarAlmp+sWON\njvaWKffefdxx/2XUpSOXffpRTU1FQ30NHleuXH735DtPPvn3X375GfviEkII\n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\nQggpMPRuejfJguw+aj795AOnn/IfBQA7Cv1zNSGEpCL0v+GEEEJIgTkGvTtz\n6U7v3b1OqHejNcS729vb1bubmprEu6uqqsS79+/fjxZGO2/dunXTpk0//fQT\nvTtX5HVAt0UWnzNXrVxWGOkWsLvQP1oTQkggof+/IIQQQgqJziMG+4MDqnfD\nDcW7YYvq3c3NzeLd8Er17u7ubvVuUe9U3l0Y9aZ3H+MUTL2z+Jw56Y7rC+nd\n2F3oH60JISSQ0P9ZEEIIIQVDDIXeTe8mWTDQD5mrVi477Q8nFJjMU95bN//w\n+bL3Vq38rLZ6f6pXf1y7PPC9WI5Xd25bh+dvzXvphH//Zzzm5JM5DgaHhI3v\n27Mp8KWvvvjgUNn2PO3i6y8+xLk8Nu3evNpHxeFd2FFgy+/Ztf6dt2Y//eRD\nzz499bNPF1eW7w7cApbjVayDNV+d/dyGH1fU1Rzod78HD2z78vP3A09cLncq\n8GqqbeJIln/1IdbZ8NMKXYgLhMuUZoPWMdTXlm3fuubteS/jdMDLM5/6/rvg\n21L2iNZ74dlH06+J7ae6vXN7xw6Iqoo9jzx016hLzl75bUG7puD2wO8smmtA\nN0zOCf1vOCGEEFJg6N30bpIFA/2Q+ejUOwvv3dhphoeHT/6/+/XxIy84Y+eO\nn6yXoCrTHp4EN7nphjGHD+6wXsUSLD/tD79au+brhlxbTOXhXbff8hdsEG4V\n+NKfTvsdrCFPu8i3d0N2Pv144dlnnoy94BhwJGabz3ppxom//Fe8pGDNb778\nCFqqq+E5jPvUYf9prgZuHn/1rp3r0+y6/NDOu26/UVb2n7hcxFSkurg4Zngc\nVhh7xQW7jb3jAuEypdmgeQw4MKjof/7H/2OtcP6IU+HU5u5w7p9+skhaz+SK\ny89f/f3ngZfSamTzZEPx7jT3Xv5AC9991zir0bAEywt8+qH/DSeEEEIKDL2b\n3k2yYKAfMkec9bvCezd2muHhHTyw7dqrLsUn8KUfzrde2rdn0+WXnouXVK5N\nsATLVcnp3RmyZdMP424co+JjKiGM8u15L8M94d0QIlyRxQtfu+7q+NU56bc/\n/275p7oRPMcSLL/hL5e/v+Stz5e998Kzj4qGY/2y/VsCd43tv/j8dL/zKnIR\n/3r9aMk4Wyz/+qPAbcoxnzt82E9rvzVf2rVz/QvPTQ/c1KQ7bzLvK5j7MzMe\nxhKc+PRH7oVW44zmvf7SZZeeLeq9ZeNq3ewXny2Rc4doYx2sjL2IhvuPgd5t\nXXo01KIFc9GeC959VRoNLZ+qU0GeCP1vOCGEEFJg6N30bpIFA/qE+fWX7/ul\n+Ma/jNq5faN/y71HOlua6jZvXDNt6iRrtc0b115z5QW6hb89N72ttRHLo11t\nC96dG6je2HWGH8iff2YaPn4/MX2KmVEF3y5f+rtfH58q1ynaAt0zf6R3p+fD\n99+WXDbUG9u3lBCieunI4XBYmKxei+rKvY8/OgVr3jt5Qk3VPizBI57LJTON\nCcoJ8cTbP126KHDvYqwXnXf6xRf+KY13D+giyk6xWWw8w7fgmB9+4E7s6KnH\nH5Dj37r5hxHnnIKbDRJtrnlw/9abboh/RzH3ledlyZ5d68eMPh9LIO/mue/e\nuX7sFRdg+f1TbpVWMi9lsXl3mjEOeUK+QzvtD7/64fsvdCGeYwluub27Nxby\n9EP/G04IIYQUGHo3vZtkwYA+Yc584dHMvVupq6t46on7B+nd2HWGBwk3gazh\nY7llAXBqiMlfrhnlNxdRP4gS3FyW0LszAe1z9pknf/rxwrqaA9JiZsMu//oj\nXIhrr7r04IFt5rt+WPXlH/7nLy+79Oz9ezfjx7L9W26ZcO1VYy6ycrtQ9Ucf\nuTvVVRBBBt+vWJbqxAd6EdV2X/n7s9aXNmmQZL2ZxZYGDxzO8MZrM81rIffq\nVWNH+nP68jWRNWKiOL278Eiff9w2FUY74HbCTTX4X6WBEvrfcEIIIaTA0Lvp\n3SQLBvQJ867b/5LeuyHOjfXVDfVVjQ013dF2Wdh7pGvlis8n3/XXwXg3dp3h\nQUouDM5iVnmS/ufQtC8/fx8uM+KcU8yyWlAbLDRVXS0GRontwNkBDCuwC+ue\nXetfm/OCdDl+f8lb6gKaB1z64Xx4JTY466UZVg2uQO+urtyLFaTCWPpaZJns\nQr0bLom9vDzzqTTb1POVWlXbt65JY6B4VTfi9+5UkijSdNaZJ23csDL9pZQc\nut8lRZAlK53mC4cBqaimre+6/cbMxwjr3k1Vly8c0nj3o4/cLSvLET54/+3+\n+2rv7o2XjhwuN4aUUwO4uFgfFxqXW5ZojbUB3bHmL4tUGsTx4FGu+4J35xw8\nkFTlDzckTgrgCTa4ft23snepB+ivDaib1YPBLYcleLusAEeWUnup7jG9V6XQ\nnGxKX928cdVfrr70kYfuqqrYowu3bFyNX3DrV7sAhP43nBBCCCkw9G56N8mC\nAX3CHPPnc9J7tynU99z118MH98hyrPDo1EmD8W7sOsOD1Ppp2mm8wcuxQpEg\n4NKrecniefrqp0sXQZRM/RGLef3VF6XElgKZMnuxYn2sY9UNgyst/+pDU8rS\n1ODyezes4aqxI/31uPxj0jPchfjv9EfulZHL+uqoS87euP47c2sH9m3RMmUC\n1n/pxScyGTDr925sHK339rxZZk/pBq/2nea7U7Fr5/orLjvPGgkupyzjqV98\nfjrsLBPv3rLphxeemw5dvf66P0P0/PvVYd2nn3LitKmTsRpWxlu2benH4OC/\neNeY0efv2bXePHIoc5p+5osWzDWPULvcm5jeLVcwEG3wDO9YC9kyBBZX2bw3\n9B4WJJUMsPCKy883V8Ph+e9h3ewzMx42N3vd1Zfu3rle+iqkuccqy3c/MX2K\nVZXuoQfuSPN9CN6C3WG1KfdMVLsvDKH/DSeEEEIKDL2b3k2yYECfMAOLqmXi\n3du2/jT1oTsH492Zl1YTG7I6+s5++WlNfcK4zSQjnAsf8i0TF4sZPWrEJRcN\nX/Duq58ve2/unOelnLUO4wUQK+jV2Wee/P6St2A3O7auhfXAF6TXMWQK1okl\n2D6W4L0QRi3GJc4r60DxpHA3frx/yq1Yc+qDd2Fr8J2NG1bed88t0hvZL1CZ\n7EIk6MLzTht5wRk4C5wLzgjPLU3WhC80EDvFrr9dvhRubg3QToXfuwPBXqS1\npz08ydJ5zepqbTHseu4rz5urqSBrVrpf78aJW1+MnDrsPz/64F3zjH5cuzyw\nVjneiN2lmp2qbP8WiCQOZsmiN8zl2DLM+qTf/jywrpqZT5d+5vBrf9l2s5+5\nfIOhBdxwodGGskS/1sjwjrWQewMNcvopJ77w7KO4abFfKZRn9pwX7z7tD79C\nY+K8xv91rOxd7ttU3o3NYv13334FB4NHqXt2683Xjb3iAuxCUvYznngQrWSO\n4kfrvfL3Z09wiuz98P0X2DU2i+cn+EbBKziGm8dffUJQJboCEPrfcEIIIaTA\n0Lvp3SQLBvQJ84xTf5FhP3MQaWuShb1HOpd/tfSu2/4SuBpoaarr643G0no3\ndp35cUq/ca0vDc2ZcNOV6gXSH1VHzkoXdKt7qljMxRf+SabzFsSydU34DmwC\n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\nQ0WK7q6srBTdjT/R3fhTOrSpqSks6e0wUdH/qLtJDHgdkWprqyG3a2tr0EnS\nvyn84x//cvwv+XkRIYQQEg+YnTY2XsB8Faqlrrbaa/g78Zl5PkLdTd1NsuJp\nIMLYVVZWCsWNrpS1Txq2ntJnPSRg/pGmd/Pnvqa+07tM3Ow6dunbEpfpY+4D\nOdXHXM4iWtxFAL2mN0S7POXsNb0nS6KzPOr0obeRSu8pgubbHk85s8/482H+\ntlFAn0fdRjnVBxjvThzMV1vVd101pXekUHdTdxNn3I8/Fxpq0f7oBeg5Lnsv\n//jXvv6Snz8QQgghxCsQPZjBVlVWYDZL6R0R1N3U3cQBD0u562sqKsrRJSz7\nnr711Mktj406vcMhidgTaXqHxHGm99of/HomCzFEf1xm7j69OY7jI70bS3yn\nd1lTr+n9edJNm7rMPOY2DbGNcs2emPuMV89EUdO86zPt4LyOM/8QLSEx09h4\nASKmvq6G0jsKqLupu4kdHkR3XTVEN/qIy07LP/7Z/CX/m0sIIYSQguXixab0\nPeeU3uFD3U3dTexwu6A7LbqlD0tP0/ubH+nlMWZqd6yPsqJOn/WQgOmjtj/r\nr5UhxuEpvRuYPqz0vlvKpTG+42LRWe4jfbJt5Du9pyBadPlH12e8pmefcePD\ncNs0YHw80jbKtfQkB4EAqqwsd7/cO/EZe75A3U3dTSzxdHs5uo3L7sq/iP+S\n/7UihBBCCMlroHs83XCe+Lw9L6Dupu4mZlwOMhcaasvLy9AfsvY9u62/Pm+X\nj/ujPBVqPsqXbbaY4wIuV4cFSe9wSCL2MH3w9C6DVgHTOyc25OzV8qRqmvvn\niMua+k4fkT2h97HgZ0dYfSz3+0y+jBtRjwPqqMTHJa99hiQO5A4EjfvHrCU+\ne899qLupu4kZlyNMdXXlhQsXXHbUnPxLflQnhBBCCCE5CCROZWUFdXdYUHdT\ndxMDbu8wr0NbVza7iGUHGfEM14db3EVbnHPwcZS/Et1fh/dkYY6ndx8H8Zc+\n3+3PtfpGl95r/48uvcvE7iN0wdN78nnUfSbX7PGU3g2x9UlPOedUnymcNvXR\nUlHbQ3Kc6upKLvQOC+puH6IbdZTKXrhwQelueEN0N/wDL5WWloruhvdEd8Of\nuu6Gt+Hz9evXU3fnGm4GlqbGurKyUvSFxMdD96ipTjzkpoXtwMl5bU/UJuV1\n++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\n6Cnn15/p0V7lVWedYr4BWz9Wjz67aWU9rq2HDg262yCuzSXK+7uzVtPcf1zq\nbjGgz4vPQV2iBYGh/1g+pkxKUTFxh7cVi3BGLdQD33Q7DWAk7te32zXpVc9Q\nta3PUhtojJK71N0t6fXsEm6WlQUy27c8UOIs6jVnej6fTP4A55re1VsyFxNk\nubpKj58LeRKg4cl1cOOsL6a+0PXJJx697+3xb+DHpKamWs6g1ArZq+eIUavq\ncdXWuJVmg11/tuq3Fr3IoFKbdYln8me2eHebQ+zqYtDdet+zHLv0pzc0a7NH\nO5nWJt6diQk6624JNeqra93obknvKd7dkom8i+6WZKtW/mBZ8eqqSmWSG93t\nEO++er7bpDffh2yWS5ZrqGWxsLqhV9Sfii+nX353j53uNsRDM2PdPeVtdWVW\ne8yR7tb2tY93m5s11QoY9zTKy0qwra6skCdj+4l3O+puQ7xbuUiSzZzxmcEe\nobKizPKh4nbxbku9WXz+bP++3dX9OfhB//qrmQ3peqmbK8wOEWrS3dLa4Q31\nsngHGWKeIPJZXVcxY6eFLbtri3Z2yyFthj5TSkMm1N0K37qb0lug7qbuLkzy\nTnebVxO7OdYhfKx/JZ9bl+95Md59vFvepQLpMX7saHmKkQp06gGprAbrCyGz\nBmr1FY5yT6N6uhpkuDn4aJmJIX83utuuRRzihkHi3ZKtZfM5lOhcTeevLHW3\nvnjfPVnj3SKcMZ02v87bDlmaIdeUFi6Ye9P/+7+vDh+kntYuyHOD1eOFVyz/\n3iHDqysrMz6xDGrbPW5dHiKtnqVgcK/5jYGix6+R24ntrWqzCPHqORJrvFu+\n0h/L5kl3Gw/RJ9U2DzIyqNo2fc/L7DGr7jYLz8Tj3Yav5LO6FdaBgPHurEJG\nT+8pvtzUeGHI4H7XZJ6uBhmefvp9ke4cZ92trEoq3u2yFWKLd0sy85pll5XN\nGu8WoIXPnDk1berk+/5+u6jvlwf2lhXl7rulnpu8F6zb80/BAAmgW9bXjW2u\numt5qRvdrZqeultB3R0Q6m7q7sIkiO7W1wkGx/JJuToSX7N8t5F73a0HuST6\nc+7cGSg1kQ/VVZX4gDn8po3rDOY5CxyX67txen0y+YP0RfjP5UHKzTaLf7Pe\nZw47YW2L4+rjlsx95suWLVZ71FO5oLhR5eeeeWzN6pUtWlzPXGtL1Sk3dauH\n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\nl2kb/FafyR9+uKJFYK+kLoBYh+lFUJv3G+oOuQ3RDadBiWMs0cu9ElKcN4o8\nDQS0zUdWYdUuSA4R+SSIHzwZEMWxifg8ohLDtTNAW2TB6xphw1Ge1vx6je3G\nsyLb31H+bIuzrHjaiJDQoe4OCHU3dXcBkiO6u8FGdy9btsgsKoWi40fu/OvN\nt3X4vflW8/PnzkCP46j6TIRazQntPldXVS5cMOfJx+836O4r2nPVkJuknzFt\nihKnDnkaYr4CKqLfUa/2i+7GIZZzV5yIB/fveXP0iD/ceK0b3f3rqaKOd7cu\nvrbE8rHkDaZ4t6pLfdt4t9oPR8nT2Az7dd2dHlcufTJ5ohT9xGP3oVmrq6vC\n6jyGiX3Wtnb/OddsC9GM0H3FzxG1ne9yfRfnr46+56661HL5Oc6y+Lk5mLD1\nWpbvIhL3Dz8X2mfq7oBQd1N3FyBhre+2xP1kz053ixq11N12kVYgK6MtjzJw\n6VITDu/Vvcsfb/oPSEUp7qU+3errr66VNgtbEZV6udrk8+rWcn23XeDY7j1i\npSXnPpsy6bYOv3/y8fuXLF4g66b1B8pZ6u6jhw/AAy/2fPbcmV/x0wBfqa2A\nc9d9Kzh8ZWgFc91VSgwV06ZOlusG4PrrfjPytSFyr4JLIaBP9YMoC7s8g+dj\n2IaVW5w52PkneF3itKEdHOvPVy4PtOn/bjWOYetJH3kScYayPBXn1cIEy/Lh\nPX9l+WspfxZG4YcgbURI6HB9d0Cou6m7C5Cw4t36fM/HZ0OkVe1Xuru+7UPD\nmjOKD+oSKtuQp3oiWa22/tpc7p7d2x/udA8yWfnj0vq0aDVr2Cva+m5lg4hK\ntcjabq5reZ+58xUGXXc3pF8TduMN/z5+7Gh535blsZa6W3kA56L7tmiwWmUv\n1JvWdwv295mPMtcdVFdXrVj+fbeuT8nrzxyejGcnFvjZzeewyAV7WK67z6l5\noK5EcvmzV1gWP4flc0LCgro7INTd1N0FSPB4dyjTVLOsk+1Pq5Zj56MP/d2w\nUhtbkZaPPXxvWdvHu4FTJ493vLsDvj16+IAhpqM4WXTs3o63Pnj/nWdPn1I7\nLTWseefkj97DnncmvOE8086qu/Uayfu7x48dpayd/PH72DNj+qdqfbdlrNzh\nPnP9ooTd9F7fGtZ3636rzzxw3vX67ja6++LFxrq6Gr2somNHnnj0PqT5+MN3\nrwSOYlvG7wJm65xn/LbFk4+PHAz5JGJDWH6I9FgHv2Wd4Bnijy4Dkeb4oPsI\npt2xbqajXo8K3c72VFZAH8bZXl5LicIPhMQGdXdAqLupuwuQHF/fferE8bvv\nvOXGG/59+/bNhkN+/mmFep65XW6fTJ5ong8fOXSgsrJ8w/o1biS25U55rhpk\nO8wzZA51uT/96PXmjPaESHdT00y8e5T8W19f+1KfboZk7uPdKuXE98aZ/XPi\n+NGTRcfct4LDV+XudDfk/5DB/eAcPY00gaoyBhu0S9alAYREQPJTOEIIIXkE\n13cHhLqbursAyTXdra9cbk6vv570wQTs79e3u67a8Bl77r7zz8eOHrLMEKoc\n0vgPN1676Lv56MWyEx181cofRr0+FN1WRN+D99957syv8i2SfbtwLnb2yNyg\nLujCVlR8dXVVz+5dJOX5c2eaM9EriNChr/TbtnWj7Jnz9RfpNJ2r0g9jF3Zs\n2wyzDe8Ca7bX3TNnfKYuHRSfP/tcl8cs3yNmWJOOQ8QDYO6cLyRiLvsPH9yP\nxMjKfSvoX21u+4J1VFmeq7Zpwy/NWhRPdPe8ubNkD3R3x7v+x5Dtrh1bb7zh\n3+W6BBp64nvj0neeG9vUMkrYnIkV+utvznmGEh+PIrdE8omoRkHuGdBycIs5\nQuf7WLX1kUOQcr3GLpvdxWSj85JXz8Rsp29/5lpZcR4VSr0itY2Q2KDuDgh1\nt1l3ZxXdorulykp3wxuiu+EfpbvPnj0L3X3ixAl4Ev4U3b1r1y74Gd6Gz9eu\nXQv/T5s2LfGeUFDkiO6G7Brz5muQXd26PrV926azp099v2Th8h+W4KuqygpR\nfC8P7A2NjE6KnjV2zEhoarM81DMUHQc6PXAXZOC777z15OP3Q9bJguJTJ47f\n2/FWfAslu2L593PnzMKH2bOmdry7A3L++quZmzatq6mpwkkwfdonotBP/3pC\n5Y9MRD4j8cD+vVDWq8Nfxmc9vrxn93Z5jBhyxn7Y8NjD937+2Ucv9nxWnpo+\nY9oU8SFOo1Ejh4qQR31FVsgDwJEDlClE9JujRwwb0n/c2JHY2efF59euXXX4\n0H6kPHhgb4c//xeSQaHDbxCz06ZOLi05r3vgvr/fLh7o/GSnP/3xP+385tAK\nqDs8gK/gDXUdAxzYt/svt/4B+7/+cobajyr0SD//7e3xo1G15sx973D4zu1b\n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\n9urG/6G0o+9jjxzej5N65YolKhM3utuhL3m1QcW7y1O3YLUevujbOf36Pv/r\nqSKX+ZScPzt4UK/PP50U8Fzw2haEkDyF95kHhLqbursACRzvDufK4aWLTRPf\nH4tJLOSM4VvskViVcw6XL12sqChtSi/hDMsqN9uLTY0oV8KUZlqvEpieNZSV\n4LobiXGI13LhQFgbupeQ6QcTxykN1VBf15yZrELkoqbpSOKTa1evqK6uOHhw\n74H9u48fPwxjIEuLio7s37fr1MljMAxu2Z9eQltbU3XpYuPJE0cPpBbV7ikp\nOYvPq39evmHdz/gscbfqqopNm375Yem327dvkrCjbhUOh1heu/pHHILxSRdH\nKt7dt89zB9renKyD/KG/YEBR2lR4TpmHRj965MDKFd8j/7NnTxlm4zDv9OkT\nqCwMKy4+q99nLvcwizFox82b1v28ahmUGnSi2g9rYZWsekaDwYzDh/Zhz/nz\npw0ST7bffTsHmW/ZvN5rq11JhTIrVYw4xC1097AhfXXZO3RIH/hE/LN3784+\nLz5r0N2obHox9S44Vl1QQlalJecOHEAf2AWFdVlbf23W3WhTOFz6BnwIpWzW\n3cgQbfpSn66yEzparqg0NtRtWL9a3Rk+5+sZF+prlO4e+eogOVZMOnfu1xHD\nW2/s/2Lmp40NdaruKH3jhjU9uj0l9mzbulHtR1v3efHqiaD6DJr+6NED6AYw\nHm2tKpjp/7vglvKyEvSEkuKzBw/s3r9v5949O7AfvoIlKgYNcQrXYScqWFNd\nJe0LoWruY9hWVZYjGbLC2Qf7cezx1Hr8XShRVuLrrbl2zcoe3Z/Gt2qPGr7M\nrY/c6mqrzPu1hqtBAsszLt0hyxtMlxP1+8xVnrt3be32/BNygc5lzxTpbY56\nZz9TsCWEFBjU3QGh7qbuLkACr+8ObSq+/pefMImF+tZvtYWWmTBuJOTPyZPH\nZI96Yo9Kg0k4/pWAFHLAVPn0r0Xy7U8rlw0a2AOzSqVHZC35oAHdIVLUtA0J\nBg/qmV4y3GY6h7koypr1xafHjx96c/RQKUIpX8jtSRPHv9D1cQmK4TP2qGNL\nS8+rb7umlzCv+vF7mQMD5Imckb+5rGaT7t69a1vqWVgDusMAZDiwf3d5NFb6\nqWttfPjj8sXYjwRIhsQ4RD1EC578cNKEN0cPw1k49fMPZYbfNbPOF+zbu1NJ\n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\n/U49JsIHbLc/MDc3+w+/t7717E+HwP/84duVlcZHlBIT/HrAmt9+47cSWtik\n4ddPHlIZgNKad4bX9+/7zS9+/vdY38u6Db3Vv8WP2xefvY+z30i/3NrSBE4e\nP4wriy2w+4iyNFQaBRj0rp2b5fd86+a1tbVVhsuKXxVE8p23X8Op1UMAbGSv\nBkJIMkPvdgm9m96dgiRDezfqrqhMnj55VG1BrR41QL16D+/Yvm29auCGoEHT\nlHerA9tDt6M5X0NvJ4wboSrD+lmUF0MtYd8iRL7yEjHNX/7iH9KvX1KitGzp\ngskTRqlmIHjr4IE9sRucvbam0jIrcNT6dStDVekzbl779utPkFFQXR3cWIY9\nr1+9gNxDJfb4sQOG+jZqs5MnjkI9ed/enSqEC+dOYQ3/7dXjy7Onj2M33LIf\nvv8mRADxV2nHsXNnTcHFkn2wBR79v17/j2++/gSpU3rY0FAjjw6QA+rq4MOu\nHZuGDu5t7kwOaxDvjkk/c4dX2aC0SNr9+3cNUhATnMcnHucNG4eIzgu3Qsmx\n9+74pdHlNcp+kPXeO6/v2L6hqbFe4nM7Ix2uJ8Jr31yr3XqndMy3nqK4KP/9\nd/+AwM1Omvfk0eefvn/54hm5NxGTE8cOynMAQ1uwAXyL3xBDHEBFRanhEhzY\nvwsB/vGt3926cdWc7fIQA79XkG59+7mzJ7ARXzl0Xps0Cj5fSe+eX+EXY/bM\nSfJUzZiiQ2l9en2FcORPXJofZkxEgG+/+apN3hJCiOfQu11C76Z3pyAu27tj\n8tsFwezX56+QNbXF7N0dga6eqB5LvRSCFvRui4Yel7S2NKEOCXJzs6X3o36W\nUyeOrFr5o6FeCgeHpWLP+XOmy5byQB9OPVEd/rahM/YdZbHD66/92+9+898t\nvRtphzKHrRIjEFS5ocP3792x+k9ROmrEAMserZl3bqIOLAIiLWuoLevqpJKA\nZIpGLVk8F3+uW7O8o7NkpV+/hAo84gDFkD3379uJWA0Z1FPJtdrf4N1mZTPs\nz+1ebVferfczT8J4mrc/bW2aO3vq9asXDNvPnTmBcg7wlU04hw6lqVvPyXnr\n6/xP5yCPykn1b3fv2nLpwml9S0N9jfSiN9xxhvCX/jhv7epl9ultDzzgQoq+\n+Ox9+KxlOLjHP/34XURMF3Zshybjdwxf6T3SQ8VH0vhW4Pmk7t1qT2lSR0x2\n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\nV/rJR38Kdf+GQh+bL9n+itU70drVCxcChVZKpvlE4uOvWL3OLKI0SviWjdry\nem6b3/aO4AQI8gwn6gtECCFxhe3dLqF307tTky7l3RXW/czt3S0U5tB0crKz\n3nn7NRiregkaKC7Ol8nP96Zt//brTx7n5nR0bofFt+LdDx7cXbtmKWqq8+fO\n0NdzOns3tsC7UcmH5Q3s/111lU9vbW971irVaQSLzzgWnydNGGl+DiA14bGj\nB+s1//Lyos8/fc88mbONXqne7DaiJG4eaDV7ZDk2uaNzvwLJkyGDehrGd0uc\nZXuoc9n1Mx89WK+6O/duQ78L//huX6lqklYDz2fNmKi3m4fqZx5F2XsZvVsE\nUFRL+plDncLatBvvRoHHfaH3E/CVFUs3ZkM518H+e3ZvReE0OF36tYsFBRZD\nmxvqa5BpKPOGOcyVySJWONZgozZOCrdFaCuWLwyVFZbe7SsvGTm8//QpYw39\nVeR+lCuiQrB81COXXgK3LAaCPKCb1fmZkuSP8zSKOFs+eJF7KjD2/9HlS2c/\n/fhds1zLPvRuQkgy48a7Pa/5JwP0bnp3atK1vVuCsmwCQ80ZlUlU3UNFw8a7\nUWn87C/vinSrjfgM8z198ii+RcVS+qAaDkQ0QrUEGZKm14oRT8t6rNilyqhz\nZ45jN3P/TOUIhnZtEVu9VVqQLuv/+eovzUNfJXqWXwn37t2ByJszPE7t3WIQ\nkAXDdplXTb2yyqbM2MTBvr17Vrj27qjLXhTebWjijKt3WxZsUS01MEEeARnG\nAgtQyDt3bji5KPbZgsjAsg1FXZpTQ5UZROzEsYO4jwxCh0AQlGXrvMNbzybC\nhvID88XGyRNHGW469UTL3FrdEZyprHfPrwxlRh5xfPLRnyp8pR3B6dnNcyRK\n4KoTu/QDN981qmxbfuU8jXL3WfaZlx9AxLCkuEAmATh98ohhH7mI4uYdgQcs\nuIujeHBKCCHxg97tEno3vTs1ceHdpZYjo92vZXRwFOO7Ufk0jMh+2tokfZ4h\ng1BCtWdgLt8ds3+YjB0MY7fVZz00/cdWxmXv2L5BvfYIH4qL8xfMm4mz5OZm\nqxcPHdjXabIyeeNwqJYmwdK7oQm//MU/AMOrvoqL8t5/9w/jxgyV+Zxra6r6\n9PL3fV2/boXeDii7GYZtSt1YwjTkMOIpNXMJR/9WXBLVZmlq1AcmIxOOHz3w\n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\nW1fvsN5tr970buIt0gANZB5y/An5BfU5twTzyOuoG75D9UJHaDgvJ14jhBBC\nCCHEc+jd9G4Sc+znQzMLstJzN6ItQ7k5mpsQQgghhJBkg95N7yYxR713O65A\ntMXW2ahNCCGEEEJIMkPvpneTeNDiK5Au5dLDXKYZB9K0DaQjukIarJ03kfMd\nYYQQQgghhLws0Lvp3SRJgEpH171cxzCo3PNEEUIIIYQQQujd9G7iOfI6MOeu\nHZGYs2WcEEIIIYQQb6F307uJt0Q6nRpUWvVgdzIFOvbxPI2EEBJvnj1tqq4q\nB/gQ25CbG2srfcVYe57GONFQhzpM6dPWxoSdMX5Zmvi02IBoIDJ1tZWexyRO\n+S+53dJcH8W3yRB/88VCnD2/OqQLQ++mdxOvMBu3zEkeUSs2PgA4eMm2hfRu\nQkgXBkKdeffG1Cmje/X4ovs3nwwZ1GPLptX1dVXyLSrMM6aNBTGvOV+/eh6n\nw9rzHIgTe9O2Dh/aByKTsDM6z9KMW1eHDe2NdRKmZeOG5Yibzsjh/ZYtnffg\n/m15+INoIDJLl8xNWMbGPP/D5nb/vl8/zM6M4ttkiL+OXCzE2fOrQ7ow9G56\nN0k8lm/rhnHrQ7zt+5OH6kCuHFzmauNrxQghXQOIzP59O3p0/xTSPXP6uEUL\nZw4c8A3q3qNHDigtyW+jd7sgmb070sxPZFog1CiQQwf3VN49ZOB33337F7A3\nbRtKLL2b3k2IDr2b3k0SCbzY3DCtJFrJOD6EfRkZx24TQlKHW7euwrgnTRhe\nWpInW562Nh46uBsb582e3NRYQ++OmsR7t6+86PLF01jHPPMT7N3mcxUVPh49\ncsDQQT1Kip7Qu+ndhOjQu+ndJGFY9iFXTdJ6C3h9zi2l5wYB13eTsd6ep4sQ\nQuIKtHr2zAmowz+4f1vf/uxp09o1P/bu9WVW5k1L75ZB39GNA0U4cqBlJR9f\nORm3+7S1ERGwHG6MwxM/mBTRNg+Bd+KqiGpcYyuja81XysawWprrq6uNeesy\nLbgozodjW3o32LNrc8/vPsu4ddXSu5H5NdUVlqOebYprqPxRl9VJtO2LNKiv\nq4poaLxu1ipwy28jjaoh7YabyKF329x95qsQK++2SaB96cKBoYolkqAG1EQE\nEhhqiL1NObQ5irgkFbzbEJpL724MLAbvrqqqQm74fD7xbuSSePeTJ0/Eu5GT\n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\nxPNp3cnIBjhsdoPe3bzq3SbeHX3C/N6tm23x7lu3bql3DwwMRL370qVLUe/u\n7u4+evTo4cOHk969du3aRrx79vu7/Ui3Rl4u+BGbmprS/d23Xxfu3SKPw/78\nu9SMGPbYWxNG7ftypxxdxb5ojE0bV8vLTZ3yphy2jT/bwgUz5dnkORt/qiSy\nhcuWLhg54onojnrjtRcOHvxSPqrRe+qOHT9uhHzOytgSO/rqRe1SAAAAgDK4\nf+lsWOnWyGbUu+VSk0tl3p7eLd6X6t3iiWKL4oxR7xajjHq3+CbeHcq7r/Xf\n8CndGnnR4Adt9b3bZOb0d0sdtG0W7+7ruzh+7AjzpcTYV4a9MPJJ/e/w537/\n2eL58hk1d8a7AQAAAOwEWU4tGYcF1pLe3SZTzfHu5vXuRXO7/Hu3vGjwg7ZS\n3j3u1WHyB5cjIpqBgWuLF80To5Q77Ni+sdjXjdIU3n33zu0Jb7wkzzz65T91\n7etUxZbP7LWr/bNmTFT13rK5w9wf7wYAAACw8MP9u8GN20Q2pq6Nx7vx7qbz\n7j/8Zrl/75YXDX7Q1uvd8tEuz7uz9FAOuvnzpsodpk19S46uYl/aUH3vls/m\n8mULH0j3qGcuXjwX+63spcWL5j34+mLs8Js3v9Ib8W4AAAAAC/fOdwfXbRPZ\nmLo2vnHvblL1xrub1LtPn7iS6sXLPj761+//M3mE/+2vPw5cu79x9emn/+3z\nB3dbeEzv9t23P3wy56B5uPz2xJHrP30oeu+MfnZ98iXkpYMft3bvTg52+/fu\nQasUyxErx5QcTdH51VnIw+UlUpf5CuLd8lo5t1wQmxanlqdds3pp6vXTb9++\n+cZrL8gduvZ16i32HSuvXqwRS0Nx//49+XPo5lm8u66/GgAAALQn169dWdex\n8vChrvJeYqBrW+O+fHn9Z1d3djT+PLIxdW28encbnuKNdzepd6/87Ghd3q38\n+OPfuzovi1zn8u4L6d4tLx38uK2+d8sxuXTJR0mDk4Nxy+aOl1/8oznZef68\nqXfu3Io+dtfOzePHjlix/JO7d25PmfyGzlfXe3799c9m8kS9W47tRZ/MkQeu\nXrUkZrjyX7lRfrVu7eex7ZQj/8P50+RXEj3netRLT+t/JfIrM1gvH6j9+3eP\ne3WY2XLZtmtX++17SWxaB7uvXumrtUd/InXH6qu/OubPZkG2s2dOmh1l7tZz\n6nhss2O7NHqjfPY3b1pj/hby5N0njqR6d56/GgAAALQ5Yty/+of/8X/87/+b\nRn6WW8p4ocZXMhfjluf54Zv7t08davCp6l3VPNW72+Eq3nh3k3r3pPHb7N4t\n4vWX+3+9e/s7yTd/+ZvxsHt3vp/+zu5GvFteOvhxW3HvlgPy5MmjIptyh2VL\nF5jbzbRqXVvMqO6br79469YNcze16Snvv66nRY8Z9cyYoafKuqeRxAP794ik\nR+dsKzro/OLIp3p742tOygPl4Vnrwplnlg/R+rWf6zcAI0c88croZ/VnUdHj\nxw9Z9pK8fX0v+QepkztW9qe8U31F+Vf9V3bv3DmT5YeFC2bGHpscrdYdFb2n\n+VtI5K8gfw75o8hb++zT+bFnyPlXAwAAgHbm8KEu1e35c6fJz/Jveep9YfWC\nxqVbaVy9ZWPq2ni8G+9uLu8e/viqdO9OE+pHf/nppjVn/vM/H1ytSX4rbt6I\nd8tLBz9uq+PdxsWiMYt1y883bwyYh3Tt2yXaKL5246ufdrIcdx9/NEPuOX/e\nVDN7WSVR8vr4kVf6Lw0OieeFC2d1SfCPPpwmh3T0nkYS5fBUVY8t5ib/lRtn\nTH8neV0znTuty8HNnztVJ4SbBeL+e/b10YPipJKtW9bpdt6/f2/ekPbKK969\nczt1F8ljF3w0Xe4j/6ZOMrfs2Kh3nzvb8+LIp2TXLV+2UPZY9NWdvVv/FtF3\nJA/RrY09Q86/GgAAALQtRrqj08v1RhHwwl+ud8XcQqRbaVC9ZWPq2vic3t16\nS6vh3U3q3b/7x8Vu3v39d//52YdHGvFueengx21+79bPtf/riImPz545KToe\nqiPLYnAH9u+JPs/VK32jRz3z8ot/vHypV29RSRTTFN+M3vPI4a7nhz/+yuhn\nr13rj94zKokda5bHbpEjXIw7+bpJss7v1meQXy1d8lFUn7M0P/aWY8Jbk5h3\nyyt+snBW0qZl374+fqSbd5t3tOiTOeZLDEE+7pMmjos+Q/6/GgAAALQn169d\nSUq3Ijc+/YdHC3/FxqX7uxvX9AeR7sGG1buujce78e7m8u5H/q+F+eeZ37v7\n/Y8//qRLt29+O+XNXal3e3DPO9//7a8/aUjWumry0sGPW4t3pw52l+fdIl+7\nO7cePrRPs33bBp0FnVRRkWVRZvnttq3rzf0lXft2vTlkr527tug9s1ZLk8Pw\nrTdfll+JgGfdU30wOqVcfpD/iiDLwWt/R1neffPGwNhXnnvh+SfPneuJ/Wr1\nqiXykFkzJqYu+1bIeLd8ECe9Oza6fww6id3Bu/UdPT/88Z5Tx2PPGdul+f9q\nAAAA0IbEpFv+G51YLre/8dpLhb9o49J9ef1n+rPcqA7eiHrXtfHGuxtZWi24\nfeDd7ePdWdf5qrmu2r5dl558ZJkZ77Z9KDLGuyXBj9vqeHfs/G5z2aw3Xnvh\n9u2bP9ufl3rNwlypMcKbnBStyDGrF7yO3fPnJyP/+NGH08zYtFneLTZUnUqW\nd+uWjxs7PDmf/MjhrqzVv5XGz++Wf+VnuUVuj90zuaNyere+o9TR6tgz5P+r\nAQAAQLsRk26dWG5E++k/PJo6CN44DUr3+aHFzPW/8oOkQfWua+Px7rb1brMN\nMelOevfXQ8i7u3v3btK7rw1hvPvChQvnzp07e/asevexY8dkf+7fv1/2bWdn\np3r3hg0bnL37N79YVK93f/ftD8nriNk+FBnj3fLSwY/bynr3YOTCWLErZ6nB\nxcbHo4nNHk96txzJ8+ZOsXu3cLL76PPDH9fV1SwrqiVx8O6aV7tufD3zKnh3\nnr8aAAAAtBWp0v2rf/gf+l+x75ImmQ/W790x6Y55t/7XqPdXB3fi3eV5t9if\n8W6xQnFDMUTxRLFF491ikeKSUe8WjHeLgap3i5Oqd6t61+XdRr3x7pp58p+X\n5Ty/e+Xi43rLjz/+feem84/9akne63dnjHfLSwc/bqvs3YNDV60a/tzvRdb6\nIi9qZizXPCM4a565mXFtLnWdek85ft+fNF6nQEuyVlRLkuXdZssvXTwf+9WG\n9SvlIdOmvhW7bpeh8et3m9n15g4GneXuPM88dea87rHkPHPO4wYAAABDQOke\nrN+71amNdCe9O6beQby7riXNg9sH3t0+3v3qc+tyevfIJ9f0nPjpqlJ3bn83\n4909DXq3vHTw47bi3m3WE4uud21uTIqtHHHyJEYVs9ZVO3Xq+MgRTyRXYEtq\npi5gPvn91yV5VlRT1LujFz4zm6ciH3NnswpZx5rlWc8p95dHDRu64tjFC+di\nvzWX6IpOy4/tWDNzPrZ4uHn1qHf3nDpuxvqj26CT7c1bM3+L2PR7c3tsXbU8\nfzUx9MOH9h09euDbb/6it0jz0n3iiNxo3ri8lzNnTsot8m90PTcAAABoIsJK\n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\nIo5sUr2DxRV8Iw7vwoB3490x79YNNt799RBR7741hHr39SGi3t3b23v+/Hn1\n7u7u7lTvln3e0dFRqnd3dx+uKwPXLgc/Jh1SBe+Wo0DS3X1ck3qHJZ99Mmb0\n86m/LWN75OU+mDrJz8tBQESr1bL1vzrMLcYdvY/8Vm7P+YTdJ46MfvlPkyaO\nO9l99N69O5Ijh7veeO0FedrPPp2v9+k9f+blF//YMsopbX/Xvk7pFup6VIvt\nBACAFqO/73Lv+bP57y9dZyxlbJVsUr1Lk9X1Rm7fvrlxwxfS6UvXL712dd6F\noc29W+wv6d3iiWKL4oxijuKPZ8+eFZe0eLeq990h6vVuo954d1FZ+fnix/7j\nfzlEHhj8sKw3Yb1bDfef/r//O5Ynn/j3bVs36X2id5D7l7QlBnFt83JmGxyQ\nT9apkyfeeH3MI7/+5e9/+8hnn34sR3/ybvLRmPjO6y88/0wy7018Uz5BsfsP\nDFz/cP6sp554VDbvmacfmzb1PXkVHUiF/OgotplJbhnOlm5X7iD3z/O0hw91\njRzxxOJF86ThjN4urd2br79oHPPypd6WUU45zjdtXP3BlAnSA9T1wFbaCQAA\nrceJ40elYM95Z9FV/eJa/tUfpJPNc4qW9B3Lly18e8LoK1dyeahskmxYzq1S\ncr4R8xZ0wpv0+/KvCnjNGkCcaPOmNXLPnlO5xmsc3oUB78a7W8y735nwysgR\nfzQD2fPmTBWnrjneLY+SBD8s601A7zZCLT/oyLIOfI8Z/by5PXZPD96tm9Gg\nd8vHatuWjf/+b/9zyvvvSB79za/k2caPfTnp0WfPnP7Xf/6H5DcPko8+nC2f\nxeidT/ecEuNetnTR3bt35KN2pf/yWxPGyj3nzZshn1DHd1syfxtavbNSmyd9\nq9YGOrHcDHYn76ZdsBmnrvm0b7z2giS10ti7d0eWd0szeerksatX+2K2rsiN\n8qujR/bLYZl6h8GhuuXMmZPyJPfv35NjL+u39+7dSX5FI/e/d/fOsWMHL148\nZx+z1u2Up5If9FVkezrWLB/+3O/fnzT+xlfX5fllA6QH0IF+jT6nvK78Sm+R\nH+S/Wd5t3u+NGwN8oQQAEIqufXvrWv1bv9DWn/O4qrTw0guPfvlP0s9KdyCd\nQp5XkU2SDcu/VYP53ogpDOQHHek2v9q44QvL6WbSG57u6dZZbRLpTPNsksO7\nMODdeHfreXfUoHX4u95HNUtCebeq9JNP/HtSpc0guPFuMwbdLN595nTPgo/m\nyKdB/3vr5o1RLw779a9+0XOqO3bPzZvWz5w++dq1K19HEK2ePeuD06dPRe8p\nn7B33h4viQ4sys9TJ787+b23/hb6Gh+p6PcPk997u1KbJ/2pqQ30DG79Wb/W\n1p/1pO/knHMLmzaulvuvXrUk9bfS4O3v+umpjHLKn3runMnirfpa700cJ1pq\nHiJ77+CBvaNHPfPqmD+PfWXYiGGPSX1y/NihqFlLA7xs6YIXRj45buzwMaOe\nkSeZ/N5r8lrmGXZs3yi/nTVz0pzZ78sP8gyitObhAwNXJ00c9+qY56ZOeXPU\nS0/LHfZ9uTNp7tIPfL5i0UsvPDV/7tQPpk4YOeKJ8eNGyLvQyQDRyO3btq7X\nE9vlfb35xktaSslnYf68qXq7bKH0D0nv1vf7yuhn35owauI7r8qdJ7zx0rVr\n/Tn3PwAAFEjnru113b8u7xaTkA5FugnpBD+YMiG/dztsWJ77S3dmXDup3vot\nfap6r1q5WN6F9KTSneX37pxblQrejXfj3clHNUuCeLfx6KwTqNV8m9e7+/ou\nyTEfveWTj+fJEx462BW9UT5rB/Z/Gbun0Nt77oMpE2MTd8XN//Dkb+V5kncW\nc4+JrXyIB65fO3HimCh/bNBcX1eeTb8W0HueOd0jn1m3uw3qmOm9eye7T/T3\nXTZD2/KQDevX/PpXv3jn7fGyGfI2pUGowghmcgjbDG2rZevy5joRPad3S0s4\nbepbOftcVc73J43/cP60rn27pC08d7bn3bfHyMM7d23R++j87Reef1JUVEX4\nxlfX33z9RbHRw4d+OorkTyMvKjfeGPpcqLfKHeQWVe8zZ07KM8hL6P11urs8\nrfmviK0UEvpHkSZ94cezXhz5lGxMbIP37N4mG2xuv3jx3OhRz+g71fci2h49\nXE92H31++ONT3n89dgxvWL9y7uz3ddQ+6d3yvsa+8lzv+TP6X/kYyp9Aihnp\nTGruUgAAKJZSvVt6h0WfzDnd0y09l3QEwb07Rn71Xr5sofxKulH97h3vLi94\nN95teVSzJIh360zyJ5/4d8t9xHmNlWd5t67GpvdM/koiv4rebm5M+n7sqbK8\nWx8ee9qayEdq7tzpT//hd6Kuee48f97M3Z07Yrerd781Yax8xKK3xyZyyyf6\nyJGD8lrPPfvk8GF/fOTXv/zjU/8hRqzuJh/QL75YIb998vFH+/suyT3lt/pm\nH/3Nr/bs3qlPkvNuyo0bA7JVw/781OT33nrqiUd//9tHDuz/Ul5uyWcLYzPn\nXxz5bPJLBs/oXLJo16m3xE7ilhuT97Rw796d8eNG5KwcVDmNgSrHjh4c/tzv\njYdevdr3yuhnP/pwmjTC5j5ivuLFIsvSoMp/d+3cPGLYYwf27zF3kN2+ZvVS\n2eylSz5Sc5cXunTxvLlD175O9W75rdwnZrXnzvWIp3+ycFZsyFu2atzY4Xfv\n3Da3rF61xOLdcvy8P2m8bGpv79nojZPfe81sbcy75R3J+5KNj760vIrsE9kz\nNXcpAAAUS71iqGaqP+eZZ26ooHcP/nxqnGIZ9R58OOcN7y4veDfebXlUsySI\nd6uFfTB1Us77p3q3PFzlXaI/mPFx/VXMnVNvHBxSafM9gDm13HI3s/Kbebma\nnDndM+y5Pxw7ejg5gzf1zqNfHp5cA0TnmctLz5o5NXWJtsGH87p/99tHxJT1\ntW7dvDFm1AiR5ePHjgwOjWlu2rjuicd+I/eZO2f65yuW9PddvnPn9sYNHXKf\nca++pMPZOe8myI2vjnlh65YNOmYqjcOihfMf/92/9Paek/9e6b8s5m6fBi+t\nwrKlC+Rfyx02bVhtuUO9REex9TvtZIVghrxzPue1a/2iyXV5d+zU5tiNHWuW\nywYcOfyzCRLyd5kx/R1R0e4TR9RtYzosXL3SN3rUM7Ll0uhu3bJWnmTRJ3Pk\ngfpbabxVkKUlfm3c87FZ8frtQUyiBXkGeVEzMj44dDTqidup3i3s2L7R6L/e\nIlI/8d1X9RuD5PsVuX4w1H7uZ0PtUsDIk5gB+iRfDx08X2cfG18/OHi+sNwB\nAABSqVcMp0972wwQR6dt16SC3q3SrYWBWbPFXAAlVb3x7rKDd+Pdlkc1S/x7\nt8hsbNm0miS9WyVazT26KLpZn83cYtw59cbBh18CmI2J+rW5m26AXshMh7zz\nvAX5cMnBvnTJJ4sXLZAPQp53Kh+uaVPfW7d2daqhn+45JRorr/vIr385/YP3\n5LMSm7Y9cP3as888EVuQTRRYRFjs2Kzq9snH80Soz53777FI+Ry/N/FNeXIx\nZXNjzbvJRq5Ytjg2BH/hwnl51KeffCi/zePdgmj1/LlTU81arVxieXi9REex\ndXq5kW7RbXPOcn7pFm7eGBj7ynOxweUsanq3NLzz5k5JfTYxZVVRfcXkXG5p\ngCe9O1ZrGB00l/u/OubPG9avii74pkPbsbOzzTna0dPMhVOnjuup2W+89kLn\nri3RIfIs79ZV5saNHX7z5leDD4fXO9Ysz9oJ+r5SY1/zXLR6/twpqWb9dQkH\nDwBAm1CXGKqTml5GJ4zlHPKumndrGaDfG+gbkZ/1Dcq/usxa8lF4d9nBu/Fu\ny6OaJU3t3VFZTupz8hTy5ATyqL8nX87cTU08eh8z2p61zfJREEU14+O//+0j\n8mzJU61jHD92ZNifn7JMR5eP0Px5M8W79WlHvzxcvNhI+ob1a+RGHdo2qMtH\nV3UToY4pduqNNe8mn+iXX3iuY82q6B3kw/7iyGfVtXN692CGepch3YMR79bF\n06QblY41ukSY9rB1Pae0cHo+eGyEOpWa3v1gubwpb6bWIdqzy79Zwht77MDA\n1ZnT3x0x7DFd6GzunMl37jyYSqFDyVu3rM35BmWHTJo4TpeAk2dbumSBvm7W\nZgw+HLLfsX3j4NDwujz86pW+rJ0gP4x66en+/ks5t+dn+yRNvZFuAIBGqEsM\np097OzYKHJ12bqdS3q0j3XoFMSPg2r9rtRAd1o+Cd5cdvBvvtjyqWeLfu82g\ns8hszockvVtPx45OO1c1Ns+Z07uzThuP3k1f3bi5jpvr/Hb5oeaJ3vIp2Lih\nQ7xbnmTpkk8s6q0zyZOXD0ty9+6dVSuXPfHYb+Q5Rai/WLVcHqJnkcuN/X3x\ni2CKGg+9nY3636K8W4e2Uy+Cpqdy5/fuwYR6lyTdg0PnnUmnaU7fNkuXO+i2\nQUeoYzOrY+zv2q3LndX0bl2lTeeTx55kw/qV8ipd+zpFUUVUdT559A5yFE15\n//Wxrzx388aAuVEa5r17d4wfN0Ie+/6k8fJfeWZ5/qzV17OQ15LSQi/7ouee\nW7xbZ7zrrw7s3zNzxkQz3T25ExZ9MueF55+MzTPPT0y9kW4AgAbJL4bajap6\nm25UFTXPGinV8e7o9HId4Daj3lo56NXJUx+Ld5cdvBvvtjyqWeLfu41E29dV\nS31I1kXHzMzwurzbjLwnnzN5N3lmc+0zc8Hx/Bw5cvBf//kfnvnT4xZPP3Sw\n69Hf/Cp2+TAL8kkUlZaHSM6dOyMfSDHcpCkPvYWNZXj3ye4T8rQ7d2zN2sK6\nvHswot7lSffg0NfymrFjntMvsfOfhmbhyOGu54c/PvaVYTfS/sTSa4tK67nY\nec7vlvcuGxadmD0YmX8ud5bG9a03X46tXTb4cMa72m7Xvl03fm7fUya/oQ/X\nE9JTVwuX1j761YG097s7t0bvJo237Dedjm7xbtlacXPZwjOnu2fPnBRd/y35\nfjt3bZH3G1tXbXBogvp/5rv4u1FvpBsAoHFyiqF+ib1//26JCrieAW2mZEdP\ncUqlIt4dO6c7VhvovDjL1wh4d9nBu/Fuy6OaJf6921htTe82y4anjndHB53l\nDg7j3ca77ePdZoA+z+j24JApyPEfM035fEx4c6w8ibhq6qPkg/PWhLGxy3NH\nkY9I8rEP1q9es1KdWj6YUye/m3WV8H+KXMWsKO+WF5KXi80zj1Kvdw8+VO9S\nvUm6TjFucxJ3bIw7WSHo1LKaTyuN5fx5U+U5Fy+aF12ofPDhMuOT3h0rreNg\nPu8Wm44uXa6I0YvXy6vo8+tE7tgIu7j2iGGP6bXD5Nlii5Kt7Viu07mlARcX\nTm6tvMTSJQuiA9NyQE6f9nZ0/rz0ER/On6ZD7RbvHnx4QbH3J40X34+Ny8fe\nr56KHr1K2uDDK6OJ9afu8CSq3kg3AEDj5BTD2Lxr6S51pRRdszR2Na5UquDd\ndunOA95ddtrWu//2kKh3f/eQQrz73LlzxruPHTsm+/PAgQNffvnl7t27ZT9v\n3bpV9vnatWtnz56NdzeYgNcR+yfrBbJVirO8W58hel62g3dnXUY89W4i+FlX\nH4vdKHb86G9+ZQaXFR2M/t1vH7lwIX3drb17donDJi8fFn3aVCvXQWd9uRXL\nFsvPG9avid5B559HDboo75a3/8yfHk9e2mxwSELzr6sWQ9Rbkv/+9aJrleuk\nuNivovPKorfkPEnt22/+MmPaO3oata4nNji0GJ3YrrjwtKlv/XVoP/x0eevJ\nb+i10RXxTXngjOnvqPPqVcDklnlzJn87NNYs/8rP5trcgw+v3y2uum3r+v8a\nWmHv0sXz48eOMCr9YE74qGd6Th03mzfl/ddFt/Ul9DLc8u7emjBq545NBw7s\nkQeOGztcbo+9LymKZA9cu9av/9Uray9ftlA2UofX5XlO93Tfu3dHjF5acfNA\nXXQ9OXCf3Anm/cqOmj93ate+zj27t30wZcL0D96O7qWaiHpvynfpNwAAsJBH\nDGPLqSXJs8BacO+ObqSbdA/i3eVHvVvsz3i3WKG4oXq32KJ69+nTp8UixSUv\nXboU9W7B4t2q3qnebdS7Lu9OVW+8OzV4d9neLX92c/GvrBHk6FJmMe8249RR\n583y7ujqbTGhNv+NnWmedbfY1urK58mvDnRSty7obW7UJcjGj31ZPhTyKfhg\nykTJ3YeXA5MbXx3zwsgRf0pePszQ33f5qSceNWPWho41q/71n//h7JkH/cWl\nSxdiS5cPDl1KbPiwP86fN9OcNl6Ud0trMHPGlAc7efHC6Dnp8oorli2W37p5\nd9kcOdwlneNr4//7jy69rc48V8XWf/VMLnOL/Kxf3dufXBrG7ds2jHt1mDxk\n1EtPvzrmz+KSoqWfr/hEenNpMEUqdZUzvYNIceqNg0PDyrs7t45++U/yDGNG\nPfP88Cfmz5v69dc/Wz1MVPrTRXPlsWLf8ipSumzZ3GHGrwcGrorYit7KZoiP\ny29jzyB3mDRxnFlQbsIbL509czL5puRGcXOdRS9iLs8j0i1t/+CQL6/tWBFd\nty22hQf275H7RyfDZ71fHd3Wk8d19bbk+wUAAD907dv711p9t3aUOsk8K1kL\nkRnq8m7ZJNmwOt5Gjjeip29v3PCFs3QP1undDu/CgHfj3Xh38lHNkiDePfhz\n9Y4tbB69kpfeEhNto+HJ64hF566b5zcX/9JbogPl5qLe8oPeTf5N3s1sgPxK\nbjRnlKdOlb9ype/pP/xOoi48OOSnixct+P1vH9GVxlXMo2dG6y3iqpYLfF+7\nduUPT/5WnqSra48Obsq/J44fFbE12qvX7/71r34xd850HSWUf+XnMaNG3Hl4\nlee/PViza5KoevREcvkEvzfxzeiNOe/W33dZ3qls/PixL+/u3HHkyEHZmJEj\n/qRru926dXPYc3+QO5w7d1YaAXkL8kHPeoPeMMuYm1t0+RfVap0jZ4zbrHyu\nYm4u/F0T2Vf37t2R6HWunZG/qbSj9ueRdlqa2Pv37/3Xz68rF/2t5Rl0U2sO\nK8vD5W7yVLFZ9OYZUp//2NGDsRXV7OR5vwAAUDZSYFjGAhTtPWvGec3StFe8\nJRtW10NyvpEC13upicO7MODdeHdLend392HNvDlTxbvNf7MycsQf8e66iPq1\nCKz8bP6rt5izsI0ImytoR++pg9pGxs0Yt5Hl6BNG/xvbBvvdjNpHf5W1utrA\nwPV33h7/z//r/33u2SdfeP4Z8WX5r9yov9WJ6JIzpx+s3qzj0Y//7l8uXbpg\n32PyDDOnT9bHituKg8vzi+1Gx5rl8ysflD8+9R9i3888/di//es/zp8301w9\n/OyZ00898ahu/yO//uW8eTPkE5288dTJ7jx3kxvlOW/cGHhrwlizW14d88L5\n8z8NbkrzsnFDh171TL8NyHkd81LR07hCb0VbIB3Ih/M/iK2oBgAA1ae/73Lv\n+bO17+cX2aTkRVvs5Hwjot551nIpBId3YcC78e4W824d4HbIrh2bgh+W9Sag\ndyt3796RP+/Kz5dqtm/bLJGjwNxBfqs3auS/0UfJLfKzuafeEn2seU59lP43\n+vzRp9JnS71b8p4135p8avTgTy7ILJ8Y56nX8gmVT5Y8bdYKbIMP13ZLfemS\nkLeTtUn6K29bUhOdNJ7avcaGs3Xs29d2tQ7SO3SfOHLgwJ6PPpz21psvx1ZU\nAwCA6iMl/b4vK9cDyibJhtX1kAq+EYd3YcC78e4W825JzdHtZAauXQ5+TDok\nuHcD+ETP3tIrd8d+pXPLzRwznT6Xek+wI83/O2+Nll0XW58cAACaiNM9J/tc\nh2XLQDZGNsnhgZV6I87vQsG78e7W8+72SfTjiXdDy5Ncn1yXhTHLqZlF1cyF\nxsy/fk77ag2kZ+jpOeFtzh4AABSOVPWdu7b/pQIniAmyGbIxbsPE1XkjjbwL\nBe/Gu/Hu5g3eDW2FXkQsusaLWTNNx7V1UTVdUU2v3G3uUODKMAAAANVHKvRD\nB7tqLmxeNrIBshmyMc7PUIU30vi7GMS78W68u5mDd0O7wSAsAABATvr7Lost\nBhwslpeWDXBeiMwQ9o0U9S6i3h07RRTvxrvx7ooH7wYAAACALKRO79y1Pcgp\n0vKi8tINjhEbQr2RAt8F3o13493NG7wbAAAAACxIhX+65+S+L3f3nj8rhXyp\nE7blyeUl5IXk5eRFGzkbOom3N1LSu8jv3Rbpxrvxbrw7SPBuAAAAAKiJ1Pn9\nfZdPHD/atW9v567tJUWeXF5CXqhY4/b8Rkp6F3h3U3t3TukuxLv1Dap3yxs3\n3n3t2jXj3bKX1Ltlv506dSrLuzdt2qTePXPmzOBHQlMny7uj6o13AwAAAACE\npW29W4xPvE/sTxxQTNB4txiieveJEyfEHNW7L1y4YLz7ypUrYprGu1W98W68\nO0jwbgAAAACA6oN34914d/MG7wYAAAAAqD54N96Ndzdv8G4AAAAAgOqDd+Pd\neHfzBu8GAAAAAKg+Wd5d10XE8G68G+8OErwbAAAAAKD6tJJ3z583w57onfHu\nmt59fwg37z5z5ozsPdmHR48eNd69Z8+enTt3btu2Tfb5unXr8O7GE/uQ4t0A\nAAAAABXEeLd9krndu4Pbh0lO6f7hoXeL/al3iw+KFe7du1evIya2mOrdQn7v\nVvUuz7tTacS7dSPr8u6BgQHZG7JPjHfLvjLebRnvxrsLicW7jXrj3QAAAAAA\nYWkx7/4hQ72Td4t5d+r1u2PeffnyZePd4ptineKexrvv3LnTRN5tXr0u774z\nRKp3y56R/aPeff78+aR379u3LzrevX79+rlz58pf4e6dG8GPmeYN3g0AAAAA\nUH1az7t/SKh38g7iemJ84n1if+KAYoI63i1uaOaZq3eLP4pF9vb2Xrx4Ubyy\nv7//6tWrdXm3qndY7/4hgoN33xsij3fLXlLvPnv2bE9Pj/HugwcPyr7du3fv\nrl27tm/fvnnz5g0bNnz44YezZs06d/Z08AOmeYN3AwAAAABUn5zeXf2Tu2Ox\nSLdEXE+MT7xP7E8cUExQfFCsUNxQDFE88fjx4ydPnjTj3eLdOt4d9W7BeLdg\nvFvVO4h3//hzyvZu3QlmnrmOd5vzu8W7ZR/Knjxy5Ijs1a6uLtnDnZ2dsre3\nbNmycePGjz/+ePbs2V379gY/Wpo3eDcAAAAAQPVR725ksLua3v3DkHpn/Upc\nT4xv4cKFYn/igMa7xQ3FEMUTxRZT55kb775+/XoLePf3D4l5t1nMPOnd0fO7\nU707Ns9c9uTRo0cPHTq0f/9+9e4dO3bIPt+0adPSpUuHlrbrCH6oNG+SH9Wk\neuPdAAAAAABhaWHvtkRcT4xPvE9P7o55d3Keecy7hah3q3qrd5up5jHvVvWO\nerdR75zenUe9Q3m3rmce9W6dZ67j3Unvln2+cePGNWvW6NJqfZcvBD8kmjR4\nNwAAAABA9WlD7758qVcXVRPvE/tT7xYfVO8WQ9TxbnFGMcekd1+5ciXp3eb8\nbvulxJrOu82ialHvFlKvI5bq3SdOnDh27Jh6ty5pbpZW27Bhw6JFi2bNmrV0\n6ZLgR0WTBu8GAAAAAKg+UpPHCvVmX1StZsTyxPXE+KKLqpnFzMUQ9SJi6t3i\nj2KRFy9ejHp3bJ55m3u3YK7fLbvIePfp06ej3m2WNNel1fQU7y+++GLOnDkz\nZ87cvXtX8AOjGVPTuyV4NwAAAABAWJLe3dqD3Xt279LBbjG+6MndZjHzqHeL\nORrvNhcRi16/G+9OerfsK11aTfZe9FJi0aXVzFTz9evXL1u2bNasWTNmzNjd\nuTP44dF0kQ9gTfXGuwEAAAAAwtJW3r179y7xO7E8cT0xvugkc/Hu5Mnd6t3m\nImLildF11dS7Vb1zenfq0mp/e0jjS6u5efd3D7F4t7612PndUe+OXkrMLGku\n+zC6pHlsqvnmzZvlT7B27drFixfPnDlT/jSffbb40sXzwY+TJgreDQAAAABQ\nfdrEu/v7LorTidmJ33366afienoFsdgkc7OYuV5ETMxRLyJm9+7o9bub3bvN\nRcRyevfAwEDMu6NLmptTvHVptdhUczPk3dHRsWTJEvnTTJ8+fdq0aV98sWrv\nns4zp0/dvXMj+JFT8aR6d0y98W4AAAAAgLDEvLte6a6yd4u1ibuJwYnHic2J\n04nZid+J5UUHu7MmmeuiatGLiMWuI5bHu1W9W967Uy8lZpZWS041jw15r1u3\nbs2aNStWrPjoo4/kz/TBBx9MnTp1ypQp7w8xadKkidm8Wz/v+OJtX0yoMG/6\n4g0vvF5tXgNfjG85xgG0IqE/WMUTuvFrVkL3z8Xjp+zxVsWFLldteKvn3XAw\nFAd7sriYmJoqm7ibGJx4nNicOJ2YnfidWJ64XnSwO3YFsdjJ3aneLb6Jd6t3\nXxsi5t29vb26tJq5ind0qnl0yFsXNu/o6Fi9evWqVauWLVv28ccfz5kzZ8aM\nGfLnmzx5sqp3gViOnALt3o0qC37oZq94vPUmDvjpT90IXWtUgtAlJABAXkK3\nl8UTuhssGG+lReiyy8ZbTvgpgN2Kcwfc3MHBa4oVKzE18TWxNtHt2bNni8ct\nXbp05cqVYnY6wzx62W5xwNgk8+jJ3VHvjs4zT/VuVe96vTv/0mqlerc5uVu9\n21y8O6d3Ry8lFj3Fu6enR/ZndKp5bMhbFzbX2ebyB5I/0+effy72vWTJksWL\nF3/66acLFy78OJuP6md+/cxzYm79zHFidv3Mqp+ZvpjhxHQvTHNiamsxpcJM\n9sX7AEO8V2FC7xuoCt4aRm9Nfehu0MYH9eNWWvgpe9xKMofaz6EudcOhZnYr\nzh0swE03HLzGwZ4sLiamJr4m1ibuJsa9fPlyUbkvvvjCzDAX14sNdkcnmYsn\nmknmenL3pSFSvVsMtA29W4jNMzdLmie921xNTKeam9XVdGFznW2+YcOGdevW\nxdRb/nafffaZ/Ck/ycZyGBSIw/EpfFg/Dp8dt68FHFoDh5bKJ4XrfypV/k7A\nG24Vgh8cCh43vJVw3upYADB4+4D7wVvD6K2pD90NFkyV3dZbFVdlt3Urzh1w\n040F9eOgQhYXE1MTXxNrE3dbsWKFSJzYnDidmJ1ZTk2MT5cxjw52m0nmSe/u\nG+LKlSsimHrx7hbz7rrmmdf07uhVvM1U8+SQd2y2eUy9ly9fruq9OJtF9WM5\ncrJY6ITDUe3w2REcPqTe2hA/3wm44dDCe+uA3L7FLfprhiJxqyvqxVuZ5K28\nBACI4q2V89Noe+uD3HpVP7jVCX4s1Y0qu63DoJhbce6AgzjYjTgLB3uyuFh0\nmHvVqlXicXpad2yGeXKwW9xQvDs2ydzi3Xrx7vb0bnnj6t061Tx2KTH17thU\n8+iQty5s3tnZqbPNk+otfzj5861YsULnnGfxWf1YjpwC7d6Nigu+Aw7fCTg0\niW5TBar8nYA3HDpuN4r8ViKb0NVTDbxVmADQqnhrr/w02t76oNCdbfH4cVu3\nksyh9vNWlzrUzG7FuTd3+LR+HOzJ4mJmmFul24x0q3TrDHMd7Bb708Fus6Ka\nntytg93Gu/Xk7itD6GLmqd7dPuuqxbw7eQlvXVotNtU8NuQdm22+ZcuWmHp/\n8cUXK1eulD/l8myW1Y/lyCnQ7t0E3+GzY5+HHxyH9s0Nh7bXoV9ww8/XCG44\ndNze8Fa9eCv8wA0/9T/4JPQxBbXx0/x661C89ap+LNUNP5bqRuhy1YabDjtY\ngJtuOHiNgz1ZXExMTXxNrM1I9/r168Xp9LRunWGu1+w2g926olpyknnMu81F\nxIx3q4Q2tXcnT/FOereqd8y7b9y4Ybw7dUnz2JC37OHokHd0tnlSvdeuXbtm\nzRr5I65atWplNivqx3LkFGj3FRd8B9y+E3BoqdxaRbdvI/3g0AE5dI7e8FYh\neCuTqoy3orTF8KMMoIT+azcroVuX4nFQTjf8dHaFq2UWoYsUG95E1a3IdKhm\n3SptB/zosN2ILaZcLxYXE1MTXxNrE3czI91GuqMzzKOD3cmVzNW7dTFzMUod\n7K7Lu1VgW8y7o0uaZ3m3Lq2m6m3O8tap5tEh73379skforOzM0u9Ozo61L6z\nWFU/liOnQLv3KfgOePtOwAGfXwvUi0NX4vxNggN+emFvpYifysoNb18+gE+8\nWUOVCf1HgOLx1jB66x38dHbe+m630sJP2eNWknmrGL25rQN+dHjF0ATvenGw\nJ4uLiamJr2VJt1ieuJ4YX/TM7uSKaurd5uRu493XhxDZNIuqtbN325c0jw15\ny+7VqeZHjhyJzjY3J3ob9d68ebNeXMzYdxar68dy5GThoOpuOHx29Cx4D98J\nLK02Dm2vA279grevEdz67nrxVopUGT9Vn0+8FcwthjejcSD0vqkEoT9YxRO6\n8asEfjq7Qv3VhjfldMBbFVdlt3Urzr25g4PXONiTxcXUuPWSYWJwRrrNad2x\nGea6opoZ7M7y7ugkczfvjkp3zLtrSnc1vVuHvGPerad4q3ob744tbB5dYC1V\nvXXg29h3FpbDIIs19eNwfLrh8AWU2wi+H7t3w6EVXe5rqoC3DsitF64ybt+Z\n+/m+wht+akVvhC69mxhsyxuhPyXF46298tNoh+6aiseb2zrUMG71lQMOtZ+b\n2zrgUDO7Fed+dHj10OLh9eJgTxYXU+PeNESqdEeXU4sOdsekO3pyd8y7VTnN\nomqt6t2q3vm92yytFl3V3Ew1j17LW2ebG/Xeu3evqrdOON++fbuZcy5/yg3Z\nrK+ftb5oPcF3wM93Am54+07AgcK/Mcii0G8LbBT+JXyBeKvH/NSxFcebNUDr\nEfrgrQTe2is/za+3Pshbr+qtTsBtV3l0Wwf86HDH0HBzvVgkOguLi6l0q3EL\nInFGunWGubieGeyOzjA3Z3ZHryCWXFRNr9yd6t2qqM3i3bElzd28W/ZG1LvN\nkHfq6mrRIW/Z+bFRb7PMmvy9VL23bt26efPmTdlYDoMCcbB7+zB9Fq0n+A5N\nYrHib6HFvhNww1uF4IC3Mslb4eeAn9K34ngTDfBG6GOqEnhrRry1pd56B29d\npAPe6gQ/butQxbnhVmQ6FMAOuBXnDhbgpht+VMjiYmJqer0wNW49pzs50h2b\nYR47s9usqGYWVVPv1hXVanq3Wcy8Gb1b1TvVu82S5lnenVxdTb07NuRtZptH\nR711wrleXMzMOd9qZUv9WI6cLDY64XBUO3xI3XBoQNy+hfNGsV8XZOHWmxT+\njUEWDr2wA96KCge8VVbeyktveKvMWwxv6uRA6H1TCUJ/sIrHWysXujm34aez\n89Z3+xTVenETVW+1nx8ddsPBAtx0w8FrHOzJrmPRYW7xuJh0i+vpDPPotcN0\nsDt2ZreR7qR3xy7ebffurEXV8nt3TelOqne93h27hLfx7tRLeOvbN0ur6Urv\n0SFv9W6daq7eHRvyPnbsmA55Z6l31L6zsB8GRan6Zl84fHbcvhZw+0rNAYeW\nyqEVdcOhhS/2G1QLfvrT1a7fJDjgrYBxwE8Jt7LaX1lUGW+iAd4IfUxVAm8t\njxt+ml9vfZC3XtVbneDHUt1wqP3cikwHt3XArTj35g4OONiTxcX0bG4d5s6S\nbjPDPDrYbbzbTDI3K5lfHcJcQczi3bGLd1fBu6PqbZZPr+ndsaXVYt4dW9Jc\n1Ts21Vy926i3WV0tOuSta5sfHCJ6cTFzureqd4FYjpwC7d6n4Lt9P1Yvfho3\nZ/x8J+CGQ5/l0J96w1tR4a0ec8BPRepG6Gq9vQitbsUTeo9WgtAf4oLx1jB6\ns1Q/nV3RMpqJt2qksmLrjEM1682gHSzATTccvKZYsYrOLTeXDNNzutW7zQxz\nHew2y5irdydXVIsOdke9276YuXq3/SJiFfHu6FRzB+82VxNLnuKt6i271Ax5\nm9nmsVFv9W75M8XUW+07i2KPnCy2O+HwQXDDj+C7fd3nQJW/FnDos9xw61K9\nFQkO+CmT3Cj26wILhQ+sNCPeFABaj9AHbyXw1l75aX699UGF+qsNb3WCQw3j\nVl854FD7ubmtAw41s7d63k03/KiQxcVU1lKl24x062ndZoZ5TLrNyd1J71bN\nLOri3RX0bodLiSW9O3V1tah362zz6Kh3TL310t5R+07FchhksdMXDke12yfO\n7fsxPzi0b244tL1Ff2GQiUOfVfg3Bll4qxAc8FYmOeCtVvRT+oLizWiqTOg/\nQrPirU1wwFvD6K138NM/Fi2jmXirRvxYqhuhy1UbbhLtYAHeDMXBnnZnY4xb\npVsv1R1bS82MdEe9O7aiWt8Q+RdVM96duqhaGd7997//vWzvzrmkeexqYrEh\n7+TqajrbXNVbLysWPdfbTDg36l0gliMnC4fj003wHT6kbjjYfZHf6FlxaxX9\n9AsOfVbFBd8BPwWPG96qPje8Vb9+CC0T0HaEPuQrgbf2KnRzbsOh5/LWETvg\nVlr4KXt8iqoDDtWst0rbwQIs44wWHLzGwZ72WtETuo1xHxpCpduc1h317tQV\n1Yx0q3dnndydczHzwr3770PkHPJucElzM9U8tqR59BRv9W5V7+RU8+Tqaurd\nyVFv+UslR72z8OPdbh8EBxD8igu+n25uS+WX8vND0V8YZBK6hLThrcaG9S33\nxYgbof8IzUropsKGt7Y0dKdhw1uv6q1O8KPDDlWcG25FpkMB7IBbce7NHYJ7\ntxnmNtfpjo10R6U7a0W15CTzPIuqleTdWYPd/r3bvrRadMjbeHeqepsF1ox3\nR0e9dchb7VtHvbOwf/1SFA7Hp0/Bd2sQ6sWtsSpU4m346Re8Cb4bfvp6b9WL\nA95KOG91rDdCmwFAKYT+YBWPt1bOAW9NvZ/Ozlvf7VZa+Cl73EqyQq3XhkM1\nW6jy2vCjw3YjLhCLi0VP6I4upKandUe9O/XM7qR3G+nOWlTNvph51LtjF++u\nuHc7LK0W9e7k6mqWs7xVvWMXF9MJ5xb21Y/lyCnW7v2ouhsODUjhIp+Ft+a6\nsna/3aPg+6letlTb1r0RuihuI0K7UXsR+q/drIRukCqBtz6oaFfOxFudgA67\n4VAzu+mwA4UbcRYO9rTfiplebka6VbqNd0fP7DYzzPMMdke9O/Xk7jyLmRvv\nNmdbl+3dyVO8Y95d75LmNU/x1rO8k96dPMs7a9Rbzw7QUe8s7FZelKq7UWXB\nd8Cb4LvRYoLvhp++3u07AT94q6y81YpVJnTBDm1H6EO+Enhr5UI35zb8dHbe\n+m630sKh7HHArSRzqxgdcKhm3SptB/zosBsO9nQgG2PcMem2zzBPvXxY6iTz\nxhdVy+PdeRZVa8S7819KLLm0Wp5TvFMv5B1V79iJ3sa7k8usWbAcBlnYv7Ep\nyu59Cr5Da1C0lGfi0IoWquM2/PRZu1ruBHxveCvhvNWxDoSu8aEUUM7WI3RT\nYcNbW+qtd/DTP7rpsAPeqhGHSqloUc6kaOvNpMV0uGtojne9ONiTXcdiI932\nGeZGurMuH1b2yd3Gu+tdzDzVu6PqXeCS5qlLq9lP8c66oFjsWt6nhpC/S3LI\nu6Z6Oxw5Djgc0m627vY5dWhDHPDWJHoTfAeKVv9M3LpUb0WCA37KJDe81Yre\nql8ILTrtRei/drPireVxw0/z660PKtRfbXirExxqmELHVWx4qxgdqtlCRdmG\n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\nAAAAAAAAAAAAAAAAFvUdg26RVg==\n " - ], - {{0, 501.0}, {660.0, 0}}, - {0, 255}, - ColorFunction -> RGBColor, - ImageResolution -> {144.0, 144.0} - ], - BoxForm`ImageTag[ - "Byte", - ColorSpace -> "RGB", - Interleaving -> True - ], - Selectable -> False - ], - DefaultBaseStyle -> "ImageGraphics", - ImageSizeRaw -> {660.0, 501.0}, - PlotRange -> {{0, 660.0}, {0, 501.0}} - ] - ], - "Input", - CellID -> 879786942 - ], - Cell[ - "\:30b5\:30fc\:30d0\:3092\:524a\:9664\:3059\:308b\:3053\:3068\:3067Claude Desktop\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:ff1a", - "ExampleText", - CellID -> 408989713 - ], - Cell[ - BoxData[RowBox[{"DeleteObject", "[", "server", "]"}]], - "Input", - CellLabel -> "In[4]:=", - CellID -> 204027670 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 2132456 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 239263201 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 90117553 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["OverwriteTarget", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 50598205 - ], - Cell[ - TextData[ - { - "\:30c7\:30d5\:30a9\:30eb\:30c8\:3067\:ff0c\:540c\:3058\:540d\:524d\:306e\:30b5\:30fc\:30d0\:304c\:65e2\:306b\:5b58\:5728\:3059\:308b\:5834\:5408\:306f\:ff0c", - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineFormula" - ], - "\:306f\:5931\:6557\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 571382835 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"MyServer\"", - ",", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[{"{", "\"WolframLanguageEvaluator\"", "}"}] - } - ], - "|>" - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 150614007 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"MyServer\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"MyServer\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"MyServer\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"MyServer\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tools: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"WolframLanguageEvaluator\"", "", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\AgentTools\\\\Servers\\\\MyServer\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> Association["Tools" -> {"WolframLanguageEvaluator"}], - "Name" -> "MyServer", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.0.0", - "Transport" -> "StandardInputOutput", - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\MyServer" - ], - "Initialization" -> None - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 309122994 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"MyServer\"", - ",", - RowBox[ - { - "<|", - RowBox[ - {"\"Tools\"", "->", RowBox[{"{", "\"WolframAlpha\"", "}"}]} - ], - "|>" - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 43984175 - ], - Cell[ - BoxData[ - TemplateBox[ - { - "CreateMCPServer", - "MCPServerExists", - "\"MCP server named \\\"MyServer\\\" already exists. Use \\!\\(\\*RowBox[{\\\"OverwriteTarget\\\", \\\"\[Rule]\\\", \\\"True\\\"}]\\) to overwrite it.\"", - 2, - 2, - 1, - 20365380062467380191, - "Local", - "Wolfram`AgentTools`CreateMCPServer" - }, - "MessageTemplate2", - BaseStyle -> "MSG" - ] - ], - "Message", - CellLabel -> "During evaluation of In[2]:=", - CellID -> 181560157 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Failure", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - FrameBox[ - StyleBox[ - "\"\[WarningSign]\"", - Directive["Message", 35], - StripOnInput -> False - ], - ContentPadding -> False, - FrameStyle -> None, - FrameMargins -> {{0, 0}, {0, 0}}, - StripOnInput -> False - ], - GridBox[ - { - { - TagBox[ - GridBox[ - { - { - TagBox["\"Message: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"MCP server named \\\"\\!\\(\\*TagBox[\\\"\\\\\\\"MyServer\\\\\\\"\\\", Function[Short[Slot[1], 5]]]\\)\\\" already exists. Use \\!\\(\\*TagBox[RowBox[{\\\"OverwriteTarget\\\", \\\"\[Rule]\\\", \\\"True\\\"}], Function[Short[Slot[1], 5]]]\\) to overwrite it.\"", - "SummaryItem" - ] - } - }, - GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxSpacings -> {"Columns" -> {{0}}} - ], - "SummaryItem" - ] - }, - { - TagBox[ - GridBox[ - { - { - TagBox["\"Tag: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"CreateMCPServer::MCPServerExists\"", - "SummaryItem" - ] - } - }, - GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxSpacings -> {"Columns" -> {{0}}} - ], - "SummaryItem" - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - FrameBox[ - StyleBox[ - "\"\[WarningSign]\"", - Directive["Message", 35], - StripOnInput -> False - ], - ContentPadding -> False, - FrameStyle -> None, - FrameMargins -> {{0, 0}, {0, 0}}, - StripOnInput -> False - ], - GridBox[ - { - { - TagBox[ - GridBox[ - { - { - TagBox["\"Message: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"MCP server named \\\"\\!\\(\\*TagBox[\\\"\\\\\\\"MyServer\\\\\\\"\\\", Function[Short[Slot[1], 5]]]\\)\\\" already exists. Use \\!\\(\\*TagBox[RowBox[{\\\"OverwriteTarget\\\", \\\"\[Rule]\\\", \\\"True\\\"}], Function[Short[Slot[1], 5]]]\\) to overwrite it.\"", - "SummaryItem" - ] - } - }, - GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxSpacings -> {"Columns" -> {{0}}} - ], - "SummaryItem" - ] - }, - { - TagBox[ - GridBox[ - { - { - TagBox["\"Tag: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"CreateMCPServer::MCPServerExists\"", - "SummaryItem" - ] - } - }, - GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxSpacings -> {"Columns" -> {{0}}} - ], - "SummaryItem" - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Failure[ - "CreateMCPServer::MCPServerExists", - <| - "MessageParameters" :> {"MyServer", OverwriteTarget -> True}, - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`CreateMCPServer, - "MCPServerExists" - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 173241416 - ] - }, - Open - ] - ], - Cell[ - "\:65e2\:5b58\:306e\:30b5\:30fc\:30d0\:306f\:5909\:66f4\:3055\:308c\:306a\:3044\:ff1a", - "ExampleText", - CellID -> 382097484 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - RowBox[{"MCPServerObject", "[", "\"MyServer\"", "]"}], - "[", - "\"Tools\"", - "]" - } - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 868068802 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\\nThe user does not automatically see the result, so you must include the result\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\\nThe user does not automatically see the result, so you must include the result\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "Function", - "[", - RowBox[ - { - "Wolfram`AgentTools`Tools`Private`args$", - ",", - RowBox[ - { - "Wolfram`AgentTools`Common`catchTop", - "[", - RowBox[ - { - "Wolfram`AgentTools`Tools`WolframLanguageEvaluator`Private`evaluateWolframLanguage", - "[", - "Wolfram`AgentTools`Tools`Private`args$", - "]" - } - ], - "]" - } - ], - ",", - "HoldAllComplete" - } - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"code\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The Wolfram Language code to evaluate.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The Wolfram Language code to evaluate.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"timeConstraint\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The time constraint for the evaluation. Uses the server's configured default if not specified.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The time constraint for the evaluation. Uses the server's configured default if not specified.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "DisplayName" -> "Wolfram Language Evaluator", - "Description" -> "Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\nThe user does not automatically see the result, so you must include the result in your response in order for them to see it.\nIf a formatted result is provided as a markdown link, use that in your response instead of typing out the output.\nDo not ask permission to evaluate code.\nYou have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks.\nNatural language input is parsed before evaluation, so it works like macro expansion.\nYou should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\[FreeformPrompt] should be written as \\uf351 in JSON.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Function" -> - (Function[ - Wolfram`AgentTools`Tools`Private`args$, - Wolfram`AgentTools`Common`catchTop[ - Wolfram`AgentTools`Tools`WolframLanguageEvaluator`Private`evaluateWolframLanguage[ - Wolfram`AgentTools`Tools`Private`args$ - ] - ], - HoldAllComplete - ]), - "Options" -> { }, - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation. Uses the server's configured default if not specified.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 143588598 - ] - }, - Open - ] - ], - Cell[ - "\:65e2\:5b58\:306e\:30b5\:30fc\:30d0\:3092\:65b0\:3057\:3044\:3082\:306e\:3067\:4e0a\:66f8\:304d\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 905957696 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"MyServer\"", - ",", - RowBox[ - { - "<|", - RowBox[ - {"\"Tools\"", "->", RowBox[{"{", "\"WolframAlpha\"", "}"}]} - ], - "|>" - } - ], - ",", - RowBox[{"OverwriteTarget", "->", "True"}] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[4]:=", - CellID -> 782532767 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"MyServer\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"MyServer\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"MyServer\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"MyServer\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tools: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"WolframAlpha\"", "", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\AgentTools\\\\Servers\\\\MyServer\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> Association["Tools" -> {"WolframAlpha"}], - "Name" -> "MyServer", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.0.0", - "Transport" -> "StandardInputOutput", - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\MyServer" - ], - "Initialization" -> None - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[4]=", - CellID -> 37501448 - ] - }, - Open - ] - ], - Cell[ - "\:4ee5\:524d\:306e\:30b5\:30fc\:30d0\:306f\:65b0\:3057\:3044\:30b5\:30fc\:30d0\:3067\:7f6e\:304d\:63db\:3048\:3089\:308c\:305f\:ff1a", - "ExampleText", - CellID -> 141384667 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - RowBox[{"MCPServerObject", "[", "\"MyServer\"", "]"}], - "[", - "\"Tools\"", - "]" - } - ] - ], - "Input", - CellLabel -> "In[5]:=", - CellID -> 192202052 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Use natural language queries with Wolfram|Alpha to get up-to-date computational\\nresults about entities in chemistry, physics, geography, history, art, astronomy\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Use natural language queries with Wolfram|Alpha to get up-to-date computational\\nresults about entities in chemistry, physics, geography, history, art, astronomy\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "Function", - "[", - RowBox[ - { - "Wolfram`AgentTools`Tools`Private`args$", - ",", - RowBox[ - { - "Wolfram`AgentTools`Common`catchTop", - "[", - RowBox[ - { - "Wolfram`AgentTools`Tools`WolframAlpha`Private`wolframAlphaToolEvaluate", - "[", - "Wolfram`AgentTools`Tools`Private`args$", - "]" - } - ], - "]" - } - ], - ",", - "HoldAllComplete" - } - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"query\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The query to send to Wolfram|Alpha.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The query to send to Wolfram|Alpha.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "DisplayName" -> "Wolfram|Alpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Function" -> - (Function[ - Wolfram`AgentTools`Tools`Private`args$, - Wolfram`AgentTools`Common`catchTop[ - Wolfram`AgentTools`Tools`WolframAlpha`Private`wolframAlphaToolEvaluate[ - Wolfram`AgentTools`Tools`Private`args$ - ] - ], - HoldAllComplete - ]), - "Options" -> { }, - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "The query to send to Wolfram|Alpha.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[5]=", - CellID -> 373448654 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - RowBox[ - { - "DeleteObject", - "[", - RowBox[{"MCPServerObject", "[", "\"MyServer\"", "]"}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[6]:=", - CellID -> 217909234 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["Initialization", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 159211699 - ], - Cell[ - "\:6b21\:306f\:ff0c\:30d1\:30af\:30ec\:30c3\:30c8\:304b\:3089\:306e\:5b9a\:7fa9\:306b\:4f9d\:5b58\:3059\:308b\:30c4\:30fc\:30eb\:3067\:3042\:308b\:ff1a", - "ExampleText", - CellID -> 186212311 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "config", - "=", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[ - { - "LLMTool", - "[", - RowBox[ - { - "\"AddOne\"", - ",", - RowBox[{"{", RowBox[{"\"n\"", "->", "\"Integer\""}], "}"}], - ",", - RowBox[ - { - RowBox[ - {"SamplePublisher`SamplePaclet`AddOne", "[", "#n", "]"} - ], - "&" - } - ] - } - ], - "]" - } - ], - "}" - } - ] - } - ], - "|>" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 489732439 - ], - Cell[ - BoxData[ - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - "\"Tools\"", - "\[Rule]", - RowBox[ - { - "{", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"AddOne\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - TooltipBox[ - "None", - "\"A description would help the LLM figure out tool usage and increase the call sucess odds.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "A description would help the LLM figure out tool usage and increase the call sucess odds.", - "Tooltip" - ] - ] - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"AddOne\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - TooltipBox[ - "None", - "\"A description would help the LLM figure out tool usage and increase the call sucess odds.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "A description would help the LLM figure out tool usage and increase the call sucess odds.", - "Tooltip" - ] - ] - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - RowBox[ - {"SamplePublisher`SamplePaclet`AddOne", "[", "#n", "]"} - ], - "&" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"n\"", - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "AddOne", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (SamplePublisher`SamplePaclet`AddOne[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "}" - } - ] - } - ], - "\[RightAssociation]" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 385407442 - ] - }, - Open - ] - ], - Cell[ - "\:30b5\:30fc\:30d0\:8d77\:52d5\:6642\:306b\:30d1\:30af\:30ec\:30c3\:30c8\:304c\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:304a\:3088\:3073\:30ed\:30fc\:30c9\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:3092\:78ba\:8a8d\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 415803534 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"InitializationTest\"", - ",", - "config", - ",", - RowBox[ - { - "Initialization", - ":>", - RowBox[ - { - "(", - "\[IndentingNewLine]", - RowBox[ - { - RowBox[ - { - "PacletInstall", - "[", - "\"SamplePublisher/SamplePaclet\"", - "]" - } - ], - ";", - " ", - RowBox[ - {"Needs", "[", "\"SamplePublisher`SamplePaclet`\"", "]"} - ] - } - ], - "\[IndentingNewLine]", - ")" - } - ] - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 222181044 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"InitializationTest\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"InitializationTest\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"InitializationTest\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"InitializationTest\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tools: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"AddOne\"", "", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\AgentTools\\\\Servers\\\\InitializationTest\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "AddOne", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (SamplePublisher`SamplePaclet`AddOne[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "2.2.6" - |> - ] - } - |>, - "Name" -> "InitializationTest", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.0.0", - "Transport" -> "StandardInputOutput", - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\InitializationTest" - ], - "Initialization" :> - (PacletInstall["SamplePublisher/SamplePaclet"]; - Needs["SamplePublisher`SamplePaclet`"]) - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 70608070 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - RowBox[ - { - "DeleteObject", - "[", - RowBox[ - {"MCPServerObject", "[", "\"InitializationTest\"", "]"} - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 220897246 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 274984704 - ], - Cell[ - "\:4f7f\:7528\:53ef\:80fd\:306a\:5b9a\:7fa9\:6e08\:307f\:306e\:30c4\:30fc\:30eb\:3092\:3044\:304f\:3064\:304b\:4f7f\:3063\:3066\:30ab\:30b9\:30bf\:30e0\:306eMCP\:30b5\:30fc\:30d0\:3092\:4f5c\:6210\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 53086891 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"Keys", "[", "$DefaultMCPTools", "]"}]], - "Input", - CellLabel -> "In[1]:=", - CellID -> 70047733 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - "\"CodeInspector\"", - ",", - "\"CreateSymbolDoc\"", - ",", - "\"EditSymbolDoc\"", - ",", - "\"EditSymbolDocExamples\"", - ",", - "\"ReadNotebook\"", - ",", - "\"SymbolDefinition\"", - ",", - "\"TestReport\"", - ",", - "\"WolframAlpha\"", - ",", - "\"WolframAlphaContext\"", - ",", - "\"WolframContext\"", - ",", - "\"WolframLanguageContext\"", - ",", - "\"WolframLanguageEvaluator\"", - ",", - "\"WriteNotebook\"" - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 25382385 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"WolframNotebooks\"", - ",", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[{"\"ReadNotebook\"", ",", "\"WriteNotebook\""}], - "}" - } - ] - } - ], - "|>" - } - ] - } - ], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 100929038 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframNotebooks\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframNotebooks\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframNotebooks\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframNotebooks\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"ReadNotebook\"", "\"WriteNotebook\"", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\AgentTools\\\\Servers\\\\WolframNotebooks\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> Association["Tools" -> {"ReadNotebook", "WriteNotebook"}], - "Name" -> "WolframNotebooks", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.0.0", - "Transport" -> "StandardInputOutput", - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\WolframNotebooks" - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 107587775 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"server", "[", "\"Tools\"", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 797461729 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"notebook\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The Wolfram notebook to read, specified as a file path or a NotebookObject[...]\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The Wolfram notebook to read, specified as a file path or a NotebookObject[...]\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "ReadNotebook", - "DisplayName" -> "Read Notebook", - "Description" -> "Reads the contents of a Wolfram notebook (.nb) as markdown text.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram notebook to read, specified as a file path or a NotebookObject[...]", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"file\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The file to write the notebook to (must end in .nb).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The file to write the notebook to (must end in .nb).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"overwrite\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Whether to overwrite an existing file (default is False).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Whether to overwrite an existing file (default is False).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Boolean\"", - RowBox[{"Interpreter", "[", "\"Boolean\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"markdown\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The markdown text to write to a notebook.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The markdown text to write to a notebook.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - AutoDelete -> False, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WriteNotebook", - "DisplayName" -> "Write Notebook", - "Description" -> "Converts markdown text to a Wolfram notebook and saves it to a file.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook, - "Options" -> { }, - "Parameters" -> { - "file" -> <| - "Interpreter" -> "String", - "Help" -> "The file to write the notebook to (must end in .nb).", - "Required" -> True - |>, - "overwrite" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to overwrite an existing file (default is False).", - "Required" -> False - |>, - "markdown" -> <| - "Interpreter" -> "String", - "Help" -> "The markdown text to write to a notebook.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.6" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 113244717 - ] - }, - Open - ] - ], - Cell[ - BoxData[RowBox[{"DeleteObject", "[", "server", "]"}]], - "Input", - CellLabel -> "In[4]:=", - CellID -> 812631286 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 392986182 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 316123287 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 65170486 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 264461308 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 148821123], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 517232444 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 484215332 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 478457486 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 340983492 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 8421680 - ], - Cell[ - "Wolfram/AgentTools/ref/CreateMCPServer", - "Categorization", - CellLabel -> "URI", - CellID -> 663116388 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 230843638], - Cell["XXXX", "Keywords", CellID -> 382007701] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 970087023 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 595101442 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 535743073 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 641762927 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 845027372 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/InstallMCPServer.nb b/Documentation/Japanese/ReferencePages/Symbols/InstallMCPServer.nb deleted file mode 100644 index 8ea01c66..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/InstallMCPServer.nb +++ /dev/null @@ -1,22191 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell["InstallMCPServer", "ObjectName", CellID -> 10257982], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - "\"\!\(\*StyleBox[\"application\", \"TI\"]\)\"", - "]" - } - ] - ], - "InlineFormula" - ], - " \[LineSeparator]\:6307\:5b9a\:3055\:308c\:305f\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:7528\:306e\:5b9a\:7fa9\:6e08\:307f Wolfram MCP\b\b\:30b5\:30fc\:30d0\b\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[ - { - "\"\!\(\*StyleBox[\"application\", \"TI\"]\)\"", - ",", - StyleBox["server", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]", - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\b\:3067\:6307\:5b9a\:3055\:308c\:305f ", - Cell[BoxData[StyleBox["server", "TI"]], "InlineFormula"], - " \:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[ - { - RowBox[ - { - ButtonBox["File", BaseStyle -> "Link"], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - ",", - StyleBox["server", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]\:6307\:5b9a\:3055\:308c\:305f\:30d5\:30a1\:30a4\:30eb\:306b\bMCP\b\:30b5\:30fc\:30d0\b\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[ - { - "\"\!\(\*StyleBox[\"application\", \"TI\"]\)\"", - ",", - StyleBox["directory", "TI"] - } - ], - "}" - } - ], - ",", - StyleBox["server", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]", - Cell[BoxData[StyleBox["directory", "TI"]], "InlineFormula"], - " \:306b\:542b\:307e\:308c\:308b\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:7528\:306e\bMCP\b\:30b5\:30fc\:30d0\b\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e" - } - ], - "Usage", - TaggingRules -> <| - "OrignialExpressionUUID" -> "66bbbd04-1591-4157-b90c-4b79c6e8c994", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 18.7123}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"], \"[\", \"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\", \"]\"}]], \"InlineFormula\"], \" \[LineSeparator]installs a predefined Wolfram MCP server for the specified application.\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"], \"[\", RowBox[{\"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\", \",\", StyleBox[\"server\", \"TI\"]}], \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]installs the \", Cell[BoxData[ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"]], \"InlineFormula\"], \" specified by \", Cell[BoxData[StyleBox[\"server\", \"TI\"]], \"InlineFormula\"], \".\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"], \"[\", RowBox[{RowBox[{ButtonBox[\"File\", BaseStyle -> \"Link\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}], \",\", StyleBox[\"server\", \"TI\"]}], \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]installs the MCP server to the specified file.\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"], \"[\", RowBox[{RowBox[{\"{\", RowBox[{\"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\", \",\", StyleBox[\"directory\", \"TI\"]}], \"}\"}], \",\", StyleBox[\"server\", \"TI\"]}], \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]installs the MCP server for a project contained in \", Cell[BoxData[StyleBox[\"directory\", \"TI\"]], \"InlineFormula\"], \".\"}], \"Usage\", CellID -> 19094789]" - |>, - CellTags -> "Translated", - CellID -> 19094789 - ], - Cell[ - TextData[ - { - Cell[BoxData[StyleBox["server", "TI"]], "InlineFormula"], - " \:306e\:5024\:306f\:ff0c\:6b21\:306e\:3044\:305a\:308c\:304b\:3068\:3059\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f15b42ad-f4e8-4c03-86af-dfdc80f4d187", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 34.8317}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The value for \", Cell[BoxData[StyleBox[\"server\", \"TI\"]], \"InlineFormula\"], \" can be one of the following:\"}], \"Notes\", CellID -> 701239966]" - |>, - CellTags -> "Translated", - CellID -> 701239966 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - Cell[ - TextData[ - { - "\:65e2\:5b58\:306e", - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\:306e\:540d\:524d" - } - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - RowBox[{"<|", StyleBox["\[Ellipsis]", "TR"], "|>"}], - Cell[ - TextData[ - { - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:306b\:5bfe\:5fdc\:3059\:308b\:9023\:60f3" - } - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - RowBox[ - { - ButtonBox["LLMConfiguration", BaseStyle -> "Link"], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - Cell[ - TextData[ - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - RowBox[ - { - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - Cell[ - TextData[ - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ] - ], - "TableText" - ] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "0a853c30-0148-4eb2-ad6e-74bbd680143c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 36.7457}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"\\!\\(\\*StyleBox[\\\"name\\\", \\\"TI\\\"]\\)\\\"\", Cell[TextData[{\"the name of an existing \", Cell[BoxData[ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"]], \"InlineFormula\"]}], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], RowBox[{\"<|\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"|>\"}], Cell[TextData[{\"an association corresponding to an \", Cell[BoxData[ButtonBox[\"LLMConfiguration\", BaseStyle -> \"Link\"]], \"InlineFormula\"]}], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], RowBox[{ButtonBox[\"LLMConfiguration\", BaseStyle -> \"Link\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}], Cell[TextData[{\"an \", Cell[BoxData[ButtonBox[\"LLMConfiguration\", BaseStyle -> \"Link\"]], \"InlineFormula\"]}], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], RowBox[{ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}], Cell[TextData[{\"an \", Cell[BoxData[ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"]], \"InlineFormula\"]}], \"TableText\"]}}]], \"2ColumnTableMod\", CellID -> 565390]" - |>, - CellTags -> "Translated", - CellID -> 565390 - ], - Cell[ - "\:540d\:524d\:3067\:6307\:5b9a\:3067\:304d\:308b\:5b9a\:7fa9\:6e08\:307f\:306eMCP\:30b5\:30fc\:30d0\:306b\:306f\:ff0c\:4ee5\:4e0b\:304c\:3042\:308b\:ff0e", - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "056f06ac-5629-4354-b245-55e90781a770", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 41.6717}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Some predefined MCP servers that can be specified by name are:\", \"Notes\", CellID -> 160459376]" - |>, - CellTags -> "Translated", - CellID -> 160459376 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"WolframAlpha\"", - Cell[ - "Wolfram|Alpha\:304b\:3089\:60c5\:5831\:3092\:53d6\:5f97\:3059\:308b\:3053\:3068\:306b\:6700\:9069\:5316\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"WolframLanguage\"", - Cell[ - "Wolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:306e\:8a18\:8ff0\:304a\:3088\:3073\:8a55\:4fa1\:306b\:6700\:9069\:5316\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Wolfram\"", - Cell[ - "Wolfram|Alpha\:3068Wolfram\:8a00\:8a9e\:306e\:6a5f\:80fd\:3092\:7d44\:307f\:5408\:305b\:305f\:3082\:306e", - "TableText" - ] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "476dc1fb-99e1-4ee9-808c-c5a5fab3f299", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 44.3226}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"WolframAlpha\\\"\", Cell[\"an MCP server that is optimized for retrieving information from Wolfram|Alpha\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"WolframLanguage\\\"\", Cell[\"an MCP server that is optimized for writing and evaluating Wolfram Language code\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Wolfram\\\"\", Cell[\"a blend of Wolfram|Alpha and Wolfram Language functionality\", \"TableText\"]}}]], \"2ColumnTableMod\", CellID -> 8640607]" - |>, - CellTags -> "Translated", - CellID -> 8640607 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineFormula" - ], - "\:306b\:3088\:3063\:3066\:4f5c\:6210\:3057\:305f\:4ed6\:306e\:4efb\:610f\:306eMCP\:30b5\:30fc\:30d0\:3082\:ff0c\:540d\:524d\:306b\:3088\:3063\:3066\:53c2\:7167\:3059\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "dee8e553-24f0-48f0-8acc-152dfdb9f66b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 47.4688}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Additionally, any other MCP servers you have created with \", Cell[BoxData[ButtonBox[\"CreateMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/CreateMCPServer\"]], \"InlineFormula\"], \" can be referenced by name.\"}], \"Notes\", CellID -> 676868825]" - |>, - CellTags -> "Translated", - CellID -> 676868825 - ], - Cell[ - TextData[ - { - Cell[ - BoxData["\"\!\(\*StyleBox[\"application\", \"TI\"]\)\""], - "InlineFormula" - ], - "\:306e\b\b\:53d6\:308a\:5f97\:308b\:5024\:306b\:306f\:4ee5\:4e0b\:304c\:3042\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "64645f8d-8be6-4525-873d-7291fcd17bd7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 49.6531}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Some possible values for \", Cell[BoxData[\"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\"], \"InlineFormula\"], \" are:\"}], \"Notes\", CellID -> 16022026]" - |>, - CellTags -> "Translated", - CellID -> 16022026 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"ClaudeCode\"", - Cell[ - TextData[ - ButtonBox[ - "Claude Code", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://code.claude.com"], None}, - ButtonNote -> "https://code.claude.com" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"ClaudeDesktop\"", - Cell[ - TextData[ - ButtonBox[ - "Claude Desktop", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://claude.ai/download"], None}, - ButtonNote -> "https://claude.ai/download" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Codex\"", - Cell[ - TextData[ - ButtonBox[ - "Codex", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://openai.com/codex"], None}, - ButtonNote -> "https://openai.com/codex" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"CopilotCLI\"", - Cell[ - TextData[ - ButtonBox[ - "GitHub Copilot CLI", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://github.com/features/copilot/cli"], None}, - ButtonNote -> "https://github.com/features/copilot/cli" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Cursor\"", - Cell[ - TextData[ - ButtonBox[ - "Cursor", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://www.cursor.com/"], None}, - ButtonNote -> "https://www.cursor.com/" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"GeminiCLI\"", - Cell[ - TextData[ - ButtonBox[ - "Gemini CLI", - BaseStyle -> "Hyperlink", - ButtonData -> { - URL[ - "https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#gemini-cli" - ], - None - }, - ButtonNote -> "https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#gemini-cli" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"OpenCode\"", - Cell[ - TextData[ - ButtonBox[ - "OpenCode", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://opencode.ai"], None}, - ButtonNote -> "https://opencode.ai" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"VisualStudioCode\"", - Cell[ - TextData[ - ButtonBox[ - "Visual Studio Code", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://code.visualstudio.com"], None}, - ButtonNote -> "https://code.visualstudio.com" - ] - ], - "TableText" - ] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> { - "OrignialExpressionUUID" -> "029b7096-9489-4107-9585-bff52ec51287", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 51.7444}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"ClaudeCode\\\"\", Cell[TextData[ButtonBox[\"Claude Code\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://code.claude.com\"], None}, ButtonNote -> \"https://code.claude.com\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"ClaudeDesktop\\\"\", Cell[TextData[ButtonBox[\"Claude Desktop\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://claude.ai/download\"], None}, ButtonNote -> \"https://claude.ai/download\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Codex\\\"\", Cell[TextData[ButtonBox[\"Codex\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://openai.com/codex\"], None}, ButtonNote -> \"https://openai.com/codex\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"CopilotCLI\\\"\", Cell[TextData[ButtonBox[\"GitHub Copilot CLI\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://github.com/features/copilot/cli\"], None}, ButtonNote -> \"https://github.com/features/copilot/cli\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Cursor\\\"\", Cell[TextData[ButtonBox[\"Cursor\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://www.cursor.com/\"], None}, ButtonNote -> \"https://www.cursor.com/\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"GeminiCLI\\\"\", Cell[TextData[ButtonBox[\"Gemini CLI\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#gemini-cli\"], None}, ButtonNote -> \"https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#gemini-cli\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"OpenCode\\\"\", Cell[TextData[ButtonBox[\"OpenCode\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://opencode.ai\"], None}, ButtonNote -> \"https://opencode.ai\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"VisualStudioCode\\\"\", Cell[TextData[ButtonBox[\"Visual Studio Code\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://code.visualstudio.com\"], None}, ButtonNote -> \"https://code.visualstudio.com\"]], \"TableText\"]}}]], \"2ColumnTableMod\", TaggingRules -> {\"Alphabetized\" -> True}, CellID -> 822744168]", - "Alphabetized" -> True - }, - CellTags -> "Translated", - CellID -> 822744168 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[ - { - "\"\!\(\*StyleBox[\"application\", \"TI\"]\)\"", - ",", - StyleBox["directory", "TI"] - } - ], - "}" - } - ], - ",", - StyleBox["server", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\b\:306f\:ff0c", - Cell[BoxData["\"ClaudeCode\""], "InlineFormula"], - "\b\:3084\b", - Cell[BoxData["\"OpenCode\""], "InlineFormula"], - "\b\b\b\:7b49\b\b\b\:ff0c\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:30d9\:30fc\:30b9\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:3092\:30b5\:30dd\:30fc\:30c8\:3059\:308b\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306b\:7528\:3044\:3089\:308c\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3e8e2dda-86a0-42f9-bfd9-5e3fe77c89ce", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 30, 58.4215}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[BoxData[RowBox[{ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"], \"[\", RowBox[{RowBox[{\"{\", RowBox[{\"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\", \",\", StyleBox[\"directory\", \"TI\"]}], \"}\"}], \",\", StyleBox[\"server\", \"TI\"]}], \"]\"}]], \"InlineFormula\"], \" is used for applications that support directory-based projects, such as \", Cell[BoxData[\"\\\"ClaudeCode\\\"\"], \"InlineFormula\"], \" and \", Cell[BoxData[\"\\\"OpenCode\\\"\"], \"InlineFormula\"], \".\"}], \"Notes\", CellID -> 408735390]" - |>, - CellTags -> "Translated", - CellID -> 408735390 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineFormula" - ], - " \:306f\:ff0c\:4ee5\:4e0b\:306e\:30aa\:30d7\:30b7\:30e7\:30f3\:3092\:53d6\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b2bbd28e-9def-4d71-a170-9910cf0ce6cc", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 31, 2.16895}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[BoxData[ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"]], \"InlineFormula\"], \" accepts the following options:\"}], \"Notes\", CellID -> 210835414]" - |>, - CellTags -> "Translated", - CellID -> 210835414 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "ApplicationName", - ButtonBox["Automatic", BaseStyle -> "Link"], - Cell[ - "\:30d5\:30a1\:30a4\:30eb\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:969b\:306b\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:540d\:3092\:6307\:5b9a\:3059\:308b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "EnableMCPApps", - ButtonBox["True", BaseStyle -> "Link"], - Cell[ - "MCP Apps\b\:30b5\:30dd\:30fc\:30c8\:3092\:6709\:52b9\:306b\:3059\:308b\:304b\:3069\:3046\:304b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - ButtonBox["ProcessEnvironment", BaseStyle -> "Link"], - ButtonBox["Automatic", BaseStyle -> "Link"], - Cell[ - "\:8ffd\:52a0\:3067\:4e0e\:3048\:308b\:74b0\:5883\:5909\:6570", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "ToolOptions", - RowBox[{"\[LeftAssociation]", "\[RightAssociation]"}], - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:306e\:30c4\:30fc\:30eb\:306e\:52d5\:4f5c\:3092\:30ab\:30b9\:30bf\:30de\:30a4\:30ba\:3059\:308b\:305f\:3081\:306e\:30aa\:30d7\:30b7\:30e7\:30f3", - "TableText" - ] - } - } - ] - ], - "3ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f23e9b68-a782-4758-a0d2-5341fc873957", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 31, 4.77231}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"ApplicationName\", ButtonBox[\"Automatic\", BaseStyle -> \"Link\"], Cell[\"specify the application name when installing to a file\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"EnableMCPApps\", ButtonBox[\"True\", BaseStyle -> \"Link\"], Cell[\"whether to enable MCP Apps support\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], ButtonBox[\"ProcessEnvironment\", BaseStyle -> \"Link\"], ButtonBox[\"Automatic\", BaseStyle -> \"Link\"], Cell[\"additional environment variables to supply\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"ToolOptions\", RowBox[{\"\[LeftAssociation]\", \"\[RightAssociation]\"}], Cell[\"options to customize behavior of default tools\", \"TableText\"]}}]], \"3ColumnTableMod\", CellID -> 5781547]" - |>, - CellTags -> "Translated", - CellID -> 5781547 - ], - Cell[ - TextData[ - { - Cell[BoxData["ToolOptions"], "InlineFormula"], - "\:306b\:4e0e\:3048\:308b\:5024\:306f\:ff0c\:30c7\:30d5\:30a9\:30eb\:30c8\:306e\:30c4\:30fc\:30eb\:540d\:306b\:5bfe\:5fdc\:3059\:308b\:30ad\:30fc\:3068\:30c4\:30fc\:30eb\:30aa\:30d7\:30b7\:30e7\:30f3\:306e\:9023\:60f3\:3068\:3057\:3066\:6307\:5b9a\:3055\:308c\:305f\:5024\:3068\:3092\:6301\:3064\:9023\:60f3\:3067\:3042\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ce4de93c-6ac3-4247-a144-a8594ed8c4e7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 31, 8.22143}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The value given for \", Cell[BoxData[\"ToolOptions\"], \"InlineFormula\"], \" should be an association with keys that correspond to default tool names, and values specified as an association of tool options.\"}], \"Notes\", CellID -> 194628054]" - |>, - CellTags -> "Translated", - CellID -> 194628054 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPToolOptions", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions" - ] - ], - "InlineFormula" - ], - "\:3092\:8a55\:4fa1\:3057\:3066\:ff0c\:4f7f\:7528\:53ef\:80fd\:306a\:30aa\:30d7\:30b7\:30e7\:30f3\:306e\:5b8c\:5168\:306a\:96c6\:5408\:3068\:305d\:306e\:30c7\:30d5\:30a9\:30eb\:30c8\:5024\:3092\:53d6\:5f97\:3059\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6225fed9-0289-4fcd-8c22-6d2aba97ddd3", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 31, 10.3821}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Evaluate \", Cell[BoxData[ButtonBox[\"$DefaultMCPToolOptions\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions\"]], \"InlineFormula\"], \" to get the full set of available options and their default values.\"}], \"Notes\", CellID -> 373152932]" - |>, - CellTags -> "Translated", - CellID -> 373152932 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "9d6dfff4-9339-4797-b5a4-0465243614d3" - ], - cellobj$$ = - CellObject[ - "6bb0ef42-f35d-4abf-90ff-713d4d9b1efb", - "34a8eb32-c7dd-4d35-8a70-68f233d266ee" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 232538245 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell["XXXX", "Tutorials", CellID -> 527661061] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 261427081] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 13526417] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 212002675 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - TextData[ - { - ButtonBox[ - "Claude Desktop", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://claude.ai/download"], None}, - ButtonNote -> "https://claude.ai/download" - ], - "\:7528\:306e\:30c7\:30d5\:30a9\:30eb\:30c8\:306eBCP\:30b5\:30fc\:30d0\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 12425924 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[{"InstallMCPServer", "[", "\"ClaudeDesktop\"", "]"}] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 335891485 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 245509191 - ] - }, - Open - ] - ], - Cell[ - "\:3053\:308c\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 259865962 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - {"UninstallMCPServer", "[", "\"ClaudeDesktop\"", "]"} - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 737154476 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 123756569 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 41740382 - ], - Cell[ - "Wolfram|Alpha\:5c02\:7528\:306eMCP\:30b5\:30fc\:30d0\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "09585a39-239d-4525-a702-852a1304e523", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 13, 29.3399}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Install a Wolfram|Alpha-specific MCP server:\", \"ExampleText\", CellID -> 449301050]" - |>, - CellTags -> "Translated", - CellID -> 449301050 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"ClaudeDesktop\"", ",", "\"WolframAlpha\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 150383749 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframAlpha\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframAlpha\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframAlpha\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframAlpha\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - {"\"WolframAlphaContext\"", "\"WolframAlpha\"", "", "", ""} - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframAlpha", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframAlphaContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram Alpha. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframAlphaResults, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframAlpha", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframAlpha", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframAlphaContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram Alpha. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframAlphaResults, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 313779972 - ] - }, - Open - ] - ], - Cell[ - "\:3053\:308c\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 399936197 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "UninstallMCPServer", - "[", - RowBox[{"\"ClaudeDesktop\"", ",", "\"WolframAlpha\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 198080673 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {14.8133, {0.0, 14.8133}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframAlpha\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframAlpha\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframAlpha\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframAlpha\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - {"\"WolframAlphaContext\"", "\"WolframAlpha\"", "", "", ""} - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframAlpha", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframAlphaContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram Alpha. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframAlphaResults, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframAlpha", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframAlpha", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframAlphaContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram Alpha. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframAlphaResults, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 198269203 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 5261232 - ], - Cell[ - TextData[ - { - ButtonBox[ - "Cursor", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://www.cursor.com/"], None}, - ButtonNote -> "https://www.cursor.com/" - ], - "\:7528\:306eWolfram\:8a00\:8a9eMCP\:30b5\:30fc\:30d0\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6089beab-5bce-45f3-bc0a-90ae3774e411", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 13, 55.8237}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Install a Wolfram Language MCP server for \", ButtonBox[\"Cursor\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://www.cursor.com/\"], None}, ButtonNote -> \"https://www.cursor.com/\"], \":\"}], \"ExampleText\", CellID -> 120840969]" - |>, - CellTags -> "Translated", - CellID -> 120840969 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Cursor\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 22630592 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {14.8133, {0.0, 14.8133}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"], - ImageSizeCache -> {10.0329, {0.0, 10.0329}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframLanguage", "Cursor"}, - "Location" -> File["C:/Users/rhennigan/.cursor/mcp.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 161372422 - ] - }, - Open - ] - ], - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0\:ff1a", - "ExampleText", - CellID -> 90894920 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"%", "[", "\"MCPServerObject\"", "]"}]], - "Input", - CellLabel -> "In[2]:=", - CellID -> 191369803 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 239382756 - ] - }, - Open - ] - ], - Cell[ - "\:3053\:306e\:30b5\:30fc\:30d0\:3067\:4f7f\:7528\:53ef\:80fd\:306a\:30c4\:30fc\:30eb\:ff1a", - "ExampleText", - CellID -> 75003197 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"%", "[", "\"Tools\"", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 3498306 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve information from various sources that can be\\nused to help write Wolfram Language code. Always use this tool at the start of\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve information from various sources that can be\\nused to help write Wolfram Language code. Always use this tool at the start of\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"context\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"A detailed summary of what the user is trying to achieve or learn about.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"A detailed summary of what the user is trying to achieve or learn about.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluate Wolfram Language code for the user in a separate kernel. The user does\\nnot automatically see the result. Do not ask permission to evaluate code. You mu\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluate Wolfram Language code for the user in a separate kernel. The user does\\nnot automatically see the result. Do not ask permission to evaluate code. You mu\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"code\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The Wolfram Language code to evaluate.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The Wolfram Language code to evaluate.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"timeConstraint\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The time constraint for the evaluation (default is 60 seconds).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The time constraint for the evaluation (default is 60 seconds).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 617071689 - ] - }, - Open - ] - ], - Cell[ - "\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 89790 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "UninstallMCPServer", - "[", - RowBox[{"\"Cursor\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[4]:=", - CellID -> 75436074 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframLanguage", "Cursor"}, - "Location" -> File["C:/Users/rhennigan/.cursor/mcp.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[4]=", - CellID -> 444785425 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 222750794 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:3067\:5b9a\:7fa9\:3055\:308c\:305f\:30ab\:30b9\:30bf\:30e0\:306eMCP\:30b5\:30fc\:30d0\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 308124308 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "config", - "=", - RowBox[ - { - "LLMConfiguration", - "[", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[ - { - "LLMTool", - "[", - RowBox[ - { - "\"PrimeFinder\"", - ",", - RowBox[{"{", RowBox[{"\"n\"", "->", "\"Integer\""}], "}"}], - ",", - RowBox[{RowBox[{"Prime", "[", "#n", "]"}], "&"}] - } - ], - "]" - } - ], - "}" - } - ] - } - ], - "|>" - } - ], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 76109352 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["LLMConfiguration", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Model: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["Automatic", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Model: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["Automatic", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tools: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TemplateBox[ - { - "\"PrimeFinder\"", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"PrimeFinder\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - TooltipBox[ - "None", - "\"A description would help the LLM figure out tool usage and increase the call sucess odds.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "A description would help the LLM figure out tool usage and increase the call sucess odds.", - "Tooltip" - ] - ] - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"PrimeFinder\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - TooltipBox[ - "None", - "\"A description would help the LLM figure out tool usage and increase the call sucess odds.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "A description would help the LLM figure out tool usage and increase the call sucess odds.", - "Tooltip" - ] - ] - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[{RowBox[{"Prime", "[", "#n", "]"}], "&"}], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"n\"", - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Selectable -> False, - Editable -> False, - SelectWithContents -> True - ] - }, - "ClickToCopy2" - ] - } - }, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - DefaultBaseStyle -> "Column", - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Column" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMConfiguration[ - <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 487117364 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[{"\"My MCP Server\"", ",", "config"}], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 21747423 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 442285411 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"ClaudeDesktop\"", ",", "server"}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 11491438 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"My MCP Server\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"My MCP Server\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"My MCP Server", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 9021714 - ] - }, - Open - ] - ], - Cell[ - "MCP\:30b5\:30fc\:30d0\:3092\:524a\:9664\:3059\:308b\:3068\:ff0c\:81ea\:52d5\:7684\:306b\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:308b\:ff1a", - "ExampleText", - CellID -> 10980744 - ], - Cell[ - BoxData[RowBox[{"DeleteObject", "[", "server", "]"}]], - "Input", - CellLabel -> "In[4]:=", - CellID -> 613836516 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 195564913 - ], - Cell[ - "\:7279\:5b9a\:306eOpenCode\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:7528\:306eMCP\:30b5\:30fc\:30d0\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 196941572 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[ - { - "\"OpenCode\"", - ",", - RowBox[{"File", "[", "\"MCPServer\"", "]"}] - } - ], - "}" - } - ], - ",", - "\"WolframLanguage\"" - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 148821666 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframLanguage\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"MCPServer/opencode.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframLanguage\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"MCPServer/opencode.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/MCPServer\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "\"ReadNotebook\"", - "\"WriteNotebook\"", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframLanguageContext", - "WolframLanguageEvaluator", - "ReadNotebook", - "WriteNotebook" - } - |>, - "Name" -> "WolframLanguage", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.5.8", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframLanguage", "OpenCode"}, - "Location" -> File["MCPServer/opencode.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframLanguageContext", - "WolframLanguageEvaluator", - "ReadNotebook", - "WriteNotebook" - } - |>, - "Name" -> "WolframLanguage", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.5.8", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 237250156 - ] - }, - Open - ] - ], - Cell[ - "\:540c\:3058\:30d1\:30bf\:30fc\:30f3\:3092\:4f7f\:3063\:3066\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 26813673 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "UninstallMCPServer", - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[ - { - "\"OpenCode\"", - ",", - RowBox[{"File", "[", "\"MCPServer\"", "]"}] - } - ], - "}" - } - ], - ",", - "\"WolframLanguage\"" - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 17984903 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframLanguage\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"MCPServer/opencode.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframLanguage\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"MCPServer/opencode.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/MCPServer\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "\"ReadNotebook\"", - "\"WriteNotebook\"", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframLanguageContext", - "WolframLanguageEvaluator", - "ReadNotebook", - "WriteNotebook" - } - |>, - "Name" -> "WolframLanguage", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.5.8", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframLanguage", "OpenCode"}, - "Location" -> File["MCPServer/opencode.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframLanguageContext", - "WolframLanguageEvaluator", - "ReadNotebook", - "WriteNotebook" - } - |>, - "Name" -> "WolframLanguage", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.5.8", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 129625832 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 29220225 - ], - Cell[ - "\:7b2c1\:5f15\:6570\:306b\:540d\:524d\:4ed8\:304d\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3092\:7528\:3044\:308b\:3053\:3068\:306f\:ff0c\:9069\:5207\:306a\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:3092\:6307\:5b9a\:3059\:308b\:305f\:3081\:306e\:4fbf\:5229\:306a\:8fd1\:9053\:3068\:306a\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "1647d126-387c-4d2a-b3c0-25308d9a15b7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 17, 21.4977}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Using a named application for the first argument is a convenient shortcut for specifying the proper configuration file:\", \"ExampleText\", CellID -> 94695596]" - |>, - CellTags -> "Translated", - CellID -> 94695596 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "installed", - "=", - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Cursor\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 906504493 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {14.8133, {0.0, 14.8133}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframLanguage", "Cursor"}, - "Location" -> File["C:/Users/rhennigan/.cursor/mcp.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 710664039 - ] - }, - Open - ] - ], - Cell[ - "\:540d\:524d\:4ed8\:304d\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3092\:4f7f\:7528\:3059\:308b\:3068\:ff0c\:73fe\:5728\:306e\:30aa\:30da\:30ec\:30fc\:30c6\:30a3\:30f3\:30b0\:30b7\:30b9\:30c6\:30e0\:306b\:57fa\:3065\:3044\:3066\:9069\:5207\:306a\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:304c\:9078\:629e\:3055\:308c\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "75143b64-6950-4439-ab4e-e8aa7789917d", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 17, 24.2815}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Using a named application chooses an appropriate configuration file based on the current operating system:\", \"ExampleText\", CellID -> 346682070]" - |>, - CellTags -> "Translated", - CellID -> 346682070 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "location", - "=", - RowBox[{"installed", "[", "\"Location\"", "]"}] - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 523030807 - ], - Cell[ - BoxData[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 353835081 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "UninstallMCPServer", - "[", - RowBox[{"\"Cursor\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 392670233 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframLanguage", "Cursor"}, - "Location" -> File["C:/Users/rhennigan/.cursor/mcp.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 284181525 - ] - }, - Open - ] - ], - Cell[ - TextData[ - { - "\:3053\:308c\:306f", - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ], - "[", - RowBox[{"\"Cursor\"", ",", " ", "\"WolframLanguage\""}], - "]" - } - ] - ], - "InlineFormula" - ], - "\:3068\:540c\:7b49\:3067\:3042\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "fab82311-c097-479a-ba99-238e14ca9f3b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 17, 26.2219}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"This is equivalent to \", Cell[BoxData[RowBox[{ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"], \"[\", RowBox[{\"\\\"Cursor\\\"\", \",\", \" \", \"\\\"WolframLanguage\\\"\"}], \"]\"}]], \"InlineFormula\"], \":\"}], \"ExampleText\", CellID -> 1920962]" - |>, - CellTags -> "Translated", - CellID -> 1920962 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"location", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[4]:=", - CellID -> 48037739 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframLanguage\\\".\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"WolframLanguage\\\".\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServer" - ], - "MessageParameters" -> {"WolframLanguage"}, - "Location" -> File["C:/Users/rhennigan/.cursor/mcp.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[4]=", - CellID -> 302307231 - ] - }, - Open - ] - ], - Cell[ - "\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:3092\:8868\:793a\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f8efeccc-6e66-49ca-8827-568107899971", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 17, 29.3256}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"View the configuration file:\", \"ExampleText\", CellID -> 149072456]" - |>, - CellTags -> "Translated", - CellID -> 149072456 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"FilePrint", "[", "location", "]"}]], - "Input", - CellLabel -> "In[5]:=", - CellID -> 335506767 - ], - Cell[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\"\n\t\t\t}\n\t\t},\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\"\n\t\t\t}\n\t\t}\n\t}\n}", - "Print", - CellLabel -> "During evaluation of In[5]:=", - CellID -> 282062260 - ] - }, - Open - ] - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ] - ], - "InlineFormula" - ], - "\:306f\:ff0c\:9069\:5207\:306a\:9805\:76ee\:3092\:524a\:9664\:3059\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "53d9f4e8-496f-4961-94d3-6c221d0aa0f4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 17, 30.7827}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[BoxData[ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"]], \"InlineFormula\"], \" removes the appropriate entry:\"}], \"ExampleText\", CellID -> 42867279]" - |>, - CellTags -> "Translated", - CellID -> 42867279 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "UninstallMCPServer", - "[", - RowBox[{"\"Cursor\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[6]:=", - CellID -> 253990441 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {14.8133, {0.0, 14.8133}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"WolframLanguage\\\" for Cursor.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"WolframLanguage", "Cursor"}, - "Location" -> File["C:/Users/rhennigan/.cursor/mcp.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[6]=", - CellID -> 7341223 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"FilePrint", "[", "location", "]"}]], - "Input", - CellLabel -> "In[7]:=", - CellID -> 64199273 - ], - Cell[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\"\n\t\t\t}\n\t\t}\n\t}\n}", - "Print", - CellLabel -> "During evaluation of In[7]:=", - CellID -> 791713903 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 53291102 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData["ApplicationName"], - "ExampleSubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "db0eeef7-ca96-41b6-b017-d5d68a584281", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 21, 54.4219}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[\"ApplicationName\"], \"ExampleSubsection\", CellID -> 28408491]" - |>, - CellTags -> "Translated", - CellID -> 28408491 - ], - Cell[ - "\:7279\:5b9a\:306e\:30d5\:30a1\:30a4\:30eb\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:969b\:306b\:306f\:ff0c\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3092\:6307\:5b9a\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2bcfd4dc-bbaf-43c7-aeff-2330324381b0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 21, 56.3056}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Specify the application when installing to a specific file:\", \"ExampleText\", CellID -> 204435331]" - |>, - CellTags -> "Translated", - CellID -> 204435331 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - RowBox[ - { - "File", - "[", - RowBox[ - { - "FileNameJoin", - "[", - RowBox[ - { - "{", - RowBox[ - { - "$TemporaryDirectory", - ",", - RowBox[{"CreateUUID", "[", "]"}] - } - ], - "}" - } - ], - "]" - } - ], - "]" - } - ], - ",", - RowBox[{"\"ApplicationName\"", "->", "\"OpenCode\""}] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 55916214 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {10.0329, {0.0, 10.0329}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\b841db14-612f-4518-9f63-3259fd57c876\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\b841db14-612f-4518-9f63-3259fd57c876\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/MCPServer\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "OpenCode"}, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Local\\Temp\\b841db14-612f-4518-9f63-3259fd57c876" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 58879659 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "FilePrint", - "[", - RowBox[{"%", "[", "\"Location\"", "]"}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 43562374 - ], - Cell[ - "{\n\t\"mcp\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"local\",\n\t\t\t\"command\":[\n\t\t\t\t\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/MCPServer\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"enabled\":true,\n\t\t\t\"environment\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}", - "Print", - CellLabel -> "During evaluation of In[2]:=", - CellID -> 479423654 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 415696729 - ], - Cell[ - "\:7570\:306a\:308b\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:540d\:3092\:6307\:5b9a\:3059\:308b\:3068\:ff0c\:7570\:306a\:308b\:8a2d\:5b9a\:5f62\:5f0f\:304c\:793a\:5506\:3055\:308c\:308b\:5834\:5408\:304c\:3042\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "144884d6-bd8e-4ad7-bbb0-71dd6629cf8c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 21, 57.8656}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Specifying a different application name can imply a different configuration format:\", \"ExampleText\", CellID -> 202571397]" - |>, - CellTags -> "Translated", - CellID -> 202571397 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - RowBox[ - { - "File", - "[", - RowBox[ - { - "FileNameJoin", - "[", - RowBox[ - { - "{", - RowBox[ - { - "$TemporaryDirectory", - ",", - RowBox[{"CreateUUID", "[", "]"}] - } - ], - "}" - } - ], - "]" - } - ], - "]" - } - ], - ",", - RowBox[{"\"ApplicationName\"", "->", "\"Codex\""}] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 441466746 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Codex CLI.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\ae4de281-7dc1-40c4-9358-3199055d26ed\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Codex CLI.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\ae4de281-7dc1-40c4-9358-3199055d26ed\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/MCPServer\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Codex CLI"}, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Local\\Temp\\ae4de281-7dc1-40c4-9358-3199055d26ed" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 235092707 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "FilePrint", - "[", - RowBox[{"%", "[", "\"Location\"", "]"}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 225304008 - ], - Cell[ - "[mcp_servers.Wolfram]\ncommand = \"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\"\nargs = [\"-run\", \"PacletSymbol[\\\"Wolfram/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\", \"-noinit\", \"-noprompt\"]\nenv = { MCP_SERVER_NAME = \"Wolfram\", WOLFRAM_BASE = \"C:\\\\ProgramData\\\\Wolfram\", WOLFRAM_USERBASE = \"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\", APPDATA = \"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\", WOLFRAM_LOCALBASE = \"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\" }\nenabled = true", - "Print", - CellLabel -> "During evaluation of In[2]:=", - CellID -> 448791615 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData["EnableMCPApps"], - "ExampleSubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "000d3748-47b2-47d9-b302-97b6acd33b13", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 4.60623}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[\"EnableMCPApps\"], \"ExampleSubsection\", CellID -> 171295630]" - |>, - CellTags -> "Translated", - CellID -> 171295630 - ], - Cell[ - TextData[ - { - ButtonBox[ - "MCP Apps extension", - BaseStyle -> "Hyperlink", - ButtonData -> { - URL[ - "https://modelcontextprotocol.io/extensions/apps/overview" - ], - None - }, - ButtonNote -> "https://modelcontextprotocol.io/extensions/apps/overview" - ], - "\:3092\:30b5\:30dd\:30fc\:30c8\:3059\:308b\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3067\:306f\:ff0c\:4e00\:90e8\:306e\:30c4\:30fc\:30eb\:547c\:51fa\:3057\:306f\:30ea\:30c3\:30c1\:306a\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:5f62\:5f0f\:3092\:5099\:3048\:3066\:3044\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "34418dbb-f025-44df-b156-b876a98d8fb4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 6.11737}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"In applications that support the \", ButtonBox[\"MCP Apps extension\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://modelcontextprotocol.io/extensions/apps/overview\"], None}, ButtonNote -> \"https://modelcontextprotocol.io/extensions/apps/overview\"], \", some tool calls will have rich interactive formatting:\"}], \"ExampleText\", CellID -> 871732603]" - |>, - CellTags -> "Translated", - CellID -> 871732603 - ], - Cell[ - BoxData[ - GraphicsBox[ - TagBox[ - RasterBox[ - CompressedData[ - "\n1:eJzsvXd0FEm+7/nO7t5z9p99Z//Yt/e+ve/dd/0dP3Nn5t6ZaTe2Z9rNtKEt\n3U3TtKV903TTBhrvvfBOeBAghLwB4SUhJCFAEkIS8t6VVL5K9rvxi6oslYQE\nclAl9I1zPqioyoyMiMys+kTkLyP/YcrHz7z9v/2X//JfPvs/1T/PvD7jt9Om\nvf7VhP9b/ee5jz6b+s5Hb7356EfT33rnrWm/nPK/qzd/qv6pV8v/H+o1mJiY\nmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiY\nmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiY\nmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiY\nmJiYmJiYmJiYmJiYmMZ16u7uDmqYmMZCCvR5MtZhYgpkCvTxz3OJKdgSj6XA\np0B/lxByL9DV1UVGQKD3HyH3CkxDS2y3/tPdPGYD/ftDhkdnZychhBByxwj0\n7xwZPqPdrxlvvn4rVw70eUkIIYQQQsYfAzn+eEj0cDISOjo6CCGEkCET6N8v\nEvz0PU76+vq9mPzHyW/VLu3t7SNisOfpSLdDCCGEEELuLHeir3a7bfXnqP4x\nNPdKup2bG23V1tY24v0oeQwGt9tNCCGEEHJHGayX3CuMhfa7XX9A/t6Ljj7Y\n2HJ/Lzf2wUj3o8vlCghOp5OQQeNwOAgh5J4j0N+tJPAM1psC6Xa36w/cytP9\nvbav8wZjutUcKf05ufw1fNy/rcaq6wb6O5GMMex2Qgi59wj0dysJOIP2+CFw\nNzzO7XVRVz+ePpCfB/v9pLeaw7Bvv8M/DsXj5S50amdv0+1jtzsU9juPzTYo\nbOTuYLUSQgghgSfQv4f3AIN1rEFzF7zQqfoW4uhdXic1xo7FV/3j0o2/t5vT\nMdDpdvOL9+fmxjh5m+6juHD9RiniT6fiUOxx7I9KHBH7ohJGlf0BYl8kIYQQ\nQsgd5k44TAAYqT8eUBxNPImUzMtoajah0zturH31FmPpwfZ8qME8/2egWHPj\nOoLZYkFU8lms3nkQWw5GYG9kLA7HHSeEEEIIIeSucTA2EaFHIhGy5xA2H4jA\ntcJi5axuPa5ujKUPFOsSLM9xHeyzOf3Hzf1jzR06XtuOI/HJWLgxFCdTL6Cm\n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\nxo206B346qsZWLJoDr6Y8SWSLuajW22rKuck5nw1DbPmL0JaYTnSjmzAKrWt\nLlWbtOhQfP3lDCxeOBtfzZqN1OuVSunNCNV1yNTHuqPlGhZ89jWu1plReTlJ\nlWcGVq5djSXzZyH02Ek424z4FuXnn0/E21/Mw8b1yzFn1nTMWroBlWYnrEXJ\n+GzmcuXyLthqc7F2wdeYM3+uyutzrNkdAYtbtZFa/+jWxfhClWf1zqOwOp2D\nOp8GQtqxzbsP6eaEEELInWU48S3y+1xblI41i77FNzO/xopNe1Dd6kT1lSTs\ni0yEu7MD1ooMbNp/DBZrMxIPbsGatSGIiI3D/p1bkXHtOiJ3bUNBQ4tnbusu\nOy4m7Mdq5SlrVy1H5JlMtElZ6Of3nJ93tttRU5qPitoG7/HmmStfyllVkoey\nmnqYGytQWlGp368uLUBVfbPvGUMyT2F7SxE+fe15HE2/4ZsPyHc8qPwbqopR\nWlWj42HkPZmPxVRdhAspZ5CemQ2z06XnBLc2V6KgpAQut8zz6dDrVdTU6TnG\n0WlDYU46zp8/i9wbZejsavPO+a3KWZyDtPR0VDWZ0FJXjjLZlsyhLutclXXO\nobCiRsfZd7bZUOWtg9S3zWlCSUGB6hPY9ZxG1SqvVFWujMu5cCg319eMvPHn\nSz55Ccv2nkBhbiZSUtNQYzLrWBuXpQ4FN4r184lkTN9cX4ILqWdwISsbFpdb\n31st7eS01ONyRiqy8gpGNH7uf97TzQkhhJA7z3CfT2TMmeh29bzulOeOd3l9\nST+Ppc377JQ2OHX8bjc896o5tWd0Gr7Q7plX0e1oVR7heTZ75yBdgn4+lvzc\n2Cdd6D3Xt8NzTEiSZxB1eZ7j4zvOfM/XkWcLuZEVswFTPpmHBmdbv8/H7O6b\nv3i1fs/b7p2efkFnl+dZQj3rdfp8/6bnb3nbUY9tG/l0udDV3TOPaO91Onzj\n1b3r4JlLtMs7fztgHDvd2v095fX4+aIPn8Pifef8Dhjj3PI8T6nDv9y96uZ5\n39OO6FVHQgghhAQ/w/VzQe5jk/G0zo4ed/HlIXM4e1/Lcxq7vTGs8rnvr39+\nsrw8G7LTddNzFG9dBvp5Xz8v134eErR+PjC3e+6sHCMOXD4TifiUK8qNhz8v\nycjLOVBZR+HZuXJ+uM04FxeGs5eL9LO97lybEkIIISTYGImfBwOD9fPQPn5u\n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\nbggCVyFk/CKx6YH+LghG6Of0c0IIGY847KaAuwkh4x1Laz3jXPqBfk4/J4SQ\n8YZcUxcvCLSbEEJqOIbeD/Rz+jkhhIw35J7QwHsJIUT8XO7Pbm9jHLo/9HP6\nOSGEjCv0714LOFcLIcGBpbUO7bxPtBf0c/o5IYSMKww/N9HPCQkGxM85j0tv\n6Of0c0IIGVfQz8ckrSYhuPbZaJZH8gq2+t0t6Oc3Qz+nnxNCyLhiBH4uc6W7\n7M1wOUy95k132JrQ5moNuOcEgrtRd2nrjjYzujvsuv1vt7zbKc+Tv/1yg3VH\nqWPfefI9ZbLAZhn5fcZS1q4OGzrbrXp7d6odLX3+3+ZqUW0V+HmM6Oc3Qz+n\nnxNCyLhimH5utzYqL29GVXkhKsqua2fzeFsdSorzkHPlIsZbTHvvut/sfzc5\nmPL4ofqnLG9TLpyZcQ7xccdwLS+rlyv3l29ebhaKCq6OiuvKthrqynrlJa8b\n68uRfuEMamtKR7QdOa6qKgpxPCkGp08moKmh4o44us3SoPst/u/lXs1Eft6l\nO9onGOw+pp/3Ziz4+WDyGamfl9LPCSFkfDAMPxdHq68tRUjISrz55mS8MeU1\nLFu6QHl6gXJDE3bv2opPPn5fxyeIb/X3TFJ5TxzJ/zN5bbiRpbX3//t+3ncZ\n/7zEk/vm7XNb9b5wKweTMeBbLaO32U8dnPYmX91bmqt96/fNT5avU+2XlBCp\n/8pnA23HP3/ZplP1gSIjwvDSS8/rtj969IDqFzUOmK+89/VXnyNk7XJ9naO/\ndhlMnQ13zsvNxNR338TJE7G6P2a4bm5OBh595I+4mH5Ol8doI2N7sk/65t13\nf8qy1ZU38NlnH2HSqxPx5YzPUFlZpLbbcFN/oGdf1/v+f7u6GZ/J6/LSfCQf\nj9H7ST6Xzz6f/inmzP5G1/Om46Wfcg+0zb7HI/185Nzaz2P79XOn0zlqfj4Y\nRx9NP5e+hZRf6mGxWLSfm+jnhBAyfhiin1u8nrZ5Uwh++9tfY+Y3M/DtrK/w\n0EP3YdHCuWh3m7F0yXw8/vgjarkmn9eJGxp5yLiluJ24kVPHxzRrlxenMdxI\nnEk+M/4vrmO89vdzcWLJ21hfx3IYeTua/fJr6BV3Iq/7erEx9iwuaZSzv3gN\nu81z7UDylu3KcvLarcohdX/0kYf19qXMRn6ynLwWd5Vlc3My8cc//l77rpSz\n7zakTlI3ycfhraP2PuWqr7zyEl577WWcOZmox3sND5Ry+ecrZZQ6Pv/cM/j6\n6891vIiUQ/Lyd1CjjC1+delv38t6K5Yvwt/8zV/rvoG/p8r4/LRPP0Tu1Qxd\nR9m/nvZr0Nu0euNi/Nu6b8yN5C9j5t///vdwcP8upJxL1uPnhu/7e3zPfm3U\nMSlyrLU29183ud4g7eh2eI47aZfjidF45uknUVtd4utDrlP9zW1bNvjyN46X\nnjaqv+02ZV35v2f/N+iYmeFcI6Gf92aofi5jz/35udDXj0drDJ1+TgghZNQY\nqp+3esZBn/zL43jrrdfVr5JL0Y6Y6HBs27pBO9faNcv0WOrWLevx5ZefYe6c\nmcjLydKuKx5z+VIa5s6diRlffKrH3Utu5Gnv36aWlxgJ8afS4mtYMP9bXFT/\nlzxrqoqxYd0qlJVc847H1qtl8tQ21mHf3h16O/PnfYtslfeWzSGYPv1jrF69\nTPlXsc/Dww7uwZczpmHGjM+0/5lNtX3G5+twIilGjzfP+PxT7N8bqtyyZxxc\n/tbXlmHHjs1ISzmF5csW6u1s3LBGx3eIw61auUR53188Xq1cMDEhSuf3xRfT\ndPuYmqp0fT/6cCr++q//X7z91hTs2rlVO6yxHWkj8e5FC+foNlqo/ubnZes6\nb1i/Gt/73ncx4ZknsSFkFWoqi32OfKMop1e+MpYvn015fZLeV+vU8lLetWuW\no7qyyLc/EuMj8dWX03UZt2xeh4a68n7jy6vUOo89+kfMmfMN7rvvF8i42DNW\nLnVavGiu3m/lpddVG23S+X45YzriYo4qp9qPo+EHfGPh0j6bNq5Betpp/Z6U\nIyvjPF5++QX8y7/8M2bNnIHkpFg41PuH1H47dTJee7FN/T8uNgIHD+zW2w1X\n+UYeO4Q1q5f3Xzfd/lK3T9VnK9TxcAPZWWl4eeIL+Lu/+zt9rUOuR8iye3Zv\n03kZfUf5/5eqTaRtoiIP+8bZww/3t80b+jiT/kTo9k1qv03TdTh39viQx9Hp\n5zdDP6efE0LIuGIY4+cyHinO8utfP6j9WBzE1FSt71mUscOQtSvwfeWQ33z9\nhXZmGU8WbxTvEHd7eeKLeH3yq+qzWXjhhQn4+KP3tNe88vKLmKe8vbvThiOH\n9uG//tf/S4/Py32HZ08n4re/fUj7nzGWfikzBd///nf1+gvmz8ajyh2fe+4Z\nzJr1lV7vF7/4D+W+W9DublVuuF857VNYsnie7hOI3x4+tNcXGyJudaPwKp57\n9hnt00vVcpJfQvwx37ivbLeivAAPPXg/3nv3Ld3HmKnq+Lvf/Vq57wp97WD1\nKo+fy7Kp55Px+GN/wiefvI/Z336l3PYR7ddSh08+/gB///d/h3ffeRO7/fxc\n1qtRfYo335is20PaT/6++cbrqKwoxOaNIfjRj36AP//5Me3vpcX5vv7KjcIc\nfPLR+7589+zapt+X+KP77/+lbqOZ33yhX0ufQsZ2U86dUHV+GnNmf63KvhQv\nvficrktfp5Q+0oH9O1V9HtF9kYkTn9fXTYxrHJcyU/HjH/0QVy9fxJXsdPzk\nJz/S+/izTz/CyeQ45bLL8Kc//UHt53J9T2tG+ln853/8DCmqjWR9w89ffXUi\n/u3f/gWffvIBjilvlraXWBfpC8mYtRxfcuxJm8hn0veQPsPCfuuWjEdUP/FD\ndexJn+KRR/6gyyF+/tqknu1ERnic/LVJr2CmcuoOtR9ln0h5Jc8vlIP/6U8P\nI0m5vmz/9ck3b3PTxrVoV/2zfXt26DZatXIxPvpoKia+9BwqywuH5Oj085uh\nn9PPCSFkXDGM+HPx84L8y/h8+id45pm/4NkJT+nx2vNnT2hHFQf61a9+oWMe\nOtstOHhgF375y//U9xXuCt2K++77JQquX9YeJA717//+I5xXniju+sILz+ox\nU8lbYmSeeOJRPYYdsmYZ3n57Sk8sh9fPZaxVxmfR5dDxCT/4wfdQpDxb/OyV\nV17E+++9o8fFn37qz7qcp5LjceZUIp78yxN4+OHfo7mx0m88/pqO20k9f1Iv\n98AD92kHN2JzZBlxZPFKGV83YmAktvs+VV+JyZex1Geefko71scfv6fHaVtU\n30XKI9cT7r/vF6iqKELOlQzts1eyL+jrBf4eHHH0IH7+85/q6wwdbov++/Of\n/0y9H6bLIn0LuUYh/SH/8X/pa0h+Rr7is9LveO21V/S4tIwJyxj/tGkfKhd9\nWW/rE1XGBx+4X99rKvvvA9Ve3/ved3RbGNcdZBsyn+NLyjVljLyrw6rH/B+4\n/1fKPQt0+bMyUvDDH3xfu7nU7Z/+6R/0/pB1pcxXVXmkTtIfkGNivmrXV195\nSeXfE5cu5ZXrMA+qdq+puuGbJ2ayKr/E1Uj8kOQl/T5xdsPdJ774fL91k36b\n9DeaGiv0ejHRR7Bb9Vk8r4/iwQd7tiPH9KuvTNR+3txYhT/84Xc6VsntnZvo\nvalvaX/X7any72+bcuxL2eRYl35Hljo+5XqEjOcPJcaFfn4z9HP6OSGEjCuG\n4ecy1ituLd4iXh26YxMmTHgSf/nz43psVfz82Wef1vEIbcpfJRbkN795EHU1\nJfj00w/x5huvaZcx7r2TsUiJSZF4CVlOYlSefuoviFWu9rvfPaQd/u23Xtfx\nIYYrG37+4x//SM+XImPuMnYpY57i8zKWKWP24ucyfvnjH/9Qx2HLex+8/452\nLRlXlvhjw89rq4p1DMiHH7yrlnkXP/3pT/QYcS8/Vz56n/LSmMgjvusFEnMt\nTpuXk6nHnieofoC0g5RF6iVx3+KAMr79Q9V/yFT1lGXFo8W9/eOyJT+5hiBl\nNeLHxVtfVP0Wud5g+Lm0sVwXkBh8fz+X/Ix8xVHFOycpd5wz52t9HUL2m1zf\nkHFn8ctHHnkYDysXFZd9b+rbup814ekncf1ats/PnfZGXLxwFv/rf/2dHjeX\nWHaJl/lv/+3/waGwPdq3xc894+fpGnF1GUs34raFScrHZcxf+kQPP/w75VgH\net2XIK+jo45oPxenNWJnpkyepMf2DT+XfSI+LO02Wf2dPbv/uv3pj3/Q13ek\nPyH5GHM2SrvKdh7ybkeOJWmn17x5FV6/ovt5Mp4v25RjVWJzpFx1NaX6ukDf\nbUofwmH39FOmTJmkl/ngg3cQGrpFHwv085FBP6efE0LIuGIY8ecyTizjmeLR\nRjp5Ig7/83/+rY6blnFTcUjj/s8zOjbl13q9eXNn6c9k3BndTh3XIuOwEkMu\nr8XVJTZl4kvP61ht8Zzpn32i4znEx4378Aw//4nyc/krriSxLHJvpPiQxFC8\n/97byrWn6pjxX/3yFzrGJC31HM6dO63HiyW+xZi/T8q5d892PPTQAwhXLnbu\n7An9WmJCJG9/P5fx0R3bN6paOyHx9xJ78wPlo+LfIV4/l7LL3wXzvoUnRt+l\nYzrEW/NyMpQ/X8APvv897cGSj3FdQMcHrVmOPz78e/2etJHN3KDjK2ScXpxU\nxuclzt3fbY02Eafsydelr0WId8q4sCwvvrlyxWLdN5H8JeZnypRXcSHtrGqX\nU0hW+1HaQcb4DacUn5397df4/e9/q/efjBHLdYWnnvyz3k+yXekj/fSn/+7z\nc71fslJ9+0u2Lfk++eQTOq77iccf8fWN/K8dSFz3Aw/ep+OIdP9Nj2u/pMft\ngTaFGzNmTNP3x8ryk9Xx0V/dpOwSZyR9Gt3+XXZ9L8KVyxd0G8o1ivvv+6WO\ny5K+nV1tS9aTY0TmIfr3n/4YiQmR3n3nxsaNa/AH1aeQvsXr/WxTnFy2Kdct\n0lJPIyEhWsdRSR9P7mnw74PRz4cO/Zx+Tggh44ph+Lk4isShiGvJOOSJ47H4\n9OMPtFOKg0ussDGHiTiUxB//53/+XMcSSAyFxL7IuKbEACxeOFd7sHi9OPuH\nH76L//7f/wZLFs9X3mTVY+Z/+7f/H56d8LRyqcpe91DKOPQ//dM/6r8yLirL\nSixwg/i58ibxrTemTNavZ37zpfa8c2dPI+Nimp5rRsppxH3LMsvU/3+hyunx\nqyjt4RI/4fFIT2y4zM0tce1yfUD87ZSqm8RCSzyz3dKonGwhHlF9DHHLzRvX\n6n6JOKf0Ud5683W9rLSL+PMPfvh9rF29XPl9ku5DSDk8jp2i6vErPUYubSTL\n3H/fr7R7Sxnk3lsde9HnWTqyTWlHX75njuv+h4y9S7yQ9knVxhKDL14t/9+y\nKUTHEJ04EY+srHQdRy330BrlkTwL8rPxHz//qb5PU8bs9dwm6q/U6V//9Z/V\n/o33XBv44Q+QrZxcxu6N/eI/r4nMDS9xI7L/161dcVP/Qo4Vud9TnLa8zOPn\n0r+Q+4TlXgDx3KTESNVP+I0n3kXV5fnnJwxYN4lD/7U6tuT+z7NnknSsueRl\nHJNy78Le3Tv09R2pqxwvX3z+qf78/fff0XNYynLSl5NrIYsXzdN9lRcG2KaU\nd+6cb3Rf5pJqyyi137/73X9T58jhIT0fin5+M/Rz+jkhhIwrhhHfIs4lMSfi\nri+/8qK+tj/xpRd0TK/4iv8c4DJuKLEREnMgfi7uIXHmEg/97jtvaF+VGAnP\nvHTNygF3a5c/p9xSYrZzrl7Uripx3f6O45lzO1OP/0p8iXij3E8ocTCeOfma\ntIvJ/ZXiUQX5V3Rsi5TjHe92xZuMebq1F2emaId/443Jel4O6SPIch7PbPCN\nnz/44P06/mX6Zx/rsVRxs7SUk577Cr11lzJK7MTXX32hx3rFzd+YMkm5/yld\ntibVx5F5WV568XndtykuyvXNV2hprcfOHZvVtj1t9LIqg/xf5g+R/oTkL9uR\n+Rf7el1TQ0++nygflTluZB4RPfaulpc2lNjxWd/M0HWWfSLXKyap/oXMa/7S\nxOcRun2jJz9vzIzMpy51lDghHaut50Zp0NcIpE4SYy1x+RLvL/2DfNX3MPaL\n/xyWsm2Jb/rXf/0XXFfO33ceR8lbxu8lHkfmQzHmsb+m8nxXlU3a+vXXX9Ux\nS0UFV/Tyxtzu/dXN0/6f67rJvQsvvjABsTHhuk5yfUDmWZf7AyRWRfqcMkYv\nsSoSk3M5O02v88Ybr2Hy5Ffw2bSPdEy+rNvvNlUby2cSkzVR5SltOUWVVdpW\ntsX7Q0cG/Zx+Tggh44phPj9UXLq4MEePLco9feLR4ip6rj3/Z2gq15C4c4mF\nEZ/zeG6DnvMlKvIQMtLPac805i4RpzLmvRZPFcdPOX8Spd55Ff0dRsbJMzPO\n++YDlJgIiS8wxsTFEwUjfqWy/DoS4iL0mL+Ur++84+J0Epshc+lJvpaWOlxI\nPa3nnDHKJ37+0EP362XS088gWv2VuSNdfeouZRB/bKgt0/N+SBvJOLQx5i3e\nKXE4Mt+3OKkxXm3E0UhZZFw36thh/VfHSHvnEpf8ZTvGPO19x9B751uKa8bz\nQ73XAGQuRHnPcGJpv+NJUbpdLqaf1WPWPWWp0y58RbVLf88XEne+qsrTrPat\njJ3Lthv99ov/OtJ3k7F56SfZ+4n3kGXFyyWfluaqXl4v9ZX7gONij6KsJN93\nzOTdtm6e9pe6Xb18wdfHM55TKmPynvmHqlSf4bLOS/KRPp30mcS3ZQ4fmd/T\nWLf/bWb6jjM5BmV7Mr+kXHtxDDCfPP188NDP6eeEEDKuGKafexzdpO+5k/vv\nPPcq1vm81P9ZQOKMco+dcS+j/F/uKfSsZ+7lmeJN8pnvmZkqT4n/7i9+V5aR\nz+SvsV3Jr8cHTb1iQKRPIdvU23W13uSbxnNo5HPj+UWSv/8zksTPf/bTn+ix\neolNNpY18upbdxlT7Wr3bLPv8+QlX6P9+ptvXLYtnxl1ND7zPOdo4Hjmvvnq\nZzb5XXswnh3Uq4zedjHu++07ru3frv5IWSQvYz/pe0Fb628qsx4HV177618/\noJ14oHgPKbv/sdL7WPOUse+zrm5Xt05v+xvHqL/3SzvJfb7GNvzz8t+m//u3\n2qbkL9vpWW/wcef084EZT34uZaafE0LIOGcEfi6IF8vce0Nfb+jrDLT90d6u\n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\n3z7pey4Y5+E55bXS55Xt19ZUYPvWDfqvp7w3t0Pfesj/jXY2zjtj3+XnXcGm\njWuRmBCt/dy/PTzt1t7reph/G/ofS57t97w/2sfzTefMAN9bMm5gaq4fcBlC\nCAkm6Of086HSrX4Pk08kYP26lT7fld/VJPU7vjN0s/4dvJx9UbtDVWWJ/kz8\nfNXKxer/paiqKNGf6bFslV9e7mXt+qUlBdi8Ufl5Vrr+vW2or0ZqyilcTD+v\nHUTG2VJTTmPO7C+1i9XVVujfWvnNFedNOX8a9bWVvhiSxoYapKjlxe/SUs/4\n/NzjJBZcv3YV5tYmn1vL9mUsNl+9n5mRqpeT7crr86p8tZK3eq9a1UEwHEnG\nwyUfWb6yoljXLftSuj6vxFmOJ8Xi4IHd+vMLaWdx40a+ao8GPTYpeUtb5eZm\n6/pJ22Wp98+fO6nq56lL8Y3rWLFiEfbv26le5+s6nFfbKC8r0vW3WVtwKeuC\nWueU2n6Jz21LSwq1A0nbXs7O0B7Ud9z0en4Ozpw+ocd8jfcryovRqNpefEna\nW/aDsQ8lf6ljitpWXk62zkPylHXECzMvpnq8S5WrSvXXUs6fRGZmmq6XMQYu\n5ZI+1lW1X4z9Ie8XFuR63r+Spcsqecs+O5mcoNvp4sUUvT/8x09lXy1aOBth\nqn2lPaScjQ21en/LMdHcVOsru5RR2i9D5WO0hWxDrgXJ2K20k7i2OL5sT5bT\n14hU+WTfyDUQKZ/kIX2v2upyVb4Q3ae8lndZ5xcVeQQHD+7Wx5zk11Bf5Yut\nkuNRyiXIcSblkuNG2kPOAdnn9XWVupzyuqjwms9/+54LUm4p49w532h/lrJI\nXiePx+u6St7SF5b2l3XkHJEyuF3WPvVQdVP7YNPGNfq80/1g7/Z2hm7R52yO\n3k8W3z42nL5QHfd2W4tqr3rd9tfzr+p8S4oLfOU2jk05J+R9eW80j2fJT8pw\nSZVd2qxSfd8MdJ2luakOJ1T71NaU09EJIUEP/Zx+PlTkd178YvmyBcqp8vTY\nmPymiq/nKmeT38mj4Qe0l+7bG6qXtVqasWb1Uu0MhddzcThsr85LHGP7tg1I\niI/S46CLF83VY912WysOH9qn3ePY0UOIiz2mXUmW+XbWFzhyZL/yqkLtKhFH\nwxAfF6l+e+Nw5NB+7RbiKvL7f0ht53hSHEJ3bMYW5VJup03/VovfyJh2WupZ\n/VsteUvfQtwz/cJ5XZ72Njtio48i6tgRJKhyHNi/S2/vxPFY1ReJ0d4gjrBj\n+ybteLJd2abEGMh2xUnEz6Vc8n/Zroyvils0NlSrMh/T9QtZu1znIedhUlIM\nIiMO6fdley2mRr38ooVztAtKe4mrSPuJD0k9olUZpS7GOLJ4jrTfju0b9fYk\nr62b1ym/O+MZc9RxPG7taQdUeU+dTMSe3du1q8u+jVDtHX7Es/8Oh+3D3j07\nVHs26jpKOaUtEuKisH3rRqSnndN5yjqyr8MP78eNomvaqyRPGUs+dGiv9laX\navtK5Xiy3Cnl3FI/aWu5DiI+tmvnFr0f9+zZpp1cnFj22fZtG3Ubhqr9I58b\nfQL5e0HtvwXzZ2GXckm5LiPH2kGV7zHVhnJcSLvIsSBl37p5PQ6r8iUlRuv2\nMbz7wH51nKhjLUHlvXXLOrXuYV13qav8lTaR8kkfy9NW25QrFmm3lGtCq1ct\n1ftaHy9qH6xUTntcXzPZjX2q7WxWk3bDI3rbMRppX/Fo8U1xY9lHcozs9NZR\njjupu8SL2ZR/9j0XpPzH1XH47awvdX11H1H1K3aFboVZ+iLqON6tyhkTHa7O\niX2q3vv0sSr9xt71UC6tzkPZlnxm+Lm8v379Su3n0heWdaOjwr3HdLs+D7Zt\nXa/7kHIcblHtlpgQpY83aUPZ/9K2nmNzty6znIPyfSH9vtE4nqWfI2WVc+Zo\n+EG9r+RYra+r6jcWR7YjdZTzU8p9t+9VIISQoUA/p58PB3EWcYzwwwf0NWoZ\n85Rr4XIsSSxr+oWz2rPFt2VsS35fxc8lxlXGizdtWKO9aV3ISm+8ilWPQc6Z\n/TVyvOOn4mjiXCdPJOjfcxnXFL9btnSB8q0C9VvuwAW1nQULvtVjhMb2khJj\ndfy49BcalAe3tjRrJ9y4frV2BmO8/+zpE7pv0KleX8u7go0bVuvfcPEncUeX\nKtPK5Yu0Y8r4sjiN9EMilb+J+4mnSH1Xrlyi/UgcTH77ZUw3IjxM1022lXw8\n3uvnbu18586e1O+bleOIkyxbOl+7hrTrBfU3QzmLtJl4p+TlsFuUC23ACZW3\nw2bRY6Ab1q/CFeXtJcoRV65YrP3TZjMjXPWLDCddsniu7n84nXaf0xhuK2WR\n8c8zp45rL9+oHFHqJO0iZdy7dwdaWpr0mO/6dav0OLqMf86bNxN5aj/J/pJx\nzLWrl2tXE/fao1yqtrZat6E44aGwPeo7o1W7mnis1EWub8h+va7ac/++UO3e\n0jcyjgNZV8awZXtyDIi7iqc5HDbtyCuWL/Td9yD1aFX9F2kLvbyqp+S9bct6\ndU43oEntD1nfV/Y53yg3zPSNP+vYZ9VnWK+2Lf0th92q6rBd199mNevyiHvL\nMSPHx9kzyboOa9csU+0Zo/JwaucWjOsD4rCyr+SYk77o4kVzUFEu91sc1/tD\n6iD7dt7cb3Q/Vsq1UB2/NdVl+trS3Dlf6/NHzpd1a1fo/TPQuSCOuXLFIt1e\nci+H9PmWLpmv95mcmzKOb1XHq5xzyWp9KePN9YjWLuvv53Icut021e5HvX0z\nzzUm6XsmqnNDrm1J30L2hdRRzrslqp5SftnGRnVuyzFeXOwZJ5d+tNRHjpcC\n1TeX16NyPKv9LPtmfcgqvQ/E/eUclXYYaAxdztmigmuqf39An690dEJIsBLs\nfn679ejngaFbx13kY5VyU/mtljE5iZMQRxG/iDymjqOoI9qlJabD38/l91wc\nSn7blyyZ54tXl9/PNauX4apyKPFgcV0ZL5OxeHESuUbviZNZoscIJcY3Qn22\nTDmJbEuW1XHIJ5OUnxxElHIlI2UoXxf/dnvjcfT17sZavb2amnK9rjiQ5Ok/\n3i3eH6Zei7vK51Ku6Mhwb4xxh/bJEOV34ucydivj7lGR/z975wFdR3nm7z1n\nz/lv3+wmm82WVEpICKRQNtRA6AQChAQIhBZC70mopjdjG2ODce9NLnKTe5N7\nL7JlW+623HtX7+9/nk+ay+jqju6VrmTJ1u855z22bpn5pt7ne+edb1JtsOee\nHb3lLfE80M+n48T9vfZRK8N8CgvznPMwrdLSIucarKsxXlvGpY1wPkKukXWD\n+y6ibt0Dn8Gn8DUcr2/vrq4eF/AflglHw79Y30CNQveuX9bfu3qSjWudTxJd\nunZ0bWT79e/X0zmtD/lc8rfUJTBttj9twsXaetsPLyNXPr/qO8We23X67BPX\nZ6uk3Hle+vSJLrdJLpV5kism10ob23zs7wdlke/4y1lZf26utgLP53OR+2u9\nttDvWJ1ZWaNOO1jfPuR0Xds9D/7MWx94ebD2m/3BzaOqrRPGja7atubWL/ta\nvufH+CzXUchHc71j/NjKz/BZ+g+u3tybLtcJ/L+ZVyfPsalT4fig7Sz3WG/7\nUjvCOt68aZ3rm9AejpEvt1mZ25fJCfN6jWPh0P7I51kvrC+2Oe3d5/1Nn+PL\n9V+5Tlle+sDVlsNrP/d1RPs5+/aM9Clu3fl15yxD5TFS5vo4rE/fz9mOfm07\nrowns2/26dOtcv6uZtwi9eUNtT9zzHB9iWN0lHeMsr44rmP6eUmhu9aX5fVR\nuF5y2DufyM8VCkVzjcbw81iO3pz8PC8vr4afb8mWn9d1v8E/+nqeQS1Bl84d\nnZ+S18PJyQdTT0xtMHXAuEQHz0/4fcU5qdl1NTKffORyqfgF9SGtP3zH1TVz\nrxp1AtRKcE2dfCPT5rcXlzvk/V7zHX6P8Z4tnudwHZwaZf7P6+R0uQ+Q+8rw\nri5fdHD50uDYKsOHDXbXxmnP7l2VXsR3ydnl5x1zNSDUJuNvbb354hDk5/Fq\nvIXag/btPnL5Pr7XrWsnV7OAw3/S/iM3r+nTK+8Pxc/7ee6Ln5eXlbjP9yJ/\n7O7vK6/sr3jzoH+zds1K+8BbZtwHtyHPTE7Seau3DLgJbeJ9/IV+A+/NmjnN\n5Sbpy9AfInfLMlFb7Pu5X9fB5+h3UFdMnTdtxJ9wR1zQH7MQ5+WaAvW/5INd\n3b83L9ySGifykLgk9f+V7pvnctBTXa61zN0HTA6eWoax3nphn+E6CPn1bl6f\nibayH2xw+0GZq6VhW1LzTJsr70coc+2M9vNg7TSfoTZoyJD+3nmg2K1v+gXk\nWulbfO75aJ53rguObcL3u0e+X+7cleD/K719kPw5uVvyu/RTaBeeyPZ1/UNv\n/blrKVX3J6Z5fTP3/aprK597/RT2x/Hsf940XA21t69QF8Q+g7t/1vETlyNn\nPiwfy4nD9vXcFs+NeSwcPuAcmfXP51l2HJbrPX7tuL/+/drtY0cPue1QbTnw\nc29d+uvZ93P+dfdNDB1QVT9f7HLyY0YPc8vNNue6Dzl8jmf2H/Yp5/FDK+tn\nqu2b3vrYvXubaxvrvSH2Z5zeXRNYm+nqceh7cD2Bfk+NcVpK8l371qzKcH1o\njjWN56hQKJpzJOrnR71/8XPclvzz6eXnhzw/3yY/r2Pgb9zj+NqrL7rfbn4T\ncejPPKfhN5Bc2Bed2rs6hsrc3sfud5Hfc7+WhLHbcFR+h/EG/I/cGHXsfJ7f\n2kkTx7q6Fa5t53q/x9TR4HbUCpC7xQXJL9InGFlVl04/gD4DXkT9LL5CTU1R\n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\nffjhB7zPH3R/Z2Rk2BVXXGaDBw90f7OtW7V6zebOnVN1bB+3Xbt2Rr7P9n3s\nsT95bdnqaplee+1V++STtrZ8+TK3H/g56AMH9nv7cWWfgnsRyLn7MA/ayH7O\ntP19dPfu3e4YqI2dO3dYm4/fc+sE1m9YZy88/6RN9Rzdn3bPnl1t5coM93du\nbo5riw9/f9LuI9eevLxc69mjiw0bMsg2blxfdd2quKrNhyPLcuLE8WrToL2V\n+3+x9/q+SPsPHjzg1gHw/qftP7ZVmStiLkfYNDm+9u/fF5mOT77nqrxOm3Ny\nTrj9gPb63su//voGvr93795IPyZsOv77+fl5ngvvqebR/fr2tC6dO1p6+jSb\nNm2yTZky0bZu2ez6OEGYl/+9Q9468PdLYDswDebD+iwtLYksb/B7rEv6WP76\n5/OZ3neHetvm6NEjgeWoiLTfh/XmT+9k9BGFEKIxwKH83xPO76+++rJt377N\nvV5f5Oc1Q34uPw+Luvg565d1ynrv1Olz56e89uqrr9j48ePcZ0aNGuH8uPJY\nPF5rnQbb6plnnvI+v9T93b17V/f3a6+94ubBdnvxxWfdvytXrrQePbp5vtvd\nRowYHtnGzz//jOsfzJo1y+6++3f28ccf2erVq918x45Ns3Hjxnrf6+58lXaR\nW2cakydP8valMrevDxs2xMaMGW1dunS21NThNnNmuvXt29v7XlfnlWHgoJ91\nbGfr1mW5v9PSRlmHDm2973V27Wff6/R5e/fv5k0bvbaMdjF7Vrr7LjnZzz/7\nxPl5hrcO3n/vTRs8qK/Lt+OGc+fMtPnz57icL/2KDRvWeut5jI3zjuPFixe6\nY4FaovTpU91nx3jHNG3P8JaTHPxY73NHvHVHWzp67Vy9amWNZVi3NivmNGfM\nmObmzXtjx4x06w/27NllE7xpjxs3xoYPH2yTJo1322fmzOmRz/AvHs3xu3fP\nbtcWct7p6VMsLzc3ZDrjXB9rx/btNmniWO+9NJs5Y7p7Dfr362WzZqdXazvv\nTZ40IfIZPBl3p7+xeNECN0+Wa/36te791aszXR+Idi1bvsR7PatqOxbZ9OlT\n3PfoK072lmn8uDSb6vUBctw55Kg3/5727juv25TJE1xfgvPjjJnTXB6fZaCv\nABs3brB582bbxInjbIm3PoUQ4lSD69aTJk2MOBu/na1bf+h+SyZOnGhLliyu\n13Tl5zVDfi4/D4v6+DlQRzJ79kzPGdfbI488bB9++L5b9xzDW7ZsqToWa/dz\nIN89dGiK22YvvfQXW7ZsqXP0nTt3WkbGcvvgg/dcjhJnHz58qM2ZM9veeON1\n79wxwe2j+Pm2bdm2Zs0ae/TRR6xr185emzY4Z3viiUc9X27vudc01+4hQ1Kc\ns8+aNbNqHjtcPvShh+63kSNHeE6a7i3LQ66fMG/eXPvLX1703H1ore0fOmSg\nN/2pbtm7dvnM1ah81vETVwuxYcM6G9C/t7um0MPzwpme865atcJ69epqixbO\nd7lf/HzPnsqa8/aftPb6CSM8R93mcsjt231kw4cNtuXLlrhjcvr0yd55c66t\nXLHc9QuoVznhrePWH71rs6q8vG3bDy3N82lctEvnz5w3c8x85s2H14LwOvU4\nsaf5nnNd57Q9uzp/5vMsL867Zs0q175hXvtY1x296W+uquOhf9GhQzt3bK5Y\nsczz7fFuP+na9XO3LOadBoakVJ8OdT2sp359etp0b76bPM8dNLBv5FoE/+f7\nM9Knutw565l13tlbRv/6BDnu3r27u21KX4X+COu8e7cv3PmBefl+TruZD+R6\nXt++/cdu2XF5fJv59/a20/y5s926H+d5ONtnhbee2G6zZ8+wvn16eNtzpdsu\nvbx1xOdme32Idt7ysD22Zdet/kYIIZoSzpPp6dPtiy8+t0WLvswvkOOaNm2q\n+//ixYvcbyS/q7VdH4+F/LxmyM/l52FRZz/33A2mTJlk/fv39Zx3iKshf//9\n9zy3XuZ82D9mE/Fz8u7kvPHyt956w32Xv/Fo3Jh89pw5szx3/3Nk/+H8wbU2\ntu3zzz/rrrkB31+6tDIXT+0ItS8rV35Z07Fw4QLn4Uz3/vvv9T67xC3744//\nKVKTQx9h5syZ7v+9evV0/YfaoK578OD+tnbtGueG1EwMHtTP5npel+65JHlo\n3LeL55YV5ZXtX7ZssXNG8rWdPmsfqVfv3aubra2q72P/pfaFfKwPfjnH80Ly\nyh99+K6bZ67nxu3btY7U2NBHyMioXAfkgPFQjpNYfl7bNNt5ns8x45bR8/d+\n/Xq56XTu3DFSJ4PrLl68wP2/U6dPLXtrZb+M2if+5tjcuXO71x+a4dZHp88/\ndbl0/LzzF9Wns2zpYvf9t9542X1mrrfNe/fu5vovpaVlnp/3c9+fNHGcu56w\nIqPyGg0+PMTrMzjnHjrY9Xs4RyxavNCb5yw3rY8+fMfl7bMCfj4idahzd+Be\nZ79vQl+Qfuc8r73du3Wy1OEp7jNcZ2D7AOvhc68tfvv5+4tOHdy64zpGH28/\nEEKIUw38iZzXoEEDI6/hhR9++IG7huszePAge/nlv9aofYyH/LxmyM/l52FR\nVz8/XuXn1HxzfL733jtuv+nbt4+rFSdH/eWxGN/PN23aZC+++LzLu+POMHXq\nZHvttZftnXfe9pwny/UF3nyzVeQ75NVfeOE5d754/vnnIn7O/BcsmO/+Tw0C\n7k6OHNgPuJd0wID+nvMP8/z8PluxIsO1kVw6+wgwHz9v0Lt3L/v00/a1tp/p\n46IDB/TxPLSy/oK6hh7dOztPw1WptegdcDZytF9436FuAuf0/Rx39GtQqNX4\n/PP2kXsSyVGPSB3irYsJbj7kzMlJ450dO7Rz25DjhTxu1upV7ju4aar3HeeT\nXj9gfVUdjg99mNQ40wTqXgYO7OumP9z7/JCUAc65cX9q3v3p+37O9sCryTOT\n/x4zZqTrx1DrM3VKZT6cfHlwOtSV4M/vvdvK6x9Nc30GctQLFsx1xzjrl9ei\noZam8xcdXO6edU7/cffund7vxwBX68M6+Lj1e+68EPTz1OFDIn5eXFzkLW9b\nV2c0x/Prkd75kRqVbl072ahRw91nMj0XZ90Cy/tp+zbuflMf5k1unT4B3xdC\niFMN/Grq1Cmu1pOcGXC9mfy5D7+x1Lfyel3vtZef1wz5ufw8LOrs51X327Ff\nkJ9u06a1+5t6tF/96sZqdWmJ+Dnb6vHHH7U777zDjecCOOldd93pak3YjvQF\nnn32aVcTt3HjRmvb9mOX22Y/pQ3ZVXUE1KP495Ky7al38Wtttm/f7s3jds81\nF7uahHvvvcdGjx7l9gvm49dOB6dBrQy5/Noo8vY36h7efvu1SK06uXhqldu2\ned8tH95Hfpb5kk9OGdzf1UZTw/JJuw9tT9X9quSUMz3HA/yc93BNwOHffutV\nW5u12jZv2mAfvP+W81Xy5m0+ft/VdHC8MI2VVdOgxiMlpb87Ttq1/cjlnjd5\n36XuJjt7i2vLO2+9FjpN7kuF+fNnW58+Pdy2pM4En8brV1TNh2OSOp7x40a7\nWh1qwvv17eFq7Jkv9R/79u91uXeuLeD/saaDo+P51KlQN8/rqzIr+yu9e3V3\n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\ncOHCau9xPrj//vvt448/jrzGOaFPnz721ltv2ezZs+NOn9+XDz/80Nq0aVPN\n8wcNGmTvvvtuvbcX7ejdu7e999577rzUWLC+lyxZYjNmzLAtW7ZUmz+vc2xM\nnjw55rapbZpsL/ZZ1vucOXPcOZdzLevpiy++cOdbIUTLgPMkOXTyn+RE8LNo\n+A2Rn8ePZP2caAo/j1fbIj9PPpqbn8faPxJl+PDhdtVVV9kjjzxiv//97+3l\nl192+zRO8eCDD9q//du/uT5/Irz22ms2ceLEaq9xTvrf//1fu+KKK2z+/PnV\n3sOHvv71r9uzzz7r9kFgP7znnnvs7rvvrpEvxnfw3+g+QJBY5zzw18mAAQPs\nZz/7mc2aNava+xy7OGrQX2O1neMnGv+1DRs22G9+8xv7p3/6J5fnrwu0j/7Q\nNddcE7n26UO+Bc8lB1Pb98NgG1999dX22GOP2Z133umc1/88/3bp0sXGjh0b\n+Tznsx/+8IduPbEfgH+OCsJ5Dbgue99999nf//3fO5f16datm/3Hf/yHffLJ\nJwmuheosX77c/vu//9seeOABd16KdS7025AMbD+cmePgnXfeibxOf+nGG2+0\nhx56yP74xz/a559/nvCxxbmV9X3XXXfZo48+ai+99JK7DsL5lv2d/R5nF0K0\nHPhN4XeMPHmsc4n8PLGoq59z7pWft4w42X7OtmL/iobthhP6/UO2G/sA247X\nY7lkNOSu8TDyq7j1GWecEXFspvGtb32rmp+zf5D7+8tf/hLJAXI+efPNN+2b\n3/ymy0G//vrrzr2B63bf+MY3nKtFuxRe+O1vf9t5kM+CBQvs/PPPd37ouzI5\nhzfeeMNatWrl8u0cZ8CxRo4Wd8bbybNyfqNd/jTJY+NVtJP1cccdd7hpv/ji\ni+599v/PPvvMXn31Vfvoo4/cMvvEajsuisfj0Kxn3JPXgOmnp6fbv/7rvyaU\nbw/CNC666CI755xz3DL58yd3z3J36NDBbV/guB4xYoRb7o4dO7p+0caNG23I\nkCER56O9tJvp8t2f/OQn7roBrkkfgPcHDhzovBH3D/ZLyO+cffbZbn1wjgDW\neadOnWzevHmRbed/h/aQZ/7KV75ikyZNikyH79x2223O3esD/Qr8fu3ate5v\nzlFhbUgGjhn6U7fffrvrv/jQPzjrrLNc7pz58LuaqJ9znPz0pz9124B1w/7g\n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\nTjl+/Hj3/B72RZz8jDPOsHfeecfuv/9+u/32292+B2vWrHHPx8nMzIxMm2c2\n8j7PvZk/f37k2e5Mi2ny3PR58+a59/1zn/969HNWY8Ex4c8/jLvvvttuvPHG\nas8fCoNlePrpp+0rX/lKnZ/pyfMHyNP/z//8j3Xs2DHyOsc46/bf/u3f3Dle\nCCHEqYP8PPmQn8vPw6Kl+Dn7wfnnn++eAQk4+oUXXhg5rzzzzDP26KOPRj7P\ns7nef/995/ME/+e1QYMG2eWXX25f//rX7YEHHnDPoGe/I3fOs9sB3/7nf/5n\nd35asGCBvfDCC/b888/bXXfd5WppgO/x2rPPPmvXXHONjR492r3evXt3N11e\nv+SSS1yun+Oxd+/e9uSTT7rXaQv7dm1w/L755puuHxDGrbfe6p7PnijkuOmD\n1NXPfW666Sb79NNPq72WnZ3tcvisMyGEEKcO8vPkQ34uPw+LluLn7Nf4OY5M\nLhc3bdeuXeT9xx57zIUPzy0n3z5kyBAbOnSo+z+vrV+/3l566SWXP58wYUIk\nf04u/vvf/777l/w5wXG0YsUK59wffvihnXvuue519uVrr73WrrvuOjfN3/72\nty6Xzb6Mq+Oxf/3rX+1f//Vf3fvUhJx99tkuf02NyLe+9S037yB4Lt7Ms9YJ\n6m0uuOAC17fgvWioz6G9KSkpkdd27drl5rV8+XIXTIfjxoe6lrPOOqtefs7x\nzDWLDh061NguN9xwg9suO3bsqPN0hRBCNA3y8+SjJfi5/5xTcpzy88Sjpfk5\nLkyuu3PnztVy0H/84x/tqaeeivxNjpqadB/+T84dcPYrr7yy2vTfeust+8EP\nfuBqZP7u7/7O+THg79R04Ofk3XFv9ln+/eSTT9xnqIunzoTXH374Ybv33nud\nh/u5ZlyaGhBq2+lb3HbbbTZixIhq86cuHB+/9NJLXdBe/Ptv/uZvXO1N9HFH\nzT21KosXL4681r59ezvvvPPcdQXipz/9qaWmpkbep0bonHPOqVGLQv1KRkZG\npEYnDPpEsWrdyeF/4xvfqFazz/mH/gHHsxBCiOaH/Dz5SNTP+Z09nfycZZGf\n1x4txc/pe5KDjs47+1BHctlll9nkyZNdHnnKlCk18ufUkAN159/85jdt+PDh\nrn6a/e4vf/mLc3/2N9wbv+aYoebloosucr5/5plnurw5+yt5ct/PuS+V+nf2\ncfoJjzzyiPNt2kq7yWnzXV7H8/HtDRs2VGv/yJEj3TLwnh/49de+9jXr06dP\njeOO+z1xcO4R9RkzZozzdpaFePHFF119DmRlZbl+wr//+7+7/kawlh6vp+/B\nNGPB+uQ6wI9//GNXQ0RdPesMOH/TJ/j444+r1dWzPD//+c/d94QQQjQ/5OfJ\nRzw/P3L4kB04cKDB/DyeoweRnzdttBQ/J1d+3333ufstY0HNBvd0Un+CF7Mv\nRdefs18B5xw8mpoMcu579uyxrl27OicG7uG84447XL1Gjx493PfxdWrHqY1h\nn6Um3R8DhhoTXJjpk3+njgU/J6/MmCkcg3379nX153wOH4537yfTog3k4MPG\nLqQ/kWj9OY5/zz33OA9neTp16hQ5lsn/U4tDG2NBH4blok9yyy23uNp7cvHA\nOZzcOfefBqEPxP2kfFYIIUTzQ36efMjP5edh0VL8nP2F84jvhbEg/0u+1s9N\ns19Fj9/iQy02Hs79pkxz9+7dkXsxmdeiRYvcfsc0Zs+e7YJjbPPmzW7fpo7d\nH6eQ+y43btzoxhukbgaHb926tat5oVaFaQDTJIfPZ5lHbXAMk4P289SxoI9B\nTUy0G8eCz3BNgf7NtGnTXF29fywzpg25+LBcN8vlj0fDWDmsC9rFOQbP/+pX\nv1rjPlaOV64p8L4QQojmh/w8+ZCfy8/DoqX4+akA+yl5dXLyf/7zn934LtSc\nNBaMGYOfR4+pUhc4TocNG+bGiuF4qwucv7lHlnr76O/i8awD3F4IIUTzQ36e\nfMjP5edhIT9vXrC/kp8mF71u3bpGnRfHS3p6emjNTyJwnDLWS12fWQScb+gj\ncE0hGnLytY0NKYQQommRnycf8nP5eVjIz4UQQghRV+TnyYf8XH4eFvJzIYQQ\nQtQV+XnyIT+Xn4eF/FwIIYQQdUV+nnzIz+XnYSE/F0IIIURdkZ8nH/Jz+XlY\nyM+FEEIIUVfk58nH6ezntCnMz3kmjfy89pCfCyGEEKKuyM+Tj2T9nG1wsv08\nenq1+bnff6jVz3k2jPy8RrR0P2c/nzFjhhtve/v27SdtvjwDKdExCTkueQ7S\n3Llz3XHa2HDML1iwwLZs2eL+Zh0tXbrUnRsYC5HnI8WDY7NDhw42atSoGu9l\nZ2e7Z6vGg/muXLmy2msc97zG86BYF5mZmXGf1RSEMStZBpaFcSE5X8SDZzHx\nbFjOI0E459AWljUerDOeQxVk165drv20gXmwnYF1w7bmHCaEEM0V+XnyURc/\n51mI8vOWEy3Fz9k3eA79a6+9Zq+88oq1bdvWXVMhnnvuOfvFL37hXksEPGvw\n4MHVXsO1Pv/8c3fsxIN9mWcPDR06NKH5MRb4o48+6to4fPjwhL6TDL1797ZL\nLrkk0j7mz7M88dm33nrLrUMfnoOKu/JvNE888YS1b9++2mucV1gWniEaD85F\nDz/8sHNXH9bvHXfcYf3793fPR73zzjvdcZ4IrHee/fTee+/Z4sWL7dprr3V9\nMlz9448/tldffdUtG89oDTr//Pnz7aabbqrxrKSxY8e67ZiInw8aNMitp+Dv\nGPvjXXfd5forN998c+T5q8yf9d+xY8eElksIIZoC+XnyIT+Xn4dFS/Fz9usf\n/vCH9rvf/c75GT709ttvu32F3Dn++dBDD1X7DvvUzJkzXfB/wFU/+ugj+9GP\nfmTjx4+3OXPmuP1wyZIl9u1vf9vldYOwL69Zs8Y5F7lSYF++5ppr7IMPPnCe\nivcGWbVqlfu8n2PmuJwyZYqdd9551q5du2qfxS15nhH5dZYxHiwvEQbHFf2A\nK6+80rKysiLt+ed//me3jKyj3//+95HPf/jhh/aP//iPbll88OnJkydbv379\naiwbDsq6oz8DHKf4L+cbYB1t27Yt0pb777/f9Z98+Nz3v/995659+/a1H/zg\nBwnnmdkW119/vf3pT39y8/za177m1jHPQfrqV79qf/3rX90zS3/605+6NrA+\nWbc8QyklJSXSRuBcc8stt9g777wTeY19gwC+u2jRosh+Q3+AtgafOfXuu++6\nbUof4Vvf+paNGDHCvU5+/ze/+Y1ddNFFbj5CCNEckZ8nH/Jz+XlYtBQ/Zz84\n//zznccCjn7hhRdGzivPPPOMy+v6sB+9//77zucJ/s9r5EEvv/xy+/rXv24P\nPPCAvfTSS+71ZcuW2RlnnFHDz/HvF154weVZyZVSSwO33nqr3XDDDfb000/b\nr371K+eBgNeS4+XzL774YqTGxP8ONSPBZcIpH3vsMXv22Wfde0GHjAX+yLKH\nOS3H3gUXXGCtW7eOvMb1AvK5OPWbb74ZyZ9znJFXZvnwXt/7uY6Ax9Ne8txB\naGvQ7znXsO47d+7szues62C+nBz+OeecE6ktYXvxmbS0NJs6dar9+te/rlN9\n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\nP5efh4X8XAgRj6MnCmxKz2etcOBZVrprVlM3RwjRDJCfJx/yc/l5WMjPhRDx\nOJpbYpM+udmKx15rFcW5Td0cIUQzQH6efMjP5edhIT8XQsTjyL5tNrnNL60i\ns21TN0UI0UyQnycf8nP5eVjIz4UQ8TiwrI9N+PgaK9u/rKmbIoRoJsjPkw/5\nufw8LOTnQohaKSu0fSPvsgHtnrT1WZlWFuO3WAjR8pCfJx/yc/l5WMjPhRC1\nUb5/ie3qdqalDu5t27bvkJ8LIRzy8+RDfi4/Dwv5uRCiNoqXvGM7upxhs6aN\nb+qmCCGaEfLz5EN+Lj8PC/m5ECKMisIjlj/iCtsz6l6bMWNmUzdHCNGMkJ8n\nH/LzKj/fJD+PDvm5EC2HotJyF4lSsWOc5fX/rh1cOdRmzJ7fiC0TQpxqyM+T\nj2T8HN/1/Zw4Zf183z7PzzfLz6NCfi7E6c/6A3k2IGOvfThrm33kRc+le2z5\nnhw7kVdgu7ZttYPeb4AP5+Ddu3fb5i1bbdu4Zy1/1FV2ZN9WmzFzVtMtgBCi\n2SE/Tz5q9/OxdrAqv3zw4MFqfo7nys9P75CfC3H6UlpeYWlrD9oDqVl25+BV\n9kTaensqbYP9LmWN3TssyzqmTrMJ6bNt9sx0O36s8jzAeXT0mLE2b/oYy+r8\nf1ayrLUdPZ7n+bnqW4QQXyI/Tz7q4udHjhypk59HO7r8/NQK+bkQpyeemlvK\nyn12XZ8V9tz4jTZjy1HLPlpg27xYsP24tZ2x2e5o9bk9NXy5dR6SZls2rHPf\n47zZs3dfmzykva3s9HOrOLzS+flM+bkQIoD8PPmQn8vPw0J+LsTpyfTNR+zq\nnhn2xrQttudEUY33c3LzrE3PQXbPiPV2d4dRNnPBEvd6YWGRZWUus6W9fmdD\n2/7BiosK3Ge7dOliY8eOtREjRtj69etP9uIIIZoZ8vPkQ34uPw8L+bkQpx/b\njhbabwatsqfS1tuB3OKYnyn1zp8jU4fb+Mxtdk/r/vZUr8m28/AJ75yQZ5sz\nptr+fj+1Xu1fssLiMu/3IFd+LoSohvw8+ZCfy8/DQn4uxOlFSXmFvT19q93U\nd6WtP5gX+jnOtcuWLrWlixZYytjJdkf32fbasLm2afdhS+/7ks1of5XNnz3F\n1clwX5LqW4QQQeTnyYf8XH4eFvJzIU4vFu44YZd1W279M/bG/Sznzq1bNrvz\n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\nKg3BtiOFbnkHrIjtnVy/eHRstn3Uv4sVDTzTyvbMrXV6RUve99bXT60iyW1S\nG97Z0l6bUjluS1ES47YUr/zMcgedF1rbAvwmDB2SYmvWrrXXp2x096Nm7k2+\n7ymEOHWRnycfLcnP8/Ly5Od1iNPdzzccyrcXJ2yyx0avc3lon+KNQytrNcbf\n4cYFqQ84/28Gr47UTa+s8pWyI1luLGzqpXMGnGPF6/rXu/3t5+1w44ekbzli\ndw9Z7WqNiyvIeWZaTv+zrWhFByvdO9+NW12U2bne89l9osj1AciZA32a672/\nOyzY48ZLyRt6kRV5ju5TOPclyx3+86T9uM3s7XbrgEw7XFAaeY389cMj19mz\nE7Itf+7Lls98Co9U+17prtmVNSTZ45Oav0/q6gOV91geyg/9TMqqwzak+4NW\nlnaV18jaxxmnTj+n73etZOuYBmlfLA7nl3j7XaZ9tmBn/A+HQW3L+F+7cdvD\naluA34TU1FTbvWO715fJd+NOPjVmvR0vLA39jhDi9EZ+nnzIz+XnYXG6+/nQ\nVftd3vm2gatc7UIOtx3m7fbc8hLn5u6ZMrOeqde9hh08l+V56nOyjzlPf33q\nFpdDL1r4lsudUh9N7Une6GvdmB915WBesd3iuWubOdvc30NW7ausZThQaOXL\nPrTcwT+2itzK/Cy1w3mjr7OK0nC/rI1RWZV1EuTOfd5Jz7bfDN1oh7NSLa//\nGZ5zLoy8x3gqzj+T8OO8kjK7M2W1G7swmp7L9tnNPebZvkGXWvG8P9d4n2sS\nuamXef0E3kuuhoRzzkuTNtkDw7OspCx8WrsPHbTsfhd7fYaX4s6R7Z2berkV\nzHkh6faFMXfbMbus23JbsKP+12fKq8abKdkwuNbPcS6dNWtW5G+eh3SFt790\nX7K7kSt4hBDNFfl58nEq+Xn095P180OHDsnPa4nT3c/XHcyzhZ6/cN8h9yDO\n2u7568Z+ltPvDDemXPGKzyx34A+s/NjGOk33KM9T95z//RmVbtnD85Rr+2Ra\n9r49Vph6iau/gJLsCZV53p3pdW47DnS512Z/XL89OUV2Xd9M6zJ/oxWPvsbr\nVzwd+WzJptTKZdq3uM7zqfTTyjqJYO319M1H7cpeq2z1qMesaPTVVlHypbtT\nV5874gorqFrO+pC5N9eu6LHc1dVHk7GvyJ7pNciO9PmelWWPjfn9gnnk8C8N\n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\nefmBDMsb8H1r0/9z23q8utsWzvure16Rldae+2PX5ZmN+HO1+xq9N0rnPGuL\nul9uz49dY1Fpbyta3s5yUn7ixnOJxyHP+6/rk2F9ltWsIy9d/K5t73uB3dJz\nrvPEaHjOZ17qZWaBsRBrI23dQbuqV4ZtPlyzxqFk20QrHnyOfTZ6pN2est6N\nVx4NeWtqmEu2piU0P6Amg2ctfTBzW+wPeNuAbVGx4CUbtPKg/dJr3+4TIdul\nrNDVaNSnxobN94q3LR9IXettr/DvVlRd/yhc9Lb7m/EMb+y30rosTqQGnb7Z\nQ5Y3rub9AvWlP32KXrHHvUmUouVtvH7Dz6w8P7H7S2urbwkyyevn/aLncrdt\nyfMLIU5f5OfJh/xcfh4WLcnPSzcOsYN9zrL7e4yyWdv/P3vv/d7GdeX//xf7\n63c/2WRTdjebbLLZVDtxHMctjuPYcRwnceI4cRwnbkncqyw3WZLVuygWsUqi\nxCKKIin2TpAEAbD33hsAEh3v7z0XBAkMZgCQEK3C83qe80gEpmFmMPOai3PP\nDXZbqq9ItSzCjXFO2IRbPpRixHsl/cFvuO1wXfghzh3/Le5JNGJmKdjFnL1Z\nMgfdPVEfcTspN5v6/pX0BR8Xr9cN+6VfYDDzl7LNN90QmhPubE9YV3s2jbH0\nkwS9zCFWYm/aCWfaV5DZ0IpbT+hVHZ7q1FDfWnv9e1GtjxhesAnnbkJqy7jq\n+/42cbTHoW7MIXOJyvq0zlGvcPNnhKP/IOKzlZIl8bzxs6QWfFA6EHY693SL\nrwbnSj1Lytl/6kIH/pLVEV0Oun6fzJ/yWKLw+QjQup/N7cIfzqrXvYluIU75\nWwD9phPt7yzh+ocGQvsjoWlc1kWnsWhtygdVhmFuGtjPYw/2c/ZzrdhKfu6s\n34ax+K/gR4fLkNgcnE/tGi6RDuYaDt9GSOPek1sm64OvO+RejpT/QPa593HL\nyVY59k7Q+3MdPseLME4jkW6YkLnZyjxeyhleSv0fzFW9iwfTOlW9kmqBm+P/\nXY6LFAlZu0Q45t+yO1X6hnqwXPQHOC7+FMaxBdxyrEmOlxQC1Si5+CCW8qOv\nT0muTc8fWn0Jqd3eHP85eCdqMSV2Af2WcELltwQ/lNsin0kC601GQY943vi+\n8MhMk0rf18DtEceMjp1ntm31NarfcucpGhsocpu4m8Zapb6lA5fXtX1qUK36\n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\nlXl7VM8wWsSvjKWkfO6LGrcD1vN3YkmOX7W+baBraUFBgep9eD20TVplbhM9\n51J/hmrxvBau9jzDMNcv7OexB/s5+7lWbLafj46Oorq6Wh6PgYEB+X86LnRM\n6PjSa/Qdzs3NxdjYGKqqquQ8dAzJz/1OTn7e2NgozxH/+RCpLX4Vf2557s9l\nLgqV+v5FijG0hovMUf+irIWuBrkE+Xm1snbL0JWV2owl8m9/38GzxuAajpR3\nbkn/FmzVr2tuKtVVp5wJ5XiZMsdbOLezN3v1tW3CrR9ODZ1WjqeT8jXYarVz\njH1t0o1y/EwlXtsszKf/G3bdB6uv+eu+a40pZG85KJ8fPFbtOogE9fWk3B+t\nvp62chon6gdBPkxHmfK85WfVyCXxLo3JGuP25r1h1++H8vtprEtzuL6h8jeL\nH4pnj+dWtiKYuWWn7KNLtRajQX62jO9GPXZUIJRP9Xfhs78727rhuudUr0XW\n+GxPWve80Y5PFA20z+m78ZsME35+2iDrvDSPWWBX6y/MMMx1C/t57MF+zn6u\nFZvt5+TUPT098v90TlVUVMg2cfqdnI4V/U1t6oWFhZiZmUF5ebk8loTRaJT+\n7v8/LYeO69DQkAw6zlFBY0yeuQW2in/KP0lvqO3uT5ntwXW/XWJ/ZHxb+PNr\nqovJMKjnYDtMcb7cipW8cqt4ALg3QSVPmPLUL/1KhlodD9qWP4ptUqsl6OxK\n9/XXnDGuvuYfRzKkrX2lVszy5cc0+0tS/gy1Hxep5Eq4p/S+/p7dZ9eWuTLW\nJrXZu1Q8in5z8PUnrVRdn1yu11eb5oWLobVpfBNQ7Zl7sFz855D23fimMZkz\nRPnrqlCOzfk7oqpbQ65L/UL/SnXfw/UNNQ/KZw6H8ajm56E+plQ/PlwfUz9y\n7Kj4zwXVUY8WqjFzb7w+NLdqHaz2f5jvXPe8G6nfEglqS/+4fFA4egseSTVh\nR9mA/O1pivNeGOaGgP089mA/Zz/Xis3289raWunSBPk15bjodDrZVk7R0NAg\n/21ubpbnGvm5v228srJSOrt/OdSuTv3TaFpqV6fzNCqWp2Ahz2o5sPrS3mpf\n+2nQuJk0Fnu+tj/TeIjk3VbFWJs07rus/+30PS+QZ/9ZeNsLuaH1CKntnNrQ\n1dpQzWK51P9PrT3W3vAhzMn/Da99zaev9GrkqtN6Kl/2tdW61PM3LrRN49bj\nTXKMHiXOrrPSz2nczEBoPPs74powrzImj2ehRz6jONsSVNdH+Ptk7tdob6ac\naK1+ppSvTuOI0m8YWtjKn49qHNGwdd8DcA4WyL6hNL6QFrSMe4Q3LyrrXKrg\nnmqC+dRn4ejKiDitEv24Reae53dFkUujBp3bBY/JOjf0LLNeNsPPCYd41qsc\nmJe/q1C+Ff2u9cLFLiSIZ0/Kt+eajKHQvZl+TyToOkltGHRPpPslXUsDofsj\n3f8YZjNgP4892M/Zz7Vis/2cnJwcnO4hdXV10repTZ2+05TLQu3o/vfIvymn\nhaBjS/Xc6LjSeUHeTseUpqHpyflpmkgsO5zoqj0D6+kvwdm7Vv/vrGkS3z+u\nC2kL99VA/HaI15Jnk2+Tdwe1uVOb+OXfYCnv4SCnf7+kHw8mG0Jqe1Duuexv\naA5tBx1YcOD7wrfPq9VuKfoTrNk/kbUE/XT7a720hzqbQ46p+QXNMeUPVvbi\ngQOXsegIva7adR/LMY68tuC+k1QnnfqIts+o+K/TIp9R6FlFix4xH/UNzVap\nt064J3W+HJ6+7JD3hhd9uf+Uv66F/MyUu66ybwPpmFqS25HbEboddL7RMyBB\nuTKUM+MNk7NzqXNGLqttKnLOitexAHPq18PuIy1O68fxA3G+ataYjICH+i+k\nfFUc2w83NP9m+bkf8nTK56fxRqnW/s9OG/BoRhtezOvCIfFcWNQzC8OEBaPi\nPNDKjboWBJ4vnxZZWVl4+umn5fWQro30eyTdH/V6fUgNTNq+tLQ0eV9nmKsN\n+3nswX7Ofq4Vm+3ndHzI0bu6uqRbE3RMOjs7Zb9Rf40Wcm6TySTdnaBjTK/R\nOUHTUO5r4PGmiCb/3LzkQuHRPwkh/5L4Yy2voGnShlvjTKgZVbQvd5yAO/Vz\ngHUQ1qU1FyIjeCCtAx9XK/3QCXfmN+HVreWU25eXkNo6h1tPmTCjHEZmohyu\n5M8Ck+Uh25plGMH341thmFbOJL5TWbfCW/uPoFeXxSXx7kQjjlSr+MF4qVjP\nv6muh3gx24TXT5xXfQ/lT8KTd3fIy53zLtx6Uo+iDo3aiMW/hafwIfVlCtIb\nh+Tno+Wo0psCV8q/A0v9QS/Td5r45ZkuvFOuXcMF0zW+fTt+JWg+Jbndi/LY\n9y2Geh6di8Ulvtox3vI/qu6HQIYtbvGZTDjTOiOPeyQ8ZX8Qy7wn6DWt7Qzk\nnwWD+N35nnXPt8pIntg3n4F3vErMt/4a5HQvKC0tjTyhCuvaTsGI2KdUo+aD\noi68dGUYT2T3yXgypw+vir931kwgwTCLiz1mVI/aoJu0i3PKjUGrF2NWN8bn\nzKAjsd6Wd+vS+vsFWOh8uUp5+dFA170333wTzz333Orz0sWLF+X9et++ffKa\nSseJ7uXU14euoSkpKbJ/D8NcbdjPY4+b2c/9rkbbR9uq5ud0joyPjQk/72I/\nV8SnVf9c+f1Vc2tydspdUU7rz4sJ5+N0flBbPDk+tSdR0L2qtqEZcdsehunw\nt9DaXIlW8VpbWyuu1Olx165cxF2uRftKfZnWtnYYi45Bf+CbqL+SiswL2av1\nZHR6I+7ZnYPdWVVr07eKf/V1aN7/TRhyt6OtvUP+VpCbdQFJVxpwl5j+ck0z\n2lr9yxf/1l2Cft83YCo8Iv7uWN1OQ5MOL3wSj7v35KG0wSC30f85Wlt00B/8\nDgzZb63NI6LF2IrfHcjC9iNJvmX7p19dz/+K9RxenccfBpOYb18m3j9wfLW2\nzmqI/dcS/xAMKX8Iep22p7pZ7IMdZ3E8OX11v6ytswOGcy9Af/RHaDXqFfPS\n52vE33adwr1781DTZAz+fCv73pD9rtj34ji1NMh9S/PR/jyfmYkOsb6/xV/B\nn+OKYGpVzOv/zLpiNNNnLtiPBrGOTDGfcjvp2O2+UCmOZS7qW0xyPwZuZ01N\nDeITE331gk7+FIa0P8ttC1nfyjFoNJhw396LeOv0ZXncQ/aLch9deFUcy+/K\nY+r/fGrbGRhGcUweOXgJL6WUiv3QFvV8qyHOS0PONrQc/CYaqgqReT4ruvkC\nv0e1tbK+Ysj5EmG+dW3nynnW1SGmbW5E1oULqGppQ3pJIz7IrMBT4tj/fH8e\nvv9RFr793nncuTMHD4m/Hz2cL8+Lv58uwWtJ+Xj78Gnsyq7FgdwanBTf78Qr\n9ThbrkPmSpwTkVfdJL5nel/oWpBfXo3T6WdRrjOsvS6iRERtswF6cZxDwmhC\nRVU1EhIS5GcNDPos9Bsf3YPonrreoN8ZqV2J7l10X/bXtKTr40svvST77bz2\n2mvyXvjKK6/ItvNXX31V/p2fn48dO3Zg9+7dsk2EtmXbtvWNR8Uw0cB+HnuE\n9fMM4ecTa35O14Wb1s872c+VcT2NT0TnG51/gd91OifotUh9QekcSE1NxalT\np+T90heJiIs7hT2vP4YT7zyChPg4+XqiiBPi9d+8vhsv7jiIpET/9EmIP7YP\nx9+4D8d2vYo9+w4gUbgavf/J4RN4+JVd+GD/MZwWr8npE0/j1JGdOP76fYg7\nsB0JSck4efIk9u3dgwPH4/Dwqzuxfe+RtenF9sTHHcfxtx7EyY+fl/P7tzVO\nzPf4y9vx2Ft7cPJU/NpnSBTbdGQ3jr3+E8Tt3xY0D32OF97fiyde2Y64+ISg\nz722nudC5jkstu2RVz7GOzs+QVJSYvB8Jw+Lz/8znNz9YtB8FKfi4/H4m7vw\n93c+lPsl8D2aNm7vG2Jf/ETsw/1yXwauk/bLYy++iyfe2Yv4+PjgeSnE9p94\n73Gc2P6Y/L//dZpv7549OJ2UhFd3HsKj4pgdPRknlxmyjFNxOP72wzi542kx\nXxz27Nkbup0i/vzuXvxp256g9QSu78DBQ0g4eVB8lp/i5J7XQvZDYNB2PL19\nHx57fSc+EduZpLK+wH106uD7OPbaPTh16KPV82WPmE9tOyno3Nt35AQeemUn\n3t17dHX5keYLOqbxp3D8nV8h7sM/4cRJ8X3YG818AZ9RTHvs2DF88MEH4nxJ\ninq+9W2nynHYtxcZKadxJiUJ6clJcl/vO3oS2/YcxcsfH5Lf3b9/eBDPyziA\nF8S///hgL17atgP/3OF7n4LOm1dE/HPl7xc/Prj2f/n3ITHfPjz75od46ePD\na69HipX5nnvnYxyPi5fXHn/Q9l+6dEn2kyGnXm9QewTl+tFzEf3f32eejsGz\nzz6Lc+fO4f7775dtGq+//rpsM3/55ZflNOT3d9xxB3bu3Cn/HhwcxPPPPx9z\nbUyGUcJ+HnuE8/OTws8n2c+3bFxPfh4Lau3nsg3W1AJT/APQp/8lqN2T/n36\nVBH+IsJoCmjDMzZBf+hWmLJeQ2dXz2qb67FLNbh7dy5KG1oC2sPbYczfg+b9\n30Cr7spqmy/dM5tajPjp3ot4/1xFQHu7L1pO/xYtiY+i1WQMaCNtw5/iivH3\npOKQdmXj5f2+ddQX+NrsA9qCD16swR2781DZaAhpk245/TuxnkdW1tO22qaZ\nUUJt+xdxrqJZLEPRBl2Z4Wt3L0sKaTem/fZGRjl+ceiybDsMbHum5ZtqcuV2\nGq8cC5qXptOLffzLwwV4W8wf0nZO22bQyXZlQ/bbwfOu7E+aJ11s9527cnGh\nQqfRjtsGw5lnoD9+pzzuneL7rtz+hhYT7vkkFzsuVKguw7e+Lvk7imyLr80N\n/m1CEXQM9mVXye2qbYnUtky/t9RDv//bq7+F+D9fuOXvzakWy89BFR3jgOMY\nbr6gY1p9Hs17vgJTyUm0tXdFN99VaD9f13ZqzGcK+Jt+O+jpaEd/VwcGun0x\nuBL+v/u7O9Hf0yWm8U3XJ6NdLqc5oN2b2sRLAtrJqQ29vMkU1Hbuj0s1TbLd\n/bxaVDQip1ovlm2UNab8Qc5CfkL3VX9f+I0EtX/T/Yuub3Qv+8Mf/oDLly/L\n3JWPPvoIR44ckX5OeYHUjk73RPq94sCBA/J9yo2n/Ug5MVHXo2WYKGE/jz3Y\nz9nPteJm8XNtbEDmV4Dmt0Pe2VY+KnOag+9a4hzMvQPeqr8FvRrXPI0fJbbC\nokxZNuyCK+0/xANC8D6kZT56rhtvl4WO74nav8Od9X3xn7VrmlPMcF9KO3bV\nToROb9wr1vElwBVaC7Gw34Jb4kxon1XJtq39h1jPLfBlz6+R070o5mnFiFoa\n8tAFmaeMRZPKm8BJ/Qx+lNCKBbXkXsckXKmfB9pD6xHOOYAfxpsQb9Dop7Y8\n6Ju3J1H9fUH3ggvfE581vzfM+PCGj+FK/y+xr9TP6QGzW+6v850RxqJtO+Dr\ns+CN/N24MmDBd08a0TIVzbhB4rqWczs8FU9FMa2P7RWjeDC9c9351Kv0UF7/\n5wBz+0aXEFP+OXN1oHt0Xl7e6t90XyNXp/x3ut9RTgs9yxQVFcl7IPW5Jzc/\ne/YsLly4cA23nLlZYT+PPdjP2c+14mb386WZbvQe/m8sGnzeR+d3d3c3hgb7\ncaxuSI7RMx1Uw82L5ZK/wnr+x3K8Rd8rwJsFvXgswwRnUO1vMW3xX+TY9l63\noga5CBrv8rch8wiNlWP5fBHepbV+loNzNllPJmRMo9XtuTNkHUTX9JKssZjd\nFlqLxGE4HDIWJ7Gvagg/Pl6HroFh+d0mFhYW0dXTh6mSN2FN+WpQHcdArvTM\nypoxTSo1HWn7aKzN5bIXQt5rGFmU85X2qS/X2X/RVz99vEb1fYLGtZF1EauG\nNKdx9uXIGuNay8lfqbdiGLdoLoMcerbgb2iLuxs9Xe3imhK+3+fQynhUyWFq\nywRiq3wJ5rRvrdbjDMey0yPrAG1TG+c1GsQ1danoj+IcvUv1/ImWza7fcqPi\nv55QOzXdlzaTSO3f1Kau7KtK90bqH8o1FpnNgP089mA/Zz/Xipvdz7sbcpD8\n5u3oaCyUf9MY5dS+1N3RhtxW33hDxongug32xp0wJ39ZjqNJkF//7kwrXheO\nHnSHJB+9cKf0Z7XxJQ/XjuCOuGbMK2pjS4dM+DzcE/Wrr1UMLMhx7+uGFG3D\nq+t4WnUdC2LZP45rkjXolNBY98oxg/xjM/32eBHOnD2DHuEW9D0qLi5BTW09\nCg4+hsXsB8Wq1F2jd9ZX0zGkBiRBdSCvrNSBdAfPT88dtK8H5tTrA9r1e+VY\nQF6rtuP66sq347lc7fGAaOwd+szOtnjV9w+JY0Jjfs6p1HBfW5EV1ccewvlj\nr6C5WR+574PLg1+kGPB2UW9UDu3sOO0bp2hG/TeKQDqnfbUgM00q+zsKqKa8\nJfVrsNe/u6H5/bCfq+O/nlBe3Wb7eSToe+yvkRXuNYa5WrCfxx7s5+znWnGz\n+/lE5R4kv/ptNDbq5N+nT5+WtcaadDoYxhalM17uCq7z7ew+I8faca/4Ezkw\nOR35diBUH5zqhJPPq5HbPoNbxfKp3nYg7plWsXzhkJ3pq6+l6Cfk+JhU3zl4\nHbPyWcGuU18HjeVJY3q+kt8dMmymZ75Lfg5Xx9p47pRH8/NkI967ZED2+XOy\nLxp9RzIzz8O8OIvk936B8aI3VNdFWOwu3BPfjE802rDtuh2+cZSWg/fpzopB\n3JfYEjK2kx9b6TOwZv5Q7JzwOSIflw/gp0nay5F12NO/KevYK5E17C92yTFa\n3aoDmK5g7kHOh3cg7eRulFdURawPSPv99cJe/DLNCLs7ch8897Rw/oTPwtGZ\nGnHaTPEcRH5Onr4RXMMlMJ/6DNxDsbk1+3kodH/yX0+oLyf3v2S2GuznsQf7\nOfu5VtxMfk7nw8jIiKxXMDw8LM5VJ9B5HJd33Y3mFqOchvqQUo7m2TMZaO0b\nxh2n9IjTBY8/455skO3brj5fzeAuGgdIuHN2W3AbJo2vSeNs0nibalAOBbU1\nFyjGfKTcEXJYGhPUz0fCO38mvJPyGYLXYfCN2dN1RvNzv13UJ8dedCjc0Os0\nw5L2v7BUvSn2yxiGh4Zg6OrDbUfrkN42j9qqCllfgvbVleISGuAS5z+4G8M1\ncZrrIq+lMe2fyVFvw3b2ZMpnD/dkU9A8T2dpz0PjWVI+kdZvBIGcMUzIY9E3\nq1HDm8bJvPxbLOX8LOQ3gCXh9D9N0mOH2NeB0DWN9gGdNyNjE7B1X0D7oa+j\ntf4ycnLz5D6KRGLTuHy+GlmMPH6Q174gjss3YKt+LeK0717pE89TBiw5N+Z+\ntob3YEn5H/G8FFt+A/t5KHR/8l9PMjIyQlyEYW522M9jD/Zz9nOtuJn8nM5X\n+r2Z2rOoBvD8/AJg7sOl9IPQNTbJc4jqQND5kpGejo7uHvzmTJvM7Q3ES2Mt\nJn4Jdv1++XdRz5z07GZFzrWz94IvT0X4vBqU1/7DE03C/xW/L3tcMgeEckFk\nf1TxdSB/fVb6a/Ckzt7z8hnAPdmo+blPiOXfLtYzrRgL3et1Y/nSw5g6/wu5\nXy5fysOR1PO47UA5akaWUFJUKGu3yfbzC9mY7ytH8jt3Y6ojvId9XD4o27CX\nVMZxpN8cfM8Ta78NmGWbux57NNrcaXxOGqfT3rwn7HqJxhEzbjnaKMev0cJe\n/z4s1IavGP+0Rzg9/V6izM2h6x2dL3TeFFwpx3TZNlmj3jo3irLyCpSVlUXc\nrrrhRXzvqE4zvz4IeoYo+B2sWfcGjQcb8jlcHjycasCbhb0hv41EBT33ZN0j\n10XrjAW6ln6a4/DcCNB1xH89oTE6P+1xRBnmWsN+Hnuwn7Ofa8XN5Od0btI1\ngcYqpTGN/DWD63XNsp2LzqHy8nJZK47aAi1WC14r6MXj59pknsgqbjus536A\n5XJfP8f4xjHcdrwJk9bg/nXkk+ak/4B3Wb3djNqzH0k1yvZtpV7Zyp6XfSnh\nsQvP9crcj92VoePS25t2yxwa77J2/jG1z9Pzg1qfR3v1q5hL+SZ6ulrR29ON\nA/kNuO1IHcYsbjTpGmR9B/oelZRVouzcbhR8fDscc72a6yLSDb68/UGVsea9\n9nnZXkuO7Kdndklu34U29c/gHq0QzyCfhXMgT/X9QKbFMbj9ZBNONGjn1Dp7\nzvr6iAa04ROXxX66RWyHSdHfgM4T/xi3dP4s5v0GNUd+hqrqeplbTHXuIjEl\ntutHYruO1UeX62tv/kScO/8Jj1V7ernfjuuQEdJnODpkflPCF+AwHtvQ/IHQ\n/YBq9lH9EPqeMb7f6/zXEzpP1jtOKsPc6LCfxx7s5+znWnEz+bkWdC7TuUHQ\nuUEeNj/va+c8stJfcCGwD6fs5/hHLOX8FF6PC9uKB/CL5NDcYlvZc2Fzpuk0\nfzW/G4+daQ32f5Cf7ZNt9LBNYmjRJX1XvXbL07J2CzzaTtQ55fPfnHaVGi6m\nE7AkfRFY9nng7pox3H/aAJt4JjCb1/bLotmKtvMvYCrlFsAVvj8ktRXT+sr7\nVM4brxtLuQ9gueD3q222hd0+L27RqJniMJ2Ube6ehR7V9wNxebxyf76c36PZ\npuyZbfX1Ee1MC3r9YM0w7ooP7a8bPLO4Vp75FhZLX0RPb19Ubk5QDs/vz7bh\n7xe7NPuuBk0/VOx7Jhkq0pwmWxzP7x3ToW1yY97nbE/y9UOdNmxo/kDYz9Xx\nX0/oXsMwWw3289jjRvVz5XKVbh7o57SN4fx8jP1cNbaCn4cjt2NGuqay/529\n4QNYU78K5/IsHs/swIt5iv6XlKOSda/w+CcRLvngSB3VcGnCvKJeiLPXV8MF\nMzpUDPn8mrw3COHk1szbsVxKtdi11+Hvv3qgRqWGy0ipLz9GeCBdQZ/MbMcL\nF0PzaGj57qJHYb/8iMyLCce42YEfnGhCUpN6rRVb1cuwZnxXrNy3T+kZiNqW\nZ5bUK3jbKl+EJeM7YqdE56HvlfTjQfmMoZ6z4XWIa1fq12Gve2f1NXJmyh/6\nS1YH3GGOl2e2Tbp9YJ/aaKG89p8k6mHW6rsauI2U00N9i5t2a07zfskAfnY6\nTF/YsCtYqaUjzh+4I+fER4LzWxiGUcJ+HntE9vNxTT8n373e/Zy2Tc3PaZzj\nQD9vZz8Pia3u5y3+PpzdwX04qe3Vmvh5zI224M4Eo6zLF4is3UJ9PHU7wi4/\nr9NXw6VV0QbqXvFA9GXgtHFB9i0cMytqqMs8+P+ImJdNvkk1Sf6u4t0ey5Cs\nge4yHYNZaN5dGh4Ph9nXZ7H2ndD3FPjqCRrxrvBkNajN3pz4BXjN/fKpguo5\nUtuyS61minzO+QmWCx+POkc6pWVC1qJUy68h6Pli6dKvsJT3C9meT1gcLtyb\noJ0D78fZfc6XGzPVFHY6NWR791Ed2qeieM7wuGHN/qnsy6r2uR1uL36VZgqt\n6Rklsq5iytdgr35zA3OHwv1DGYZRwn4ee0Tr5zSGQaCfk+dG4+dKR1fmqLCf\nX7+x1f2c2nSpb+VJlRouy0lfgLEuDd+PMyGnY0bxfpMvh6LnfNjlk5eT/1/q\nDJ7fn6ft0r2P98rG8FCqUXpv0DrGa33r6MuJ+Dk+LPO1tYbU+XDZYD37fbiq\n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\nLUoO1AzjjrgmTFkcEaftnZpFW9x3YS38kzgv1inoVAsn/9dYyrpbnkebAbef\nMwyjhP089mA/Zz/XCvbzmxNyVeorWtY/HzJODo0HZKt8SY4D711nzXMtUvQT\n+LFwUepfS05aFFBb0D3bCkvq17Bc/BfYG96DJfEL6xoXNRJUi/BbRxqQ1baW\nt31ZPJN863ADSld+B7FRDkvGt+BdDsjtpmeFgt/J55VY8uC1oNwiqi+TF2aM\nUz8H6iZx7MjTcKd/zfccsw5onCxL4hfF8Vz/OKzRwvnnDMMoYT+PPdjP2c+1\ngv18i+KO3Ka7HmhcJ6rxTvkc50yTIfUWHe2nYTlzi3RkypG+mvW5qVY9tdn/\nKs2E+WUXZpedsv3+j5ntq+NNUZ8BGn/I0XpqdT73mG9MoqvxG4LWdv0mo1XW\noAyX40Lb+GBaBz46kwF74r/Buc66mnKcp6T/gGexL/LEG4TrtzAMo4T9PPZg\nP2c/1wr2c+ZqQTUqZzXqdns94rs7UibzSbT6acZC1cCCHLPz1cu9eDm/W9aw\nCRrjx+PEctGfxPPBd+GebZM1FZcu/RLWsz/Y0Pil0RKn842hNDiv/TxS3DuH\nbx9pQlHHCBwXbpd1WKKF+rRaMr6D5eI/X43N1YT9nGEYJeznsQf7Ofu5VrCf\nMzcDVC/8jHESv0434bEzrTgr/q9owpf1aqzCz5dy7sfS5cdgPv1fcPVmbep2\nUV342080yj7HalB99GdyOmXbv8XhgbNxByxJ/wnPQnRt4bKvrcyfL7yamx0C\n+znDMErYz2MP9nP2c61gP2duFsjHjRNWtE1aNfNJXAMFWC54DEt5D8PRlihm\n2ty+jnRNe7OwV/afnbCE/rbQMLwox5VNN/juY54Z4ekJ/w67/kDkZbvtvvr1\nWT+5Kn2Xw0H3hOLi4k1dB8MwNxbs57EH+7nfzzvZzxXBfs5sNbzWkU3N1VbS\nMm7Bd4WD+8eM8kM1Zv6a3SFrxc8tr7i7eF5YLnzcN85QhDwgqjlD41o5O1I2\na9NXoXtCQUEB125hGGYV9vPYQ8vPt0k/v4CJreDno6Ps5yrBfs4wmwvl3nxU\nNiDz42uHfM5N/WfJ16lu/KWA+pfyvUHy7n+Fs+uM5jKpjuJS3kOwZv4IXtvc\npm4/QdfT5ORktLe3s6MzDCNhP489NsvPAx39evFz2mZtP+f8FmWwnzPM5kM1\n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\nvut/5Eu2bzqPJ3RK371o7X7lcjrgVrkJ0H3Of8+aGulBTU0dJi3rqwEcWL/F\nj1tlmwKn30hJdI/wKUebUfY5s17IwMRjP8f83o+kn1sy0zD38Tb5vntmSnV+\n9nPtYD9nP9eKaP2c+m63790p86SHR331z4epFro4ZwLrn9MxYTYH9nOGYbYa\nkfz8xseL2YlhDI3PXesNCY/bJZ186VI25j58C2MP3425D97C0uUc2RcNYWoJ\ns59rB/s5+7lWROvn7okxTOjq0dXZia6uLnR1d6Ort9f3/65u+S85Oo8funmw\nnzMMs9W4+f38xsAr3Iva6ZydbbA31ctcdFt9NVx9PbA31PD4RBsM9nP2c63w\n+blvzF7yvhnhf84wz8HBfYCDjzezudBxmWE/ZxhmC0E+QPf3OUuk3EnmU0Pc\ni7RqnatBx2552cZ+rhLs5+znWmENaj93YVF8jxZEUL6ezRkcdqcLdleYEO8r\n5+G4SiGOBx0XOj4uFz8LMQyzNSA3oHv97IIZSzb7tb8Wb9lwrYT4v7gHUSar\nzeUKeE99PjpmdOzI2ebn2c+VwX7Ofq4Vy0tmsa+mV/c77dO5hUXxfVrAzDzH\n9RJ0POi40PHh3yoYhtkqkBvQ/d8s7u98X7oBQxwzi3VJOtvc7LR0jmvtPddT\nsJ+zn2uFw27F/NyUPM6Eh363EvuV/qbjz3F9hFkcD7+bc44/wzBbBb8b0L2f\n7vOL4h5/ra/HHNGGWR4z+du8+Jtcg5zjWnvP9RTs5+zn4YLOjdmZKbkPPV7P\n6rFwuz2yTyLHNQ732neIYRhmq8L3phso6BitOBy52Qw5hnCNa+0711uwn7Of\nhwu7zQLz4pz8/pjNC3Kf0r612+y+fzmubawcB5tt5f/i+Ng4ODg4tkj4rnni\nGui/HvK96YYIOnZm86JwyinpGOQa19p3rreI1c/Je28EP6dt1fTz4WH28zBB\n3xuLeQ5z4ns0Nzfj+3eG43qKWcX/OTg4OLZCzCn+z3EDhN8l5qZgNbObawX7\nOft5NEF5YbZls+xfbV6c5eDg4ODg4ODYUJBLkFNwzrl2sJ+zn68rxHfJwcHB\nwcHBwcGxwSCXuOY+c50H+zn7OQcHBwcHBwcHx/UT7Ofs5xwcHBwcHBwcHNdP\nsJ+zn3NwcHBwcHBwcFw/wX7Ofs7BwcFx48WNkr96o2wnBwfH9RTs5+znHBwc\nHDdSeDyOlVFpXNd8W8Jup9u+sp2ea74tHBwcN1awn7Ofc9yscaO3293o28+f\nczOC7lkzMxOoq69Bf3+3/Hsj+5zmc7tsIcum1+QynT6/Vk6jFjSNfzr/Mihm\nZyZRV1eDnu5O37TOa7//ODg4boxgP2c/30jQfctL4XEE3Zfob//rG7tvXuPv\ngwhqkyOu9bZEexwolK/TMZGtdirvrTd8y/KuxqdyHMS5I68DHuc138ebGd6V\nduBoHJBjZZ95nSgtKcLuXTvQIBx9vfvOu9r2Tudy6LMRnXOrY8aLaZeXFiMu\n03e+elbnc6zUjhsZ7sfJE0exd89usRzzDXlN5ODguDZxM/p54Pix4fx8YmJi\n1c9Nbezn64nFhRk55hfduyyWefka/b24OCvOKbG/F+ewLM6ra72d0URg2xfV\nZJ2YGEGryRDTmGYet23T78W0fNr/tJ/dAevyf6fb21rlOBCxbIe/LdBkakFd\nXTV6ezo37XMFPkuQ33R2tmFmeuKmchr6LIGfc0FcbwwGfczH6UYP6bde54rj\n+oLcWG1aen7OFPeovIvZ4no+s+51zc5MwGjUy2WcFfe8wLbywYEefPjh+0hK\nPIW0tNPYt3c3jIbmsM+5lGtTVHQZH330Ps5kpCI+/iSOHTuEudlJOf5Ke5sB\n2955S47BvJWPMQcHx/oisp+PBPn5zMxMWD/3O7rflwMdfaN+HjjtZvj5sPTz\ndvbzKM8X8taSkiK899427Nz5EQwtjfL+RffKjIwUvPnW64iLOy7bjvze61lt\nU19r63I7bau/JQe2gdH/A9vl1bZBttMr2ug1l7cyvdry/G5uFz5I91m6p77x\n+qt48skn5PeCnEHem52h82kt0/eb+PLqdH4no/Bvr9u59puD8jf0SJ/fH7Rt\n6ekpSE1Jkv/3v07z6pt1uPfeu1FedkW2Bwb+bu9fX8g2rbwWuE9pWZfzL+KT\n3R8jLfU0nnrqT8Ipp4PcKej5xrkUdAy8iuUFHr9A56G/6bzyf3Y6d37+wP1I\nEZ/Nu/LZAn+f0Tru9J5HJWdBbb5wxzPwmPlfU+6foM/hDF5WUJ6E4pjR56R5\n6BkkPv4E7r//PvR0d4j3XKrbGO78Ddz/yhwLte+I8jyIdG4HHdsoz03a3sB9\nFMlJfe3ZLkyK5+L2dpMIIzo6TJgYH1Gdl6bNyTkPvV637rxu2u7amkocOrQf\nd935Yzz++8dWjykdm/q6KnzpS1/E7bf/AA89+IC8FvT3dYX1c8CN99/fLue7\n55678OtfP4Ljxw7L8RFpmeTln+zeyX7OwcGxrtion5Pnsp9vvfDfXwyGZvzf\n/30Dv/rVwxgc8Hk4tRVRe9S//Mu/4JNPdon9PLOSG+GR5xh5Hd3L/F5Ar7vd\nNvmaf7n0f/rNeW52amWa4P5fXvmaG4viOFGbo1zGijcpl0f+Q85DvjYvvHtt\n+WvLo+WTf9bXV8v5LZYFPPvs33DLLd9Zncb3GdwB82hvo99/MtJTV5zLKfeL\nx+17NqH/+5cnnwtW2ujpX7vdIl+n7aZl+/ed2nGg9+j+/9Of3ofbbvs+Fhdm\n156FhO/09Xbib397WvqGL1/n/2fvPaOrOrZ00X6/ut/o7vu67+0effv08bF9\nnI2xwcbYYBvbGAxOYKLBZDA5R4PJOeeck8g5iSQJIZRQDkiAEEIIJJAACQkh\nhKSt+eY316q1197aEsHYyLj2GHNIe6+1KsyaVfXNWV/VcphlNfQvGNHUW4H5\njmX8pvwvIw+jLm3b/khLFs+na+lpNH8+1ulvm3gl38RWDqvPGHHPIktf0gb8\nm9W+4u8YflBhwR0rTpqVmU5eG9cJB6BU/KTrNGTwQDp4YK/UR5Ud6zZ37mQL\nN8FuR0bstVj0q/AeyifX+VpOdpas89htzdmeDnkum+8xni0x2snEuCiToR+D\nn1Ao7Wm0O2xa/Dizjqos8CnsPpOytbi4KNq3d5dcg24Ra33uub/ShaSzorey\n+nqw/Rptet+6Vurw3EeUPVl1NP0hd9tG+zt14bDs6kF9U91z/77av1nKY/M9\nQx/lxMLxO3Dr4cMHadOmDbSRbQD+5sGDeyXu7MkPUPg8PDyk3HQrGr/AWY+O\njqTmzZpSx47tXfB5aMgpGjRoAJfHmwJPBfB8kV2mHcuUh6/PYf910aIFdOTI\nYfYbornchTYO+nWaPWuGhc+hI7Tr0x7LtWjRUrlF43ONzx9VZE7n+aVp0yay\npqu4nPhcvXqZXnnlZYmvGz8XUXRUOG3dsok2ea2n7du3CPa5kZVB69auEqxy\n7Ki3xGeBC66kXZKY8LZtm+T6tYwrVuwKtgp8tnP7VkkH68+Y1/E78J17euB+\nAEvsYpvG/atWLqOk84mCZVQ9fH2P0ieffEw/tGxBq1evlHl1167t9MUXn5P3\n4QOczmwaN24MRUaetrDe5dSUcssIfLV16yaqXu0dicFjDR3r49OnT2WMu1Di\nwigX/BjM1yj3ihVLWTcb+Nm7dCnlAmP7zbSDry9ftkT4JJ7wATDKSX9fwRJv\nv/0WHfY+6IKzgDOmTp1EaZcvCo7HuvuG9WsoJCSQpk6ZJDFE8HfnsR+FeKXy\nrRYsnMf1SbPixj4+R+j111+jdozRN25YJ7FExAaBn0pYj+nc3ij/oYP7pB1O\n+vtImljvX7ZsEY0dO0quoUzG+kSWxStYumQR+w/B3Bev0aiRI+idd96mcWNH\nU2REKJ0/d0ZsKwp6dxQL5jt29LA8h7WZfXt3S/lgR+sZ43p5rRMsP2PGVJoy\nZSIlJ5+T8uWzjvH77t3b5TnYgvJDlB7PnT1D27ZulrUf1CWD/ZCM9Ms0b95s\nSS8iPFSeQTrwO6+kpUjeRw4fEj9s9eoVFBjoLzoLCT4lnAjEdmezfk8FnLD8\ni7OJ8dSqVQv67NM6su50/doVad93360m7YO87foC9sT+wors9/z5BMaF8ygw\nwF9sEWscd/JuiZ7sfQT3A6vj9+XLl9CxY4cZU85ysW3kd+FCoqxZ4L6VK5ZJ\nnvt4boCe0iqwe9El2ynqs3//bnkm6fxZOnr0kNgK/DFP6yiwu82MyzesX01B\nQYGUyJgcdbpyJUV8Kk/jT/n4PL8CsT9fIkPTT106USc3fB4cFMDtNpNtIlH2\ndWZmZpTxicqUh5+D3wr7jI6JYpuNYHvJt9YZ7Pgc36/wGJDJ/V7H0rVo0VKR\naHyu8fnj2AzwSrNmTSTWnJh4RvjJCQlnyNv7AL300t95XvYWzJ6QECvYy8/P\nR+JRbdq0FuwJXNq8RVNq8GU9GjP6F5owYSzbWSpNmjhO8PHp06E0bOhgGs/4\nQeVZyj7BkSOH5JmTJ09wmseFAwH8C5zWvLkzvfHjx8j8Doy1lrFEWNhpmjlj\nGvXo0dWKNSM+epCx0KuvvsLlaiWxTOQDXFOjxruC59YwZm/U6Fvq2vUnuQZ8\nibJ6KmOJGbNftXI5/fW5/6G+fXrS3j27KIUxd926n0s62bduir/y1ltvUmho\nINvkberVqwetWrWc+1cGDR8+TOKHgYGnaCTrrVvXLnJWhT2OKGsD9wsE4wFb\n9+jelTp16iDxecUnAN57443XBVvCHxgwoC+99151mjhhHA1mTB8XGyWYuxr7\n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\nbOWztGrZj2ubkUscEP7YhaSz9OOPrSgyMpxGDP+ZNon+yWNaRizRaQf2ObzU\nUWTeXuRRF/bnVbs7y2F/Rt1Q7IzpUanLM6jzdfY3szKvqdanpUsX0fffN6Kb\nN67ZE7H6gbM8+WXs2FN7W/dwOaw1KDcbt7e7WitS6dn1cOtmJjVv1kRwnqED\ne/sRBQWepKpVqzCWXeCiAk9jgFMnRGGng+mtt94Sv8rKtxwdl1i2ZKZdXOC0\nGSmrw9KXw+Veh8V5craT0SaqfM6+YbYTdMf3qjbJyky36aOY3Put3R7tbafS\ncq27va8Vlxkf7PVX/Dv3vJz3ONMqMw5tNvqB6q+pqcnyHTj9Wkaa/K/aG5+K\nxynjs49xwksvvUiHZbwtrrC9yurEVedWW5TT3x5kJ57K5+W1nsef563xp6jI\n1cZd+7u9D5WaMR/X+5192Hmfa38s9mg7v/ecq+XZFI3PNT5/kuIcq0ro164L\nyzjOWK5fvz70T//vP9GXX9aTOJZKE38PHthLnTt3pHjGssgvNCSQXnv1FTrp\n7yPfr15JpcDAUxQedprxW4RgoojwMAoICKAraalia6sY91d7521KvXTBJTaD\nsRfxecTii4sLZT4B9vvoo9oUGxtFvr6+dPLkCYnvo77A1R99VIu2AB/yuH45\n9SIlnIk1eev5lHY5hc7ExwrOxzyBcTwmJpL8Tvhw+WMsHj3mhzlzZtK4cWPK\nxoqKHkHc2gV5xkRHkL+/L0VFRfD3+0Z7cb2SL5xjnZxg8ed6pFnx0evXrsrv\nqGfm9QyJvYUEn7Li5+AWdWjfjvpzG6Hc8CmqVKlizI/iL+Wz3sOERwSdoQz4\nDXHYTh3b0wFuv5SUZK5nkZQFGNvP7zidTTxj4XuMTyHcridP+lE0lxscILV+\nAn9swfy5VKPGu3TihB8Fc9kupVzkZ/LkGf8Tvozfz1lzevqVy3SG2+ROXg7f\nGyhrIiot4Ja4uGjGYhkUFhbKOOeo2I+a0402TpNynGI95bItqr0C+B95Q1dJ\n7C/ExEZz+6fIMxdYt6g/9CbPcL1S2TZ+HjaEZsyYJvYImzjB9QYeBD4/fTpU\nBDpDfeGDnDoVIGkJlyc3m4KCArh+PjxGXyZ3zgF0l5N9Q/QJbA2dJybG87h9\n06VPJiTEcbmCKSIijPLzskXXVzk9h6NQ7Bd9J5HbAnpaxmU74ecjuvLzPW61\n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\nIGvcxnfj/R3G+ziKzHeFyJx0L98sd67VBhDM1/ClcM3QtXGGMX4z2s5YTwEe\ncJj6MM6MyLX2CSBP6MPIu8TSIXAA5no5b9zmsyBdY741zrzG/2oNR9qIn1E6\nN9ol3zof27Azp83Zy17o9h3XydyTjP9xXjU+wKJYA1FcBnywx7dOnU+Eh4wP\n3qNjcAeM9zuB7y/pmefDg3cgdm7iBuhVlUu4xaXFLnZg8I1LBWdLGcWebe/x\nMc/syb+TbbUl+EvAMuXhBsG1budW2+8tMG0U/JF7BXku7afaXV1HXYzv9y3O\nm7sdlppnkaszp9XZM8rmnDp2vpde7IOfs8YB1osqlz0fxSdG31dtKGfpm2MF\n/E7w51Q+94R3XSp2KH3D7PeF5jiEMqGOEHv/RtqG/1IoPHPEUbEuZnEpGKfh\nbBzFTTLSLZI63IXPYZ7PjTi0skdpf05X8QJRN/Xd2vPObYvz0LF/EnuajbPa\ny45D+F9iG4XK5vOsuuEv/M0HjlNWv79n2nCRKcXGtTJ9wuHy7l7YHO6VvTBm\nv0QfRCxFtY0aHxBzVt+N/uHwaCf2NVnjXWfGGGWMXcXWfaquSEfNI4q7rsYI\n/C1UeYntlW0flBXvlwbPEnufQth/Uv1Nva/ibr7ddh7nvchatJQVjc81Pq9s\nouYl4zwK21hsrt8rKe8+jJeI/yHu4zBxhoq3uD+PuJnBRfc8pqqxHGmpuE2J\nmY7iWHgqn/29hJijVP7qr3rGYbuO75insa6c58aPflKi1oXdeUfqd/c87TrD\nWcruOne9XlBGB4InbO1jbytPZXHXhyqDeg+Qe7nLswGU1b2Nyru3vPbz1J6q\nPqXm7+Br9GX/Duvh2IsI8T64Xzgn4NyWuNmbStOeVkW2XGzuVS6vj5RWUJdS\nW57qDKCK+pz9uvv38m3biK8/jO7s4rC1vRKX9jbr5v6sw6yX3YY85qPa38MY\nYrcJ0bdZ1wfZS3l1NN5FlizrbNjLgf3N4WFhwt9AfBj7MMra+H1Lx57av7zv\n4isU5AtP47XXXzP3rhe59Fv3crrbld12XPVSwThl02VZGy2/vdx1rvIusenP\nvS096cqTndj7iMofeN3TvOHsZ67PebIde/uoZ7EOBF461m/gX7v3FU/zgRYt\nv1Y0Ptf4/FmUh4lhOGOtFZ8vo/CNPd76WwnyUGP909ahlgcLbAM8HJytDK6t\nErzTxB7T1vJsC+wAfAzwqXC+EGwAHCvwXp6kHRj7f2/JGtusmTOEo/F7jEt/\ndsGZPZPZ1wL/xZ0HqUXLbyUan2t8/kyKGet9GPt/mPTc44m/peh9RX8sUWv6\nWIfHO8MVN+dpl0vL7yfFJg8EcWFlBwY/4snbgcLjiCuAU6Lx+W8vRp926H6t\n5XcVjc81PteiRcuvE3eez9Muj5Zn2w6cfA9ta7+HlMet0aLltxSNzzU+16JF\nixYtWrRo0VJ55FnG5ygTyvYgfJ4m+DyR8fkCjc+1aNGiRYsWLVq0PFV5lvA5\n8nxsfJ6g8bkWLVq0aNGiRYuWpy8PxudXHhmfK5ys8bkWLa7ysPtM1dle6rv7\neWd/RKkM7+xQ56VVJi6pe1s/6nUtWrRo0fLsicbnGp9r+X1Eva9HvV+pvPvU\nO1qc72VxyBnLT7v8v67e9NTPjJQzkkuL5D1T6jz1p60bo32LXd7D86jXtWjR\nokXLsycKn+/fu8vC5/sYn4+fNV/jcy2VVPJNsX93/9/9nl+T/uM/Z8fiOAcN\n5+jifdzl4XNgsKzMDPLauE7eVY378F7zBfPn2N4b7an+ZcvrzNtTXR78/IP1\nW949TlHjy5Ejh2jhgrnyDnfX98vne5CH0fOjXUc58O74PTy2HTq4jxYtnC9n\nUz8c5n2Qbh5Wd2V/x7mMeN863kEO3YgvU6p8h3yP1yu2/0ex1cfpG1q0aNGi\n5fcQeU/63Vw6dGAv7di2WTD63l3baPL8JRqfa3mqYrx3Wn2M95Qb8WfzF4kz\nF1vXjbgzudyjnlOCOLTzU2L1AcSr1fm21lU3fonzU2rxVMp9rsh4j/nF5HPc\nL/Lld7xjGu8YHDp0kC3NUlNIYruoc9rlFGr4VQPq1KmD1GnD+jX04osvCE6z\nf/D+dNiqM98Cl/rY83bNz1lOFdt20THrCO8QN/Rtls18N56qvzxv8lVUO+EZ\npQ/gP/vvU6ZMpDfeeJ0uX75o8VxcdWprFVPvzvZ0bysy9V3srJuLrVAZ3I1y\nHdi/m3r06EpxcbHUpUsniooKc8/ZzR5KzDOsSd5lblwz1zNs7Wa0RaGbrbjq\n2ZmuwyU/1GEz+2wNG35JqanJ8itw+LWMNOsedR26s3+KrferE6m286Qzdym1\ndFXsLOsfeH1GixYtWp5JMd93GxcbRXt376Cd27fQKX9fWrF5By3fvEvjcy1P\nRYA74DeGhgTSiRM+lHrpouCJc+cSKDAwgCIiwrgNMygl5QKdCgighIQ4ysnO\norj4GHl3Y1BQIB07doSx7iULp+Av3sceeMqfTp70o8zr6fLbvYI8Sk4+L4Jn\nfXyO0unTIYKnrfdRs01ERobL+7TPJp6RsuC6p+cQJ8dzwH9dunQkL6+NdPZs\notRn86YNtGvnNuudpBcunJPyhASforzcW4Kv7hcWUP/+fakj43PkExcXRVWq\nVKHwsGC6dCmFgoIDKSwsVOLseJdg2OlQCg0N4eezLSxozzsxMcE6kzkmOoL8\nuX9HRUUIbkZsG2UODQnh++Kl3FlZ1yj7Vpb8H8/6DAw8xf0kTZ6Pjo6U8kZG\nhglmRX4oQ3x8LD+TKbpJTIzjfmvo53RoMJ3i++fMmUFvv12V+1qKdTY03uOC\nsqM9Q0KCKDIigssSKumh3qhPUFAA+XP7p1+9LL9Bh+fPJYoPk5FxhcLDTxu+\nErcPbMLf34fHsmjBm3Z/JYf7dccO7ah586aiq2DW923O5zrbgEd74HaBbUHH\n0A/yRTqF9/LoEv9+9uwZsUXYGMqOfOzvgLfr2fCjjPZGugEBJ1j8JX7vKLkn\nbY/1kds5N/i3qzR+3BiaMGEct0mw2Qf4+oI5dJPbJToqUsqPukJ/V9IuSfuc\nORMr6XvSmXu/ysvL5nKFc32vyloG6nKL21vzZ7Ro0aKlcolag76QlEgJPB9n\n38ykbYeO0TKvHRqfa/ndBTgB799bt3a14NltWzfRiOHDGJclCNejSZPG1LlT\ne7p545rgkLZtf5S/x4560/ffN6KJjG1mz55B/fr2ps6dO5p4sYRSLp6nuXNn\nCW9k+bLFNGzoYMbVyXQt/TL169eHunfvSqtXLaexY0ZKHvv27RIMi5jpzh1b\npTzgR4wY8bNgKsQ4PT23f/8eQvwYMeP/+q//onbt2tD27ZsZ1yVR3z69aOHC\neWzgJeTne0zKuH/fblqxfAnNmjVdOBj4TJ48QcoOfHXt2hWqWbMGRYSHUGxM\nBDVq9C317t1T8sf9Y8eOpkkTxwu+BzYEprPnvXWrl8RMUYeVK5bS3j07afjP\nQ2kT6xYYb/q0KVS/Xl3RH/KbMX0qbVi/Vsq4i3XVs2c3xpVnae3aVfQL1x3v\nL586dRJt3bJJ/IlTjDeBexcvms/160mrV6+QuP2SJQtp/rzZUr8pXJ9q1d6x\n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\nx592/bU8umAcQv97UPup/or/H7eP4n7YZu7tm/z/vUpjMw/SAX7Hde2DankU\n0fi88mCOP5tgXr5XkEenw4IpIMCfgoJO0cmTvnTihA/5+Byj8+fPyljsKCli\nfB1Egwb2p6NHDskY5+DxLvtWFg0c0I/27N5uw0L2uLvxP+73OX6EevfqQdcy\nrsizZftBMUUyNl8wfw7dzrnxEPg83+1veb95uqei951WfB3lysnOonlzZ1Nk\nxOkK/Y3HE9e8odeMjDR5z/3Bg/s8YM7yyvpr3+lacbrwx7Zs3ki7dm6T7+Fh\nIdJ2l1MvUv6d27Rnz05au2YVFdzNq7AtZb4XHXrK7+Hr5mC9XL1yiXZu3ypl\nWrtmJeeda8u7Ipt4kB4eR5f5D/WsgY2Lrf9v3cykBQvmUUhwAI+7hR7SKC/N\nB5XR83XkmX8nhw57H6Dly5awb3PL1NmD9OX8DpxWfhtWpMtHKXNFunxcnVTU\nXuWV9WHGj8etw8M9Z9c3xoM07nNz5syU+IcTf7qOhSXcpokJcbRw4TyKiYmQ\nvuHso7m2Ni+/fWS+4HsP7N9Dhw7to4UL5lLqpQsP6QdX1D6PqlPX31Fnuw7Q\nb+zjCr4nnU+kObNn2Mr7sP1Ky59ZND7X+PzXyK95x6XC57t2baf69etRvXpf\n0OrVy2mT13rq3bsHNW70HXl77xcbARb793//N5o2dZLYLHA7MGqT7xtzG1+X\n2Kn9Y8QrrG9suznUuvUPNG7cGBkv7eVVGGHQoIGC4xVecU9DPWPEk4lttNDK\nS8WD1FpAiTlPOX8vNmK86pstf5WeawWMsd21DEbsCXU/dtSbBrK/gnI/qVi/\nimOqOiBvh8wtCVSnzsfUv39fybukuNC8x3mf83lnHcuLJbm2lZNz5FpXsuZd\nK6ZrflCmwnt3qE+fXjRs2GDJd8P6NfTiiy8ITr+bf5u6/tSZPv/8U7qTl20+\n77ClXGzpEfdeSkmy0i1TvtJij3Vz50rh+/RpU2jGjGkUcPIEde7ckbHuddcm\nddGTkYZhF2RrAxVnJCmfJ106bcpoK6v95VmHyzWlR6duS61njN+L6Py5BOta\n+tVU+vrrhrR+3Wpy/RTbyk1mn3fNr8RDbNC5zkFW7NNYi3G2Ldpo6JBBVLPm\n+xIXtUpvxvANrOPUgf07pPBePiVfOFdGT878nbaq/ldpGOVxyG9SHvW7qrU5\n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\nzOnUsUM7Gj36F5m7x48bQ3PnzBJewGjO9/TpIMFmHfieF174G/Xr15vb76To\nD37qiRPHRR+d2b6bN2sqnIT79/NFN0OGDBL9wW9cunSR2MOkiePYX9pYZr9u\nKOtg+/bNtIzLv4zv3bLZi4Zymx9iv0D5yNAV4o7Vq1ejuay7Kayr/7+9946u\n47jzfPfsOe/te+fs7nln9q/d8c7O2t4Z25Is25LG9tiy5TCOcracLcu2bNmW\nZMsKI1mZpERKYs45ZxJMIAGSYM4JORFgBphAkADBABAkQdarz69vXTYu7gUa\nZAN9Afx+PN9D3FRdXVVd9alf/6r6V4/+QtJkXgEHfc9eb8TA0M62bt0or9fl\nZFtmrTRf+cqXzd333GWv4edlDuz3H+fYeffQIe+aVTaPlBVzEc6BfP3sZz+R\nvoBrcpSdk5B3rvepds7PvO/55/5q+7Wlds5SY7/zF/Pd737b5Fvu5HvPP/9X\nm+e1tkyumHHjRst9HPqXyZMmtGrD2+1cyV2fnC9zgTH2+MuXZZixo0eawYMH\nCTfOmjVN7lGNGjncjq2Nch/mueeesedTJO2JYxN3NNC2R8qGvs1b53DdrF+/\n1oyx1yt9cP9+r0v7hNHh4x98/7vm7bf7yzlTx7/4xU9te6iQvoc+M7GtNzSc\ntdfdlqS/O3bskGXL8lvl/eLzZr8t76ysTPOzn/7Y7N/v+R3oz7jG1q5ZZQbY\nOszMXBqbD16UezPzhM+9a5Q+nT5izuyZ5qHPf05inK7asiovLza/tXWVafsk\nd/+noqJUrulPfOJjcmxi2Rosm9NPLZg/28yePU36r/z8vXIs6v2Xv/y51Ant\nvLKyTOYtXGsT7HEefvgbcn1yzdAuaB91ti4o02R9GW2R8ebddwfJfV3a80sv\nviBjBX0nZUD54Ctw/Qr94xHbRjnXn//sp5LnXbu2ma/b8yavp08fl5gy2o/U\nfex+cqvr29aj33/Pd1avXmX7gfnSl3Kvi/jDZ+zcpcy2l2Txm6qeKeVz5fPb\nET7bTXZ+/5G7Pmz+y3/5z+YjH/mwvG7jy+1A9L34oejz3/e+vxfug0t+YRnh\nvvs+IX6vlpZrMmb/x//4H6W/xxgzHnjgPuGZm7F4B+IZ/8f/+O/mox+92/Jv\nvvh46Hvx8TBWN16+YL785S+an//8p3H/Hcenv/vhD79nMjIWePcJbR/OGPK7\nx39rue+kcPIrr/xNxsjz9WeFxf7+7/+H6WfHQr5H/0ts/IwZ0725w9TJMu5w\nXgcP7jef/OQD5oknfmdZfZ/tm3eY+++/30yZMlG+C6c8/PA37XFO2HzWmm9+\n8+vCDWdrz5hpNh14tKrqsOhLX/qiGfj2AONiZTIyFppHHvm+5N9x4tnaU7Yc\nFsu5tKdFC+dZRtseLwf6/0ED3xIexLeFL+qB++8z1fa4HAs2p/+nHCmHgXbs\nJh+w0iQ71uEDguuWL80wV5sbZf0qYxRzC+ffZT4Ekw4a9La5dPGCvRarzA9+\n8D1hSMatj33so5Z/V0q6zMOINSotKZBxj/+bLbfAEOQRvxnj6x//8HvJX3X1\nEVuu98X5fN68WTKW48vLxkf868ds/V+U8fAz//ppy23ZUrc/+fEjNv2fiO+S\ncRYmfPON18Q3i+/vftsGYSmOCyczRuM/oz26uQfnxnzrX226/Qf0s9xfIL5e\n2CCxPBYvWmC5+LT5zne+Zb74xYfMZDv/4jxpv3It2Db6+muv2OvpQyZn7Wq5\njw8Lci7Ek+zcvlXmd6w9gOuIOfrRIz8UpnvppRekfK80efH473///7bzu0mW\nsw/Ld/Lz9klZ0aaIJ7lsy2OgrXPyhf8Qfznncffddwlj3rTM/46tK+YdXju4\naVl0lNTp6ZPHbTv9qVlumRCmm2Hnyx//2L1Sj+6eB77CkZbVyspKhdGo30zL\nO9+xcxhi027Filw3a+y89uMfv9fW/yrLpKVmwby5ch2vWrlcfMOSp1kzpG6L\nivLk9dy5M20ZnLNz2sfNd2157tixQ/z6LbHrmr6Bcs6QNQpXJI8f+MD75T4K\nHPWpT33S/NTWPWsFuO+2dcsGmUvjB25q8uaLD372M3Lt4R/48If/2baLE3K9\nf+zee2XtCwYfzbBiPnNvQhvmfOgTHVe98NyzMnfiPgW+bs6De3fVVceEien3\nquzfXIvMLWizzKvwVaxOKJuVmculnf7YtuENltFpZ/giiBPit/ttud1110fM\nC5b98vPz5LO77/6IcB9127/fG63a+n33fVzmfjDoXXcn+Z3tV+rOnY2X905b\n3lz3zA/wlXDt0Y6Zey5ftlTKZohlZPqoa/Y6pD+kHXNt+q9ReJkyveeeuy1T\nvyefHbdzB/p45hCub+Oa/4O93r8jdb095kMZJ9fA2bNnzDmbF+bsjz76c7k2\n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\nxEIQ20YZLLXzR9oZMQvEuBGLhTk+vxjzM7uywXeOn53rbn95cbwtEQ9BPDvt\nBTZ2denqluMw90hs68SIVMfm7P424H6XEWvbr/jKm/MmlotyYC0p97doa+5a\nZj8u8urmS1668xLaubdnI30jfcy3vvVNmQNdS3j+GDZgQD/zeKzt0hf90PaR\nz8b6AIy1EN+0czf8O/iLuF9Cm2q9d8stPq+R9enefiv47rn/ip+gzbVrxwL8\nLsQjwuLc083KWilj1u5d26TvkP6nIFd+4e9XKCPGChkzpD/1+Jp1tlwX7707\nKH5PZ+Cgt9pc3+wz7PagpK9hPKQPZi5wt617xqMb9jrlfYnvUv95r5Gfz09a\nPj9+/LjweU1NjfB5fX19p/jcz+jdxefkRfm8+3Wn+7c4Pxv9ygc/8H7zd3/3\nd+aNN18zM2dME4bGn4Y/AR8H3PH//L//SXzfdedqzTHbJ919993iM8SI68An\nSN9MX8t6P9j+K//25fj4yhwCPi8uymu1ptLt38L9TW895HWzefMGWevHekJi\nAuBWYlHo57kf/Q//8D+Fba40XRZm/9yDn5X7mZmZK2Q9EfGhcBH9MSzx9NNP\n2rnuWeFd4iTYP5K1TcRnEl/99lv9xN9JvDz3z69duyJxrLAvftYRw4dIbMu6\ndavFV0o+8U2T787G/CerR/p/YiZ/brlg+bJlwi3E28KxJ08eN9//3nfNd7/7\nHeFo4qpnzZxhCgsLxL9PvAt7HxCzwZi0ffs2YQdiaGCcGz5mYh0aXLQuZ63Z\nsmWz+KGJp4R1iQvgvi7+PNgVHmO8J86BuAH4ifGZ9lJjeZz3vvOdb9tr+pgw\nH/srTp0yScq5X7837Hh4j6Q7cNAA81k7f4KdWSP62c/+q/jDqDvme4zhcBX3\nkPk9LIRvcrhtc9QlawJ5TZrsM7HctqNfPfpzme/diD3HMM+O6R+9926JP2Ed\nATEg8GxiedCWiXsnPoF7BIcP3dq/2dvn84KsrbvXppVv2y0x4ry+5567ZM7E\nvRv4BdbnmqC9EKsDF1N/+JtZu0pe4UnuuezZs1Pu/bDejXw8/tvfyHVBnLNb\nl0nbPm7ZrKS0UDiCNQHnG+rjsTvwIr5lOV8ryuoPT/xeYsmJQRpsy5F1jLW2\nXtxePtwT+oRNm9htyphYYfaiYX8YGMfP56y7ZZ0Ga0goL9ZtPv/cs3LfnvQk\n7tgei/ka6zK4vv70pyekfFjL8elPfVKuG2It5Ph2zk4sGn5f1kxyPm/Z64d7\nYsSJE1dAvC7pwsiMg8Tm0KbwibOXCOsOiVORPsFyEnN07okQj2A7EIl5+8TH\nPx7rX27KGuLv/6B1GyZvbp8VRJ3hi6BO+Zv7gdQrrEr9MfdgXvMP//N94p8g\n5nrdujVSf9wv85cNdcDaZeYA3HdjT5CMxQvlb/aYYn8P6vL111+WNTTsY8Nr\n2j78mtjWWVNCW2eNYbLf0bYvXWwQn70r79ra02ZD7NpjzT5rkeFe1lCsXOmt\nRb7Pzu2ICyoVH/JHbft8Rcrcu0bvlr1e3LOb8cFzLLem399H8RvucXzpi1+w\nc6FyaTfEm3zbcjVxZewrRD0via03GGHbOzGJ6yU2/9bz6+Bz9jlkLCCOj1h2\n1uyynpcYN+bxidcufTvXB2tnWIfM/ipr12TLegHOmXt9lAFlgz/F9SvEcjGf\noqwYMxZarr4q++t4/qJP2TY/S/Y8aJF+knt4idf37Fkz4muMblxvln0laafE\nUdKXce1QDlxvYe63q4pejs/Ht8PncK7yuSqZQtn/3Pan7EvA2ke4nPvF7CXN\nPgqsE2J8hIVZF8geBvRr9GfEWMA57McItzD+wgL4DZcv99b0wSq7Lf/h7/jl\nL34uY9H1ltbPYfb27jovscX4XNzexvS/rN9jXRR9NAxL30o8KjHi9LX4Y+k3\n8X1zL5d1R6SBnxT2YV/AIUPek/gK9vtiTIebeH3ixFHh4F//+lHZ34Wx5amn\n/ijzEsYnYkk41muvvmz627Tpf/ET448h7Wf/+ozkO4z+mHPgmTTEL+O7Ykyb\nMGGMzEUOHCgTZmFfhrLSYikX9pXBV8X8ReI7Lb+cPFkt/I3fjVgE9k3xr1Vy\nMQPEv1Kf3NdlHiTPA7xQJ/EXc+fMEkbjM9biUhfFxfkSJwwfsK9MteUr9kUj\nRgj/LHMGGIGxbNHC+RK3Q1r4mmF/9vhg3QLfZd8F4iIo9wabPusE4X5iSZln\nNV+5KOeET5a1otzXwLcFtxDTwTpH8s++PP75KHuocDzq6PjxI+2Uxw25907e\nYSL8bf69wGUvDztek9aOHVtkb39ew3Hsm+jFSewWtiEGmnnbgcr90ubhCe45\nvGbZiHb+k5/8WPY/IvYHdhpk01i4YJ7JWZslYzu8BNfDy6Nsfog/4rzgbeIT\namqOe7HT9piwKXu+OP80/3NfgbbNPSvuofGdeF3b64c12pQZ9cn1wRyAa93d\nd/B/F/8idUBcEPEXHF/2yovtp52fv0diG1jjgj+Z+0+0Qa4/5jzvWh7iWiUO\nje8TswAv//KXPzMvvfS8XFvEaxPf/eorf5NyJ5aevuYI+5kQxxDzq5K2tEGb\nV+6ZuHskxGDhO3drefEDLMlYJPsDyr6P9n9itBPbcHz/oth38J9L+7L9GdxG\n3eG3pU1S/8wdWCdJP3Hc1h3XIutdYD/my/6ykb397LXA/jjklz6JNu3tH7RT\n6hIfBm2bPTB5zZyBe1lXEto61wX3p1hbnOx38Pw5m1dX3pQ/bWBj7NqjjdOe\nli5dJOeGD5++kPkEe8Ls27dL5nG0A/wU9AG0c64dt0c5+cIfkRiTQv1QT8yv\nKBvy6J5jwT1IxgqOu3r1Svm+xKHMmyPzaxjZ/6wwj893yRps9iMg7o3fM4a4\nMm177Xr372i7tGnWRRPvgw8Ghli/brVXBrYMYWTSol+ZOXOqjFfkgde0C/pA\nN1+j/quOHfI9e+GalLf/+ua+jL+PWJezRtr6Kjv/Ya8X5uekc+KE7q/Y26R8\nrnwepa7G1q+7e34ultz//AW+c/VqY+zz5vgesayBI86PMel67NkZ7vNrV91z\nXrz9wuEy4tnF55ni+aH4VGAm7hF648VNGYNlX+xYv01emFPwfdaYOr+MxAbY\n195n3vNPWLvKfsjSZ9r8uc+5j4vol3/+859440LMWGf0uc89GF8LJ/clYvMY\n93xs1i0xN2GMCXOtvvNXcc5uH5tGO9Y0+faHudJ0ySsXO97BErd+d9m4OCJv\nH+gLxr+2y8k95xpOuSixDC2+Z8B4MZWyJw9rSuN7Ed+UvSo9P6b3vBb/njUc\nS8rn5rV4GYuPyqbhrZu7JjHAnIt7Hk1jY0O83dFm4BJe34w9P0fapnzeEs8b\n73HOTbHy8c+LeK6hMGesfbhySSwPNyd1a71oH4nXg3suFb/x2vJlud8T35tf\n1kRctce8GOca5qNcCxL3HYtXIAaFGC/mKxh75nvxHd4ay8ZYnikTeMaVo2vn\n/phX73tX27QX1BzPV+sycXthX5FyNOLvdXWeuPe+87nL9SZx/bfK3B3rVvtr\niZ339fge6y523r/PBTw0RtZ93Ij3JYPefkvux0gbj+0r5OrLPSeINNzaAv/e\n0+5Y/hh3/+v22rC/TFz5X2329i69HttjlrHItV83J6De4bHPfvYzcm9A5gLJ\nysYemzzD3O6zpqYLrerSpXutubHdtt7U2P7vXHkTb3PF9Xmxa889v4f3vOvr\nZmxfovO30iFvMV+HtGP7PnV39OgRy9+j5f5Y4p7fco3F2pnL460y954/xz75\n3vMZmmN5v2zc8wa86+pWX8/+KMTheHs01sXbr79Mk/Vlrr+irL3nKt26pl0Z\neNdgrF+JtUn3ueubbrUf73kSrdqYMQnXd+Kz0K5L/9USa2+MV25Mino8V4Ur\n5XPl86jlWCVRiXspJ77vniHBviu89n+emCb3H0tKCtr0dX7J3lW7tska1Rbx\nbzTGfHFXW/lykuVFmCD2Xvw7MX5Mli9iUvBNEfdC3AXrP1H2qkzx+7MG0635\nlO/H4ih4Tf7YAyXV8zlvV+5YiXlNfD+ep4Ryceftnjva3nGEXVraPsfV7fWS\nmO6N2DNO/LEgqerb/1ncdxnLV3w/SXdsXx0n1mVi/to7t2RtItVvkuUv1Wep\nvuudT3Ps/2uy7vOvzzwt9yNYq8nzTogPwj/cFHvOlL9c/em1+Mom1Xn4nyfU\npr5bvHykak/eeTTG6zxVm2hpp10lq++25XE1Xqf8Tdw5e8nv2LldyoQ1eMQM\nwH+uTpLd+0uVB3e+7b1urw23+o6vfbV3fbHPI/7nf/7QP8s+To6Nk9ZDB/1U\ne/2Wv60H+d2NdtqMSzOxraW6RuHKJRkLZL05MSY8jynZOaa6FuLnkHANp/ou\n+/hzn4vYce6L3mjnmk52vfvfv34txfWf0K+4z5O1n+vX2rYRd30na0P+8nVz\nRI05751SPlc+78ly/nG/fySZnF+no+/cjPn8uiPv5LuyslzWk7KeygmfTjL/\nkRN78vr9dqq+LdpBc/MliSHgvjt+89XZmWbTxvXxfVmizmMUZcI9GmKxeDYR\nZUKMDbH49Pk94drxzqFOYpJYx8lak+7qm7pTXixhlqzlZW1me31fGGXKvRP6\nXGKzWO/p7p+oVOkm5fP076dV7SvIWBt0PE7lJ+wqyV5uxMJcOi9xicnuZ0ad\nR1X6y4sPMcJvPM/c3ZMP+x5LT9LN2P6OlAVl4sUdmB7la3Q8jh+CeJjeyOfI\nxQYli4nr2jL14smiPn+VKpmUz5VzVNEq8f521PlR9Vz576Mnu2/e19RebEFP\nkYsN6c1jlesDu79Me2abUPUNKZ/33j5PpVKpVCqVStXzpHyufK5SqVQqlUql\nSh8pnyufp4sS9ytLrajjBVMdP+p8dV4uribqfKhUKpVKpbol5XPl83QRbM4z\nQGRP6BSMzn6xmPvc29u4/fWUYcpbx2TaMO3N2PvseRt1OXYkt2aQeRB757Kf\nQap971QqlUqlUnW/eiKfczwn5fPeIdbS85wenlcJn6fyoZ+1/F5SUhR/HlzV\nsSPmeNXRbltXyXM0eN41z/xrcce8xvt1kq/6urORr/FM5Q93ew1fjj0zg9c8\ny3LRwnnxZ4tE3Q5UKpVKpVKl5vMzZ84In9fV1Qnnwrvt8bmf0ZXPVZ2R7Enb\n2CDPlmePX8eX/ucDyfPqLpwz77w70Dz66C/kuW7sjfXsX/8izzJ36bR9ns6t\n4/jX7Cd79kOq5+YgYdub1+TZJg8//A2zffuWeCwOgnG//e2HTXFRfvw5fIlp\nuPSTPe/C7TNx3cf8ic/NSVSyZ5J4z/27tW+Fe1+e42jnPQcO7jeTJo2X59rJ\n88Yv1Ju33upvsrNW6vPnVCqVSqVKEymfK59HLWJWeC7Pn/74hDwv2nuW4BWJ\nXcFf3WDriWc4X7nSaN588zV5Zjn+a577NnzYEDNy5DDjnntOe3bPl75+1Xs2\nvItr9/bX9Z4JDqvKM5xjz8Jwz0rmmSbuuc3kwbtGPN7ms8wVS8w//uP/MllZ\nmfFnPfMZfv/3ve/vTUHeXnnfe7b1jTgjyzPm5XnRZ2LP0r4ZS/uG9xn5i+XF\nPWsaPzfH5O9WTH+tMf6McJ4z7X3/ejyPs2dNl/9vzXOa5Jw2bMgxzz//rPna\n174izyB3z1TnWaS//vWvZM6j+42pVCqVShW9lM+Vz6OUexbyn/70B3keOSzq\n/Mz4qBcunGdmzpxm5s6daZn7sjzj+nOfe1Dipk+fPm7GjRtlVixfImnxjMDh\nw4eYpZaVR4wYat584zWzft1aL3bmQLkZM2akmTd3lpk2bbJ5a0A/M37caOHb\nGzEfNN9dtHCumW4/X79hrW13V4SZq6uPSN4yFi8wc2bPMPfee49Za4/l/M3k\nteb0CfMv//KAmTtnpqT/xhuvyvcljsR+frGhTp7tuHjRfDNl8gRTWlIov9u1\nc5sZZecXhYW58hzvbds2CXvv3rXDLFgwx8yaNc0sX5bRKv6ENltUmCd5ysxc\nar8z3VRXHRbmHjhwgLnnnrvMy3/7d0nrRsz/Tox5bu4+8+c/P2m++MWHhNfd\nvQTmMj/5ySPyDD/mSlG3CZVKpVKp+rqUz5XPoxQ+3hrL2V/60hdMQf4+8SMj\nuPWF558VHsdX/dBDn7PMuk18wPA5XF117KD5+te/ap579q+2bTSbEZbN8W2P\nGDHMzJgx1Tz77DOxdPdans01999/n/nVr35h5liGHmn5/Utf/IIZMvgd29au\nmTWWTWH2nTt3WOZdbn7wg++Z4qI8eabni//+vDwLevu2bcL+99xzdys+5xyO\nVx81n/jEx83bb/cX/zV5/9Qn/8UcOVxp028248ePMROs9u7dY+cUY8yvHv2l\nOXe2xizJWGg++IH3m1df+Zt58sk/mq1bNpqiolzz2muvmK1bt5jNmzeaH/3o\nhyY7O1PKBZ6GtR977Fem35uvm7x877vMRRrOn7Vl8Yz5wAf+t3n99VdkfsOx\nyaPnYzcyN/jyl78o9yXivn3TIjFC/d58zeNzfa6NSqVSqVSRSvlc+TxK4UPe\nX15iPvOZT1vePuztLWJZElYdMXyo8awl5nMuMOvWrbF8/llvfWbLVfPEE78z\nf376SfkWbHv33XeZysoyeU1czBctn7/y8ksSC/Ltb3/LvPPO28bZuLGjhakP\nHawwjzzyAzNgwJumsLDA7N69w3zykw+YSRPHmTWrs8xXvvJlOR4G137+8w+a\n1atXteJzfOyf+MTHTLbEvRg5l7vu+ojJ3bdL1mB+5l8/bRYsmGsKCvLNiuVL\nzQc/+AGzd89OU1XlfW/M6JE2jSrxZT/99FP2vH5vOb3Q5idf4t2feebpOJ/j\n+540aYKc5+XLF81QO3f4sj1PGJx7CA899KDEqty8cS3hWm8xY8eOSsLnN8yo\nUcPN73//W32GqUqlUqlUaSDlc2WRKJXI57TH+rpaYXB82rAj+4rfvHlV2gpc\n7PicOJC/PvNn85c/PyWf5eXuMQ88cL9tx8di8eZGPv/lL38u3PnjH/9IYlq8\nOPUWU1iQaz7ykQ+Z1dkrzb33ftRMnz7F5ORk29eZZrLl3717dpmXX3rR/OY3\nj8Vi0K/IcZPyedURe+z7TL7EnxubhyrJC8dYmbnM3H/fJ0xW1gqzds0qs2rl\ncjPO5uPokYMSo4Nfn7xjxI1/9rOfMQMHvmU2rF9j5wcrJd5m1aoVcW6+Yecl\nHI94GfL+0ksvyByCz3Jy1kj+iP9JXIfaEZ//7nePx9fV6p7oKpVKpVJFJ+Vz\n5fMo1Sq+pWCfMCR+7889+BkzPO4/l1Yi/nL2d/nCFz4v8S2Oz9nDBdu7Z4cw\n8elT1d66S2u/+c2vzcsvvyTzgEce+aGZOGFsPMXNG9eZf/30p8SPfdfdd8V9\n3zdarscOed08/9yz5nvf/U48vUuX6iXWhrgbt+865wCPE3+eu2+35OtE7DVx\n5qx9veejd0s8jrnZ4onzsXx88qT3vfzYutIGy+cPPvig8LKXF2+ecSv2/IrE\nxXDPYNasGaa0rMRMmTLJfOMbX5V8MG/4/Oc/J7Hobp/zW9e6MRMnjjNf/eq/\nxfdX9N5vkXsMr7/2ipyzt49Mo/rRVSqVSqWKSMrnyiBRyq0PffJPf5C1lx6H\nN5sB/d8Qbs3IWGR27Nguay0rK0rM0iVe/Df+4xbLro899qj51aO/sPV41ezb\nu9N89KP3SBx785VGs3PHVvOtbz0s/8OiP/zh903/fq/LOtOTJ48L1xPDTYzI\n47/9tfne975r1q9fJ+soly7NkHiarFUrJM0FC+aZQ4cOSnzNB//PB83o0SMl\nZsbt31JZUSYxK+vt57B8RWWp+cAH3282bsgxp05WC9MTk8657N69U9aJnrJs\nfvDgfvOBD7xf1mYSj0Ja7DPJ91etWmny8vbZ/zPN1i0bvP0Ub16TuBb2ilm0\ncL69Xqvs9980n/rUA+J7X79+rfnIRz4s84Smpoutypr9b/r3f9N8/OP3ynyC\n90iz2Z7HT37yI/HFk/cF8+dIHrw9XvT6UKlUKpWqu6V8rvwRtfDZwoZPPflH\ny9WXJTblePUR89RTfzI//emPxFc8aOAAU1ZWZEaPGmEe/uY3hGdZe/nE7x83\njz/+a4nxJkbkn/7p/0jcOnueDBr0luxtAoPC0sSY/+THj8geiZMnT7BzgDeF\n8y0Yy34oxLE8/vhvzAsvPGveequfOVBZLmsx+9u5AutK2V+F+BD2OX/bfn4p\ntkch58C+6OxbSPwMXLty5XJ5zfd5lhK+efZI4ZxIn/fP1p627G2/99WvyB6R\nEjPOfjE2T3955mk5Jt/Fr73Xzj3cfivErhCf/9RTf5S4/DFjRphH7Nxj+7bN\npurYIfOzn/3Y9LN8zf0It6c6edi8ab159tm/mG89/E0zb85Mey0clfkQ9w9+\nI/srnpXjvzPobZnL6H6LKpVKpVJFo97E57B5ID4vVT5PJ8n+3JfPmzfeeF1i\nrt1zLonj2LBhnVm7drU8J5S90ffu3W1279pp67DIttWjZvfuXWbnrh22bqsl\n1lvWaFrWZ9+T3Ny9EjPunvHz05/+2Lz88ouyD8uWLRuFj12MCsc7cfyYyclZ\nKzHcR48ejO9ZzrN8SI+8sJa0qDBf/OVuz0PYv6S4UPKyd+8u8WPzLFFe79mz\nK7afeoudXxSbNWuyzYaN6+11dUbOs6S4QL6HT539V9xe5nXnztjjrbffX23K\ny0rie6Mjfkf8DL7yPZatidcnVr7cps9n5eUl4uc/ZOcsjs9Zd1pgy4f9afbY\n4+3Ysc1eF6fsdXLeDHyrv8S3u73hj9my5nw4v6jbhkqlUqlUfVF+Pj9h+Rx+\n7W18zrnc4vMqy3ZlyudpJtphRUWpxFZcvtwg8c9enLazltjzdJzdEHb2x6ev\nyV4lewtW7C+99asYn9bX18q+3wMG9IutDzWt9/q+1hiPMXfpu89uxtaauvfd\n8fzx2fE0Y8f0v3bPGPWbey5S4u/i6bU695ttYsG9Zy25j13+WhKOcz3hNzdN\na7tuy6pY4oqam2/tr+7SjrpNqFQqlUrVV9WKz48rn6uibYvsvQKfX4vz6OWY\nGlO+huWJ32DPFfYinD9vdivfL9xL7AtxHzw/k9iZ1HEbieknez/Z58Hymjz9\nIMfs6HiJx+noN17s/JmaE0nXkrafhkqlUqlUqq6U8rnyebrIxXZ0et+QWHx1\nUXGByc/PMyUlhRLP4dLxYjYOmby8XFn7WXvmlMZVxwSXt2VzlUqlUqlUUUr5\nXPk8pZov9xh5bO/iN260yb/xxajIvoJpkGeVSqVSqfqMomaaHiblc+VzUdTX\n7R3qalyX5P/kn19K+blKpVKpVKpuVtTsk8ZSPu+jfJ7iWrmqUqlUKpVK1YVS\nXlc+Vz5vn8ujvkZVKpVKpVL1bSmnK5/3WT5vViZXqVQqlUqV3lJOVz7vE3ze\n3Hkub1apVCqVSqXqAimnK5/3eT5vDsbl8evmymXZN1ylUqlUKpWq6xSc1/sq\no/dEPneM7o6vfJ6cy9tj81tMfsk3r70U+X0tlUqlUqlUvVvwRjIOSfX9vuhL\nT8XnNTU1pra2tg2fw7/wOTycznze0NDQN/m8OSCX+64Fro0rjRdM4+UGc+li\nvVVdIF28cE6lUqlUKpUqMDvAGfAG3AF/pGKTdjk9atZSPlc+D5vNY/NUXl9p\nuiDXCc93v3gBLm8wly9ZXb6gUqlUKpVKFb4uNQhvwB3wBxwCjyTjlL7M6Mrn\nvYvP2/WZx+apV5ouyvVwQa6LBtPUeFnK8fr1a23qR6VSqVQqlSoswRnwBtwB\nf8AhF+KcfjF+X789X7ryufJ5j1FANm9qbLBlc87WZYMttyZbzi1GTU1NTU1N\nTS0Kg0PgEbikwXIZnKKMrnzeK/g8RVxL4tqLy5fO23Kpk/mqcrmampqamppa\nuhhcAp/AKfBKR2tHe3uci/J5D+fzAGx+Vdi83pbHWfvelWgvQDU1NTU1NTW1\nFAanwCtwS0d+9N7M6MrnPZ/PO45puWDO15+1ZdYc7UWnpqampqamptaBwStw\nC/wSiNGjZjHlc+XzDti81frnmGjjzVfUb66mpqampqbWMwxu8fjF91yjPhSL\nrnzeu/g8kc0vsBb04oVoLzI1NTU1NTU1tU4a/ALHdMToyufK52mjjtaDWnFf\nqK6uVteCqqmpqampqfU4g1/qLcc0xZ5l1JfiXHozn9fX1/c9Pk/wnV++fDHa\ni0tNTU1NTU1N7TYNjumLPvRkfH7y5MlO8blj9Dvlc/93uorPq6o8Pn++J/N5\nAN85e/zjO6fs1NTU1NTU1NR6osEx8Axc05d86HfC53Cx8nka8blvbtl4mfie\numgvKjU1NTU1NTW1OzR4Bq7pSz505fPeyec8J/fSJV0XqqampqamptazDZ65\ndLHO8s1F5XPl87RVR2wueyqer9VnEampqampqan1ePOeWVTbms9TMXoacJry\neR/k8wC+c1RXV2PL61q0F5Sampqampqa2h0aPFNvuSaRdXqzD135vJfxeVOM\nz8/V2HK7Hu0FpaampqampqZ2hwbP1J+racU5yufK52mlZHzum0u69c3K52pq\nampqamq9weCZuhift9rHxUr5XPk8HdRRbIvyuZqampqamlpvsvb4vLfGoCuf\nK5+rqampqampqaWrKZ8rn6e7AvF5E3x++o75/IxtAxX7y01pabEpLSuW/2tq\nTt/xdXbkyCGzb+/ueP2rqampqampqaWyOJ83KZ9Hzef+34bO52Xl5rmeyOcB\n1obSbuXZoSHweeaKpWbMqGFm3rxZZt7cmWbWrGlmyuTx5sjhQ3eU7vr1a83o\nUUOlntXU1NTU1NTU2jPH545x+sIaUeXz3sPnrt2GxeeTJ40zM6ZNMgcPVIoq\nKsrN+PGjzGzL6a7uas/UiF/9wIEKqRPsxo0W8bNfu3bVHDt6xJTZz2lLzjZu\nyDHjxg6X+jx58rits0vxz0j3xIlq28Yu31He1dTU1NTU1HqHJfJ5Kx96r+fz\nRZbPq9OSz116QficPAaJb1E+79imWzZfuyar1XsZGQvF940dPnxQWH3hgjlm\n9uzpZnX2ylidXDEL5s02mzdvMEuXLDJz58w002xalD22cWOOGT9upNTt8mWL\n5XvO4PopU8abs2drjZqampqamppan+bz2bf4/NSpU53ic1jZSfm8m/k8Ifb8\nFp/f+frQmTOnmuHD3jWrV680WVkrhL+HDhlktmzZJOU+ccIYs8Ty94kTx01Z\naYkZ/O7bJi9vn/D5WwNeNzOmTzbl5aXmQGWFmTp1opluX1OfmzauN+PGjpRj\nrFu3xgyzx6BOsZy12Wbs2OH67FM1NTU1NTU1sXb5vJfusah8rnyeymZZPh8y\neJDJWrXC8vQI8/xzT5sN63OkrKurj5mXXnrWLFw412zatF5iyvv3e01i1WHr\nQQP7me3bt8TTOnT4oOnX7xWply2bN8T5/Ny5s2bgwDdtvRyTeJgRw9+zjL/3\njvKtpqampqam1ntM+Vz5PK3VzXxOfEvmimXy93HbNga+/aYpKiqQ15UV5eaV\nl583K1cuM6tXrzJrrNavW2uKiwsldvzdd/pL3LmzM2dqTL83X5G4Fcfn0hbs\nP/zs+M2Jb8dfr7Hnampqampqas6Uz5XP01rdzOfTpk40q1Yui79es2aVGTr0\nHWkL9fV1wusllsedFRTkyzpR6oLPiD13eSDG/N13Bkhd4W8fO2Z4fP8WYmJG\njRwix4PTsdOnT5nDhw9Ju6g6dlTaJnbM/n089reampqamppa7zflc+XztFY3\n8/nUKRNM5ool8dcXLjSY995722RlZcrrdetWmwnjR5u1lql5b/ToYbKXC/Et\nsPiE8aMs02dJfMzQIe+YLVs2yu82bGi9vyJ1NmTwQPGv19aekfdyclYLr9Mu\nFsyfY5Yvz5D358+bLWtK1dTU1NTU1PqGKZ8rn6e1upnPCwvyZG2n38rKSsyO\nHVulvq5caTLbt20xKyzDr8xcJnHj1FdTU6Pl+LfMpo3rzOZN6y1PZ8j3qCvs\n6NG2zyeCxYl3J94F219eZnbu3C7fyc3dY4qK8uX93H3278L8OzovNTU1NTU1\ntZ5jyufK52mtbubz9szP1i03Wlq9Jn6c9aGwPHbD1mF7xv7no0YNlb1e1NTU\n1NTU1NT8pnyufJ7WSiM+b8/g83cG9TclJYUdf9nanj27zOhRw+L+dTU1NTU1\nNTU1Z8rnyudprR7C59evXzO7d+0I/Iyh/ftLZf90NTU1NTU1NbVE69N8Pqdv\n8Hm18rmampqampqaWo8x5XOPz0+ePCk821k+d+zc1XzujpeKz8mr8rnyuZqa\nmpqamlrPN+Vz5fO0lvK5mpqampqaWh8z5XPl87SW8rmampqamppaHzPlc+Xz\ntJbyuZqampqamlofM+Vz5fO0lvK5mpqampqaWh8z5XPl87SW8rmampqamppa\nHzPlc+XztJbyuZqampqamlofM+Vz5fO0lvK5mpqampqaWh8z5XPl87SW8rma\nmpqamppaRNbSaNnj/FnTXF/bKfEbfnvbx1U+7zF87thc+Vz5XE1NTU1NTa3r\n7PqlBnOhstic3b3B1GxeaWo2ZXZO9jf8ljRIq7OmfF5tqiy/BuFzmNjxuWP0\nqPgcNvfz+cWLF9vw+alTp8zx48fl/IqVz9XU1NTU1NTUOrSrlpVqd6411ctn\nmKqMSeaYVdXizkl+Y0UapEWanbE+z+fVvYfPybPyufK5mpqampqa2u1Zy5Um\nU7st27L1RFO1dKrl6+l3JNKA00mTtAPnoy/z+exF5nh16vgW/NGp4luUz5XP\n1dTU1NTU1HqXXTxUFvN7T7tjNm/F6TZN0g5qyufK52kt5XM1NTU1NTW17jDL\nYrVbs03V0imhsrnnR58iaXOMIKZ8rnye1lI+V1NTU1NTU+sGu2F56+TqBaZ6\nWUDfOd9bFjAGxn6XtG9cuxooL8rnyudprTTic+rl0KGDUidqampqampqvctg\n5xNZ8wLxeRVcTny6/W5VEEa33zuRNdceozlQXpTPlc/TWmnE55T3qFEjpMzV\n1NTU1Pq2MS4z/qabefzRkvJzYQ9hjesxtdj3gsVchGXnz9cLtwQ18lh7pkb+\n70oLyuey5nP5NFNftMucL9lrqjNndRwTo3yufK583iVGOb/66t/Ssj9WU1NT\nU+seYwzOylplxo8fa8aNG2NmzZoh42x32MGDB0xGxmLJQzKrqjpm5s6d0+44\nlZ+Xa1YszzArM5eJVqxYYo4cPtTuceGjpqbGO8q73zZsyDG5uXsCfx/GWTB/\ntuyr15UWhM+Fze3n9aV7zY3r16yum4b9BZbRZ7bP6MrnyufK511ijY2XzYAB\nb6r/XE1NTa2PGuPzrFkzzcsvvyRcvnjxIjN48LvmzTdflzEXc+zMeAxXOGM8\nhyGc8T3Gd2d8l7E7lcEmf/vbi+ZnP/tJUt/z1avNZtiwIWbSpAk27dQxztOn\nTTJjxww369fnmJyc1WbN6izh+itXmlpx/zXLqo2NTZYxLpr582abgoJc+Y4z\nxsTTp08Kv2AwDefD/2fO1JjLCc/ObGm5YWpqTptrthwWLJhj1q7Njn/G+XD+\nMURq9X5d3TnLY+fNu+8MkL8TjTzfSFhzyWu4qbPWIZ/H3j9fts80150xVxvO\nmWsX6s3V+lrTUFFoqlfOFHZXPlc+Vz7vTj5vNP37K5+rqamp9VUrKys1v/71\nr0xeXm78vbq6evPqqy8LF2Pr1uWYTZs2Wgadb0aPHmWysz0OPXz4kFm6dKkd\n7z0OWL9+ncnN3Sd/b9my2UybNsVMmDDevr8+zgrOYA8+f+WVl81vf/tYUj7P\nzl5lvv/970ha7cWBzJg+2WzavL7N+ydPHjerVi0XPzncsWZNljl27Ij4ud98\n/W9mypTxpqSkSL577OgRk521Qr6/ccM6YXh+s3nTerN9+1aTtWqFWbpkkU3z\nhHz/suUU5gH46rdv22qmTplgNm308lBZWWHT8dLasnmjjLUY9wqWLFloOT7L\nbNuyyQwd8o7ExSQarFNRUdHqvcOHD1sWOpuyDFJZ+3weY/OSPcLltTtzzKXD\n5ebS0Qp5Tui1hnrTUJ7fiuOVz5XPlc/D5/O8vDyzfPlSs3Il/cZKk5GxyPz+\n94/L/7zm/WXLlpqiosLQjqmmpqamlr42Z85s88Ybr7d5f/fuXeaJJ34nY/Vb\nb/U3/fu/YbZZDmWseOqpJy0/7je7du00L7zwXNzXO2TIe2bhwgUyhjO2EDOT\nk5Njxo8f1yZ+Ze3aNWbq1MmmsLDAPPnkH9r4huGXxx571H72R5vuYIlx8fvq\n/TZr5jQzbtxIs2H9WmHwkmKPufFRT506waxft8bmfbP8XVd31hyynDxk8ECz\nbOliy+tHhcWn2c/W5aw2Byxbz541Tfzw+NOHDH7brFq5XDh+5owpJmPxAkkb\nFp88aawpKsw3O3duMwPfftNstczNMSdOHCtcThlNmzpRjg3PT7LvZ2evlLSW\nWk5/+63XhXMSDVajbKurvRijI0cOm3379lk+6nwsaod8vmKGuVBRYM7t3WiO\nLRpvLh3ZLzq2eJKpy91iLlQWmeOZM5XP+wCfu/SD8Dn5TeTzEydOKJ/fpuXn\n59m5vsfnWVkr7Tz+Fp/zmvfhd/pLNTU1NbXebxMnjjdDhw5p8355eZn5zW8e\nE1YYMKCfxMA4GzZsqJk+farZs2ePxMU4Ph8+fJhZvHihjOMvv/w3m/YEO65k\niv/bv0/Yrl27ZOzJyVlrVq/OMr/4xU9lfPJ/Z968ueall/5dxqOtW7eaZ555\nWpg1mcHno0YONdlZmWbF8iUmP29f/LOTJ46bYUPfFV81MS/Opkweb8pKS+Tv\niv3l5rVXXhAfOYyNX33UyCHC2sOG2t8d835XWJBvJowfLcwyetQwU1iUL+9z\n/uPGjjTbtm42xcUF5vVXX7TzhFX2vDfKvAH2LystNiOGvRefh7B3GkxfX9+W\nzzHYh3sRxcXFlv93CsfdjnUcfz7DnMieZ6qWTDFVGZPFd46qlkyWvVzgb40/\nD4fPT6Tgc+q6p/L52bNn2/B5ieXz55XP78iami5LfEtjo8a3qKmpqfVFIybl\nT3/6Q5v1lzNmTJcYF8Zv+Dwzc0X8M+JSWEu6d+8e8+KLL8TfHzlyuJk/f67E\nuxQVFZlFixaaqVOnmHffHdQqNgOf/dNPPyl+9ddee8U8/PDXLceOFQZwxti0\nbNmy+OuhQwfLnCCZzZgxxWzZvCHpZxcvXDDvvTPAvDXgdVMfY1zOaeKE0aa8\nzOPz4qIC0+/Nl83GjTmSzmYrfOLwOZx++rQXh19SXGgmTxon8TIwP4ztjBj4\nbVs3mX37dsuxNm9eb/ncSysvd6/Jy9trxoweHv9+TU2NxJ/DOKkM9tm9e3e7\nMfwdWdD1obKnomX0OJ+zLpT3lrazz6Lyeef4/Hi4fO5ndOXz3sXncDn3LDX+\nXE1NTa1v2vnzDcLhsPW+fXslvnHVqkyJK3H+alj5tddeNvv37zf5+fnmz39+\nSmJd8EcTAwOnl5WVmWeffcby6CYZs/F/Hz16xOzYsd088sj3W7EsYzh+cfzD\n+NuJMefYjPkLF86XPU2IdX/jjddMaWmJxMb/9a9/ET98MsMXPn/eLHPgYKU5\ncKDCVFSUW/apEaZYtGiexLEsW7rIzJk1XWJZYBViU1auXC7ncOrUSeHwwoI8\nO+6es+eYa5m9UGJSBr/3luWOajlOgX2fdagwzeJF882CebMlBmX//jIzaGA/\ns2njOmH5EcMHW/YvlTnJXsvr+OfPnq0VX/y+fXskPeJn3nzjb5Zx2veL386a\nUL91av/zOJ9Xyt+6/7nyufJ5dPsr0ufq/opqampqfdcqKysldvyddwaawYPf\nMW+/3V9iHl3cyttvDzD9+r1uZs+eJXu7jBkzWsZqxvQ5c2aJb3vUqJFm9OiR\nwvuM3WPGjJK9GvGLE2eeapw5bpll4MC3hB/wV7PnL+wCz44YMcxquORtypTJ\nKX1JrMWcOGGMsPiCBXPt3GCW7M3CWlBiX2DghvP14uOG37F9e3fbz6aabHue\n7OHCa3g7a9Vy2dultKTYsskVM2/uLMtRnv+a3y7JWCh/s050zuzpZtmyxbJv\nS8bi+XYe4cXVEOey0OaDuPX582fLelFs+7Yt8hvWja7LWWPmzpmZFvsrtuLz\nY5UxPp+sfK58rnweEZ9T1vSh/nuKampqamp9zxhr9+zZLf5u9hnx24AB/U1m\n5nLZ64V1oxcuNMQ/g23xg/O+f69Alx4x6u0xKLEirH+EGWAE/OxuLSnsQrr4\n1tsbp2D5gwcrZT2mJ89/zlpQ9j90xt9nY6wNlxy1xz108GBsb5ibNh+H7DmW\nxNdlkif84VeventGwk3ss+i4h7/5Pt/hHN15ttzg2dwH5DP2kHHGfoy8jz8d\nxoH7u/r53Z3hc75zdu9GU7t7vanu6NlEyufK58rnXXbden3hoS5/fpmampqa\nWs819kJnLxa1nmed4vPOSvlc+by387mP0Vvz+eku5XM1NTU1NbWObOvWLW18\n6mo9w25Y3jq5ekFwPud7nfguaTMHCGLt8nkSNlI+Vz5XPldTU1NTU1PrdWZZ\nrHZbtrcfS8j+c9IkbZPwrNNUpnyufJ7WUj5XU1NTU1NT6ya7eKhM9jZ3zwsN\nR9MkTdIOasrnyufprvb4vLnpUqv482sB7xupqampqampqSVay5UmU7ttteXp\nie3vZx7Ybz5V0iJN0g5q8EzduTO32LzpUvt8nga8pnyufJ5sjWhD/VnTpM8O\nUlNTU1NTU7sDu2pZqXbnWsPzQqsyJpljVlWLOyf5jRVpkBZpdsbgmYb6c0nX\nhiqfK5+ng4Ly+aUL9eZCQ+pni6mpqampqampBbHrlxrMhQPF5uzuDaZm80pT\nsymzc7K/4bekQVqdNXgGrumTfD4nOZ+fO3dOOJe9OdORz8kDSsbnzC0cn3M+\nvYHPg+6xePmynZ/U1VK64V6kampqampqan3SWhotd5w/a5rrazslftNy2/f0\nbwrPwDV9ZW/F1ny+uBWf19TUxPn8/PnzwudwL/x7p3zuZ3QpeeXzO+PzFGtE\n6+vO2LIKtreompqampqamlq6GRwDz/SltaHK572Pz/1rRC9d5LnEddFeWGpq\nampqampqt2lwDDwTeG2o8rnyeTryuc+H3tR4wc45a+x31Ieupqampqam1rMM\nfoFj4JnAsefK58rn6crorXzo9aa+/qyUqZqampqamppaTzC4BX6BY/qa71z5\nvJfyeUIcekPDWXPxwnlz84auFVVTU1NTU1NLb4NX4Bb4JWncufK58nk6KgCf\n+33oTY0N5nxdrZ2DNqgfXU1NTU1NTS1tDU6BV+AW+CWp71z5XPk8HRVrg53x\noTddtm29vtaWzXkpSzU1NTU1NTW1dDL4BE4RNvftpxjYd658rnwetTrtQ78g\n89AGy+js83+lqVF96WpqampqamqRGzwClzRYPoFTYPNWa0L7mO9c+bxn83ln\nGL2p0TG6rceGOnO+/qwtJ9v+7fVA2Wpkupqampqamlp3GdwBf8Ah8IhwieUT\nxypwS6fYXPm8x/A5zz1N5PPqao/Pn+vpfB5j9KR83g6jx58veslbd3HeloE8\nN/cS18JlW5aN9jdNVlfiunKlSaVSqVQqlarT8vNEs7zXKLwBd8AfcAg8Apfc\nuuefms37gu9c+bzn83lnGd3Furi/Gy832PmqvTbOnxWdl//PdSjmuSqVSqVS\nqVROgfghxhsI/mj0xZl3FNPSV3znbfn8uPJ5T1OSthqE0RNjXhyrM39trfqk\nYj9SlUqlUqlUKqdUzJDIFo7JE2NZOsvmvdV3rnzeC/g8FEZvzert6rJKpVKp\nVCpVOwrCEz7+UDZXPu+tfN5ZRk/k9LasnoLXo77mVSqVSqVSpbc64PFEJo9z\neWfZXPlc+Tzd1VlGb4fTU/O6VZNKpVKpVCpVO0rCD6lYIymX93E2Vz7vRXwe\nlNHb4fSOeF2lUqlUKpXqTpTIHKm4vC+zufJ5L+PzzjB6Mk5PweupFPU1rgqx\nv7T1Hm8nsbptjvV/t5umS6+j416/diVwHhOfi5vsvdsR5xlGOumWD8r2dtML\nUn9B1ap9XQmnfXW6bK81daos+C6/Cbtc7qSOJU/dWGYqVWcUlB1SskcCo/Rl\nNlc+74V83gGjJ+X09li9PQW9FlVpK/rU65ZBWq5f8dbTN14wN1qapR1dvFAn\n+1+1YWLf3Czl31cumgsNZ20a55KyiOujWcd/tvZUh309r8mTn++Q668Tj58s\nT+29X193Rs4/2RrqzqSdmOf2xrE279ljn6+vNZcunm+X34IeA1G2lHGy9Kjz\nqynKju9Td9Sh/7dtvhewDG7VHZzcKG3u4sX6pO2rs+UdtHyoY+Jig7RnvkO8\nLL8JUi6p+CR1HddLWfh/09G58VvaaH1dbZs6CfT7wNfHnV8Dna0nVS/R7XBE\nEh5JxS59ic2Vz3spn/sYvT1OT8nqt8vrqh4n2sqFhnNm+7aNZl1OtslZs9IU\n5O+V9w9UlJq9u7bJ37CcMdflf/c7OJ6/aUf+v2/evGa/22Ly83ebkpJ802JZ\nDB4z9v2bN67GGZs0Tp+qNqtWLhWGTPYdfz6PVx82a23+Llu2cX11WWmhOXKo\nUj7354W8Xo/5S938g3QTj29ueue0eVOOOXniWNJ03DnLudnfk0eXBp9J2dj3\nXBk4cVxJw37WYv+X80uRnuNX6uHY0YPyXZfXxO/5j0Fa7hjuPDkn/qZMKdvT\np6ri6bk0eM37Lg3+d+cr9W0/p+7y83YLT9+I5d//Pfc6XlaSdlOr/Ln85+7b\nZVZnrzA5a1eZDetXm7pzNebggXKzJ9a+vLpo2z44l2TvcTx/HZAf/3v+OnDn\nxHHPnTkVb7v+unBl547BMc+dPW02rFsdGye9873uLxfJd+o2m6wduTqurjps\n37vRqs0kO4/rkr5XBhybNrp507r4/Mr/e37j3kusU3+bS6w/PnPXnnfsS75j\nc26tyzpZ/SdeF8narOsbbvq+p+qDSsEc7XGKn2ciZ6tulPJ5L+Xzq8EZvUNW\nV/VKUees48nOXm4WLZxjdu7YbDZvzDHTp00w+8uLTX7uLpO5IkPGY/yIFftL\n7LV00l6LV8S3Xmv/Jp3Gxgum5vRx6XuvXb1sjh6ptH3JUWHprVs3CF/gL4T3\n4RLGdWlzto2etr+DIb09+C+YAwfK5DuJ7bHl2hXJ58C33zCVFSVxLl6xfLHZ\nsmV9nFNo93BnpT3WhYY6ORY+2rpzp82RwxVe2lwbMX6FEZkjzJ870xw6WC7n\nJsez/3NOHAtOcyxy7OgBc/jQfuEj0qFcztWeMgcqy2x5nGjFLMx7KCPSrbXf\n4fl4fA//qWOWeHpXvFgK6oE5B2xzvPqIuXTBO4eqYwdtXsvEfxpnYHuM+roa\nySfp4tfl70MH9tvybJAypWx5z0vjkM3Lfvkt782eNcXs3bPd9u+18jl1RjqX\nL5636HhVynWt5WlYjO+fPXtKyuXkiaNSvg0N5+JsBzceqCyVer7W3BjPH2XE\n/zOmTzKLF801O7ZvNksy5tu2scrs27vDrFyxRM6VvHJ+x44d8PquWP0csPVD\nObg+Td6zeSQPvOb45+vPSD1Rjy2x+uP44qO35UcdnzpZZWbOmCz55Hhe3ZZK\nXXhp1Eo9k19+w998l9/wW9LgfdqylItt27Bn0nbt03Upr2PxY/EdyoH5yqFD\nFdJmrsW4P/E8eO/SpXo5X+qO96i/uXOmx9v1KZu2K2vKhvZAPbo0+J80SdvN\nk2tOV0td8ftrsTbM37TTUyePxech3rFLpfx5TRs9Z9vAmZoTkifaN7/nPF3b\noh6vxcqBfoD35P5J7Lo4Yt87crjScO8g6v5PFb2CcElfZfM+y+dl5X2Dz52a\nO8fpyu59Q268nzBupIzjnv/sqikq3CdcVJC/x6zOWiHjPjyyZnWmyVq1zF5T\np4UrV2dnyrgLty1butD2Cw0mzzI9/LF+Xbawza5dW2Vc3rJ5nfhOSQP+hDFp\nm6TF+xxjm2V5fKwrM5cIUwjr2nzyP1ywYP5Ms3HDGpkzCJ9bJs+0fMccwPkX\nYQl+TzrkgXuuJcX5ZvmyRXKchQtmm8rKUskT9wuWLllgNtg0J08cY3nigPAU\ngiGWLlkox0LwGvkmbcoAtuTc8WWuzlou7y1dMt+yy3GPG23eiovzzBKbfrb9\nHCbFR7/clpObj5SWFvjS2ynpkR9YsLSEz5aaC5abSmw6a1avEKbdtnWjlLOb\nY5AmaXB+5JPygfF3bN8kXMQ519m8UwarVi6TY+Xu22mKi3LNm2+8JNx8zLI/\nfEU62ba+qSvKkjT4m7ZBvuC+Q3YuQdmuy8mScoNZKatVNq+8v8nO7zg3x+XX\nYv/PnjU1Pu/YtXOrmTplvOSD9uX5lDd5bWxNprQ/9x5lR75oj5zPxg1rpQ3x\n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\niJQ58V28t2J5hvA31zvzPMp9kb0OmHsRf+YdO1uOw3yL86V+3Z6Y5Il5XKu2\nZdsnMe2UBW3b1V+DHWupY86dOnZlQH/THNt/M+r+UNXNipp1eoCUz5XPVX1X\nbl81OAt+xD/N2A87wHd1McaCjfC9wTwnjh8RBmCcrigvFh8arz3f80VZf8m9\nffhG0rJ8yv/w/oGKMtMY20uR4/N9+IjXfB/+O3ywIr7/Bt/BLw8buNf8z2/I\ni+w94eNV9oCBv7ifDvOwPwz5lP0rZN+Zc8Kr5JUYa44Ht+C79vZGaRSfb8v1\nZrlHAM94e2E0yzmwrw38yb4b+LYRfnyOTVn58+KOy98cE94ife5TMGdJlR7+\nbMoMn73bI4MyJq+1Z07FY1sk3djxeU3ss9tb2u2nI3vsXPH2zab+YC/yQRrk\ngXTJD5/jZ6WeYXze8/JfK+2D1+zdQ7nxHcpF5jOyb99l2YOG/FEGtAW4zdvL\nw2tn/NaVk8u7a18SU2R5kLwxL+J7vMcxvTRPyz4l+KMpH44N23Ecyomy5T38\nx+wL4o5BGnW2DdCu4Vrn9+V9V7e1sXNyc0Xec3ul8F1+w29Jg/bE8Vy9tteu\n3Tki7s+4Y5FuYpuhjJOdB+/x2f7YNcZaZ8qUvYDcsbmXQjnIfpq23dTG/Onu\n/B2Tc80yb+B9rg3Ox7sOrspcinklPE9evT0U3bGLxGd//ap3HwQfutvP3rXj\nxLbl9lJiLyZ+T7nxHudM/dLO+A31KXuaKqupVEnV2/mc/Lfev6U6zufnG+ri\n94lVqr4qx+jeutAWL3b4amM8Jt3bQ7pF7sd7exp7a0m9eHXvN44ZvVhd77tu\nP+VU3/Ufu73vMFfwv0YubX7jjpHs+Dd934ufU+LxYvEWiWzlxdG3tM1f7Psu\nXZe3xLz4j3vTVxbuWDdlH+nk6fn3SvfnxaWXrGxcuv4ybbUveqxsXT68927E\nj9mq3GLn4o4n+Yu3hdblkix/bn/s9uowsV4S8xdvk/L/dfGl3Gojt9L3t5vr\nCf15sjpOdg6tjhdLJ35dxN5PvC7aa7Ot21FL63bkKwt/m0l2HonpS7vxt0df\n/v2fta6X6/E98RPzA7PjtyeeyMXIt1euieXVftu63qbcbp1Lc/y5AVH3fypV\nOsldp+76XZi1tkM+h3fTgc/dcRyjJ+Nz5hLt8XlpbP+WM2drlM9VKpVK1Td1\nzXvuV0NsD/zI86NS9XG5+3lujjtneZaZODcjvr/iqVOn4nxeV1cnnJvMf44c\nn/v3cOluPicfQeJbHJ9XVFSaF98bY8oqD8iz0aKuD5VKpVKpopB7NmzU+VCp\n+rLcfsKsl2dddWlxgdnPXkjjp5l5K7LNieqO+dy//3ln+DyR0cOMb3F56Si+\nhfsCnN/Ro0fM0ClzzBx7zsT3aN+kUqlUKpVKpYpK8Pm2LRvNgnmzzbKMBWbm\nrFnmL/2HmO279wm74mNO5HN/fIvjc8foyfjcz+jpwOech5/PeUbRhm27zIuD\nx5ii8v2xODniP69IjKNKpVKpVCqVStVd4l4WewXkrF5pFi6Ya14eNMwMmTzb\nHD58WPY28fM5sSEwbrLnhyIX+50OfJ4Y30J+ybefzzkvzq+q6pg5cuSImbZo\nmXlr7FSzcdcec+rMadlzDEZXqVQqlUqlUqm6S7Lv18V6s3rdOvPauyPMGyMm\nmt25ecLmjs9hWfgctk3kcxd/3lP4HP8/fE6Myy0+rzbHjh2VOPTZSzLNuxNm\nmPFzM8zs5avMouwclUqlUqlUKpWq28ReitMWrzDDp801w6bOMVt37RFWPXr0\naDz2HD53e7f0JD5HiXyeGIPO+Xkx6EclDv3woUNm846dZs6SlWbi3EVm7KwF\nZlwSjZk5P5DGBtSY6fMi0ejpc8PVtGg0atqctNbIqdFoxNTZ6a0pqu7RrEAa\n3ksU9Hyjr5cerqj7jw4UVb8b3VgzN5DCH38DHjds3oiIm8bOmB9MgRkwOWeO\nn73QTJm/1Cxfs94Ul5aaY5ZTjxw5mjS2JRmfw78wuov5dnzu31clXfg8WQz6\nLR96lcS4ENdz1P5/6OBBU1mx35SVl5mystI2KikpDlXFRUXBVFgYSEUBVVhQ\nEKoK8vMjUX5eXiTKy8sNpNzcaLRv396A2heN9u4NpL2q7tGePYG0JyIFzV/k\n5dhHFFm/EVBR9btBx4W8rhiXGA87UNjjb2FQhcwbQTknKDcF5bCS4qJgbFcc\nTKWlbRmzrIzneZWbA5WV5ojl0iNHDnt8ahmdZ2s6PsfXDJ+7vVsS/efJ9kBP\nFz4nb8n4nPNh3sH5sU6U8z12zItDP3TokDlw4IDl8wpTYRl9//7yNiq33B5E\nydg+ucoCiXoMU4HnD7Y9hqmiosJg6sRcI4r5SOjzloJoFP4YEVQdjyWdUZ7M\nmVQq1Z0o+DXXmWs9gPKCq4B+tUOF3FcG5VXGmiCKiFcDK+A4HTYfBOWS0tKS\nUHkoKId56pjrysvLA2n//mScuV8YFBY9ePBgnM2d7xxuTRXbgpzvPF3jW9zc\nIXEPF+YZifu4uL3QnR+d8qi085YKYfS22r8/mILWT1B1rv10P+8HVXFxcTCV\nlARTwPSKiooCKXD+Aipwfx2Rgo11Vnw3iIKmF7LC5n2Vqi8qquu3M4q6z2xP\nYY8zRQHHrsDjZcjjaklgf2AwdQ1Pd6ywec3j7o6VijNh0EQ29/vO/c8NhW1h\n3MTYlnTkc7e/YiKfuzWijs/960Qdo+NHpywoE8fpiWJOE0Spyv12FbS+w24/\nYbfboIrqOk37eUvIKrF9cRCFfVydL/VuBa3fqPPZ0xVVv9GZaziIgvZDXdEX\nBVFU40JnxriwjxnFuB+US4KyyZ1y8u2qM6yYjDGJ5cBfnMjmft+5P/YcxnV7\nn/tjW3oSn/v3WUyMQ/f2Q/f86H5G72oFrcN0nxeEfR1ENS+Ial4edh+c7vOR\noGNxlONimOcRFUN1hnvCVLrnL+w66S3tOey2H7ZvJOz0ohpngvb5neHasDk5\nTEboCv4N8r2w+SqoYDsYO4gSmdCxOf5iP5sn+s79+567+BbnO/fHnqfT84kS\n41uQfw8X/zpRzhO5OHTH547Rk4lyCyL4Pkzdbl3f6bwg7PSS3ZNIp/sUQfOX\n7vObdL/fEnZ6Ud3HTHeFPd+Mah4Z1by5Jyiqcgm7bwvzmGGPC2FzaNjjTNjj\natCxOiqOCJpeUG4Km9eCcmIqznRs7mLOHZv7487960L9zw31+87b43PH034+\n97N32HyO/OtDE/dBd3zuj3PxrxWlDOB0Vy6U0e3qTusnXeYFYc8fwlZ33OPo\njvseYStof53u6opxti8pbIbqLYq6Xnq6ou4XwuTQMHkw6NgQ1bgV1TgdFZeE\nzWFBWexO2NEJf3FizLk/7jzZvi3t7d2SynfeHXyO3FzBz+cuz/59XByfc3/A\n7YfuYl2cL90xeqLCKHe/graJsNMLm/fDTi/s6z6qfqm3zEf62vwm3RU1/3T3\n/Cvd+a2vKer+I505NIr0ouLasMf9znByVAqT/1JxJmzu4s2d39zP5n4+97O5\nP74lce/z7uJzP6On4nP/Hujt8blbK+r3oztGT6ZU5ZmsfIMoaHph83lUiuq6\nT/d5RtjzkajHx7DGz6g5JF0Vdf11pLA5Oez8RV1/6aqwr99071+i6p+jGt/C\nHqej5omO1B4D366Ccl2Q76XizFRsnug7T9y3JVl8S+Le50H53PF4UD7v7BpR\nl99ERnfrRBP5PNGP7uJ+/EpVnokKyudB0wu7jYU9Lwg7vajmI2HPH6Lqh9Nd\nUY2fvUVR83d3c1Rv4be+pqj7mbA4OSpFzbZhjfvprs6wWFAl48egcn5iF9cC\noyb6zl3ceeK+imHv3ZLI535Gb4/P/c9CSrVGNDEG3fG5Wyfq32/RMXp7fO7K\nrSPdSd3cybwgbAWdZ4StqK7TMPuuKOcZUSnq8ayvKGqu6emKuv76iqLujzpS\n2P142P19lAwcxXjeFZzcHTwdtmBQ5zt3bJ74rFDH5kFjz6Pi81RrRB2nuz1c\n/HzuGJ3z5bydLz2R0W9XYddXVMcNqrD5POz7ClHFG4V9/yHseUbY41jYx42a\nL9JVWn5aLlGWX7r3G0H71Kj4PGxO7gr+jWI87wpOjoKdgh7TcXgyufWg8Hli\nzHky33lnYs/D4vPOrhFN9KEni3FJxed+Rnfx6F2tMOrRr7DbT7rPC8Lua9L9\nvkLY84yw5yNhpxc2B/Q1hc096a6oy7unK6oyDLu/6oxPJgqFfQ873f3EUfFG\nZ9gpTDkfb5DvJZM/psU9h8g9i8jP54n7Kqbi81Sx54n+77D5PMhzihL3cfHz\neeJ+i34+T1VuQZSq3BMVRdu503sDPZHjw+b9sBX1eNFX5g+9RV3BM+leH+me\nv96idGffsPvToOlFMS5EORYGHc/D9C92hiWi4u4gulNOdGyejM/9zyNyXOti\nWxLXhXYm9jwMPk/lQ0+MQU+1z6Kf0VPxuWN0yihRYfN50PR6C8cHPW7UnJ6u\nHB8V74d93N7gA4tSUfN3T1fU9deXFAVPR8nJPYG9w+LzsMf9qHyWQXktbK5L\nxpiOM/37tSTu2ZIstsW/d0uy2POOYlu6ks/bi3FJtRd64jNF/etF3ZrR2+Xz\nVOXe1bwflaKaF0Q1zwi7r073+w+9ZZ4RFQOEnb+o+TYK/o0qf+ncTntC24+C\nf4PyZWfSS2f+DToWprNvujOcHDYTRcV1qX6fjM39e7a4uJYgsS2pYs+Dsnky\nPvczekd8nrgPekcxLsidoz8OPZHP70TdVY89jffDvk51XtA9Y0Rv8Qml+3xE\n1TMVdXvt7rbfFemF3f+F3ff2Fk4Om2uj4Ih04+lUfH0ncvu1JMa1+H3n/j1b\nUrH5nca2dMTnd+JDT8Xoyfg8cc/F7lDQ+g67naW7opoXRNUXRjWWRKWoGaS7\n+Tzq81F1bVvoiuOm83UUdf8RlrqCacNMMwrm7ipOTmee7oy6gwsTY1rulM87\nE9uSyOFh8HlnfOhuP5fEvRYT41z8+7r493eJQmG3nb42Lwi7v0n3+UMUY0ln\nFPW4rFKpbl9Rcm06+1nSnZM7o3Tm5Ki4KWwlY0z/elAX0+L43HE5/weJa0nl\nOw+6r+Lt8rlj9FT7uARZK+rmIc6X7l8v6o93uR2lKvfbVXe1i0Sl+/USFe8H\nPY+o++2w+vWwjxv1eNvTx2NVz1XQ9hf1NdDd11EU/VBQdcZPlc7+rLB9gr2d\nk5Nxc9Dv3akcm/tjzlPtdx6W77wzfB5mjIufz/37oftjXVLFo99u2QZRZ9pF\nOs8Lwj5uVPOW3jJ/SHdFzUhhsEJPOA9V9yns9tIb2l/U/UxYSne+7C0K2wca\nNjcF5bow2dz5zf1Ktl9LR77zqPm8M3HoiZyeyOepFLR+uqsee9q8IOz0opo/\nRN2P9XSl+zgbdnphH1eVXm0myvTStUx6E6/2lvMNmzeiVDrzVVBWbI8zk7F5\nIpcn7qd4O77zjmLPb5fPg8Sht8foic8W9cejp1J77H47HB92emHPC6JKL93n\nD0EVdX+suj2Fzd29ZXzviwpab32pftWPkVxRM2tfUVBuulNOvl0O64gjg/Bk\ne2zuj2lJtd95WL7z9vg8bB+6Y3T/nu5+Rvc/X/RO+DyM+rmd9KKaF4SdXtTX\nv6prFfU42lf4I+z7RlGWS7rXR7rnL0xF2XdE4Wfpa4qKf8NW2BwW9nFT+YRd\nrHmqZxB15De/Hd95V/D57TC6ewZqMh96R4zuj1VvT0HrJ2yl+3UQNu9Hpaj7\nT1XvVFQ8HbaiKpuwyzDq9qBqq3T273TFWJPu42XYXBKFXzMos4XNf6l+79+n\nJdkziNpbDxq277wjPg/qQw8a5+L4HPnPO5HRkylo/YStO63vdEkvir4hynmL\nKrmiHuPTVVHFsfUmafl1vaLuP/qSgo5vUYyDYTNMVJycivdulwHvNC0/lyfj\n81QxLZ1h867i86BxLqkYHfl96KmeMZpMnanHsOo6jPru6vTC5v10P27UfbZK\nlc4Ke54R9fmoVGEq7PEobK4NW1Hxb9gKyoCd+V4qzvRzuX8tKEoV09IVbB6E\nz8OKc0lk9FT7utypOlPfQdQV7SyIuuL6C3Ne0Fvyp0quqMdR1e0p6LxZ73+l\nl6K+3lWtFfaYFNU4GDaX3Cn/3i5fBU0vMWa6s99zXM7/jsn98SzJ2Dwx5ry7\n+bwrGN2//rUrOD0sdaZdhJleVOqK6zmKeVC694fpfh4qlSr9FHX/0dMVtJyj\nGlvTfTzvDP+mM4el4szEWJb29jjvajZ3fN5VPvT2GN2db6o90nuaop5HpKui\nnm+kaz8XVf5UKlXvV9T9ZV9R2GNh1ON1dytqbkuUi2fx+4+jZnM1NTU1NTU1\nNTU1tfSx/x9dbXsm\n " - ], - {{0, 409.0}, {372.0, 0}}, - {0, 255}, - ColorFunction -> RGBColor, - ImageResolution -> {144.0, 144.0}, - RasterInterpolation -> "High" - ], - BoxForm`ImageTag[ - "Byte", - ColorSpace -> "RGB", - Interleaving -> True - ], - Selectable -> False - ], - DefaultBaseStyle -> "ImageGraphics", - ImageSize -> Automatic, - ImageSizeRaw -> {372.0, 409.0}, - PlotRange -> {{0, 372.0}, {0, 409.0}} - ] - ], - "Input", - CellID -> 32125099 - ], - Cell[ - TextData[ - { - Cell[BoxData["EnableMCPApps"], "InlineFormula"], - "\:3092", - Cell[ - BoxData[ButtonBox["False", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:306b\:8a2d\:5b9a\:3059\:308b\:3068\:ff0c\:3053\:306e\:6a5f\:80fd\:304c\:7121\:52b9\:306b\:3067\:304d\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2056f0d3-d4e7-4800-8a40-c31298176818", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 8.84762}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"To disable this feature, set \", Cell[BoxData[\"EnableMCPApps\"], \"InlineFormula\"], \" to \", Cell[BoxData[ButtonBox[\"False\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \":\"}], \"ExampleText\", CellID -> 245707760]" - |>, - CellTags -> "Translated", - CellID -> 245707760 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - "\"ClaudeDesktop\"", - ",", - RowBox[{"\"EnableMCPApps\"", "->", "False"}] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 97100695 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Claude\\\\claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Claude\\\\claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/MCPServer\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Claude\\claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 711083768 - ] - }, - Open - ] - ], - Cell[ - "\:7121\:52b9\:306b\:3059\:308b\:3068\:ff0c\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306b\:3088\:3063\:3066\:ff0c\:30c4\:30fc\:30eb\:547c\:51fa\:3057\:306e\:51fa\:529b\:304c\:30c7\:30d5\:30a9\:30eb\:30c8\:3067\:306f\:975e\:8868\:793a\:306b\:306a\:308b\:5834\:5408\:304c\:3042\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2231af4b-49ba-42a3-95c9-1c8f2481ed11", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 10.763}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"When disabled, the outputs of tool calls may be hidden by default, depending on the application:\", \"ExampleText\", CellID -> 12078435]" - |>, - CellTags -> "Translated", - CellID -> 12078435 - ], - Cell[ - BoxData[ - GraphicsBox[ - TagBox[ - RasterBox[ - CompressedData[ - "\n1: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\nYPeO7Ui4ew+FmddxaPcm3Eq7B7/DaxAQl6rHNldmXcbqdRtw0e8UTp4+g/S8\n3GG0J9jHYZdlXsXeHZsQeTUOOTl3kZEai9PH9+NWaiqCj2/D+cgYlCnfcOHU\nbpwLu4z40OM46HUOBcW5uHvNH6tWb0ReSQ7O7luHk/5BSLkdhwv+p3Htdqr6\n/fBwjAJ9Apki6D4+93vpd6TeG6u5SSS+/PIL3Q/TPRoba/Gtb/3zmPU7MjyC\njEf46U9/ggMH9uOdd97WfZCM8Qqu8yANnDfDJwQpHdvlEwTRt7KGAn2CZx7B\nE58g88421NejqKQUswfpE8ZqviOpWz969IBn8x2V5OPgwT36N384/QDlmZa2\nApmLNcDPR+v1sZrvSPoj3U1NcrSJ0COQScgQfILxrG/auE7PybFixVLM/OpL\neJ/x0n2SZExzdla6ntdo7dpVuBYnfeV9sWzZYpw5fRLzlZ/w8Tmtn5v538zF\nypXLlCbO8Oi7p7/5jmSuoOykSJw6cQA+Z73gc/ooTp0+jYzCAtQU3sH5M4cR\nGOQLb68jiE9OVd+rNUiNOYvtew6j1CTjGy5j+5ZNSM4rRHNDidLgZ3BW+Z9A\n3xPwC7mkyqkYEX6HcCUpXY8dqM6/hmNePqipyEPY+aMICItCjSpHT+Yw7atN\noamhDHeuBsLr+CH4njsF71OH4H3eH8UVpchPicJpr2MICfLG6dNeyCwqRnXB\nLXif3A//IH+EhZzHSa8TKK4qU+UQDl9fb1yJuoDz6v+0nDzP12KgTyBThIkx\njhlYsnghnnjiMYSFhSI01E5YWBhOnDimfcJYzL9ufP/v3LEd3/ved7FXeQUJ\n6YMk/Y9kbLPUCXV0eL7OVjef0NSIeqVhpc57IJ8wldZknig+YSzXT4iMuITw\n8Au4OMD6CaLrZY6ilua+5ln3HPEK0i/6auxlPZZ4TMYItDVrPzSc9hBCxp1h\nzIsq/vzq1Rj1jIfizu1ESPuBfJadlaHH/svx8nOzlR+oUs95I+LiYpGUlIDK\nyjK9jfzuyVyqMdHRqKnxbN2T/tdPsK97VpqXjDtJcSpNN1Ei8xap92Qu0/LC\nu0hOvIb0zHQ0qL+l7t9UnoPc3Ey1byXqawqQm3VXaX37uIAG9Xd68nUk30lA\nhfpesdSXo6QgDWUVxXrf2uoC5OVmqN++atRV5ajf0BT1PVs+DJ9gbxexNFQg\nPzMRd1Rak5MTUVlToddTkHmZCjKScDsxHnkFeTpPMueR5Fe/V5iDksJMmMz2\ntOZn3MLtpOvIVPlrGMyac/QJhIwZnZ1tuB5/Fa+8/BL+9re3FG9r3n33Hbzy\nykt6nlJZH2q0dY18/0q7rrQH79q1U2tY+xo3XV7hlNdxDGbNG/qEgWOi+AT7\nvTh26zHn5mQMuB6z/C/rLYzUvW8fh9886P5zw4HrMZNJj8Mn1JkHP87fPidH\nVxjPgl5/zflafa90tDrn4Lb3C+yA8VtjrKnQ2elZXdlA66zJGsnNTfaxCXqt\nhMbKLg/hWE/Aaqlx9g9qaKhGi/rbvm+lHhPQ6NIPqMWxfoJod3lPr7Ng1MvL\n9k013Y4z/LWQ7V5Br9vQbM+HxdD4kjfH+y3OdZclX/b3ZP0GaedocNlW0t/i\n4TptXdAnEDKWyHdpSkoyLl666GxPCA29hMiICD0X3Fj0OdJjPpvqcf36NaVN\n213OadHf0YWF+cjQ7Qmep4U+YeCYSD5hLO93QwcMxP1h+hJ3RJtwviFCBoNF\na8Na01Db4SwuuL7X17aDeb8nkkZzTbmiZNh6nPSNtbluAtybhEwN7HPG9aUj\nR38stXs6etZ/ilew1/EM5nj0CQPHVPQJhJDJRIueK6iqomhM2raHg6RN1nuu\nVmmtM5eNu5Z+UJG2llZb07hfb0KmFpY+GI90jMyx6BMGDvoEQsjERmlva6Pu\nx1Nbax+jMBG9gpEms6m87z5HZESwNJrG/XoTQiY/9An9h6d5pE8ghIw3liYz\nqiuLUF9XrXyDxekXJgrS1iHjmaorC9mWMIo01leh1SptCfxtIYQMj7HwCZPZ\nKwzHJ0i59ekTige/fgIhhAxEU4MJNdXFus6+sb5Gfe/UoXkC0NhQo8dPiI+h\nRxgNyjSNDcojtjSM+31ICHkw6M8niLalTxiaT5Dy6s0nyPoU9donlNAnEEJG\nmBaNzHNTZy6HqboU5ppSmCYA0s/IpPwLPcJoUKE8YaWeM0n6n7EdgRAyUjh9\nwrkgNDV2+QRZj5k+gT6BEDLZaEG7Qub7bWmu0/OLSl/18aa5yaz9Cxl55DrL\nujdttvG+9wghDxr0Cf0HfQIhZLJiHxfQrH3D+DP+5fHA0ib/83eEEDLy0Cf0\nH/QJhBBCCCFkKkKf0H/QJxBCCCGEkKkIfUL/Mdo+wVxbo9vjpS8xIYQQQggh\nEwXcb8XpoEt6viP6hJ4xXJ8g5deXT5i9dgdKy4rRWG9CfV0NIYQQQgghEwar\npQ4n/IKVTwgetE+YCmutjaRPkHLVPqGuzt6esHYnKivL0WxRZd5Yp6h1/F8H\ni8trQgghhBBCRo9aJ42O/0WLyvqYJwNCHD6hAXVKw8paYK4+QfrO0CeMgk9Y\nt1OVtxmdHTa0t1kdc5Oo/9sFx2tCCCGEEEJGkQ6lQQW7/rQjfwMdOBNijE+g\nT3CP0fUJMj7BpK9Fq4xRmADjVQghhBBCyNSidx1qgX0c8yX6hD5i1H1Cnd0n\n2K8H5z0ihBBCCCFjS3efYOhR8QntbE/oJ8aiPaGjzWq/JjZZF6nZsWYOIYQQ\nQgiZTHS0W3V/8omOpLPXPBga1LG+O31C/zHa4xNqtU+wewTDJ9i9AtsWCCGE\nEEImA0af/sYGM0w1lYqKCUylTqeRZnseWjROHerqE4LpE/qKsfQJur2nzX6v\n0ScQQgghhEx8RLfJvEDlZcUoLSlQ/xdNeOzpLNbpbnfVnIZ3oE/wKEbLJxTK\n+gnOfkeu16fZzd8RQgghhJCJimi2kuICFBXmKY1ngrWlUevviYqkT9Ip6ZV0\nd9ecLXAdL2v4hCNuPkHWBHP1CaJ56RP69wie+ARZn6LOxSfUuvsEgWMUCCGE\nEEImPKKxZT2y3JxMpcEbdb9/o753IiPplPRKuiX97v2PutoT2jz2Ca5tCvQJ\no+gTCCGEEELIhEf0dklxvu733+fY4AmKpFfSLenvSrvdJ7TSJ3gU9AmEEEII\nIaQ3RF/n5Wbp9YsnW59xSa+kOy8vmz5hiEGf0Ne9ZVX31PDSbbR7jfZzNRJp\nHTQ6b5PvuhJCCCHEcx4Mn5BFnzDEoE9ocZREW7f3OztaVeG0Dv256miDrAWO\nztYR19Pt7d19QWenOlenDbJeyJiVm0rDwOWjvESH8knjfo0JIYQQMhQMn9DY\nMEifoLbVaxm0GzpA9JbS1WNYx2j4hHz6hCHHVPcJnSptxVl3kF1UqvJks7/X\n0YLM6xdxNugymlX+unSuMT6m93vR+Vodx9ZYgSsXvLF/337Ep+bpZ2Wgsdu9\nP3+9zA3lOk6nw4LkGH+cD4uDta21733c9u3t3P3qeZf9JH9N5Wk4HxSKWvUc\ndbS5HKOtZ9rbuQ43IYQQMikZik8QnSCeQPRBu6PetN3WhKryIjQ0NfWioyzo\n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\nCb0FfQIhhBBCCJlK0Cd4FvQJhBBCCCFkKkGf4FnQJxBCCCGEkKkEfYJnMTY+\noZA+gRBCCCGETAgG9gm1zvUTxCeIth2MT/DEK0yGGKpPcC0fd58g61FIuRo+\nIa+APoEQQgghhEwMBvIJ9X34BNG69An0CYQQQggh5MGEPsGzoE8ghBBCCCFT\nCfoEz4I+gRBCyNiifgfaCCEjQqvBeD/Xkwv6BM+CPoEQQsiYoDWNBTZrkx0b\nIWTYOJ4nebbsz9gEeNYnAfQJngV9AiGEkNGlBa1Kx7Q018PSaEJjQ7WiCo31\nhJBhI8+Seqbk2ZJnrFV7BmqtgaBP8CyG4hNc50SlTyCEENIf1pYGNDXUqN/d\nCtSby1FfW2bHTAgZNs7nqVw/Y/KsyTM33s/9RIc+wbMYaZ8g61CITzDWTzCZ\nTPQJhBAyRbG2qN/Y+kqHliknhIw6ZfqZszbXj/vzP5EZ0Cc4NGxf6yeI9qVP\n8MwnSHnRJxBCCHHFZm10eITx1k2ETD3k2ZNncLy/ByYqA/mEOoeGlfWYRdPS\nJ9AnEEIIGSFsFjQ1VI+7ViJkKiPPoDyL4/59MAGhT/As6BMIIYSMLC26f/R4\nayRCSDmszQ3guOae0Cd4FvQJhBBCRpYWNDWaxl0fEULK9bNIn9AT+gTPgj6B\nEELIiGKzoIHjEgiZEMizyL5HPaFP8CzoEwghhIwkreITZA7UCaCRCJnqyLPY\nSp/QA/oEz2K4PkHKiT6BEEKIAX0CIRMH+oTeGYxPcJ8XVXD3CQ+qVxisR/DE\nJ0h5dvmEGvoEQgiZQgzXJ7jvK39P1flVxyrvDXp9rkp1roGv21ilSc4xUn5T\n8iaMpX+dKPctfULvDNYnSB04fQJ9AiGEkOExVJ9gbTajo60BbbZ6tLfKGs5V\nTr3Y3ORYz3mcNddYM5i8NzdVD0mXWhqrYGup1f83NvTc3/248trSODJz3sp9\nItdbrn3P89agqb5qeMdX2FrMaLGoY6n8jZZPaHCk1/X4upyaxn9uYPqE3qFP\n8CzoEwghhIwkQ/EJorEK8zPgc/YkDu7fhcuRF9X7FVqjZqbfwY5tG1FakqOP\nW9fPcerMI7fuc52599fdthnkcTzZ1the6r+zMrrybtT1u27jmu/K8nyYqov7\nP4fbvlKest/BA7swZ/ZXOHJ4nz6Wcf3cjyve7UrUJRw7esBZ1r3lz9M8N9SV\nIyIsGLeT4p2+UM5trinB9m2b1Gch3TzJYMpSEK0efy0KSxbPx6KF85By54bz\nPIO9B/p9z1SGirI8nW75W9IcER6s8rARJvXeiPiTQebd9RrTJ/SEPsGzoE8g\nhBAykgzWJ4iWy8+9h88/+xgvvvgs3nj9FTz11OPYtnWj9gnRV8Lwwx9+H/l5\naepHqxmdbY1odtGORp10Z3sjOtRnhg6UOnLXemr3eutWa629rt4lLa3WOrRY\nTPo4cjzRe/K3vJY2Dtd6dfnM2K5N7ddbnmV7aSPR29h630bSKeloVf/bz1Pv\nbEeIjgrFj374A2QqvyD5ErqOV6+9gxxT8rVp4xrciL+iftlbeu27JXmzl1GD\nU3t3tjch0P8s/vjH32P5soXwOnHY7hMcaXc/rpSZ/P3000/qcrnf0aSP51ou\nrmlst9X32cYhaci4l4SHH/4VPvzwXac/ke1rqorw5puv4fDBPSoNJp12uRc6\n1DUwrpvk3/V4klYpS9fji9d6843X8OEHf8PG9au0T5D93bczjiXHlfYHm+Na\n9Js3x/0g+5tNpVi2dIG+j++rMpU0Hzm8F2+pPNRUFup8ybH1/aKQ44tHMs5p\npN31+hvnNPbrUJ9JmdMnjAz0CZ4FfQIhhJCRZLA+QbTPgf078Yuf/wxhoUFI\nSIjD2jXL8fbbr6GqogBXY8Lx05/+BDeuRyPsUqCuf65S2ks0m5xH9r9z+zqC\nAs4pTxGqjlmmtdvdlARkZ6Y4+rmXI/n2DeRkpTr7vafdTUReTpqznr5W6dS0\n1ATlR+7pdISHBcFUXaL/Dg7yVemIcOourQ3VZ5HhIQgKPKfOdVNrQ3d91lBX\niauxEQgM8FHnv661rnv+76Ulobw0F6nJN9WxfHBT5VOOL8eLUR7pv/7rP3W7\ngvSdkbTL8WS7Wzev6vdEX0dFXsR//eQ/MX/+bMTFXdY62/UaiA5NS72FIJWP\nyxEXdL23lFu6Ovc777yBP/z+dzovRYWZTo1aq7Sv+3Hlsy2b1+GFF57VmjtE\nHe/a1cuOvNo1vj2N4TrPN6/HaJ3b27gHSZO0lYhP+PnPf6qOE6nzY7QnSBtH\nXGykPp6Ub6W6F+LUNvHXLqvySEZK8g1nHmWbbHVtJU32dFSgWt0jvudO4Tvf\n+Ta2bFqH24nX9Gd5uWm4p669cY1Ki3P0Z5LfPKXzc7NT7WWlrqukyT1vkqYg\nlbf4uCh9D0pbyzkfL3znX76Nnds3I+FGjN5Ort3hQ3ucZS33cri6r6TMpI3M\nqt6T7eQelPvSOGecyznlPigpzsbFED9cUBQXZA66zxd9Qu/QJ3gW9AmEEEJG\nksH6BNGLa9esUF7gv7R2lzYDqVtNuqW0m9JYosv+4z++i9mzvsIXn3+CF5VG\nXb58sdbCokFDgn3x1luv4aNpH+j6240bVmv9tXPHJixdPF9vI/12nn3mKXwz\nb5ZT23326cfKCwQ7+9/L8aRNQ/rffPH5dLz88vPqPIuwRnmWTz7+AM+p/c+c\nOqa3r6ooxKqVS/Duu2/h0+nT8MH77yj93dVHpsGRt/17d+q0yTbv/u0tRF2+\nBIvRv0br2wqsUHmRcyxaNA/Tpr2Pl156DmdOH0Or1YzY6HBdLuJ3JN27d23F\nm2+8qtPz1huv4dxZL50X6VPzne98C3999M+Y/81sFCttaeh9SW/U5Yv42ztv\nqjJ6H2+/9TpWqnOKBzp96qjW6D/5yY9VeXykPYhsL9dPdO2ihd+4HHeW1t67\ndm7GL37xM12W0z/5EM899zROnjjkbMfZvWub9h6fffaRPqf3meM9+vpI2qSf\nzhOPP6rK9Cimffgu5sz5Sutp+7UoxowvpittfF5vL6+XLVuI99//m+7Lc+mC\nvy6HkqJsp1+U67Z39zZnO0Jezl18/NEH+F//65/w6isv6vtCtj1+7AAWq/Iy\n2mwiIy6o9L6p83bKS6Vl2ntYrK7FJx9/iOclb8e78rZr5xa8/trLOt9yzH17\ntytfcVdv+0//9I944flnsX7dSn1suVekjCRtZer+W/DNHH2eaR++h/ffexvX\nle+SdoyTJw6r69LznJKP4sIsdQ3m6s/lHpNrJJ5iMH2n6BN6hz7BsxjKnKgG\n9AmEEELcGaxPED1080Y0nn/+GTz37NOYNXOGroetVFpc+mBIPf63vvXPSn+t\nwtWrkdittNqPfvQDXXdcqvTwY3/9i9bGsTHhut/8r3/1S0SEBWkN/Iff/1bX\nE4sW/Nd//Rf8Uulb0Zbpabfx0K9/peuR5fyi60QnPvzwr5WG+xuioyOwdct6\nfPvb/4zNm9YhJuay1nfPPfuU1qBnTh/Xx/bzPY3r16K0Rn322SdRVprjbK8Q\n3yE6UfIibQTvvP2m1q3681pjjqEqrdv/8IffwkdpfvEF4hd++9uHtM6Vunrx\nCVIHLn5J8rZvz3at51etXKr2+52uG4+5Eo5f/eoX2i+4tieID6koy1X69Rnt\nfWKiw+Ct0v7wQ7/SXiRLaU7xOk89+bhup5F+M0b6dHuC8jWux7X7r834/ve/\nB6+Th1Q6IvH1V19oHyH15rHqWv32Nw+rPO/V7T+bNqzB7377G9xLS+ymbaUu\n3f/8GTzxxGPqdY3uyy95Fg0s2l182G9+82tddnJO+ezppx7XaZa2I2kr+vF/\n/ggXgs9rrS1tMT//2U90O5Dhc6pVGUh7gqRV/NXNGzH6vOvWrtB924x+VbKN\n+CTxRXLNv/e9f1d+4UiPvMl9+Ktf/kJ7Banz37B+lfYLMq7GT+XFOE/CzVh9\nHvELjysfJGOx9+3bgd+r+8XfzxtXokK133nn7Td0mUj7TG/nlHaiCxf88B/q\nM9lPvN7HH7+v0hE5qDYF+oTeoU/wLEbDJ3D9BEIImboMZRyz9MtOUVpvzarl\n+ERpr78++ojS1O+jtCRb6+P/VL4gOzNZ/WrZtJ57SOncuNjLShcGah0tWk36\nz0vf7/ffewczldfIyUrRul805OpVyzBr1gztKUIvBihNcBqvvfqS0sJdfeLF\nJzzyyB/1WF6gU/fJ+e53/015iXj5tdQ67o9/+h1qqot1/becVzTnpg2rtV78\nx3/8n1ojumo46bt06OBupT/X6faMZ5XPEP1t9CsRzyF17h9+8K7ue4/7Lcpr\n5OLnP/+J1oY34qP1eQry07FyxWLtpUTbSl4lvb9R+Tt18ojuK//YY4/qunug\n1Vn+orml39aPfvh93a8FsKqsNWPm11/gPeUPcN+KlSuX4AOlW+X9FpfxGpI2\n0dyux5V2HtHSTz75mP5M3hPdKumQ9oE1q5fj3/71X7FCpVXq78Un/Y//8f9q\nLW6MDdH5VuUt/uiZp5/QZSSe7tvf/haOKH8hYxEkb3/5y59w/NhBfW3+/Oc/\nYNPGtTr94gskX9JGI9dZ+u5v3rRWXc+Xncc38i7tSNJekphwVefPptIg20p+\nDZ8Q6O+jfYjcVzu2b1Te5a/6GrrnTdp9nn/uGd0fDJ32e1zuDTlXWUmuPo/0\nBTPOI/r/xRee0x7jxRef02Wiy18hHuqH6p7OuHdb+64e53zo17oNQvo2/e63\nD2Phwrk4rjyw9G8qLOjqG0afMHToEzyL0fIJ9fX1MJvN9AmEEDLFGIxPMLaT\n+W4qywu0xpL+MMGB5/Dv//6vur+2aOWf/ewnuq5Z98UoytLjbq9fuwJfn1O6\n3ln2McYVz5s7E++997Y+9ksvPY8D+3bqviJSHzt3ztdYuGAOFsyfjbVK0xra\n1fAJok1PHD+o2zGSbsXpOmtpc5C/pb/Ko4/+GdVVhbrPyWN/fUT7j8WLvlH+\nZpmuX85MT3asQ1CJooIMrcenKz0r/XyeeeZJvKzSY4zXNfSy1CvLMYxx0/L+\nn/70e92XR/r3i0/IVz5BNPGHH/5Nj4e2j2muxhOP/1XXYUsexOPIPq7jpaUf\nj/giGeMg/fBFO8t5pK5bxoyL5pX+LuJVjDS59g0S7Wwct10dV3yC6N+XlO6V\nfMjxpA3kT3/8nZ4XScpX2mxWrVqKJSpP4kHWrV2pdbHhn+R/GSvyox99X49z\nkDHM0z56T7dbSJ+yenVc6Uv1l7/8WfsESZNcF6+Th/X55bySrwB/b11Ocl88\n8/STOO11DFaL2cXnVCFTeUspPxkPbmm0jxeW6yQ+QY4hZXUxxF/5zl/q9G/f\ntqHPvM38eob2c+JT7OPCa5XWtOj8yHiDn/z0x3o8g31Msln7KfEHcl+JP92/\nb4e+P2UMhqRZxubfTozTPsH9nH/8w+/U/ZMJmfPL/7y3LlfxzW+9+apu92G/\no+EzVJ8gWpc+gT6BEELI0BisTxDNI3PtSJ286DHRsTJO4Xvf+66zTt0Yyys6\nSvTT7373G93OcEf5ix//+Ed6fLPMrSN9ih555E96Th7RZFKH++c//UH3CRK9\nJv1Dfvubh7Tel/G8otlcfYLUWx89sk/PaZOYEIcf/uD7+n/5W97/85//qNsD\nli1Z4KwrlvOITty9a4vuTy7HkuPK8f/5n/8/rftalH6VPkfSv6ebT1B5l3EL\njz32F7Vvptag4mekX5UesxsXpfNekHdP96mS9hEZqyB51Z/9+D91nyo55u9/\n/xvs2b0N7W1dPkE0rPRL+qnSsOfOntTHr64o1G0bCxfM1WmX/6Vu331dM6NM\nuo5rn2tI6uOlf5iUg2ht0eC/V9dD6tyPH92vX0v/JbmO0jYiPiZd+h056sBl\nn9XKR8g1kXHn0udI8nzW+4TWzlGRF/S5Zc6rY+p4kibjuthcfJ34nsdVuYkX\nk3YJufbucxPJeGcpIxlTbMwrJGNGHlHXUdIr7TAy3kH8hpShaPu+8ibtTL/+\n9S/0tZY2j9tJ17B163p9z+Zkp+IH3/8P3b5lc8ynJGMXxAdJ+r/8YroepyLH\nlc8OHdijjvVL3WawbeuGHueU+1vyF3oxUPmfo2isq9TX8dfKS82e+WWPMfP0\nCYOHPsGzoE8ghBAykgxlfIL0A3pIaWAZr7lo0Vy89tpLepyq1MlLv3BjblDD\nJ4heFj0lWnDBN7P12F/pl/PJJ9N0G4JoKqkrlvGu//AP/6DrgkWfST//H/7g\nB/iN8grSV8TQlYYmlv7+0rfe8An/obyK9FmRv2WeSxlHIN5A5i564cVn8dWX\nn2LdmhV479239dhimbfImCtTPIz0GZk3ZyZWrlyq+0NJnbnMd2O0G0jbw/vv\nv6P7Uen69+WLlIZ/Ep9/+rHWreIxJO/Sh0ryLeO0pW+7jKGWNhIZcyDplnNK\ne4P0B5K2CaP+3vAja1Yv032eli9bpPeRcRaJN69qnSxjO6Ss+1r/2Hncxd/o\nfIuulXlRDV175fIlfT1krIjMx2MfL/2e7pMl48Kl7SUz/bajDaRSeZ507dWO\nHdkP6Ucmc6uiw6Lr4F968Xnd/iJ5f/75Z3WZS5qM62JzmddWzi35+n/++/+N\nzcoXuq/VZvcJd7TnkntF7h17W8Z1lf4ndBlLeYjXkDEocr+Iv3ymW95C9b0i\neZN0v/nGK/paS3vJq6++qMeFS/lXVxTgjddf1X3ZVqhrWJifqT2O9FOyz5EU\noX3PzJlf6PlTn37qCezYtkn7NvFdvZ1T7qXAgLPa0y5bulDPAfb4Y4/q/m/u\n8/nSJwwe+gTPgj6BEELISDJYn2CMDwgKOqf7s8+e9aXS/Eu0npPxoFInvGP7\nJt3XXHSmzI8p40KlXld0ldTDS1+YuXNnYsmS+bgef8UxF2el/kw0llGfLOfb\nvXubrht2rXuWeVONuThFY8tx83PTsW3LBl03Ln9Lu4Z8LtvJsWRMsIzvlTSL\nbk/Wa3hVdutPJWOT587+So85lnTt2rFZz+FjzNEjdeyiO7/88jMcOrhHeYqv\nsVptK2MxRPcaeZd6Zz3/q/Ie0vYyb+7XWL9+pZ5rxxiHLW0w0g9K5tW5cT3G\n2c9HzlVemqfH39r7Xc1V5RGq16CQuZdkzk3vM8fsnsLt2kh+nMedP0d7JxlD\nfeyYfZ01+Vyug1wP6aMkaZTrJlpZykW8hXgd17W1Jc2bN67Vulv+luMIkl6Z\n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\n2tHZYRvStRE8OofK3/0Oz7b16NzqeJJmudck/cN9Lo3jyP/DTZukC+jUaRzO\nPeGeFjnecI8JdGhG836yn6d9VM9BCCFTHfqE/oM+YeJjszZ1YWsa9P6ik8ym\nClRXlQ7p85FAztHUWDui53D1Bd2Ob7OMyXWBQ2PL61Z1zvLyIvUdUjMojSzb\n1porNQPup85RWVGMutrqEdHhQk11ORrqTfreKisthKWpbtDHdvUFLc0N+jjy\n/3CvbbOlHrk5GSgrKxryPdebt5Y8C0M9ZlurBYWFOSjIz4atZfDPY395xv12\n53kaG2pRXlaor01b2+jdxyN1LxFCyGSEPqH/oE+YmHQ49OPFCwEI8PdBYIAP\nAvzOIvRSoNIPZq1PRVfclzpXpVeN33qjbth5HIeWjomOUMc4p/WGfC71qfK+\nfC77uH7etV/3+nFDcxltD+1tXfpL1yM7jul6fuf76EBWxl34nffupnt6HrPF\nXo/sSJt7Poz0yN+NyheIJpX3ZP9Mx/HbnHXj3fWhcQ7X941yNN430utev+++\nr+xXUV6M+roaXZYtLY3w8jqC5ORbetuu8mjvOx9t9uPERkdqjLwZZeB+fvEi\n53y8cPPG1W7p7uv6ux/HXj/f/ZpeCPZDSnKi9gpHDu9FUWGuM/8GrulyPZ9B\nSXG+vqZSDlImchz537i27uXpqt/dy8coI/EZF0L84X3mBG7Ex3alX2/f/Z7U\n97NLOo1zWNU1CbsUhHvq+9/1vgkLDVEEO+99+/72a+L+/LiXp+xzLS4K3qeP\nIzQ0SP1W1PeaN9e09fZcuF87QXxRaXGB+l616bKU5+X4sQP6eTeO616Wzuen\nn2fG/dw9vmsc+4/3dx4hhIwH9An9B33CxET0SXFRHpYu+QYBSvuGK00SejEA\nUZcv6Xpz0UCyneg70WSGDjA0hbyW/0VvybaJt+JxJSrMqVtqTZWorChxauzE\nhK7P5W+jfrlZ6yB7nb1RR1xXW4WqylKnhjJ0fnVVmUZea/3SJjrM/n6DSlfy\n7ZvYuWOTTo+RRnkt+tes0iNtGqJjJX+SNrvOsjo1nqRHPjM0c1LidZzyOqrr\nhmVbyeOeXVvQoLS7lIlsY+wrea6vq9b1s4Z+ls+N8qkoL1J5tuj0St4aG0zq\nPDbnd0ituUof09DnUs4+Z08h7uoV9X1Rp48RonRtZmaaXcspTCo/lRWlzn16\n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\nxMXolMSdCvKzZeOGFGnUqIEkJy+5aJ5gc0bt+czpE7J+fYpkZpwK/5Z19rSk\npKyW3bt3KK4/or+nygY9p8Q2a91H0w7KmjWr5cjhA/b/8uXJcnD/XjmbmS7z\n58+W776rIbt2brW6L7eOvXjxcvWI5wklH54nXJnCM3n79s2ycOECWbQoQdau\nWSnnsjNM+J/vFi1aIDt2bInz/C5ureFSr0tc+LUB1g7wNH1YsjhBOnfqIIcO\n7g35z0sqK3674UgBns6IOK+kvl98/2lbmmKSZcmJUX5+dH46/YT07NFN5s+b\nHYFNMuL8ja0j+jNlgacmjB8j06ZOkq5dOsnBA3vPs64QG39xYWMeyQkYhxHD\nh8jYsSOD73IudLxLqu9C7OJ8bb8Quyr+nID/5Ib/37ghVbp06ShrVq/Q+9i5\nYuq81HZ/obr65bZ5sX0I/A4FxgGcbWED8c7lHJ6b48eNsefExdRD2fv27pKx\n+qxt2aKZVP2oij5nD4e5yYnjR+S9d9+WN998XT799GP57LNPZOaMqSXaO21P\nTFwkzzzztHzw/rvyySfV5Pvvv5NtWzeF+8W82b5tk+cJXrx4uSjxPKHkw/OE\nK1N4ZuLP++KLz+SVV142f5njCfPmzpIXX3xBvvzyc9m0cZ352jg/WMcPDocF\n3bo+84DDPUMDP7hEfRc1bwpcPECBRMYNFF9ebri8gph1Ap7j+BPx9XHQ1s6d\nO8jf//532bxpXYQ1Rvh8c0puI7+BPeAZke0J9T50Tp5dVxjnEL//JfnuKWPo\n0EHy4gvPW335ISxDH44fOyLly70hnZTvWP2h9Z/8/Mj4iHDN0fVG6Aj9Tpk8\nXvHSx5KamiJVq35k/lUOfs/NKVxD4nNh/EWuxBvzQOeF48F5bg1nh3LPrKwM\n+xYfcfXqX0jt2jVD9ZyN0WPRcY9c4yLmI359UoS7hteQIsYhclz4zenb6Q4c\nHN2evLDuC9uSH77W/Ua7tmzeEL5q9qzpctNNN8jIEUOLbWNJ9lvY9rxw/4M5\n4nQRPUfC3xezHhirC/d/oa5LnpuF60AS9ttTRok4W/t38mSaLFq4QCZNGq8y\nTmbPni6rVy2ze0rseFHu+vVrDetf7HoZ1zLXR40aLtWqfSRl7ixt/n/al5+X\nJYcP75fXX39VqupvtWp9JwMH9pMj+l3J7c+TGcolnn32H2az9ev9bOPKWgJt\np84uek/Bt+Js64+8RubFi5dLJ54nlHz80j1RS+IJ6C+SJ7AnqucJFy95eef0\nOVpTHn/8MfM38/xDTp08Kvfcc7f50/Jys/W8bLPztWtXyfwFc2Vd6tow9j2w\nb4+t+585fVKSkpZY/C44ZMf2LZKQMFeSk5N03M5EPaO59qSOUVLSYlm8eIE+\ne7eEce2B/dHl4RukPPzfCxfOl8WLEnTcj4fr51l9Quvs2rWT1Kjxja2D0Jek\nJQvl9ttvU5yyXJKXJsncubMVPxyIwvHFtZG/Bw7sk0YN60vjxg1l2bJk4wvL\n9LzkpUtl+44g9uDAgT2SceakxTmsWrXC2gvWB1Phh6S9iYmL5WxGetwYKNqe\nofymZs1v5Lrr/ksmTRwnDu/xGzETPXp0lQXz51h9YKGUlDVq+ydl1crlWsdm\nWb5sqbZrqWzatN7wGH8XL1kku3dtD8d9oOsqH7wn5cu/Kcl6Pn7T1JTVqud1\nIX9vhuzds9P0zuf09BOybl2q9Tk1dY3MmjVTtm7dHKG7PDl8aL+tN7EelRbS\n6+rVy5WDVFHeM0TbsdEw1vBhg2Wc3hcNe6oOMs6ckqVLl0jCgnnWftff/ft2\ny4YNqRbzQZkJCQvk1ImjIVx+Tu+fRyRRx3TRovmyUblrrB7Bmny/MGGejmei\n5GRnWv30l/EjDoVxYlwWL14k27YFdbNmgz4S1K6xPcpxsSxpaQdku56HvTtc\nSJlTp06Sjz6qIjNnzpD9+/eqLvbJI488ZPHrxLjE01dx9ovQLurZuXOb3scO\nmp3x/alT8ecI60+pagfYw1K1uUjbdnrGDtDV8uVLrVzsk3rONzfd9TvUxlOZ\n51omdoC+isPG9AX//qBB/W28J04cK5OVJ2C361JXl8gTxsATfkF8IGXSl969\nesj999+rujgUXk9gXjZp0tBs6djRw+FnUUnrI4z7LOUFg5RTnFK+k3HmRPD8\nCnFV53twPCHgffmeK3jx4uW88mt4Apg3Hk+I5QoXwxOuNK5wKd6x5ngCvMrx\nBPTo3rMGTzjiecJFC3i2WbPGUrFCeQmee0ie6Y719+bNm9g5PBenTJ4gffv2\nMixb9+cfFZvMMtzRrm0ree+9d6RP757ygWLRnYoviL/o3q2zXdOqVXPp06en\n8IzODa1LHDt6SH74vpZ0795F8cQE+fnnOop7VoXKax1T3hbZtWub8oDOMnHC\nWOnWpZO0btXCsJzDkPgsH3roAbn77rvkp59+kH37dlk77ryzlHTs0Nba+OGH\nH8j3tb+znET6uXJFcrFtpL8zZ06T2269RZ566gn7HXxQ67sa5qeEe3BerVo1\nZP68WWqbWdYXymcNIFlxcKeO7c2v2kJ12LJlM6s31p9JO4iP6qYch3Wdt96q\npGVlhtqQpVwgWT6s8oH1mxioIUMGyptvvCb9+/exWIsZ06dIs6aN5Zmnn7Rc\nUDgdPtAqVd6TFOV0+cbvsmXtmhWGYx+4/z6pV+8niyVrruP+6SfVFPeelvRT\nR5UT1bMYDXAwbSr35utmG91U719//aW8++5btlaQn59ruu3YsZ3i/5GGnb7+\n6kvF+buklfbz3//93238Ro8ebj7fr6p/IV06d7T1o/RTx6VXz262foLv/dtv\nvlLsn2Dj3l7HvVy5N8zGWrRoKpUrV7RxQxdwr/bt2xjfoNzPP/9E8f7GMA7H\nBrDHrl06mn02blRfOnVqbzyrXbvW8vhjj8roUcP1XnJW+7bA9LNieZK1p6+O\n+0i9dw/TNtVVO9y3d6fa73Idi4p2bc2a30pnLSvwVWcb3scur7vuP00vcBfm\ny0svvSC1lXP3UDuI1FdBfp5xgHj262xt/76dpsPvdU7wW62aNZS37ZA6dWpH\nzRHGlHYMVTt45eWXtK6u0rZtyyjbZq2BPrZq2VymTpkgDRvU09/fl9atW4T4\n7LJi7R5dUj75Aui5p45VT+WpI4YPldpaPjFrsWtjxnWVt/bu1V0mT56ovD4t\nWH+wNYjcYjlAPJ7g7D4yvyFWXDvdmgk6iOQJXH9QecLnn39qfI5Yu+HDhxhf\nKHldL1emTZtsOmcuDR8+2GKVHDeK5Am0Fw40WHkR65ieK3jx4qUkOS9POFqU\nJ+ALj+UJiOcJnif8ngInaKo48/777pVBg/opDh2gGG6g4tDecscdtytObGJj\nCIavVLG8LFFMR2wB2OP555+TU6rnjoqHr7/+74bjRo8eab5KMCxYhrWFCePH\nyu233SYbN6YG+bOKD/DpgkP5m5+fI2+/XVmaNG2kY50tHTq0iyhvhBw6uM/w\nU9s2rYxf4Cu+o9TthoeJRTH/4f69UrlSBXn7rcqydGmSzq9TFi/FesLA/n0l\nJWWtDBzYX265+SbDbrS7imKn4trIc3/z5g3KEZ6yNZWVK1dKdlaG5QrceuvN\nFsMAfylz551S49uvTUf4IQcM6Gvlvas4eaKWeS470/gIHAYsGomZHP4Ae+ze\ntcP8vaVK3aHcYJlhavDO1i0b5T7FQJ0Uk+O7HD9+tPz5z/8hjRQHDxs2yDDt\nnNkz5K9//bP50TkW6d969X7WOZIewjdnbW0EHcNDkpOX6lw5JPXq/iSPPvqw\nYbzMzDNSt+6P9hncs07vZ7ffcZvU1r6vXr3Kyr5DP4O5CgryrHww/JnT6Rab\nTxz4JtUdOBIdDx8+TLZt32prDi+//KJhNg7w2sfVquqYHpD09JOKfX+UN5R3\ngeECO7pecf4ErT9FmjRpJA8//JDhaXBrmTJ3mm+aeLH27drI2rUrbazAm/DC\nSjr+xMuhc9qL3uaqblYq10JnLiYIfkBf0U+/fr2Nn+1RTI488/RThq/hpQ88\ncL/qq7IMUE4G73NYMf3USZ0zTWxM58+fJwfVPtHZs88+oxjze+WQK6P0lZt7\nTmp/VzOu/YLpjTcfS5P3339XHnzoQcPb/IYtwpui5ojqRCeQjB83Sv7jP/6P\n9Nf24/N3tg0fyc7OkHfeeUt69+6ldpZlbfjP//yrYt5pxrfgFMXZPbpkXQmO\ntWHDesX941XvpW2vn9defVk5N3YYHSNEH1asWCod2rcNbFq5qotfJO4MiXfv\niccTODdLeSt8pjiJvX/Bo6LXE86qPg+ZbU2bNkkWLVooXylva9K4YYm50vQj\nKXGR3dtYX5quHLxChfLGxSU0TmGeoPWyXvHii8/beqd/r4IXL15KEs8TSj48\nT7hyxfGEe++9x/yq4A581b16dTOMHawniLRp3dLidsGkc+bMNB8jWAT/5cKE\n+XKf8ozdiq04wEh33XWnYpnRdj5/4QTEP/Asdv5H/JqrVwexOsTDfPXVl3b9\nggVzo8qDdxB/3K9vL/PzTZ82Rd59520ZP2FMOM6bA18/Ehz5Fn9/p14H1uYg\n9oL1BeLKlyxK0DaWKbGNxBtUrlxJ+vTuETLkXOMG991X1vy6+IaJS3r88Uct\nLqN3z+7mA168aL5hzOOKVVyM98fVPpJPPq4a+DNzCu8b+MSrfPC+xdnMnTtH\nOcit0lDLdLnA+XnnpFLliuYnD3Sx2bgEOCY4iNk5a2PBOgH97tOnl2LhpRK9\nf1WsfsRyi5977lnD4YWf/xH2j7744nMyCm5DqdrWF154zmJKjiumf1jxLGsU\nQcx8lmL21Tamu1THrOns2rndzX6r81vlUnl5OfKW6rOdYnx3EPt04403WA7J\n4kUL5LHHHtU5fTywg/lzlSc8bDhsq2JlMPz7779j+cKsdzh/PP0cq/fdJ598\n3NZCwNFg2QpqU3V+qG1tYP0BKcjPtTWZ5cuI68lSDvOS/KDnzJ8/R2arHcD5\nApvPs/UMYs6cPUXqcpzaCxgxPy/IX6At8IRYfeGHh8tdiP22aNFMbfANW0/i\nYByKmyPYQZkyZYrY9obQvj+sgQ0fHvAibJX5hB7RcUl2D97ds3uH1csxRnn6\nU6rXkycOG16GsxRdE0P/ow1fMydYt4HfI3AzxvFC4o4oF+43Qq9x10eJljte\nOY/LQ3B1x/IE6qE+1rJc7gkc/YYbrg/zoXj3wjyL8ztq8W/uwN7gavAL2ut4\nAnuxMsdYk3H5C5f7Xu7Fi5crVzxPKPnwPOHKFZ6zYCGeheeyz4R9phkZJw1r\nNG3ayMaQ+JBy5d60mPWVK1fImtWrFLttsTgXcv+eeOLxUF6CGFa6R7Eisc+r\n9NxVq1bq83mDxVq78k+cTJOhQwYZ7iR/Gl8puQUcM3XuFJaXLytXJFmO6IwZ\n06wsyly/bp0cVbzqfPLgjG++rm7tdDEPYCZ80EG+bn74MxiL+JWS2hi8++mM\nYrNy0q1bJ3G43b5TXRHDgd/30IG98vzzz9o+KN27dRGw5+iRw5V3lbWYF9YE\nqLvuT3VsD5WCUPy40z3xN+y1OKB/bxk4sK/FvOOnBgtxX+H9U7TB8QT6AM7b\nsmVD2AdLOfiFuQ7cDQ4nniYqPiOkH0Rsv/l80z1Y1rC1BJiQvuCzBWvCGdir\nCJx9WnEwvxGLslsx6a233Gx1uZg0d6xft9Z0zBqDGwfqBH/naluwqW7dOovb\nEwdexboV+HCeYmg4F33nd+wK3sBn4mJYK6hZ42t5SfF5hQrlZM2q5caj6Ev3\nrp3VZh6zvgQ5yLny5RefWSwPBzyAMWEtAawHrmd8HnjgPssRX7tmjdrZcsXU\na+SAjinjTB3ESEXmMAf6DnSHPjJCOT2UF09fY8eMsDWQkuzXjSH8EC5J27Gb\nkzZHBsaZIwWm33i2zb4ElNWgQV15R89fmJBga2DET7FWB9Yuye4t5j9kH6xp\n2Zz69isJ+C56KHpPpb2sO7C/6bx5s2X69MlhYX1pWfKSC+YJrAFOnTbJOEms\nUB550cT1FfKEfMvfgSewJhXkV52zWDDWPoLchHzLxfi3f/tf5uNwfeHIcW3K\nCdYyBg8aoPNgZJh//vBDLSldupRxLOZjdH5CcPi1BC9evJxPPE8o+fA84coV\nDmKLiLk3bBDaUwffIpiuefOmdg5Yg2fx7t27wuO6ZctmizEAGzz22COWm0kZ\nxGjcdtutFi/ujt27dyouOhTCrHkyfdpkw2jB/kT58rHiI8cT5s2NLC9P9uze\nLnffXUb69esTLu/QoQOWc+r8h7T5i88/s1j44Mg33yfrCUGurMi2bcHnPXu2\nm7+0pDY6TvDaa68YB+AI8GeexY/gn8W3ydGmTUvL+cbnyUH/WRcAHwVHnnxY\n5X2LpwrvkxTa971x4waWH0psf5C/Dc4uZdjQ5o6OB7EPrN9E9sH2agyVRbvI\nOyc+vkqVD0y3sbEhHOjX6Rj9wFFcnJHt+di1k4056wL0H9w7ZkzQJ2JZ+Ey8\nS8aZdHnwwftt/SI7K8gfpl3EtIBX0WvhXkAFxhGI8eeoWvVD+ejDD8Sts7Au\n8PTTTxr2Yx2J9vB+Bw5ycx999BHD/ugSvdLutYrl77//vtC6RL6t8xCnw/oX\nsU8ctL+C8itiwTiHPr7xxmvyVuWKxj+on/GtWLG8VP/yc8sv4Thz5rTl7zq9\n9wjpPVqX+TJk8ABrt/vs9FNEX+NHm15Ksl83PnBy9OP2PZpWwhwhviiebZN3\ngi4bN65vfnb83axhZIa44PnmJvsVkOsDHt6r84RxBjdzsDcv6xex+yPB97Zs\nXm/5OLyzuOiRH/feEy/uKPD/50vhe86KSmQeBUcv5ev33lc2tC6Wb9KhfRuL\nWSO+kAN+yz4B5H5Tx9KkxcGaUgSXhh+z59iPdb4Pt5xYsJdeftFsMHo9gf2u\nNsoyLSM2FsqLFy9eYsXzhJIPzxOuTOHZyJ4sxKzjMyM218UVk4dw6623WHz2\ntq1bLHYCPzo+TXyTxEgQRwGmI5aZ2BGwR47t35NusSb4qonhAFe3a9fKyrBn\nu/IE8gNLl77DnvHEPleuXEHefPM12bVrhz6LOxaWF2onuQpg2IYN69n/5Llu\nUIxhmMX29MyxnEz4Bb5HsBIxEMRls3diVlZmOE6bGAT2C2Kfp+LaSJnU+8UX\nn2q73lAMOy+EQ4K8Y3zT7KOuk9/86nffdZflbuODzQiVDWdZsmSxYbXvvvvW\nYt6JRzFcr3pj/QGcumfPTgmwYcBtypa92zAoeQFbFJc9/PCD5hdPSzsc7hOx\nM2cVn0T6o4kbe+ihBy3PNhLLUd/evbuV87wqr77ykmLJbXZ+YuJCw6/gU3J4\nyb29+eabJGHBHFm/IcXi0uvX/8nyCNatW2s4lDzfM8oTiE8jtorcjRbKJYlL\nI17jwP7dFpdF/gQ+b3JLyLuGb+3bt8fiXl599WXbF4g8EvKkBw/qZ3ZDfsIt\nt9xk55w9m2Gfb7rpRsW2gQ7JjUafK5YvMzzNOLtYGeJFPv/sE8tjSUpKlLFj\nRlleL/kRjt+RZwDuZS8cW4fQa4kBYh0CHkO+O+0hLx0c/pDqnX33wfSRPmN4\nydw5M2xdBx6yT/u9bn2gnyL6qlvH9u0i57s4+6Xso0ePWG4162ibFXNjC7Nm\nFp0jb7zxqup5r+Vq/1cc24arEq/Hmkv9+nUtj6Rpk0ZWP33KzDxtuffx7N69\n6495fbf2jXg75lOvnt0txp89QeGzsTwhNzRXxiqfIGZx/bpUuy9k6n2Ava3A\n2PHuP8XlMZ9PnE0fPLjX1hiwBfKZyCmG4zA+2FBN5VS8k4R8HPZOJXcEHsP1\n5OuTN0NsYOR8Z90OnaSmrLX8BPQ0YcKYqPyEHZafkGvz5rVXX/H5CV68eDmv\neJ5Q/FFSG38TnrDd84QLFZ6L7KeDH7Bly6Yya9a0cN4he/2wRw+/kVfLcxEb\nB0cRH9G2bStZl7rG8hOIJ2ZPH3AbmADsBj6EP4BTwCOsOZAHTL0BrkuzfUqI\n3xkzdqTlG4LTyJceNWpEVHngCXAH/ti6dX+y5zO+/IyIfUbwg+LTpC7yscGr\nXM9n9mhMTz9mfnY+E1uOv5c91otrI0K95M9SH/gLnz3vLSAXlfrRE33BVz1u\n7Ohw7Ab3A2JX2K8R//KoUcMsHifS/0/d4DFwBzzDrYuQ80y8BO0Br7PPaNu2\nra2s3bu3WZ/A5eBDdBLwrmAPffYN4rr8mPhr+kE8B++cAy/anjmhWJm+fXta\nvMjgwQNk6pSJlsMLtqIdbXRswNZpRw7ICv3cWnkYexGxb2dW1mkZMnig/Pjj\n95ajAe9ztkNMPraTlLTIMBXYi/2CNm9ab22dNXO67bED/gL/Z51Nt7YQs8N1\n+K3RtdmV4mk+s39N3z69zC/MHktTp040P274fQLaZ2L02Z+HXAX0s3XrxjD+\npL/s2zlh3Jgo+0coi5zuxk0aqo31CvaeVR1h43C5nRZnUogD3X5d4ObO2jdy\nK8iVRj/x9EV59K84+7U8bMXprF20bdPSYqNob7w50kHnyCatb8aMKTZHIm0b\nu+CdBeSgk6vMOyvq1f9ZfvqpjvFDeCs53sXZvVtPIE6KtYgJykkpFy5EnB7l\nFhfb72Kv4LGDBvSzGDben8ZaBPvNxssf/jX7olq+teoMfotdY7foGn7gMDvr\nKPBZ+sJaGfck135ycSop79qxvXDvWuNraYdktN5/2McBXWNHOXqv4FkSxRO0\nvei+fbvW4TyZy30/9+LFy5UrJfGEvsoTjl0CnhDLFa5FnoCezs8TdniecBES\njufmPWURfj+LUwj50PAL8p35vPU79iNxvsdgT5MM+56y3LtXgxiB/PBeJ8E+\n45HvTwj2H7ec2dD72yiHz0GMdEx5ofc8BesdZ6y8vCLvRcu1fAliw23fFPaK\np736N/h8pvCz7b1echtdP/jLHvuuLS7OKTb+P/qdWnnBOyIU6wXx/9GxF9R5\nLoQ/2Jc0cjzyQ++q4H8wtFszORva74V+ZoWu5xow9brUFIsRA9/GvsMrKPd0\nsGekiqvPjSHjmef2gyfmTOumHv66PWvcZ95JwOeC0HhY+RbLnV8YA6Zl0nZw\nMNe5/SxdG7iOcbb8k1B9kXbkxifSroJ4uFzraxCXlBfnvXh51g/8u/CYqHfq\nWX+zrIzIcQryRwosh9XpNqjzdPhdBPHiSty7x8CIwThdmL6Ks9/sEOehXOd/\nD2Jw4syRzFPxbdvedRdgWfB/QUFhHD5rAs8881RUbE5xdk+5tBMb40Dnp0Mx\ngCW9T9vtl7Rp43p7R0TCwnkWS7ZmzYoS8xPg7bFjdSFibTzrbCrH2uv65NZp\niMNiTe5c6P7Ab3zPvGKf2th3r7kxhYvttXW+QjvjN/hGOD8htO+r5whevHg5\nn/wanhD5nrWLedea5wmFPOH48eOeJ/xCcXvCu+fq+b7Pt/cVFH7nsE3sea6M\ngtBvuXHwhXv3gcOXroziyjNfPRg6Ihc4SnIywxjb5UtHlhP7+ULa6NpVEINJ\n4/W1uP4V977bC9F75OfIPrnP4CLeN2G51a1aFLvvY0n1ufF05cerJ/ZzbJmR\ndcYb1+jrCsepODuK115Xrhvf4uw5stxoHcQfp8gxzouIa4nXt3h1XYy+irPf\nkscnZo6UYNvg2hEjhtieoEsWL7Y9WtkriRybkSOGRcXtFGf3kXOR39xexhd6\nPyl8D7T7G58DUG5q6mqLoWOd42LvXZE6K053Lmc5cg7yP/kJEyeMi2sPBabH\nIEciL4I/wd9a6Rxz7+1w43yx7fbixcu1JxfLE3iHsOcJnid48fKrJLRHC7EV\ncATyYkt6j5SXP76AXcm9Ibdn8uQJlt89Y/pkSVyyyH6/knAtWJscn9Ytm0tC\nwrwS321wKQWeRRye7a96AfzHdHr6hEybOtliLuPlaHjx4sVLSeJ5QvGH5wle\nvPy2UrhHTO5lb4uXyy+BP7zAYnLIoc62+KGCKw7bgr+JZ+JdIORA/V48AXHr\nWRfaTmLokpIW2zvyMv37Erx48XKR4nlC8YfnCV68/Lbi4pMudzu8XDniYqzi\nxe9dSeL2Ni1u79QrRYK8m+C56jmCFy9eLlY8Tyj+8DzBixcvXrx48eLFy7Uq\nnicUf3ie4MWLFy9evHjx4uVaFc8Tij9+b56w1fMEL168ePHixYsXL1eInJ8n\npMnhw4eL8ASwbuz7Ey6UJ5yPK1wpxy/lCZHvkfA8wYsXL168ePHixcvVKJ4n\nFH94nuDFixcvXrx48eLlWhXPE4o/PE/w4sWLFy9evHjxcq2K5wnFH54nePHi\nxYsXL168eLlWxfOE4g/PE7x48eLFixcvXrxcq+J5QvGH5wlevHjx4sWLFy9e\nrlXxPKH4w/MEL168ePHixYsXL9eqeJ5Q/PG78gTVsecJXrx48eLFixcvXq4U\nuRiecOLECc8TLpInON14nnDtSW7OWbWi3PPPwYJzNg/Pd15+XrZJ8DnjN207\n7cnLzfod9PTb9sOLH59rR37vsfqj2MYv7ccfpf9evJQsF8oTjh496nmC5wnX\ntIDnC3F65BzKCRlMISeAI3Dugf17JDvrtH2OVybfHz68TzIzTur1OcXWTVln\nM9Rejh22OcuRl1u0LQE3YQ7l/aq+ph05YDaY+xtyBXhIcJyfS3n5dYI9iOSX\neE6unZdrIxKMz9mQXRdvl8WPa0FYLnffL1QHF6KjK1VKuif8Fvpzc9f5NyLt\n5koTs8NibDjcj4u0ce7HHPGeB1eCXM227OXKE88Tij88T/DihPHIVJyenXUm\nCvPznDl29JAkJMwzTpCbk6US3KenTJkow4YOKrFcnjMrViyVrl06ytnM9Lg+\nfOqj3tGjh8uunVusHevWpciJ40eL8A/O27Vru+zYvqVYbnL+vmZJctJimT17\nehT3udSSdfa0bN26SXZre3+ftYtrR/LzssLjz9/9+/aonneUfF12ht7r98uG\n9almR1nKb7ds2ajX7rrg8aEuzl2/PkWWLUv6VXZ4KSWeDn6Rjq5QST91XFJS\n1sS9J1wq/e3bt1vvLTvsf+5VGzeuk0MH9wW+jkP7dcwDuzlfOb8ntj6nNr19\n62Z9vu4P6yWy/qyz6Wbj+y7CxpHT6SdkXepaOZp2UPKuAPsubqwud1u8/DHE\n84TiD88Trna5NOvCPD9Opx+XRg3ry/Bhg6NihKQgT8aMHiG33HKzdOzYLlhb\nKMiR9alr5NVXX5EF82fbdy5mCHFYiv8p69ChffLWW5Wlf/8+Es+3znfTp02W\n5s2bqt2clDE6R1999WV9Tq0W+Igrk7/btm6UDz/8QNq0aRm0Mydofxg7xH4+\nFzxXONc9P/m7Z/d2qV2rpmzeuP6CYqIuSp+heKy1a1ZKxYrlpXfvHoV8JCcz\nrJdYvGO+v5h4KNdvi5MKne906/TiznHX5UX0tzhMxbmRsVeujGLL1L9OCvKz\ni2CO3GL65Wwhsnx0UFJbItsT2y43fu7+4ca0fv268u03Xxk3c+2nTNceyj5x\n/IjUq/uTfPbpx5J99owsX54k5Su8KSNHDQvbWWyfY3VIebNmTpMO7dvIyBFD\n5fPPP9HnRlq477EYMVJvsTqL1mn8OLjw2Me5NnaMnQ7AuME18XRUXft+Onxt\ncX2NmjM58e3c6dWNf3E4NHYsLsY23PcjVNcvv/yipKasLjJfi7O9IvqLKDve\nHGnQQPXz7VeGvRMS5srrr7+iYz3V/BbYzaefVrP/49lX4f3ynHGJKLspYW5Y\nGXHmabw5HjtXuRYfzjtvV5aePbqG20P7XdnJyYlSARsfiY3nnzfe0tYR9P4+\nedJ40/eSJQvDaxW5UTo7/xx2Yxtr+8XpIvY+V5Ktu7Fy8z2yrvj3p+jxjn1G\neLm2xfOE4g/PE65eCdZdRX5t/I0ra6E+F//n//x/5dFHHzY8lR+6z4JvFybM\nkyeffFz69u2l5+bocyhTPv2kmlStWkXvu8EzO1jfzrPPzufG8yVbn1msiw8d\nOljuu+9e2bFjq9pT4XOe606eOCofKfZfps80zh0/foz89a9/kTWrl6u9ZVt5\nwdp6ruzbu0ueeuoJ+eLzTyWIBcgvxA22zhHxWXkUbeDzyRNH5FyoHBe71Ktn\nd2lQv94lfWYE8RF5yrtOavtXyH33lpV69X6274J68yXjtN5nTh2z/x2G43ee\n76b7vKyI8wsMm5xULOr6wrMxeHYH6zDnsgN9Z2dlBM9aHYMT2l+uc+VEj3e+\nXXdS63K8z631cD3lI3x2dQX2lmtlZWWets8uliEY+3w5E9Evhxnc/5yfpXU6\nO4m0PcbpxPG0UKxDblhPQb35Nm7Bd3lhzDF61AjZvm1zWCdwsRbKMyPbm673\nGfiv0/OZ06fkG8XJj6iNcx7PhVKlS0mnTu3VJnMDjJEX6JexyDYdnA3bM/9z\nzrvvvi3du3WSQwf3Stu2rY3bUid9sPqJRcrJDLeDORE7DpE6pUz07z7zuxv7\njDMn5eTJo8FvxjUz7Bzad1zH75zNr4DjOB0YTlWdxNNRyxZNw1g3GPegr5Hj\n7cbhlNYb2FB+XPzt2uHiAN24ReLxAjsveizcGJ7fNoJzT51Mk+HDB8tf/vJn\nSV66JCrGpjjbc9ejV+ZCXk5W6LpAf2BR5lpwf8oP6w/9cC33ohtvvEGGDRuk\nbcsM7OaRh6yegpBdpmt/Tp08FtJ/UH5qyiqZOHFcGAc7nRS2r5CPBvelNMUb\nJ4vYR5ZxuRyb2+gY7Gu2obqlT5zL95T70091jEfxO3UMHjwgqMvas1pKl75D\nunfvYk+LLLOzXBuXeM8B2pWu4w5PuO66/5Jp0yaHvy+0iZNRNmHjp+0N7l3n\ngvuy6Sg3dF1OhE3r/S+j0KYdbjdb5/uI+1x8W88ttPUWofkemjfut7Oh+1Ok\nXyho+zGdT6esLvTpeYIXJ54nFH94nnB1CvfRI0cOyMqVK+zvxcZXR4rdK1Xq\n1/tJHn3kYfmXf/mTTJk8Qdxzi/vwvHmz5JOPq8rUKROF+zz49+9//5tM0uch\n91xi/Tt2aCcNG9aXzp07yo7tm2XihLFSt+6Pdi3tY/2+1B2363ltJXJNAewz\nY/oUqVypouU5cC6xIffdV9aebT16dLV1DtYY7Hytr2bNb81vChZaMH+Oleni\nAxIWzLW2gOHy9Tl7+tRxe26zJtK3T09Zl7om8LtpPdu2bpKXXnzR1hZ4brg2\nuefKhUisn4zn9iita8TwIaqfsfLMM09JkyaNJMB5OYpzEmXkyKH6LO9vOgo4\nUK7xp9Gjhskold69uofjWebNnSVDhwyUCcqdiMs6nX5My1gsTRo3kH79epvu\niQ3o3auHcrFB+vmgjcsELbuP9pcxi7IdrQvsOGrkcPOHDx7U3/zhmzetU4zU\nTDq0byvbdfy26TltWrc0vLBxY6p069rZ1ppYE2qq/emhY+OwPbpLXLJQ2z9c\nhmhbh+l5GYovwbhjddx6aX9mz54h7bVsbGTVqmVhv+We3Tu1z8Ot3wMH9JXD\nh/aZzU1WG+zerbPMnTNTOiuOb9CgniQlLjKdjNJ7+V1l7pRPlKuOHzda7y0H\ndGx7aX+GWbnoaOzokaqvEabrGTOmhjCGqB2NkOeff9bahh1UUrujL+ixg9pN\nmzatJGXtSjt/6tRJpg/ixpzvfe7cmba29p5yhUED+xk3A3/Abcfp86Vnj26S\nlLTY9Lx1y0bp2rWjLFmUYH0D6zoutmvXNrPtwYMG2Bg0a9ZYOnVsb33BrtHN\niuVLbZzQ+8CB/Q1DgR13q72ia+y6m+oIfZLXgw7QjelIf4+nI7gD5fTp3dPq\nnD9vtoDHFi9aYOO9fv1aa+PMGdPsXGxsyZKEqHUSxycWLZpv47t8WZLdE7BR\n/gb3lODeAl6NHQvKgDOczza2bdskA9Texo8bZe247bZbbQ0o1r8da3tnlLcx\nvzdsSDF9TBg/2vTEeBTk55kuxo4dabbAPYZ1P/zyzBdsyPnkX3zxOdN9rN2A\n0ydOGGc+eu4rzBHas3nzeruPPf74o8ofW1msD/MebkPfhyh+Z14S/0Y53Gdp\nW/8BfbQ9o8Mxnwjj0rhxQ6sf/Lxn9w49f7zpZuOGVLPL+fNnm46oKylxoZXZ\nvHkTuaPU7fLTjz/IksUJZodvvVVJ6tf/2fTdpElDm1dg+sh7F33eu2eHDFA7\n5byhQwfKnXeWklkzp9s9H33M1LGjv4zF4sUJYW60aeO68P2kt9rV/v27tI0p\nxr+XJS+Rnj27mW24Zwe6gH9hE5kZ6Vb/3Ij7HLYLj4BzYOujIm19ZWDrbqzQ\nBzZLXdN0vlJGo0YN7HdszPmZmMvMz/79+th84362d+9OHw/qxcTzhOKPC+UJ\nsX2N3RcVHXme8PtIXihm5ssvPrPn0Rf6l895vzAmlvkBRvzqqy8VU06Sf/u3\nf5P3339X7T0z7Ods1Ki+/Pu//29p2bK52U3Xrp3kb3+7zvBmQUHgY2rUsIH8\n8z//P1K6dGl7pv344/fy1JOPG7ZzvuWKFcrbWrbzXQY+11zjKD//XEecD4jn\n6113lbF6wVH8ZZ0j4Cki3yhHCHhCjmKfHnLDDX+35xLPFbDQDTdcLxvWp6hO\ncgyLsSa/fPkyxQRd5QPtG7iaNp3VdpQr92ao3EI/Ls8X8Coxv+cTns3u2Y6Q\nh/H999/pM3yeJCTMl6efejLEE0RWrki2tYVFixbab8QkEcPCM/FHfa7znF28\neJH5q3ne79Pn2D/+8YwMU85B+6t88J7hofXr16l+7pR33qlsvkja+9lnH9vz\nG+z6tY5lSspafR4Pt3UfuIvz4cKf6jeoq5hjsuKXJPnyy88UH7fVZ/tu/f9z\nG9d169YaRq1UsYLyrjn2f9my98gHH7xrXKRTx3bWr7aKqcEJSxUXf/ddDe3z\nHJkzZ5ZUrlzR9E69NWp8bf5M8B7PaOLJPv64mukKntFY+c44xbHLliXL97W/\nk8b6jEenYEbwOGs+Awb2tTLfVrxDmfTzL3/9s1Sv/rnhtQPa9goVykm1alUF\nLAK2ee7ZZ2ThwgXWpnJvvm5YkGPEiCHy3HP/sDoYb64z3HTiqHz++afmQ96g\nuCM/L8ds6dNPPtZxPhj2e4KV7rjjNtX9W8b1zmaesni8jorbkpISzdbe1PrA\nctR5771lpepHVZTbfmPtdjEU2Cs2Xe7NNwzbMKeee+5ZtY+fLLcePlujxjcy\na9Z05cLzVPfvSSudf1nKS+r+/KO0b9dGUlNT9LsWOi+bmS3SF/g87ezbN76O\n+D0z87S0atVc/vV//YvysfG2ljJj+mR5W+1pj2LFCePHSutWLSQ5ealxhfLl\n3zSMnZ9fGBcEjzOuorj3rcqVpIvafbVqH8nHKuG4F53bM9W+Y8cCH3fGmXT5\n9tv4toGO4LvffP2VzafEJUuUYw2RW2+9xTiJ4wlwgaSkRXFt77TaycfaV+x1\nzepVZlv42c+dy5LmzZoYP0lMXCK1atWQzz/7xHJUmI/0gfFhHQVe4HiCsxv6\nlqzY95mnn5LZs2Zo2xZLhfLlbA7AEx579BF5/LFHzSbwd6xevdzGdNHihaqD\nYM7PmTPDcOvHaq8pa9eoLifKRx99EOQChOZponKz66+/XhrUr6v2cE7101se\nfPB+w8g7d2xRPlLBeADlP/DA/YbFMxRzY2fXX/83izFL1Huv3Xe1zo/UBukL\n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\n+KzJSY+1PXwMGxXb0pYVy5ebH4B7JTE85DBwb0sL+c05XI5847AN5Yaxplv7\ncG3lHRxgZ2L0lixeKDt3bFeu+3p4bhC/Cc/kgHs/9tijReY8954dOzabn338\n+HHGK5gvkXs5YTus6cKDWEtgnzc4H5/pB+slzjaNw/cIeAB5x8zHgPcH9zRs\nvEdovSP6/FC+vZ7H3m9vvP6auP0xWE+Ap7PWxzrpTTfdaOtWkTZBLjS8BZ5T\nuK9GUEdmaJ447I7NcO9v2KBulC7IcU7lPvdJNYtx2r5tq93nvtP7HOtF9Js9\nsom7Ym3unSK2HjFWoTU+6uazszNyG6p9/JHxOuLkZsyYZj6B2D2bvFy74nlC\n8YfnCVenXIo8Zp6NB/bvszXpDpZbbBZh+5Szn9A//dM/WW5YZsYZi4H5b//t\n/1Ls863FyuKLYd2A9WVb59VnwNgxo6RcudcN4+CL5nr8/ocO7Te/DZixVKnb\nQ1yjaB4z9//s7DOh3NYdxlWIhTiXfVYx8DrzmeFz4xlFnD55BrQFv9ytt94s\nAwf0U4yTYnl4//Ef/8f86OyNxLOOZyCxyMnJSfbcIu4fnAR+BpeAuyLzmCP3\n8jufOP+fxR1t2SD36POe+GfiTIjbePrpJ81HzV474DTaM3XqFFm1aoX+nSxL\nkxbZflK3K9Ykj5QY2hnTpxk3I/6b3Iu1q1fKNn1+4nuHF5jeVIerVy63WBTW\nfojNoj3kK86YEcQUr1ieLGXKlJFNG1MD7qO6nTRhnNyleLO/4mDshzwKeBKY\nC65IbMGhQwcsbh5eho2AES12QevJOpshBw7sM56GHzE3J9twDM/wPbt36TP7\njNkTHIZxh3cSaxJwzgKLC+cz/nfWqViX6tq1i6xYsVw/J+g9erTtWQq/wF7I\ncwb/wV/gYMQyk7NObFmQL52u96Rzxp/eVP3knMu2/RLJn9i7d4/p+a6777T4\nbbfHFfUfP3rI8MQz/3hKmjVtZLgF7M5eLnBH+nNA64q0C3uXSNrBcI49MU7g\nccYULErcP3mX2PLcOTMMGz3zzNOmt7y8c1H25XgCbc3QOZZ25LDUr/ez1Pz2\nG7N5cpqJ9di6ZZPtt8OaYXXFpvT/66+rG57iQL/OB/9drRpmI9nKu4jliKcj\nfnccCV76seIn1rm2bdtosXHM/4oVyin2f0dtcL6OyzKd26PNp+z26CF3gpg3\n3j9C3ayfZGedtTHDb+72+gE7Ept+vrEoahtplrNRpsydlgexY/s2+8seaPa+\nlpzCfXsjbS9TbY89DeDd+A/QE3HFlE3sPTk84E64US29JyxcmKDjNFsmTBhj\nNl7zu8CGWAM5fuyIndfT8HW+tfV+bdsZxd/Evz9w/30WR8U9h32QyCeiHvJx\nwNuHDh6wNjZp0iA851dq/6fpnGe9qFXLZqE1ATHMD6dbtiwxag8xsPrTTz9l\nGDonxM9YJyQux/ZDYt8EbQ82TJwn9c+ZPVNuu+02W//JDu2HFPze2OJ13Gfy\nmbF5dw9Gv9xLWOOBv8CFbrzhBuVgXezegI/nvffekQVhmxhlusTfz70L++ce\nO3nKJLt3we/RX9cunawe+tWpUwdbbx0/fqzZArkrixfND93nrleezH1ui9ko\nc4O9BYjV5LvA1ntazJiz9dixCrhPvq2L2djpZ+LJyPNprffWnt272nrOypXL\nbE3sSn2HnJffXzxPKP7wPOHqlV+zL6qLj+a5zlowz4zAb5tr6/rvvvOWPPTg\nA/Lhh+/bmjd5ZPhY8fOQt0a8LPE0xKXqBFOcvdXwBuez3k1cN3HH5KYRx8IB\n1yAGiGdL7L6o1M1zwfYy0ePgwT32bISn4P/p2LGtPYfAO8RffPJJValW7UPj\nJBmZ6Rbv+6Hi57ZtWlqMB/EBYBH6iX+tcuUKFkNfu3ZN8z0eOxqsk5A/Ca7O\ny/v1+6I6Hyr+SnIMmzdrbM8pOMLH2lZikA8c2C3fKC4kH5i2gAvxEYIB8Dny\n3MOXT3+ILdi4PlUxQUWL6+X5RlvRE2smYH6ec3AmcI5bi2FPJ2Is4F4D+vUx\nPyIxzI77ZJw+abkM5EPUUtxYp04ty19fuTLZ9rklrxDfMLp84vHHzCeHvw6e\nRr8mTxpnsRv4uln3ASuznkUMETHXEyeONXthnYH9QvGXv/7aq9qfeYY3+Ewc\nCPvTs05B/AP50uRfEo8/dswI4xCMPTEZ2M+Z9BP2Gf8kMQ/EhOBvJA6BdQ14\nH3j7vXffMnxIjibxGuRsDhnc32LYG6juyOXF/00cA3v1kFtCn2g7v7l30NI/\nOC4x/c7n6MZ3YWhfffZvP2Bx9QHGAosQg8Q4Yf9cgz+4UqXy1rfdu7YW2f+e\nuJOXXnrRbJzrGjasF+zJU5BnvJo1NvJQ4HHsbwNWJ66HvNj27Vpb7Ib9Pnm8\ntYWYF3SAfzYzM914QTwdsSYR7Ceaa2UQ98b+my42jT1q4OGsZX2vdkrOM1y6\nMAc71XzocEr00EjbTR/gmYcickM5d5K2vcSxiGMb8GbuCeQLYJPwTuyEexU8\nwO0LGrwHZUdge2rn5Gt36NBGdu7YGsqDrm5jybtZ6AP5rvQZXEquObyBOcC+\nZOgHjM/aCH597oPgVXJ1du/eZjFo2A35xeRNVVDezB6q7J3DdeiQNrO+RH/h\ndeBccoS+jZnzrHmwTlFbsS44G71h39h97Ls6mEvsJeT2V8NOLBciNP/x2ZgN\n6z2DvGn0Ab9v1LiBpKautvUXfq/zQ205fGivrVHymbYwBs7fwfpDU30OVKny\nnrRT2+I+yljAP8DlPAewic/CNtHC6uI3OA/56V/pPZZ7D3necB70x72Lepxv\ni3awnkn9dX+uY/tcYE/sUeDuc6yXMDeYy/DA9u1bW9woORXo92DY1qPHij3g\neP4En181fs4YsK6KTrhnwFu597E+zb62fm9UL4jnCcUfnidc7fLL3rPmeMJa\nfWYkJS6RpUuT7BnFWiz7YSYlJpp/F982mBTfz/Jly2x/HHILwDE8f1577WV7\nxh89etj26Vm+PNmezxv0vs++FexTsnnzRssZJH8NDBtv7YO1Z9YOeN6cTj9l\nOGCn4pLVq1dY/DMxC8G++EHcNesC5OHafqbso6rlz507WxITFxu+or2sFQRl\n51p7iN2ZN3+u+Z74jmccPu+NIV/7pRgPe+bqsxs9ECfDc27zpg2WL4wfDyxP\n/fPmzbX8xY0b1kXsFX7W+jV9xjRZtXpFeP/MjRvWa1kzrSxyDNEz/nQOcAG5\nv5H5HtTDu5XYC4UYajhCpN+MusDn+P7QybJlS+1a9mVduCjB3h+Nnz01ZY3t\n37N69Uo7n/fk/fQTey0utn1bgnzHvLCO2RNoYcJ8w2KMEX49bIp9jLCvTZvW\nWbx28DnRxsTtIUQbaEuithe7pH7sB3uj32BIfJiUA/bhGngX+ebkhpKTazah\n7aUftGm58i9sgv1H4TO8LwqeRrlBe9abjfA/7QFPcLBe1btn9yAXPcJWHZ7A\nXuwarQv9B3t45pq+WB9Zrn0hfxm73B4qHz3uD2EyVxZlf/rpx/IF8Ss6z7j2\noI1roU6PH0uzfYKI/cB37d4fwRwj5j/Y72alteGIfsf+RKYDrTfYN6wYHYX2\n3HX2Qi565L4v1LNr53aZNWum7SGErsN7kZ4L3onO+6jxWZMjANel/bFrm5SP\nLs4/FkVtg3LIm2BvHNa8wP74m4mpsxionMxo21s43/bqDGwviLGnLnTHnq+8\nW9nlNfAuNPYRIP6EewvlpJn+0E+S2dDWbZvM/mgTa0bO/iiH89E7uqU9B/bv\ntbqZh9ynkrQP7GdmOQI6D5jz83XOz5pVOOcNe2uZjCMxXqfUxmPvQ8H+ZPts\njwjH8ymTtrr5vj1sw0lmj8bjtI1ztG3kB3Ef5Tf6go27z+iZ8yM53ZkzJ7Td\nC6yt9Au7If8KDkk/sInZMTYRvM/ljN17Z8ycpvNzTXhPB7N9V08oD4I9GdAN\n9z9ymeHidp+jzdzn1gf3OfZDwi6P2bMlZOtrAlsvbqywf/TDM2xp6DP3wp9+\nrKN8dYLeR2dp22dLjx7d5fbbbzU7u9Tv2PRydYrnCcUfnidc2+Ji/znc8yIy\nzjT0S9SnyHj8SfiWe/cwfhH5e2S5HPjg8FG5d3nFtoNnCH5S9nth35ggP6Ag\nbr3Bb86Ac4q2ucDFvRbuURNt8wFWYG0cn/uvefdEPMnLy46sLdyPsH4L8qJ+\nd/gzP+o6iXhHU1gDodh9MSyEHxN/Mfu6F82tcHVL3Odg8C6kwsP5ll09sToD\nC7InUmHOrYT3VCy0pch+BVg3LyLfwr0zK/JzvH4HccNnz3tdYX350TYReqdF\nZFtc3kD0efkRfQ5yH/HbN27U0PYqcntEFZ0z+YUl5J+L08/IOVJYfuQ4UC78\njXgZy9cscGVGrw268Y79rdCGgrEgryR6THPPq6NCW8guUq9771W886PnVEFE\nHwvCMTNR8+ECxyLeGBfE9D/yt/PZXm5O5FgF87Awvzp6vAJOHq2f+PeU+G11\n5wa++eh7YdFxLBD3/ujCtklc3TkbirQdFz8Y+XtkfdFzJ7fI71GfY+4NBTH9\njGxvkMcQ3yYKYu4nLuYsXj3RdZR8nwv6Wmhfwfklj5WzZ3fw/hnWZOHR+ABY\nC2cPONb54JE+9sgL4nlC/ONC90QtiSegj8j3J6CvWJ5w7Ngx4wmHPU+4QiVD\niq5LZMR8H/s5M7xejd8JjFV4XnQZPAO4H58KvR+0pHnK+7FYDyiKz4prX3Hf\nna8/mZa74N4R8dvo9GLbH7+dsZ/RIevq7B/O3iHsMVv0WXch60zF1RX9O/rh\n3UZvv13JYrr3XfS7iUruz4X2u/jrLub8+Odhb/ghiVMh5s72RS2RP56vLSWf\n696VVaXKB5ZXjn//4u0wnq1frI4udux+zXy4sLG4uHl9Kdp0oTZU0lwpbmx+\nqc38Wv2e735T0rieT9+//N518bqP/f9i5ntw72J/AXLMRwwfansUBHFeAy1H\nxL87wYuT34snxHKFa5knoD/0GMsTtnie8IeSwK9W1L8XK8H+Kuf327s9eX6P\ntrsYhMutw1+i87S0gxarcvx42iVfD4kVMDS5uatWrbS8ZxfzcLn1cKnlbOZp\ny/u23I8Y//lvMYbEbQQ6XW7xRn9EnXrxcrmFPbeyzqZbjBNxcsSkEgfl1k0v\nd/u8XBlyPp5wNO1IFE/g3WD4wh1PIJbG8wTPE7x4uVIk38VsFPy2eNZJZNxF\nbKzCH0UiY2l+D/wQGX/hY6S9ePntpDAWNiT2nr7L3y4vV454nhD/8DzBi5er\nWS5lDMaF1vd71+l16sWLFy9eflvxPMHzBC9evHjx4sWLFy9eYsXzBM8TvHjx\n4sWLFy9evHiJFc8TPE/wcrnlt9rn49eW5WM+vHjx4sWLl2tZPE/wPMHL5ZPw\nXuO2L09GeN/wS7G/S3TZF3hdjttvPf+SteNyiOvD5W6HFy9evHjxcjWL5wnx\nj0vFE9CL5wleihPeO7ply0bZv2+X2k6Wvf+Vd+FmnDkZfsfOL33XDe9t2LRp\nQ1D2BeJ9OAXvc+AdsryPmvZdDfvj8X5Z187gfcR7ZPeuHZe9XV68ePHixcvV\nLJeaJ0RyhZJ4wvm4wuU+filPiH0Xs+MJ6Kk4nnDkyBHPE65QAXO69xZE4mWH\n391fh+XtfP0/EpfHO9e9c5R3gpWv8KaMHDUMq5MlixPk5ZdflNWrlmmdOYbb\ns7POhK+P5Q3xeESwjpAnSYmL5M03X5dROrfdHqHh/oTKi7pOv9u1c6s0btxA\nZs6YJh9/XFXbt8TaQR3xdEBdkf2LbYc7J97vri2x7Xc65Le8nKxwOa7M2Gvy\nTd+F723mb/36deXbb6obz3HnuzFx7XGfS9JJYZsyi7TjauBPXrx48eLFy68R\nzxPiH54neMkL7St9Ov24pPO+ZMXeDu8GcTk59l2W4fhQjI/khrFpsA91zLn4\n589lWrmck7J2lZQqXUo6dWxvV69PXSvVq3+uc3KtnZOaulomTRwXYObQe9vc\nfvKu7ML95TOMD9CG9PQTkrRkkZQqdYd07tTezgtimvKsL6xX8F0kn+Ho27eX\nVKxY3n7v1au7rFm93L5nnSPQQX5UW1yZgT8/M6pdrs98hutE1mfvltNyTp44\nIufst4JA5yGOg87PnD4elBOKm6JfBfnZeh86Imcz0u233NyAh4weNcLefe3K\n7d27h7Rs0dTOc9fyrrBz2Rk2Bsyv4G9WiTqJbFPQh7xQnzLDfbvcdurFixcv\nXrz8VuJ5QvzD84RrW8B/4MaJitHxx4NDJ0+aoFgxQzIzTsmUKROkS9eOMm3a\nZGnfvq00btxQli1LlBk6d1q2bC5tWreUA/v36PhnyKxZ06VDh7YyfvwY6dix\nnTRsUE/mzpkV9tNXqlRRunXppLaVKwsT5kmLFs3svb5btmyQypUryBOPPybt\n2ra29/5SVufOHeXE8TTDvLNmTpMu+vn4scNW3okTaTJ8+BAZOWKYjNP5/Mgj\nD0uP7l3E4V/qHT1qmAzo30fmzpsl+bmF6xyU/9prr8iDD91v9e3auUXAwkuW\nLNRrhsuQIQNl2LDBOvdPmW7GjB4hgwf1l6VLl0jTpo3k0MG9YYy9NGmxdOzQ\nTuubKX379JQGDerKWL232NqI3nNOnzpuuqUMfl+Xuibw+2t7FiTMDdU3QAYO\n6Cvdu3Wxe9Shg/usvkkTx8rgwQNktXIYeALjc1eZO+WTT6rJ+HGj5cjhA1pm\nLxsz+M2ggf2kaZNGOjZTrf4Vy5N0fFrIqpXJVufcubPj6KTQDujT8mVJqs/R\nkrBgnmzckGLcjbUfxuBy26oXL168ePHyW4nnCfEPzxOubQGzJyUtkmeeflJm\nz5qhWHmxVChfThIVM2cpV2jYsJ7cfPON0qtnd+mv+PL5556Vd999S0aOHCrd\nFJc/+MD90rNHV7WDc8YRrrvuv5QjtJeBillr1vxWnn7qScWpywyDVqhQTrp1\nhSfkSf9+veXWW281jrBp0zp59NFH5PHHHjV+sWfPDivrtttuk717d6p9nZX2\n7drI7be7z1nSqlVzqV//Z0lIWCBz5s6Uhx56MMQTRGYqTgYvJyUlyuTJE6Vc\nuTdk7eoVYb6yY/tmef31V+WhB++Xtm1ayb69QZ7Cd999K/Pnz5E5yjEqV64o\nPbRf4O8aNb6We+65S5ooR6rx7dfKi3aH11vA/3/TPjdr2tjwfu1aNeWB+++T\nnTu26JzJtjLQz/Lly6R7967ywfvvyqmTR2XVquWK96tafXCwx7Tv777ztmzb\ntsn6+t67b8uKFcuVP/SX9957R+9Ph0z/f/nrn20dZuKEcdYOdErcFLyuR49u\n8q//8i8yVHlOXl6OLF68wNZMtm7ZaGPbVNtYVCfnLKeb/ixMmC9DlJfAyapU\neV+aN2siP/34g8WHnTh+5KrN9fbixYsXL17OJ54nxD88T7i2JS/vnMX8gNvP\nZWfKwYP75cknn5Du3TqbfUxSPFq27D2yZ/d2+9yhfVv5xz+eNvzMgW/7yy8+\ns/8XLZwvd9xxu2F/jlM6vk8pT/j5pzqGQytUKC9du3a031YrTr5Dcf+GDSlY\noXz7zVeGwYMjV8uaJ3fdVcY4A2sE7vPBg3slNWWVrR9sWL82dH6+4uFy1uas\nsxlS7s3XpUmThrJ27RpJTk6U++67V7p2od486zN/GzVqINWqfihu/eHzzz+1\n9Q139OvbS68rKyePp5lP/6677lRMP1ft+EjYt06fwPX0ebpifY49u3cYn1m5\nYqnxkYeVv4zUe86aNcRVjZcbbrheVis+hwfBRdxRvvyb0qJ5U/sffz7rIefO\nBesiN998k2F9+l723ntsfQCd5evY1anzvWF6KQhiip584nHVcScrZ9682TJW\n73XwrDfffKNYnbh4qWFDB2mbN1kc2pNPPi5dOneQGdMnK1f43uKjfOyRFy9e\nvHj5o4rnCfEPzxOubSGHgNiT5OQlMn78aJk4caw8EYE1Z8+arp8fk5Mn0uwz\nPvuKFSuEY/NrKrb/+qsv7TfWDe69t6z5uYmf58AX//5779j5xhO6BDxh8+Z1\nFkOzYX2KfYYnIEFcfK7i7GTlJ2XDPAFsDF85fHi/DBzQT5555qlQ3nOW/cWv\nju9+7x5w+q0yYEBfmT17uuFcYviJnckL5f5SHjyhqvGEPO3bUXn44YcsXsjy\nKbTt65Q73XzLTbJjxxYZN260PPfcP/Tas/a7w8vwhP3aV/oM7+EgBovPa9es\nlCmTJ0jZe+6WadMmyayZU2XqlInSXfXHmgjrAXAoOM/OXduNM0yeNN7aRntY\nE5kyebz07tXdeMfmTeus7+iAtQ+3HypxYB99VCWcR8G4oZsTx49KZ8X5rJWw\ntnH7bSXrBB2mpR22PsB9qIc+ZWbqPfDMKZunkXnsXrx48eLFyx9JPE+If/zu\nPOHQIdmy1fOEK0WIxZkze4ZU//JzWbx4oeLibbZ3UM+eXc0+ZutvTypPIO6E\no0f3rlKpUgW7Fqxao8Y3JhzLlyUaRiZ+372X4KOPPpSffqojYH/yE8DyHJs2\nr5e7775Ltmxm7aFAvqr+hdT6rkbIKvMs7r9s2bst3oYDzErZp04dk/79+sp9\n+v+Z0yfD59Mm1kQOH9ovt956c9i/n5+Xa39ZK3F9pm1NmjSyeB3LJT513NYn\nuoXWUPid+qj/iGJzfPIvvfRCOB/YlQNmhhfgm4fX0I/9oc/kZ4P1S5W+Q/bs\n3mb+fhNbB8iW5KVLpKrqhjif6Yrbx48bI2czM8z336ZNS2nRoqmsWLlcEpcs\nkrvvKmO5ywcO7JF7lHekrF0Z0m9EPyyvOUd27dwmDz54v3Tu1EEGDeyv8zbH\n9na69dZbStQJsmnTRp2jhyyW6qknn9D733GLX9q2dXOov6G9j/y6ghcvXrx4\n+YPJ+XhCWognsMd/LE8A8zqegMTyhFiu4HnC+XjCNs8TrhAxrNm4ocXUsw//\nutQUxcwPWWw6v43ReVKq1O2BX19xbvPmTeTpp5+0OJS83Gz54IP3TPLzcy1v\ntnTpUrJm9QrJzsq0/UpfeeUl+3v27Bl55pmnLUaecojLIZeB/VIt7ujbr+SN\nN15TjnHAfNz442+88QbF6KMlNWWt5TX89a9/US6TYL/deWdp6aRYeOvWLVpv\nstyv7a/13bcWe1Ot2kda1usyd+4cWblyhYwfP9Zwv/OF027WOd54/TV79wL5\nxo0a1bfc5j27d+l3Zywu6Pva3xn2xvd+7733GGeI5QnwHGKJyGNGX5u3rJfr\nb/i7zJ83Ww4e2GtrMeQsJCYukeTkJMPgrLe0atlc6tf72cru06en6mix3nNO\nWEzTY489IrW1bmLAiEG67rr/1H4k23oCMU5BjnW6xYyRA4LeHIeBF3At6xjo\niX2hzp5Nl6pVqxSrE+TwoX1WzqiRQy2WrGKF8jqfz+j5s4wncQ6xWHAYdOZj\nkLx48eLFyx9JSuIJfeAJRwp5wvHjx8M8AazreYLnCX9UAQeDaYmPZ3/NQYP6\nK2b/WmoptiWGh9iVl196QWbOnKpz5ID8/HMdxZDlzH++e9c2+eTjqibEtxB3\ndNNNN9r+PxMnjDWfOP5yMCbcoVKl8lLnh9qyX88dPXq4PPfsM1Yffu1Jk8ZZ\nbi1YFDxOri9rHGD+Du3bWKw8sT/k6NJu1iXeequStGzZTHr27CbvvF1Zvvnm\nSzl29JD58onF4dratWvaHkVbNq8Pv0sA//pXX32p17xl3IY4I3jQD9/Xsj2H\niL1qr3WSX3D69Elp1qyx8R1ih6jbvd+B/4kVev75Zy0eC+40ZcpE+8zaBHga\nHz57OVWv/oW1pXvXzhZXRJ71q6++bLnTcKR3333bficHoZPqj1xxuNGA/n2l\nUsXyMnBQPyv/u+9qWB5zwvw5pnOufU/PXbtmRRB7pLwgUXnZl6o7ckjcOxNS\nUlbF1Yl7xwI6R5/N9PuWLZpZ3sOE8aMtxmvb1o1WRp06tS0Xgj2gfE6zFy9e\nvHj5I4nnCZ4neCkqDu+uXr1S5sydJdssvmWv7RG6b98uWblyuSQvTZL169fK\n0bSDsmzZUlmqn7eF4mD4DTly+KD5r+++u4xMnz5FEhLm27Xmr9a5t337FruO\ncw/qdSkp5NMutXPA0wh78SQkzLO9T4mj2b9vt8yePUuWJSfZHqD4wXfv2h5e\nF0hKWmJ7E23auE42blgn69al2F6uxBK5a2fPnim7lM/wjgOuAd+SU0BbqG/L\n5o2hXItc6wN7/rBPEOewPgBfWbYs2c4n3xt/v+MJ/L8uda31Y/nypbaWQRv4\njJ6C9xTkyYYNqcqzpsu8+XMtbyAt7ZDUq/uTjBw53No4Z85sGTVyhK3bkA+S\ncSbd9nGiLfR7o/aP8qmPuCZ8/Ckpq20NgDWKpdqPHapf166zmad07HbHvDMi\nt1idOCG+iBzno8q1UlPXyPz5sy0vm2spd8e2LdYXv0eqFy9evHj5o4nnCfEP\nzxO8BDmw7iDuPS+wDd6hFvF98K4xd+TF/F4gM6dPleuv/5ts3rS+8Cz3vjHJ\nLTzTriu0ffdeg3BN4XzjvIjic8L18lt0W6LLCq79/9l77zirqmXf9/7z7ufz\n7rvnns+759yzz3ln77OT261uI+aAWcGEGAhmBRVMYEBFQQwEUZAsIAKSESRL\nzqGhCU2Tc865SQ10rlffmmusNdfs1U2DhEbH/Hzq073WmnPMMWrUqFG/qhpj\nFCbVPaoLwu1w3ye9L/Z9lDdR3oXfHdybXJcAg4SvIsU0S6XKIw9bzhJrBfLy\ncmWp4qaaNarF1zkUb3dRpI6FkXbkR/qzIEVdS+ZJclvyY/8XRfhTGK+HJ0+e\nPHny9GsijxNSXx4neAqoJB9xduS34p/ZL4l4wPfdutpe+wMH9LX9c06nrNKf\nif5+suejv5f1t1O9tyztyo7x6rjFHcjn4Vw08rmIvwzo30fGjxtjOVgB1jlZ\n3U+nHadzvydPnjx58vTrJ48TPE7wdJbIcl0OWy5MZuZCWbZssa2r9WtdU5Nb\nJ0E+0YIFcyUjY55s3Up+T4HP+/fkyZMnT57OA3mc4HGCp7NHQX6Nk+fiOS2e\nkqnA8qaKQpTvcZUnT548efJ0nsjjhNRXWXFC9IyIMEY4GU5gn1mHE3YpTljt\nccKvmHxOiydPnjx58uTpwqKT44TdZsOea5xwvrGCxwmePHny5MmTJ0+efst0\nJnGCO5PZ4wSPEzx58uTJkydPnjxd2ORxgscJnjx58uTJkydPnjxFyeMEjxM8\nefLkyZMnT548eYqSxwkeJ3jy5MmTJ0+ePHnyFCWPEzxO8HTmKdgP9eR7etrZ\nwUV5Jy2PswW493y366Rt1rb4fUwvZDqVM/bO9TvLCw/KW30vZF6fjTb9Gtvo\nydP5I48TTg0j/FKckJ2d7XHCBUJmmzvSceKoMHTmF+d/xaQm6Vkwws4dW+VY\n9iGVg9TlY0/v27tTjhw+UCpW4B2c47x//27Jzy2ncmFnTx+Rfft2lQn3eCp/\nZJgVyS0LttULuQzwcKGc6tkg4efK8s7ywoOy8qg8ktNVRWUcn/m5gR7jOt91\nT+oDrT/6lvPumSfDbQrL5rmqT3mV5VOloP4F570ensofeZxQ/PI4wRN05HBW\n/PxkbPmDWXvV7j8owdxZZN8fO3pI5qTNktWrltv5yzyHrk2fM0u+/bajZB89\nWOK8AQ5ZvnyxtGnTWg4f2m+fo/fwLHPesKGDZdWqZYpRit9THig/dvb00CGD\nZe2aFcoDjxXKOznZcv9nHdgjq1evNExa2nOHVD8tXbrYxgSft27dJGvXrjql\nd4MlN25YK/Pnp8syLSvnxPn3AafiwenyqDwS43OV6qlt2zaVzY7OyZbdu7ar\njlpabtpLH+zds1N1zCrJ1fodP35Y1qxZqW3abG06eHCfyeZhlc2T2eup9O3p\nELK8QWV5gcry0qWLyg2vTka0P8Gj47Jl80bZumXjBYtzPJ098jjh1HBCaWcx\nnw5O2Ldvn8cJZ41O3/ZAV86ZPVOaN28qn37aWLp3/05+HNhPWrf6Sr7+qoWN\nGfAAf6+tcI28XPslix0UFuZZHKFG9WrSr28v08VhcnaHyyM6oHZHrVovSft2\nbexzVEczB82cMVU+bdJYbZS98fmdv9wfne+dj5e/8Xv1s8VB7P2he/NOxO8n\nZlKYwnYIvydcZqo6UP6E8WPks08/Ud1w+IzPN45n0bqkajPtdPe7evA33A+O\nB+Hfwjahix+VZFM5voafceW7OoXfF69j5LmS+B3/Pi+5jUVJ8/uxpPpGbZ/w\nc+F2u7ph0xifivLlR50DHnvsUdm2dWP83jDPeQ7brFev7lK1ahXZtHGdyvoW\nea1uHfnss0/idQvz0b033J5CLW/VyqXS9ItPZfy40VK79ouyTMdRkY4d43mk\nfWE5jfIs3O9FhSeX4VT959qKTzqJB7Hfojx6/PHgd8ZmtH+T2ppCBotRqG/D\n/ZVKH8X7Ivx7Xsl9HG4/ugp9RtsGaRtE25JKflxdeQZM9Enjj6VOnZdNt9n3\nEZ4Vf774+1ON4VR1LK1ck+u8wF7p9l1neapmDasftnm1ao/LoEEDrD+cbK5f\nt7q4DIfK5fMJ7dcov1PVL8qbpPbodytXLJUvSpLlwuLtCeuG/FPtyxJ0R1DH\nZP0YlqnoM+Gy+Z9Y8LvvvK39/VESz6PjOKw/Us0pqcam08f2fwn3eirfdKo4\n4eDBgx4neJxQ7ol5MbhOL46KTlu1aoU8+OAD8j/+x/8t7dp9IzNmTJMunTvJ\nZZddIk88XtVs/J3bN8ujVR6WBg3esdgD8++XXzaTSpXuk6NHsuJ60mIQOndg\nc2Brudwc6jdmzCi55pqrZdmSzKScAItX6Pxct+6rMnHC2Hhb+EsZDje4nI8g\nzpFvujtYGxH7TsskFpKtZdm9MfvF4swWw8+3ugcx+/wkHlLfLH02+K0w1J7g\nt4PKA7fGgvpSzquvvmxz5pnMP+LdzGUHs/bF6lwQXwMSbbPjCfwnTuPaiT81\nmNdOWD2d/eTyungPf4NyC+zZ4Pn8YvMy/YxNSvtd/VwZxFIo35WFr9zVibLg\n13H6oig3ST75necS/C6wvuJ77A53r8mPfufmbNrG/Qez9kiuvtPlwAXvS/Aq\nx34rjNUl3/DnjOlT4jycMmWi1K//ptn+wfuLTP6QHXtHUWAn9erVQ/7wh9+b\nfbRv3x559NFH5Nlnngrqkxe0/7i2g3o6Pod9rJTb6usvpdZLL8ixowelY8d2\nssZiUGL8Pno0y+5xNrjVueBEvB2unLgMx2T8WPZhwxjhHMDUYyXbxhn3ZinP\njtm4KIjxYELAg51brZziPOL3t4xHubnBOHZj2sUe3d9kGSwohuGcnAX9UhAa\nx8wjJ0L3nbC6ZGcfTPQFa5XisuHkKNtkLcwnGytK+NfnpM2Uyy+/XDq0byPh\nPLGAZwUWJ+I+V9ejRw8ZL2677RZrhxtn2OeOZwldki+H9fngvsIS2lpo8VV8\n/shIoOuy7Vn4hz4NZDs/+D6Gw3if6dZYX48cOVTeb/Cu1nef2i6L5corr9A2\ntbXfe/fqabLJ9y7uG+UbZe7dvUP69u1lOsFhPKtftqtfQdxOLk0XUP7XMVnO\njspyhB9BjlRi/CHTzsZ27z9ZXzr8FvCpID5X8T/xPcthjek7pwN4B7zNyUmU\nx/P9+/c2vBvgnxPStk1r42Ncj8V0ZrJsH473N/wP4uuFEsUzdo/qyJyYrkro\nsgKPFS5A8jih+OVxwoVN6Lc9e3ZIRsYC+3s69mqgt0U++KCB/NM//U+ZN29O\nXD6qKC74n//z/5E1q5ebX5Q5i7mX+XaX2hfXVLhavmn9FZJk80T377taTKLV\n1y1l6dJMmTZ1kjRu/LEM+WmQ6Xjm55tuutF8d9iD8bGp9Z4ze4b5x9DJNh+Q\nr7FxrQweNEB+0rH6XdfOsmHDGkFv48fq0KGtzJs7W7//VkaOGGLrBfoP6C3D\nh/0k/fr2Np9iUUGujusdOqf2kH79esnon0fYXNeiRVNZv3513He0bt1KGTCg\nr9bzR/m+W1drx8iRwwRdj79u0I8DLMbSp3dP2b9vd9wO69nze3nzzdfM1gnP\nHw6TnJQi/RXoqMVal37a7oEW2/m+WxeZNHGc2qpLkto8YvhPVr/Zyjd4hC3Q\nv38fm++wa1u2bCGdv+0o27dtsu9oG30EP7ppmQP0Xj5PVZuZ35hLsYuxEVxb\nLA60f48MVX05ePBA48sG5du+vbsUR3aUZk0/s/qw9uS77zpLj+7d7Hfq0kPr\nPlB5+pXWAzwJHx3OIncNng4ePMDqsn3bZuuH6dMnS7u238jkyROka9dOJktj\nRo+0uuDPPHLogIwYMVR+itUFXlEmuW/23KTxcRmkTbQjPX2W3HffPYpxH5Gu\nXTrZOBk1arjh4aNq71D2FH0fMTFkB14ig8z969auMly7YvkSGw/Nmn1h8TT4\nhj+3WdPPra6UMV/HzddffSnz58+JyxXj5p577pI777zD6rd71zbVnTkyUfuT\n+iE/I0cMs/vhYa8fuuvnoYaVsWWwhZz9iHx21X7HR874at7sc63X4rh9XGys\nrNexUlRgtuAIHR/Dhw+R75U38BPbd5TaoO3atbF4WHp6WoJH+o4Ej9oYL6jT\nF59/auWDbei/b775Wts+3t49N322/PhjP+nb5wd7j8ONTq5pQ+bC+ZZTSB+t\nXrVMftbyp6p+cHaZw5mTQ32B7/zQoX32W1w29Hn6kT5mPDvZwD5EpqkH8nrb\nbbeajDobkzKQ7SEqO8gP8ZJxivEDO1SUbwOlcuX7jTfcN3xYwDPkifc4m3mC\n9g1994P2HbKYm3ssyX+PjwTf/6BB/bXP+mif9ojh4TzZvHm9tYnnvv22g8lK\nYWG+Ybth2l7K7dKlo8ydm6YydtDGHG2An8h5jRrVpZPa51xONtEL8DfKtyOH\n95uuavRxQ7nqqist9km90NWZmQuMT4x53mFry7Tu8HbIkB9Nj4R1QbIs3679\n0DqQZeXJxAnjkvjB/UePHFAe/yi9VV8yNpuprDJfUA78Lq0vA52z2/rQjfO1\na1bGcM8JnVMmB/quTy/5QcdLZ+UPdh35gHweNWqYvRf+8K4ePbrJFVf8Q956\n63WV/VFWj87Ke/T7YZUt9E9zHdfoQTDLrJnTdI5oKct1zNM+/EDUg3JmzZqe\nhAv5HT8BGJtxN1d1wCLlLXK+KHN+3J9wvu0ET2UnjxOKXx4nXLiEvbFF5503\nXq8rd9xRUV7Xv3wuOMVcVLd3Dzjhn//5f+n80FNWrFgmY8eOljtur2g+80Nq\nnw1Rvf+Xv/zZ4uDY9ePHjZH/+I9/j/kgC2y+76b2yb/92/+Rf//33yl2mWs6\n/tprrzGboCCW71Dn1VfktltvUbnYn+Szb9u2lbzxxmt2D7oYu7/hh++brZmW\nNksaNfpI61Lb5ty0tOlyuep+7scPyDzVo3tXefLJx9Vunat6fZDUqP6EzWV7\ndm+z7++6+06zX7t9961UrHir5Vlhq+N/owzmmNn6Hvxlt2r9Rqs9tXv3dmmi\nc9jPo0apLTRH31fX7COHYxYtWmD2Ffe5+YO5ab/Wnffu0e9Lpm12H/dbf2qZ\n1Pf11+qYDTNz5gy1C6rJ3XffpfbURK3bDJvvXJuZu7BN33vvHbO3Jk2aIDVr\nVrd5l9xbngPnZR3Yb3PX5ZdfZvbHkSOHTFZ69uxuzz//3DNm5/G+Z5992mw4\nl3dAn7ZVmwDezJ8/z+xT6kc9sVf+/Xf/Jv379Zb9+3fJc889bXhsk9qr1ZX3\nd95xu/k8u3XrbPzHvsbuxT/dQOs8VOfSWbNmyjtv11eqZxgAu/mPf/wvaa3Y\ns0+fnorBXje7hGeQ6y7aNtpHXTp37iQvPP+c2ULYFH/+0x9tvu/b9wfDszfd\ndINs3rTO5n34Rh4KGBAb+HO1efEdY39v2bLB+rC/yhnlUubAgX3NngJvXX31\nVXGc8PnnTaS2tgN7Fvvk//yff7V2FKmtR/88/nhVwy4uPsB8c6+W7WwrsABy\nhe02S/mNXfXYY1XMtgG/wadK998rTT752Ow6t5Zn/76dUqv2i3L9Dddbv4Ef\nn3nmKamp8sFztCPVWGHcYju+9dYbsmTJYpWrAVK37iuy/8Bus/sdD2bMmJLg\n0ffJPEJGwRb/8R+/s5yT3Nzjti6n+pNPyJw5M83+/+STRjJz1gwtZ6r2/ZOq\nO0YFPvRYzAssCQbCLnz1ldryaZNGZjverXYnfev4tXHjOu2Lew0nJ/qin/6W\nZ3ZaQjZ+kLdisoHdh6yCi5s0aaw26DSZpPjllltutj5yOIFcqvHjR1v8c+aM\n6TpmJlusdPGiDOtb+rxy5fvMJu8bK3/J0oBndeq8YmNh1MjhQd+p3IKdHqta\nxbCE258NvLJk8UJ55536hgWnTZsiL774nGHlEyozjbVf2rRpJUuXLtHvAn9F\nfn6OYdb27dvKnNlpJmP0LWsT3nvvba3vveb7p/xq1Z6I4wQnm6tj6zCifBus\n9T6g+OPll2vJJZf83fhNW1ervU89aH9a2kx7F+MHHcH4nzt3jumC50K6oJgs\na31NltW2j/KDv+AOxjS6v2nTz5Qf9WTH9s1xHVlaX6IP25jO6SHzF8yT1q1a\nmszi61iocwryg74jNn27zk/PPvuMrFq5TN59t7400HGfuTDDZOG9d9+2uAdr\n4v7zP/8//f1tm7M2q4w98EAl05vHj2fLV1+1kH/51/9tfQtmGzv2Z+MJOhTM\nBfafNzfd/DaMTzBLYWFO3P4HT4NbRqgc1NS5kTgLPH/llVrWFr8G4sIijxOK\nXx4nXLiEHYPP9r//9/8rTnyO7kd0MgrjBOIJ2BTEZF944Vn5+98vtvkd3+ry\npYvk97//T9OV2NfYXHxmvkrkhB63+ei//uv3ZrNhVzKXuH1TmbObfvGZ/O2i\nv8r22Lzh3o8eJ/fb5UXgE6v6aJVYHF5k3bpVauv+Q8apHkf/33nX7fKh1nn9\n+rU2t4/VeeNnfFJ5ObJg/lydGy+WBQvmmk/1o48+NBsu++ghK6thww9sTuRd\nS5dkmg29S+12rp46h917791m5/To2c3sinS1oxcvXqTPfSh33XWn6oVg3yZs\nzFtvvVlWrkzwAF9zhw5t1Fb7UO2nj0okfuc+l7Pl1mcwt+Ln5vpK56jHH38s\nnk8VbjNtee21uuardxf9f8MN18Xq0Nbsvvy8XLPfsZuC3PpcafNNK8NbrLEg\ntwxctWXLZrUPptpcbXm++k5wxC233KRz4QjFRJmGCf72t4tk7dqVOtaPywfv\nN7B5G1sZ+8Dlx8DvmjWqx2NV6WpP0udz1Jbu2eN7qflUDdUhwX4t2JnYMWAY\n9DP/p6ltz8W6X/oRe4V4xK3aBjAUdcEPf5GWSR3Bx8gGMsC1ZfMG+cc/LjP7\ntFDfg30V2IxisoxtR7/ht9yhdipzOzb1gQP7DAe/Xf8tuxVfbRgnfPZZE6lV\n60WTKTDPPSon+CO5sJGxL8PjD5kgdwebiQu5IWYGxnNXw4bv23fw6hPFB/co\nvluYMc9ibw5D0hfYVOQGOhlepuOR8YkNj40SHSvY/djljMfbK1aUyZMn2RpY\nbCxs/RHDhxoPwAHka5TGI+x08q2CdhTJCsVCQbvzpV69Ny1fEByyRMfSww8/\nKG+//ZbV2flT8Vkvs3VOhVZP5HCmYhNsO97v8syxdzt2bK9zb7QvisyOTSUb\n+LmXLc20+MHKWD/xHrBqYFMHOAEbHnlAhrHNN21ab2PF1jDohe8fnADPwWgV\nb7/NeLZ162bzf1PPqlUfTdl32LBBDCnXZP+DD96L34OtedWVV6j8rtLxWNVs\nSHwZ69ev0b9pFqe9X7HhRouViuHsTp3aG64An6OLHE548skETlgRk01s5F2K\n24vzLZA5cBZxkpwTR4wXjRt/JM8+/ZSOoYXaX4vkmadrqk1b2/QqY4Y4wJbN\nm61/nC5IKcuHU8vyo/odz6BzrrnmKsMj+/fvSciylpOZOb/EvkQf3Kw6B13u\ndM7FF19k8TEwVs2a1eLvYy4K9F+B+STAQceOE0P43uLWjCFwFHGXNatXmFwQ\n+wX3Mc8hV7t3bZUbFX/379fHykTXEUMgnnP//fcZJlq8aJHyA3/D5YbFXU4T\nsTbiKPgqwE3MI6NHjzB/xzetvz7vNoKnUyePE4pfHidcuBTghG5nDie8/578\nr//1T9Kly7dqs6XLhAnjzZ97e8XbTG+iC9Ht2BOGE77vGs/ddv40y/09tN9s\nS9Y6NHjvXZMz50cynND0M7XvLrJ8mNQ4Icjx5DO+W5eryjzzwIOVpKPav7yP\nuW/Qj/1igpynYzVLJk0aZ/Yq9hp2I3YB1xeKTbBn3VqOpk0/t7gBtgz1IB5D\nXtK+vbvt3o8++sBsJXyy+NWmTZlovkjyZIhpY4dThzhOiPHArbNg7vzuu28t\nZ6gk4vefYjF/i+3r88xp+HCJie/Zvcv65MsWTeP5s+E2M08T9yCWQp/TFuyl\nv+t8i7+X+fbGG6+XhQvnmU+f+Rabg3u+VTsE/zw+S9abPPhgZXniicfM9jty\naH88rwosSH3AE7R/lNaLXCZb26rv3LJlo1x11RVm+2UfAdvk2XPwEHsoyPXP\ns7ri36e9xDLefae+uPxl+o12YP/j/2dOx2fHBT+uvvpqs7F493XXVpAxY0Zq\nfUYb/sSuZY0xdtL1119nbebasX2LfQZDkO9RrdqT1mbqjAxMmDjWfJHM7fQz\nWHHYsMGKM0bK42rLOds0Gk9wOCHgT5HljhCLAGOAyxxetLEVWzNDWQ53kN+G\nLYbNG+SmFVpfY69mKx+IcdWq9UJMOyev5+iifK9evVp8LsvLOSb33nOXrXXF\np1tsrDxQSdvcQe2jlRYzekgxBrJMPIM2k8sGD5ydXpxH4xI80u/GjvlZMWwF\n2aoyT6yHeCG2FPY5thrrGcaP/9n8CrzD+VGpy+49u6xF7Htw8003ybRpk8wO\nPqLPJ685PSFLF2da3ka0L5y9V1w2VtuYRLaDddjBGpGE793ltgd5TcSXhmtf\nDxs6yMYH+ICLv/gEGGfkc8Gzhx96wOJk6D/szFR9h40Jj2wtjj5LGeQFBjn4\nOSbTl156ickiOUvY1o888pDlKyJX5BtR91xba3w8yO0vCtbMgGEoL/toyTgh\nkM38Evgmll+E3qButP8B/f+jhh9YjJIxja4krsV+T++//67KSWV5UnUBeYRO\nF6SU5bWpZRl+UF/iz9Qd35HbM8/JLvvZldSXP/TsHuicCSGdo+OcuBl4+O67\n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\nO7Q9+INZf4AsYtt//NGHAc96fm97RCN/jEPiEdZ3yidyIImVxdugf+Ede7yB\n/ciZYd8qYlaMOXjTps3XljfHXlKMWfoPHuMjqfNqbcOzrCkAr7DOmbXBsxST\ns38Oeog1ANuV57wffrDHEzL19FM1kviGzCGzyCBn3DA2iYvt3RvsD4F+pL8a\nN2pouo41GOTsO13A2munC0qUZcUoUX5gzzMGiY1VeeQh09lOx7s9i22cp+hL\n6s46Cvqa9U3gKuqIDLN3LTmrxM1Yg4zM4b9Hn5F7+LHKOOsOiCGBUehnMBD7\nSxMT4hn8V6wDIX6IHNMmt/cpOU7IZm7O0TjmQ2eBJ+rq/R9oPVgvBk+NJ7Hz\nJIjDgQ3xFxDXQ4cT78CXwv7W7N/Amh3a6fOPyj95nFD88jjh10K/7Jy11atW\nyOy0NLV55sustJkyY8Z086EQw2VtHnMZZ5WybiF9zhyLkePTZh4hr3lA/75m\n/wV+3nTz8do6vXlzJT19js4nmeajerl2LYs/pDo/i3ew5x1rCNknkM/MzbYX\nz4wpttbN5V9zLinlztHf3F5D5BzMmjXD9hhhT3j2yZs7b7bVcd486j3b8gmI\nZwe+8dlWR/AFZ7+NHz9O7caJloNDbOIdi0sXmU+IdpGXQjlOl2BjUtfs2PqC\nX9J/FsPW+RGbonPnb21tCHUZM3q05eMyP27csD6pzW5v8j27dyrWmaptn2Zr\nw8P7QDJHknfs7H7sKXKb3Jxtts+STFujl5Y2w/KnwjEpt76a2Drtn67voZ9Z\nq8J+PfQrZRqvtd/Zr4U8AHK4mKfZe2ea2rLkM8T3nYnlceMLJCax0nIPCsw+\nwN6hnIUL55utQfl8zsiYF1ujmy8rdG6mLlNUVtgLk77H3uQ+zjzGLiW3g8/0\nF/Mz+7tzJshstRPYRysjY775KnkOPhA/mzhxvNmp4A72gSGfZemSoNzMhQsC\nOZobyJHtOSqB3h43drTJfzSWB+/wxdNn6TFZc37zzZs2WAwgTeuDzc539KmT\nS+Q7aWzo79g/Dz5Q2fZmRMZXr14R4mlOyrESjIssLXe2xRjS56QZpqfP2BcH\nHrB/MWUQo0vFI353+7bwl31gwns90ifsnTtlymQbQytXLEviBc/hN6AO2NAr\nVy6zWCH7Eqfi2coVpfdFKtkI9sE/br5n9v0iF516IAfunHi37yoyMnnyRNmk\n9h5tQe7xNcAP+opznAOezYnzDB8GPIbfxfsuP9JX8GOv8XKmYo4gnyiIvRD7\nmTVzupWbmZkRt8F5Bv1qvn0dV9iXtNH0VqxOyBz/0yfo1yUxftBPtJ97onxz\nsSJ4R2wtqEuhrSFjLDOOGP9uTU1JuuDUZLnAchyd7g/LD8TYL8s4D+sccijh\nHWejsf/UxIkTtD0TFV8MtLggOXL79+1VGZykMjDL5JFYCXEm6k4dkQvsenws\nNo/pWLE83ZhupM+JP0Tx+aaN600f8zz7Nzue5OcGZ9Cwfyq+AvxkxEXghYvt\n01awUIvmTeP7/55/W8FTaeRxQvHL4wRPUJC3mfpKrEEO3VMUOx8odvYpe7Ek\ncoMlfoZO+CKnBJ/W4die8NE6uHkEX9LixQtDZ09ZiRJeCxcuuzA2xwXvdFe+\nODsu+n1h6DM5SOQIs59gbu4Jy0HdvXuX7amHT9adTRrlB9iA/TGCvPVfHktw\n63nx+5G3kZ+XYziMnB5iLKwbTaqDWysb4UU0pmQYL1Q/l3+R/Dl8FW9L9J5g\nn8QET5y9EP+cnytv1XvDYh/kJ8RqnDRHJnga7deELgzOakp8TpwRFapL/Iyl\n8HMnij0XnN2W6L8QJyNlFsbWZkh8LYurZ7gM7sHvTJ7X22/Xky2b1qeU6aCM\neE1Sjrei2FgqTJKzgkgfBDlm7HV7NLbfUZhvQV+nHivJvJb4evtwm4P7SuZR\neIyGPyfaGZbBomL2UKK9blwGa6Wj95WtL1LLRnKdk39LLcsu9z2qIwpT8szK\nyEvVdyn0qat37D3F+VQUa8eJFO2W0LlnIV5Iokx3NmCCH5F7Y+8v1tex896K\nkuon8dhh8hXBP2WW5SifU8jLSfqyeF0Kzcav8sjDtmYI3ZiXl2v4h72BLb4d\nvuJ1LYi8ryC5r0M41eXWFZfHsH1W/GzvWEGS6J+i+F5fwT7II+xMmVT6wVP5\nI48Til8eJ3hKUHYJlOqe4HOwV1G++Yvx+QRzcnax+/keX3cq/1uY0KX4Onfu\n3Baa30uKlZy8fiV/n1iLxtpK8lXYP4d8AHJ9ieXjk0v4lpL5AU7A93Qmz2GG\nyBkhZs6ePsTBif+zHsCdPVdy+35pv5+KbJTMU+q4fesmy5kiryEzY14psfay\n9mtJn0/W96n7/PTuTfzv5JJ9Ucg3oo+KQritbHJa9nsDP/QOadSooa05YB1P\nQV5JOrM0npZ1/JxOvU/n/rKWc6r9VtKzJ6tnWZ49E5RdQvllG2OnK7clt/dU\n2vzLZPnk/E49zt0ZeZxZR54ZupF8OfQ0ZyKwbjr13HP+ZJv6ECs53XWDns4P\neZzgcYKnM0/Ox3iyfiyyc2NP7nu3XOJzpFfz8wJ/PPF5YscQOQusbyutrm5P\nozMZR3ZlkmvLuQ8Qe/rhSz5X/PilZDbt3p0W82fdN3vU/+pi7bF1tyuWL7Mz\nnc72voeUzdoH8lTgKTkf550HnjydY3LjjLw1dCM5Slu3bhCX03W+65eKXN6m\nP5P5wiGPEzxO8OQpSu78t9iIELcH32+9LqdLhZE8r/Ndn7NF0dyRs8rTpJya\n09uvwJOnC50KbBwUhejM+mo8efI4ofh1JnGC2zMWHsGvVDhh92729dipOGGt\nxwmePP1q6WzkR5VHOpdt/K3w1JMnT57OD5WOE4bJ3t0JnLB//36PE84mTljj\ncYInT548efLkyZOn8kGl4oSBw2SPxwkeJ3jy5MmTJ0+ePHn6zZHHCR4neCqZ\nfi1ny7s9Em0fujKuH3N78Z3vup9Ov5zJfivPfPDkyZMnT57OJnmc4HGCp9QU\nrJ298NecuvMBjhw5EGvXydvk9iIvj/Zx/CyAEvY7Cvrt1Ne18kzK/f5tD/AL\nb+20J0+ePHny9EvJ44Til8cJv23Kj+3xuGRxhnTo0DY4x74Q+/HU1ksmzkw6\nc+ssT6dM7p88ebydbdOpY3tZtGhByB4uvn+2OyO1X99eMmzo4DKc2VAancre\n9Yk6lPQbdeFc0Q4d2kn6nJm214c7g9m1lbOHOnZsJ4syF8TOXjv5WleeS7cz\nS3cn4QH4NG/ubGnfvk2x3zx58uTJk6dfO3mc4HGCp2QCJ2AfDhs2WP761z/b\nmWOJqzB2jzuTsij+THAGZ1H8N86bPHEi256KviPV2aRno0zOAl23dpU8/XRN\n27//o4YfSv/+fQS7OnG+Z/K50+iErVs2SuUHKslLL74g0TNO7X15JZ95nLxf\nJeeohs9XTbyrIOK7T32WrDs7NNG2Hds3y4MPVrazhYJzVvPsPFJ3TZwwVi6+\n+CL5cWC/pHqUlIfEe3bt3Cr33nOXjBg+JKktvHfAgL5SufL9smXLBn9+qCdP\nnjx5+k2RxwnFr7LihGjbohghjBPgU2k4YafHCeWKsAfXr1st119/rQwZMljS\n0+fIxInj1X7eZHZkzomjsmHDOlm1armdP5abc1Q4C8w+52RL5qIFUrv2i9Kv\nX1/9boXKQqI/eX73ru2SNmu6zJgxVcfYjrNUZqGdydmhfVu57roKMm3aVEmf\nk6ZYY63Z+0ePZMmKFUtlo74jY8E8mTB+nKxevcLKys05IfXqv6Xve0m2bt0s\nkydPknnz0q2OwXnTefY+zsFNS5suO3YE5zBTLvfMn58uM2dO1XLn21nSLvcJ\ne37atMl2JlB+3ok47qB9S5cskvS5cyRT8cyJ40dUx2TZGdT0BWdbp82aJWsV\n8+zbu1M6dmhnfn7aN3r0SKlV60UZr/Xfvn2r1mub3HbbLYaHli9fKhMmjNfn\nVpdo41OvkSOHydVXXmHnJcN7hylcnIF4wsEDe38Va1U8efLkyZOnstLJccKu\nEnECNq/HCSfHCe6MtShO4DyKME5Y5XFCuSHs10MH98mdd94u77/fQNq2bSX1\n3nrD7FFs3f37d0uDBu/Ke++9bfb63j075IMP3rPvso8elC+/bCa/+93v5Lnn\nnpGBA/uaTUy55C9t3LhGy2ttOT3fdf1WPnj/Pdm8ab3s37frzJa5eb3Z1C++\n8JxcfPHfpH69N2WB2u9c+PIzFqRLzRrVtH3vmR38wfvvyjNP1zTbn+vLL5vL\nAw9Wlh49usmnTRrJY489qvb0UB0HBYah3nrzdenb5wf5afBA+aTxRxaDwI7u\n1auH9Pyhu4xR+/2dd+rL+HGjrbxZs6ZJly6d5Oefh0uzpp/JgP597X6zvfOO\nyRDVPXfffafe01HbdcLua9z4Y7PvF2bMM8wyc8ZUs9ufU3t+2rRJlgv0grbv\nT3/6L6lX7w2rO2PnoYcekPeVb106d7Tvn332KTuzN8gfS/Qz7wYvfdmiufTp\n/YNcfvllsnDhPIvNOCwFznqt7qsmDx4nePLkyZOn3xKVFSdwZnAYJ2DrlgUn\nRLFCNG/H4wSPE8ojYSNiY1e87Vb5+uuWOkaWqp07U+6/716zfbOPZpmd/PDD\nD9r9hw8flDffCD7jCx81crhc8veLZcCA/rJmzWqzg5093Fhtamzwo0cOy9at\nW+SJJx6TRo0aqmwcOuNlHjt2WFq2bCG33HKzTJ0yxfz+tA3be+2alXLjDdfL\n66/XlSVLFsuCBfPl+eeflSeffFyOHzsqzZp9IfdXuk9mz54pSxYvkmrVnpA6\n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\nOMGTJ0+ePHk6k1RYkGNzb37ecbNJdBY+73Xy5MlTQOcCJ0SxgscJHieUXyrv\nPq3yWr/yWi/f3nNb37P1nrKUm13O+qWsdSlPdT739QIbZB89KIsXZ+o8eUQO\n7N8jy5cvkZwTR3UePd88OHtk2KgoT+f6E+e9Lp48lUYeJ3iccKES+hX5LVJ9\naz4oJXQv887plmf9r+WU7d6iOJ2L9tKuoH555533YSrSuY7rdPl+ringY6HR\n6TzvfJ8XyvxeFK9vzpkpLzbOot+78ZPqt19CUpSfJF9B3xUk3yP5IQ1ecM7H\nZmoZO/lYPRWdc05l5hyOad41e/YMefbZp+XI4QMyeNAAeeutNwwnXCg65VQJ\nuTx+7Ijs3bMjJgP5Z+U9v1TXefIEeZxQ/PI44cKgo0ezVNce0vnkiGQd2CNZ\n+/eY7kUHF5TRVgnbNMezD8uqlctl965tpdqA6F5+x+c1b94c2bB+zVmbz8L1\ny83JljVrVsr+fbvLzfxJPfbu2Snr1q62+p3v+pSFqOfWrZtk7dpVZW6j6wf+\nP3okS1atWm4+0LPdD4UFJ075HeH6QkePHJBly5boGNn3i+vL88eyD8mJ40eS\nynLfr1q5wmy9M8mX/ft3y9Ili6x8yt2yeaNs27IphBsKVIduk/T02TJ37hzZ\ns3uHrNCxOX9++lkdm8X76tTHall1ztkm3u3ef67HNP335ZfN5YknHtPPx+WV\nV2rLe+++rfzM/VXGE4ghLFOb64ee3eWnwQOkb58ftP+3q01xZvE1BNbavHmD\nymLZdJ0nT6nI4wSPEy5EYk5bujRT2rRpJa1atZSfVG6HKHXq2F5GDB+iPE/4\nolzOa1Ek1sB36FEXl5g2dZJUrVpFxo4dJfhfuD/V3M29E8aPkbb67h8H9pPX\nXntVDh3cl+QTDM+77rPDF6liHqnqGK3f9m2b5InHq8qAAX3NB1da29y7nM1o\nNkxe6e9LWR+laLmu/i5u3u27zvJUzeqyb+/O+DtTlp0X2FLRMqP9yu9RvhfE\nyiwpXlTS79G68PuWLRvktbp15LPPPom/J/pc+DNtpB+s7kX5kjZrmjz88IOS\nuXBevM/zQ++PtseI31PIk2tvqnYV2v3H4/edjEdRuS6MvQ//bJUqD6utnWk2\nWWnyF5WTVGX/0PN7GTVymIR9oHy/eFGG8WXmjCnmR4/KoJP98PtLGg/hdrRr\n+408+eRjhgX4/t136kvjxh/F+4Z+6NChrYwZM1LtroHS4L13pH27b2SQtpux\niQ/ByV2q/gnXs7SxUVpflmWsRvuNusR1js65xE3KOh4S4zMnqe6p9E7S56Rx\nknxPjmICx6fomC51bJ5Et4XrHP3NlfXii8/L0KGDdX48KI8++ojMnzfHxlpZ\n54OyUpRXUV1xtjEl7ySG8OqrL0tPHUfz5qZL0y8+k+bNvhAwUir+nIznqfRK\nEEfIV0y9wXDXZ5/GdF1kDnD9HX4+quNLGjPRsXwyXVLanBIus7z4wDwlyOME\njxMuREKXbN2yWZ5//lm5/faKkpY2U+bMmS3f6fx2h36eOmViXFdhGx0+tN/i\nD8QanH5DX/fr2yuIQehcnp6eJn/721/VvuhvcoDP1NlV7r30CzqNGHnnb9vL\nrh1bpX37NhbXCO7Ljq3DK4z3YRD3zbOyqDf2RPD7ifgYRKeDNbKPHrI6Up89\nofpxT9aB3WYDjf55hMpfyW0L4tiFsXILDDMF3wW5Gs6+P5i11+ZlV694G63c\nIvMLU3bYtgzKzbH6Bu/PN5uxQYP35MD+3VZuqrLds9lHsmJlFibPP3lBLB7/\nJXZdcH9BwE8tj7kwK2uP+ZSj9U31u8MkUf4YX3fvNFvk2Wefit8TtnnDn/kL\nHh05Ymgwx6ntgi/wzTdfk+XLF8d5ie8z68DemMwUBe0pyouXRU5c8Fu+1ZV2\n8T/toL3ExMK5NG7uHDxooKxft9rKsvro+/meZ+CVe1e87nrf2jUrDTM7OR8+\n7Cf5/e//UxYtnG/viMqf60fkL+BfYWosBo/1vXfddYc89ljVpLwQ5HHjhjWW\nLzJ/3uygzbE+dvJj2CVmS5KHTv1dGZaLHmq7kwX88a2+bikXXfRXHe8brK/b\ntmltY87Zti+99IJ9zs05Krt2bpXrrqsgXTp3NB9969ZfmRxTn4MqH7nW9qLE\nuER2YjIbjO+EzGSb/Aa8KK0vo7okOlaLinJTyjbPpafPUp1zkfTr10uiuSF8\nhi8H9Rkby1bH7Pi4PqTzhLWtKD+0/tfpnbAeOhHIW2hsZsf62eW84PeYP39O\n0Ea9Z9TIofEx7XRHUP+9cf1SFt3mKNBLwVhx2Nrl7yE3zz//jNULftSt++oZ\nzzlyPA/qVxD0a2ysJ3BsqvoVlehHiePGEijVc7wPLMucRVySKyNjnlxboYKs\nW7sy4WsqUR+6HLv8uA6OzlOu3swlxNPA7s8+81SSDZ4fy5tlvMN31+5EnlJQ\nPvLscmyjvzGWcmLjKfndxXVJXBc7mY3JiJOlhJ44EcevnsoPeZxQ/CoLToju\n4VQaTgAjeJxw5omrefMv5Mknn0j0XWGeXHXVleaDdPbAxAnjzG7CfzNyxDDT\nTfv37ZJGjRravZ9++onpar5/6KEHzLYgTvD555/K9993NX3ubF3umTx5vFxy\nyd/lOcUKffv0kk0b18r33brI6NEjVBZyZcf2LdJNP48ZPdL0HnMf9Zk8abx0\n1/I+/bSx1cf5fNHzY8aM0vnjR32uq91H7kSjRh9Z/fAFLcyYK2tWL5evvmph\n/tPCQtXTKdqG/qe+fAdmmjhxnLRRu+qzz5rIQnsu12x17Jdhwwbbc0N13Lt5\n2a0pHKF28SDVCdipo0YO19+zTe+DCbp3/04yFqSbD2z1qmX2fJcuHW1OY25K\nVTbz0Nz02fLjj/2kT5+eFvMJ2wLI+5LFC6XXD91l1Khhes8PsnnTerO/mXNG\njBgiw/UZ+oPynQzQHwdT/O7slCh/nNw007rXrvWi8T9Dedu2bWtty3LjT6bK\nAp/XrV0la3Xurlmzmtx5x+3yTeuvzVadNXOa5Uns2rnN5O2g2k7Dhv5kbe3a\n5VvFq7OEuRJ7vVOn9vZeeNms6WeKLTvYvI+c7FSbdrDaDGAQ7Nq0WdPNVoEn\n8PJHfeaaq68y3yPxsiKzR3dae4bwrq7fqizMj9u4tGXjhrXycu2X5JZbbpKW\nLVuYbOITvuGG66V/v97Gh7D8YfvzrvHjxlhf9+jRTTH39JRrDGjTuLE/y9v1\n35Irrrhc0mlnyOc7V+X8yy+bGY+QIeyhPr17Gv7+skUz/T1N2nzztY2FVSo3\nyD316NCxndn3rs8sRpA53+qKHBIvvOaaq3Vcbbb8jM6dOxjPqOPAgX3lv/7r\nD1K/3ptadivrl6uuukKee+4Z6dWrh7WR8YC8UR/G3/Jli23eo/4dFF8sXpwh\n32i90mbNEGyVyZMnKC/6W9xkSszfgByk6ktkM6xLUo1VsGUq2XYxiAcfrCQD\n+veRME6A1+DDQT8OMF0EH/fpewpV3mgPcjOgf994m2bMmGI8ZMyPVr0T1kNO\nL+3ZvV369+9tuLFf394qpzNVpnKtjRUr3iY1qlezXBjkhXIZ0w4PbVQ5Ii6F\nHH7XtbNsUNvefCtzStZtYb89dZ4wfqwM13ECvxzmnDd3jixQfILcoa+5h74t\nPV8/uxRK/QyygkwNGzrY9Ddj/edRw2XatEkxvXUwZf3gEXovGmMLx8hKwgfF\ncrbyApz/foN35dEqj8Ttr61bNsqll14io6zdBSXrw82BPkR+27dva/NLX8Wm\n4XnK5dvSNvKZ6PsaNavLyy/XiuMEp1+mqJyDbZEH+vbQ4f2KCw7Lzz8P13HR\n1vQZc8fnnzdRnTDD8C5jHN3Ib9+q/H+u8woy4XicSpfQxsOHDsgQnd+QW+aA\nceNG2zNghrCeaNbs8yRd4Kl8UKk4YcAw7bOT4wR31prHCclnrHmccHYJnUrM\n9sEHHzDbZN26NWo/DVbc8LjOPek274wcOVQafdxQbbsZZnM89lgVs3XZU+MV\n1Z2XXHKxNNU5H3uLObFy5fulXr03dA7ubbbkNddcZXZhUcxnB41XHXf55ZfJ\nM888ZXp2zeoVct999+hzb9pcj6127733mO3CfPfTTwPlz3/6o9nVffv+YPPE\nTTfeYL4e2tBfbQTqMGvWTJuDK1W6T5YtXSR16rxi9WvW9HNZlLlA5syeKVdf\nfaXZDVyp2jZS28a89vbb9eTKKy83W6dnj+8t7+SVV1423yn3EotevHiRzkEj\npNZLL8TzC2gnc+O999xlNnZa2iyppjhsts4TJxQrYAdhIzb94lNr3/Lli6RB\ng3e0zvfaHIEdFS77pVovmL8KX/YnnzSSmVrX6dOnSvXqT1p+V1Fsvw/q/OKL\nL9i8szAzw+79tEkjm1eZI/FTL1myWOeYAVJH7WabE/FF6fO9e/VM/r3Oy9aX\no3SujPIHPMHF3ApO4Hnq8fe/X2xzF/03LvYZjLVmzQqzoYhRtWv3jWzbusnm\n7ksvvVRWrlhqdj3+7XY6dxLP6tqlkzz+eFX7jTyc6667Vmrpe+jjVl9/Kdde\ne43O70Fe21ctm9scvHTpEunQob18/NGHcVsDXnb//jv5/R/+02IXzOXwqEWL\npvYO3kXOXTXlIzabiy+tW7fKxgPy1brVV4oT1hkeqVDhGsPU2A5R+WPO//qr\nL2Xu3HSb3xk/YJxwvjRyjw3RUu3wDetXq035ZJBDHvNBQsz32DsZC+bavW+/\n/Za1lzHKveQ9ga2vVuyD3VmQn2t15LesrH1B3oqWB/YEG9Hvc+akmR3KMzt2\n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\nFwL770fFKjfbWlWHE8CX2ITEs8g9wAa45ZabLS+Yeq9WG5+1p+k69zr5ZF7/\noulnhoXJwcIuILZSqvxVf0Kee/YZmT5tqixYME/7eLCdP+ByhHMUV5ET0TGG\n8xweIm7zL//7/7WYEflnye8JZA6bAtsiHCdBTsBr5JzQv+FcZP4nZyvAetPV\nhllrPn3WKs+YPtn6g7yNF9Quyc/LMR789a9/MWyLLFJeYswWWNyNvDBsZfK7\niDuCock1I3+GZ9nrB/4Ry6hd+0Xby4kctoyMBWrfDJHFixaoLXbYfKbRviQu\nRVtL0iXdu3W1teR/iMr2TdfbPewf5HSO2weUcThy+FC5psLV0lOxFPWYOnWK\nrVulX+Ap43H16lWmb9A1QT0kpR6iPXv37rJ8S/Thjh3bZYLy6y9/+bPtC0d9\nWY+E/B86mGXtc/qCsUEeH/+z3pm9E1hvz5olcOx6xeipZAt/ghQm9m7mL7nq\n1DtH9Tb9g7yjY0/FNnQ5SiVSxKa3fQ4Ue7PHa4/u38kHHzQw3/Uxtd+J3xFD\nYK6ljmWtH/cyFvEjTFcdloqmqawSq3Gxsnj9tX6sL7hN5Xv16uWxsT/IZMuN\nkxL1YQqZCc9TzAv4OCrdf5+88cbrdmbKyhXLDW/ep7KKzAf7ChWavLI2Z3Fm\nho6DtabfGFfY9owHYkLkVBJnnjxxvPkwVixfbDjsGsthHGnz7wrFMMTZWJ/M\nGGEuS9IlipeIbbz7bn2L1WzdusX0/zUVrorF5oK5KqonPJUv8jih+OVxQvkn\nW0u2cJ7tj45vhvkYfcteKKxRW2w+2EKdLxdI/XpvWUwafzI+bXxx6EPyWdBx\nX1mO0jKzlVnr+sUXn6o+3mX5yZbL+tkn8XMzeS/2StWqj9jeHjss/z/ffEGP\nP1HV9j0hPwSsgh3EfMJeRtQRXyR6nBxhPrMeEXsRu5McnVq1XjAfPHMUdgg2\nR0n1w5+PPzjaNuLCvAN/OTnF2OLkCPGZ/OqZM6faer33G7wT7JehNif5pNgD\nwV7deWY7MGe2/LKZ9NayWRONjY3NRU4sOQfE97EvyH+wdymfOFegWNlql9MW\ncmjqK6Z74YVn5f3337U1BezD6NbtMv+98cZrtmaXfVM6dWon1XTOoUzWSrDG\nF9/zDz2+Nz6yr5LLVeH+jz76IOl39shEBorzZ7ftU4Sf9blnnzJfPWONNcE1\n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\nX8XLLa5LkvVWQbxORRE9cS5kwdOp09nECWGs4HFCapywZ88ejxN+EZX9rJ2S\nn09VXkmfS/s+1bOnUm5J353sntL4Upa6lYUvp9vusjxf0u9nor6nUo/ou0t7\nf1nb/Ev7oaR3nw25Lq1vSru/pHIT/xfa3vhbbM0I+yiuWLGkGD49NVk43bFV\n1jaXVc5PVUbK0p6y1RvbizMByR/i/Ihttm9szknqdbJ3naz9py7j2Bjkh5E7\nOKBfb8vzsn1xi85+LKEsdL7q52It52YMnFzGg9jsATtHrUqVh2LnUiY/N2L4\nUNvTmrVK0XMlSpeJ0mSvrHOap/NFHid4nODJkydPZ5PcnvDkpJALdip7YXoq\nmacuJ4u8Ere+4XzXK1U9+UvODPsMYF+WJ99xea/fueQDeYjsL7ZwYYblhrqY\nnzvDmZytzMyFtk7+aCyv7HzX29PZJ48TPE7w5MmTp7NNiVyH354NdraIdeDu\nKiws+Xyy803hnKTSzlHz9Tu/FM1Hiv4ezsnzGOG3Qx4nFL88TvDkyZOns0E+\nv+Ds8PRC4Wt5r2d5r9+54sEvyR319GsjjxM8TvDkyZMnT548efLkKUoeJ3ic\n4MmTpwubbF/0s7wXvadfA50pP7D3J18Y/XT238NeTD4H6ddNHiecfZyQ6vyE\nrKysJJyw3XDCao8TTpGCfEq3/1/xvTbLM+XnJvZbPJXn3L5y57v+v3Y63f4p\nWx8G+82eibLs3LPsQ3Y+xYUk/+WFytN4OpNyESW3t+kvXetcFC/n9HBpcJ5j\nrpUT3VPTya+dFVKQG5wXwZ6cPMPerqFnCmOf7Z7Y3kFFoe9EKdgn9Pz366ny\nh+ts4363L/Pp6gx3Zhzr50++d5mnC5lOjhN2mA3rccLp4QT4UlacsGKVxwmn\nLL+qS9mngjNlOXetvNtJ7rxV+5yTbWc0rVi+1M5UKsvztG/7ti22Z8z5bktZ\n6loe918pM51G/5SNjttZXNu2bPrF8mrnqmndOCN644Y1Fza/SyDOkTtb47p8\njadTk4vgjL2y2ZJuLxvODmTfqVPhZ/Q97J3JeWpZB/adVr/w/hPHDtt5hIcP\nH7B9dPgevzRnRvA/Mn1E38MZh9SbM9uwSfn+8KHgGb4PzoTfr3PrIfvMPRBn\ndWQpbub+M4GNzhXBT84wXLVyxUn2HT11Cs89lLt3z05Zt3Z1nP+nU1eeHTVq\nmCxZkinn4sw8T+eHTgcnkDODretxgscJ51t2Off3q5YtZNiwn6R2rRft/Nmi\nWBzUnTnDvQWxs2xTzRfuDKKoHg3fm8rmdX6x6H3uvS4XJHwGJpSTE5z1xVz2\nSeOP7Yx75oZgnsxJnKcUO9smXCf+NmnSWN6u/5bNh65e7m/4fanI1Rnbyz3n\nvo8/lxf5HOFRvLzQfc6XF/YH8gzzdPhsrtJ4avzJOxEvK8yHopLaFaoDbSqK\n+Q/D/M/LS82DaH+6846dz7Kk/gmXF39GKVy/kuQAOn7siLz7Tn1p3PijeBtK\n4nG4/FSyy9w8dswoadGiafz829LaWBIfkvDrSSh+v/l8c0rlY5QnZeFVVO6c\nLgzLQzG5iXwOj4vod9F6lTaeSmxf3I+dPI6idYjqgCgvCkPyevzY0SS5ONnY\nRh7d+Ir2e/RezhFMmzXN9r7PXDivWN1N5kvof3c2tNNFYNIqVR6287SJfZys\nfeHxEpx9vFi+/vpLad68mZ3J6/p5wvgxslpxTKHWlfOjfxo8UFq2bC6LFs6X\nzMz50rrVVybnaWnTrfz09FnycaOG0qNHN9m0cZ3d06pVS2nTprUMVVuG59u3\nbyvjxo1OeaZfSWOktL4LjxXOfC9N9yfFRhwvQuWEy3efObOBs9fpJ86+pt/C\nchCdD1LJZ0FEtorNPTHZ7fZdZ3mqZnXZF9pP92Q8icoh/yNXH3/c0PrsQsFj\nnk6NPE7wOOFCpCDfKE9ef72uNGv6mZ1f/03rVqqr9sbPQw38kDE/leqv/5+9\n9/6v6rq2xf+J7/vh+969L+XmJrbj9NiJk9zYjp04sWM77k51T+zYie0Yt7gB\nBmMwvXcECASiSQL1jgpNCBCSECqgAkKoCwmB6nxzzH320TmHowaiSBrz8xkf\n6Zyz99qr7bXGWGuutZqU9+Fed17fPTsSY1vumfbuHLZzLmlf2+mcNex7ZivC\naNP7aj3z+V19PlCeszZxVr3znefcT70GfSHmPvB7a2uzvK785Gc/+4kzdtTl\npKld+Qr6NfAWa9t9xrKtfV++RKZ9NsV+d/wUOr3PcMbPevrhlD12DdJq9/Z2\neeMXeIax+9nNo/a2FmlqPOvwPMwxe6/r9OYn4uw820nr7vQUSU9Ltv/dfQf7\ny9O+M2wd3nHB0tFt93R1tHvDDuSXffnd7eUC7lmrFzzcxnecC9cjj1AXzDfB\n5svbPOeCdllf16blAms916Ll85r8/Oc/9d7vnvlr/3c7ZzOj7DCm6cuZBqoH\nXcrP5iiXwXlOTjqcvME4a3NjnbjnDrvPQthO+F2X8OEmvf75556RvXuzvPEK\nnsbAutBt1zQ21nrPbB5KH+/WNfPH0vucOthlfKUvT5w4Iz1umbnl319e9XrO\nOA70Q3F4aZiUlhTp7R0+cW33Kbceb3vp5rv5VHjGC5z6HayeOjrA/33ypM0T\nF/c7N15umSAdGFd3n+fLCZ130gkDZe+8k73eMHzrmulPz2+417de9Ptue9q+\nvLxciYzYZvliz/W8z3i/L144J77+S8iP/LxD8tprr2h/f1i8Z+JaHe2ydLrx\n8itv/b34eKFsVV7g8tod27fIf/zH/zH+7tYj3/rjvnN96et7b3FNVVWlPPPM\nn+WWm29SrXHQzrdGXbn3nl9Y+nH9hfZWWbF8qfzpj7+XEyfKDI/87iG5887/\nkWPHCuyapUsWGZ/eGRWhXPeMXfPwww/JAw/cL9nZWZKVlSFz58yUu+6+U/bv\ny7Y60NfG9Vo9cNt9N90DlV1fG+Xk84XzTh73euvZpfXYnSNBP+HUJecce/e9\n6bjozJ1c9LQRHfpbWelx+cc/XtU4Z3ni0tfGoVx7PO2O6URrxzs97XWbc52i\nSd/rNk/eO3XWt+/ptmuiIrfJhAlvWd/p1msnT2q97fOA9dCjHdB+4Zw/6EfO\nKYxNUCdcatQJNz7QVmZn75bvfvc78thjj8iKFUul5swpG0dat3a17NmTKVOm\nTLKxEnApfB8eHiYr9Tr0ey5/wpjUmtUrrB/cELrW7j17psquXb1quTP/rZxg\ni+cz5sHRFsI/YLO2i5s3b5CQNSttHgNtf1TUDlm8aL4kJcbJfO3vP/nkI8nO\nSrfnpSQnyP/8z8/kqSefkFWrVph/71aN129+c5/Unj0ta9euUs0zSZKS4i2N\n6NtmTJ9mbbs7HgRfUKR1k76v+Iz4z50zy56HtH3yyYeWFrffcfMLaS0pOWZp\nRVo2b9ooS5cukhNlxcbl0Z+eqa6ye9JSkyxMfHbGi9I0X9bYmaVhG9drO3DG\nuS7NuQ7xXbp0oT07elek3bMnO0N++ct75OGHHrTn4CzeLf3kKT4XFxfKwoXz\nZIvGPXT9Wpk48WMri8OHc5THOemKjo7y42Po0xCHObNn2Zj6Is135HdqSqKl\nadasL2Ty5IlSWHDE28+DbyLtm8JCLfx6TUtPd6eVHcLfEr7JnhcfF2N98bZt\nm+See+6WGG0T8RzE6+DBfTYfhH44QnnaZi0LcNmoyB3mSwFuFLQeZDr1AHmx\nePF8O9u0x1MPD+zfY+GsXx8ia0NWaTvraNqkpDinbm5YKyH6PTi2mwfghbEx\nO+Xpp560PHT5wKVprPHTAMiLkpJC2ahlibDBx1B3oiK3e+c8gr1zCAPvDsoJ\nZ7UivtDoSCf4VrdnbDMpMV7zY4PVtaTkeONJ4IH95pU+d+XKZZJzYI+FV36y\nxPIF5Yt6/j19x//6txdl+7ZwO3N4+bIlskvrWbeGe/pUhfF8p95dsHqH/Ea9\nmT1rhmSoVs3SfO+vnta571PYBvucn3/YxqDxO8pi0qRP7Hf4tLhjqala58CJ\n1q9fY+/+4kULPHzX0daIA860RZuDOjlJ6wzqtZv3qGuor/gd+R6n/A314ky1\np15oPoFvIpxg7zZ0Asbdn376Cbnrzp/LzJnTrU6drTll7Ra0w5LFC+y9RRuD\nsRLkJd6JadOm2nWo96hnoaEhsmtnhI3vY6y+tLTIz/8f7cOLLzwnP/nJj+Xz\nzz+TkyeKLc9uv/02ay9Xaxn7tjmoA3hWXGy0lTPG+jH+76v/YCi/b936TStP\nvGeo/z/4/vfkkUce1vxpse/WrwvxcE/H/qVcFJoYhjLF/MKh3AOeTtvxtX9D\nr8GZ3661nmuSr33tvywsl/eibz1y+KCVHXxm1q1bI+Xlpd52K1jZoexLPG3U\nxg3rLN1oq5HPTU2OBgisx1VVJ81Havu2LRYedA3a6y4NC2X0yccfWHsDPYX6\ngDLAXAva/WnTpkhlRZm9N1u3btJ6sdDyDGUNTXtQNVqUvoMos7lzZymPOG3v\nA/pAtBXQcmhH0UdinUeyT9+zZvVKK0O0v0uWLPBqlhNatshvpHfZ0sVSVnbc\n6SP7qYcXveMfPdY3QPsF9jvE2AB1wqVGnXDjA+12enqy/OAH35dHH/2d9eW1\n2v/9619v6Hffk0+VH2IOH20t+v012ifs379Pvpjxubz88kvG9zG/+9eXXrC2\nMSsr09rmn//8f1QDlJofwt1332U8Bhzhn/981fsZY7CTJ3+iHDJc9u3bK++8\n/ZZMVj6BNh088qabvmHt7JqQldqXPyl/+P1Tdh/6gq9//b/lj3982jgf2tNN\nm0Ll17/+lfUVaLP/1//6/yzc3p4u6wuRNoz/uWN54ANPPPGYvKTxxljoli1h\n8pUvf0mmTplsvOXtCf+SH//odinT/t6dE0Bena05La//8x+ycMFc7bczTON8\n+9u3yl7tt9Bffu1rX/Xw6Q7tC5ZZ33qsMN/4xAMP/Ma4c86B/fLKy381Xobr\nwAG+9KX/a33XunWr5bXX/i533fVz4yGYS/jWt75p/T7KBvF+/Z+vBc1TlAV8\nIX74wx/Is8/+RcKU38IX5Hvf+672y3ONy2AcFNeeqa70m/detXK5/N//+5/m\nb7Be+/s//uFp013gMKu0z7733nvkvXfftv4O936sfdzOqChNd7a8+urLqiVm\nGN9G3/+p9u0ZGbut7H6p94Ffoz/84Q+/b7xgtWo7+Fu89NKLlrfIu3tVQyTE\nx1qePvH4Y1ZmF5T/TlRdEFgPfq/1AH1y+YkSiyPqKvgQ/DcmvPWmJCTEGJeF\nvopR/n9Eue6f/vQHfU6W7N6dbv8XHTvqlGunoxM+/ujf8sEH74k75t1fGn19\nFTDWiHkSvBNZGm9wr5/+9CcSqTwnmA+NC4Sfc2CvldPzzz+rfGSdvk/T7H0D\nr4bFxe4y/oTx3KioCNPwBflH5IByp4Hy6lvfulXf2U/kH//4u62zcHUC6uJ/\n/Of/sfIHt0K9Rpn+U+sS+Al4LD6/bp+7jPt87b++Kh9+8L7dk6L5uS5kddB6\nirUnZ2uqnPfpxResjmRkpMott9xsdRN1Yoq+V9/73nfMvxHPQzr++tcXJEW1\nKHQl2os//vH3tkaqx+NPhTh85StfMo4JDjpp0sfK0X4qO3dFWBgbQtdZO4G8\n36R67uGHHzRtC86MevGW1QsnLcHebZzBjOeB992pzweHqz5daWWBZ+XlHZH5\n8+fJv99/1zO+4JQnNPnNN98sx4vybVzi8ccflbt/cZfpoeXLFlkcp0791Fu/\nHD15TO6//zf2XPBy+PdUax37vnL6qVMn2zvX1+Yct3oITozxDZy9Da2A50Bf\nYt7A4RwX5XRVueWrqwMWaHzxDqM9h+aCvvn3v9+VIo1rb6+jpd/QMka9g/7B\nvAPOBPbduwLXYH726d8/afrx+PFjxpWfevJxKSjIszYL+YH259lnn7HyOZib\nIx999IFy9g/tN2tPLym7n1nbDe2Juv/MM3/SNmmtzFN+fs8v7pZZWq8QJsrU\n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\nfecTUMccn39n7ezpU8HjhXkq5Cnma7NUo9j6354ub3324x0aDvQKdAvmWdyw\noAe/+91vW17hd/ddR7mhzmLuCPn0tupn+APmePSgu+4WmvGVl//m9y4hXXfc\n8SOvVoY/IeZs1q0LkfyCo7Jy5XIrY8QRujRY2YHbY1+EJ598zHSDa2mqDdC/\noL3CuJFbj3Ev5hAxfwM/Lbffeetfr3vGa8TaV+iXX//6Pvn8synWFmCc363D\nrtb19hGeNsiv3BTQDFiLB4Ne//jjD1Qb7JVDhxw/Kcz7on4E7Xs03djjA23I\nww//1uPj1WV58ev7fmW+TRjjGqiPcf2O0F6X+axvIcYOBtMJ1af7dEJtbS11\nQhCd4KZxKDoB507g/AnoBOiuPp1QRZ0wDKBfwBoxrDHFmjGHE3Ub70c7Dx95\n8DyMod1xx+3mO7p3b7ZkZ2faWCHWfYFrYI4c35UUH7d1rz/72U9tjjoyaruN\nxaSnpcjhw7nyzrtv2ZwyODTWRaAvW7hwgRw4sF/S0tL03QmXi8oX0A7jOqxz\nRt+wNXyTzd+CO6CtRnzRzjc3NdoaBMQX/Yy7Nx36T4wN3abtu8Nb/fePQF+C\n/hLzGR0X240bYC0B1pgZBzqeL//1ta86/Lqnz+8IftkYj8f62tLSEpubxtgv\n+BS42M03f0NC1qxSHnPExoP/9//+/20/QfR9//mf/6Fx2W37iWA8D/wfGgn9\nxpe//CXPuJfju+1+Rl/x6CO/07i+bv5fKAusdQuWpxjvPd/WYuOt8IFFXwmO\n/O1v3artkjPfg7XcCNvZt6RPJ3ifaXuD9Nr8ueV/RZmF89nUT+VeDdddZ/i9\n739XVq9eqfzigKSkJFtfjj7+ySceszzF+CPWAmDdCLTkiuVLvOWD8N3yQh1B\nXB1/8TLLN8xb4XnIC6wFDFYPkNfdWlfh5+L4mnSYjwvKZuMGzG1kGvcE54IP\n9Hz9rVfT4eimO63f9u5r5FnH/Mc//F7bXmd/qMgd2y5JI/whsP703XfesjX1\nGPcE78OaS/hNgNdXVpRbPDGuiTkMrCXGe4J1PuCaNr8Av6OWRk85TbL6C02N\n9QHIC1yDNa+PaLknJSXa87dv32rzS59N7T+vtm7ZbHwKvu++Y87u2CrqDNZC\ntLU6ewhg/BfcCv7p+/btMd32u989pHym1t7P//qvr9r8oes77Vsv/etppuWt\n+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\nnmKfGfdaWzsdEG5/zyMIgiAIgrjWoE6gThitcPcewT7XOCfSPQ/V2c+lx3tW\nUYfydXePF/de91rcFxW5Tb785S9JdHSU3zXueUhtrU12lrHtEePZK9LZF6PL\ngHNR3fNnnN+6ZHd6iqSnJXuvwZlVr7/+mndPeoSFffgwz9DTfcH7XIR7vrXZ\nzvRx9cL1zmeCIAiCIMYnqBP8jTphdAB8HPw9ImKbbNa6G745TPn+Drl4oc3O\nro+K2iGLF82XpMQ4mT9vtnzyyUd2vrxxdOX6lZUnJGTNSjvTLHR9iHznO9+S\n+PgY8T1TUno65cD+PRr+RjtPKSRktTSrXsD5Azs1/Pnz5sg2fWdmz54pkyZ9\n7MxHKN/fk50hv/zlPfLwQw/K0iULtYxPW3zmzp1lPk54RllZscZ5g2xWLF+2\nWEpLiwTnqR7K3W/p2arh4iysiooyzisQBEEQBHFdQJ1AnTAaAV+e7Ozdcu89\nd9v5yZmZGfLE449JlnL1C6oVJqouuOmmb8iypYtlTchKefrpJ+X3v3/KzhTD\n2bXvvjNBZs6cIZkZGbJ9+xb51rdu9dMJ2B877/BBefPN1+371JRkeeaZP8uM\n6Z+ZPpk48WP5xtf/WxYrl1+jeuPVV1+W3/zmPik+XiAZu1M1vG+anxHOO4ZO\nmDTpE/nZz34iDfU1+g6dlffff1c2hYVKRsZu+dOf/iBTp0y2uYW//PlPsmPH\nNjvL57XX/q46aKtcr/McCIIgCIIY37hSnQDuS50wNJ2A/OpXJ1RVUScMA93d\nyuPzcmX1quXScfG85uEpufvuu2wOARYZsU1+8IPvSUnJMfuM8f/bf3SbzQfs\n2hkhv/rVvbZuGYYx/jvv/B+Jjd3VpxM0/H8rl3/nnbe8dWOHR0+cqjopOzWM\n2277of0PqzlzSn70o9tl1szp9k49+eTjpiGcStWl3H+r/PSnd5if0xZ9x55+\n+gnzO4KlpCRKeHiYVFaUyS233CxffDFDCgry5dChA/r3iPlXXe/8JgiCIAhi\n/IE6wd+oE0YHuoDO87J3b6Zs3x5u4+533XWnLFw4z8oxIT5GP//cs65AJDEh\n1rQAePp7774jzz33rDhrFC6YXvDVCfDzwbzDfff9UpYtXSRYM9Dbc1HKT5bI\nzTd/w3yDUlOTLHzMATh7nvbI8889I/947e/m1wSdsMji0mvPiU+I8T7/7Qn/\n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\njPfHzmIeAZ2Qc2CvzJk9XTaEhsjGDWv171pZunSB7N+/54rCLSsrlUkTP+A5\ncDQajUaj0QY1Vye4HGesrmWmTnDsaukEaIQh6YT8sakT3PdnpHRCUlKcfD5t\nkhwvOiYlxccN27eHy4zpU6T9/Hm7Bnl9rLBACgvzLc9dq6urtTI5W3PG5iEq\nKyu8v0EnTJn8kZUPrquvr/N7bm1tjdb9+iuKO41Go9FotLFhgTrBb05hnOiE\nU6oTwGGpE0ZeJyA/+3RCheqEAuqEIVhKSoIsW7rQ77vcQwflww/ekVbN48bG\nBgnfvFE2blwnYYrwzRu8nD8mJkri4qJl184ICQtbLyuWL5bc3Bz77cSJMpk6\n5RMrp337smXTplCNa4/9hvJcv261+TrRaDQajUajUSeoTqiiTqBOuAydELA2\noU8nXPk65rS0ZJk86UPj+tHRURKvvH/JkvmqCdZbmURF7TAdAd6PdQvLls6X\niB1brBxXr1omX8z4TA6prigtLZadeu0XM6ZKS3OzXTvl04+tnPDbxE/+bWeG\nwIqKCk1D1NaeHYmqRqPRaDQabZTbgDphjO2NSp1AnTBadEK66gSsI4iM2Cah\n69fIm2/83cb+6+rrLN+nfTZJlqpuSE1JktTUJFm0cI58Pm2ylcvakJUSGhri\nDet8+3nl/x/L0aNHpKqqwnRCs5YPyhb3paen2nWbwtabbxONRqPRaDQajDqB\nOoE64cbTCfA7WrRwroVz7lyL/Y95ARjyePKkD2xtc0J8jPkZJSXFS1bmbiuj\nNWtW2DyEayjPmV98JgcO7FOdUGk6AfseOc9JlBXLl2ic6/WaaVJefvKK4k2j\n0Wg0Gm3sGHUCdQJ1wg2oE5IdneDWjYL8o/Lp5I9sHTLKZMni+bJrV6T3+pMn\nyiRHdQCuDwlZKfPnzTR9ASstLbG5iYqKci2DcgvH1QnwOZo5c5ps3hxq+gLx\nRvlhfTT+x1rn4uLjdq3zf9E1ra80Go1Go9Gun1EnUCdQJ9x4OiE5KV4WzJ9l\nZQFDOaxbu1qWLl1oZx/kHz0iCxfOMa2QEB8rS5cskMSEWCvHdetWy/TPP5Vo\n/Q3rGhYvmiebw0K1DDvlxAl3X1RHJyB8+Ci9887rcvjQQfvu2LFCm384f75N\nsrMzZJHeD8vK2q3/z7W6QKPRaDQabewbdQJ1wnB0gqsV3DygTrg6OuHkyVI5\n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\nMBgMBoPBYDAYDAaDwWAwGAwGo1n8H+NMLBA=\n " - ], - {{0, 308.0}, {389.0, 0}}, - {0, 255}, - ColorFunction -> RGBColor, - ImageResolution -> {144.0, 144.0}, - RasterInterpolation -> "High" - ], - BoxForm`ImageTag[ - "Byte", - ColorSpace -> "RGB", - Interleaving -> True - ], - Selectable -> False - ], - DefaultBaseStyle -> "ImageGraphics", - ImageSize -> Automatic, - ImageSizeRaw -> {389.0, 308.0}, - PlotRange -> {{0, 389.0}, {0, 308.0}} - ] - ], - "Input", - CellID -> 14475250 - ], - Cell[ - BoxData[ - GraphicsBox[ - TagBox[ - RasterBox[ - CompressedData[ - "\n1:eJzsvWd4FFma7znP7r3Ps5/27red2XvvzHRv3+nu7Znuad/lu6valuvqsl2O\nogqqivKOgoKCwhXeCO+NEMILIYskQICEEJIQSIAkhJD3Pn0q5fjveU9kJCkh\ngbxS4h/P84NUZuSJc05EZP7Om2+c+M5bnzz7zv/2D//wD1/8H+qfZ9+c/rvP\nP39zxnP/l/rjhY+/eO/dj9+e/JePp7797tuf/+at/1092abWLVb8F/UYXLhw\n4cKFCxcuXLhw4cKFCxcuXLhw4cKFCxcuXLhw4cKFCxcuXLhw4cKFCxcuXLhw\n4cKFCxcuXLhw4cKFCxcuXLhw4cKFCxcuXLhw4cKFCxcuXLhw4cKFCxcuXLhw\n4cKFCxcuXLhw4XKPLTdv3gx4uHAZC8tonydjHS5cRnMZ7eOf5xKXkVh4fIz+\nMtqfD4SMFzo7O8kgGO39R8h4gUv/l3ul30byOBzt7xQycDo6OgghhJBhY7S/\n58jAGerxyngZv/j3DZ2KEEIIIYQEAuPpdwN/zx7tfiVjk/b2dkIIIaTfjPb3\nFxl7dI+jj6WlL3FtOS/a2toGTH/Ov8FshxBCCCGEjAxDPQa727bu5OGB7t93\ni3EP5X5pbW3tMx6PhxBCCCFk2OmPn4wHAr3/+uL4d4p/B5J/+8fi7xTjNtsm\n/w/VfmlpaRk13G43IX3G5XIRQsi4Y7Q/W0lg0Fd3Gi2/63Vb3dy8J//uyb1H\nOg/lbnOG9JZL0n1MNJb9dbQ/68gYw+kkhJDxx2h/tpKAoM9+3kdGaqzg76Nm\nnN30Vn/v7sm/R+o6zLvN1debc5vtalNt6uhoV38r51b7yqnO22HH4egTDjJy\n2O2EEELI6DPa34fjgL56Vp8ZATeUcaM4flub8tL2dp+ndo99m//fbf7C0fDu\n7s4tSP1bVFtkbNGu2tbQ1ISUC1k4Ep+IfZHx2DtIQiPjhoy9o4TefgQhhBBC\nyPAzLB4zCgzWIQ/EHMex0+dw7UYxPOLc3WLf3XNP+jJv+HD7dm/ObeaV6FwS\nl0s99iD3eiE27w/HupCD2Hk4Avtj4nEo9jghhBBCCCEjyp6IGGxRXhq0ax8i\nTybBarVp/zbzUAbi3YN1777eD9Lfu808bqmz5P1IG26UlGHxpmDl25HILSiA\nxdqo2uNGZ0cLIYQMDe1kXDPaxxchZFzhdttQVVuNxHPnsXDjThyOO6m81enL\nAfePe/fHuwfj3v25B7s5b4np3Wa+veT+rA85rMYUR+B02VSp7UCnBx3qc7Sj\n3U0IIUOA+jzpIOMafmcQQoYQcW+gTXtpdl4evlqxAVk513S82Lxe1P96y+F2\n7/7Guv3n1Dbn/JCc9dz8G/hq+QY9ppD2tbW6CCFkiHDr/1s9Do0nUGghw0Gr\nx+nd5+4AOPYIIeOB9ja3dm/JO9m4N8x37WX3mLfQH+/ur3v3x7v95wo05wc0\nvTvyRJLOnZFxxWj3LSFkfOFx2+B0NMJqqYGlqUpRPerYLLVw2OpgF6xkqJA+\nddgb4HZa0Npi+vfoH4OEkLHPzU4PcguuY+bKTahvaPB5t/8cJ93zvYfKvfta\njtD9PpT+ed2SXyLXVIYcjdXgZuuo9yshZLzghMvRhKaGSjTUl6OxvlI9rkJT\n4yiitt9QX4GG2jJVnzJYm6tgbSJDRrOBTY2xHLZ6tKgxF92bEDIUdLS5lW/X\n4sul61BZXaPnmBT37j6390C8+27u3V/n9p8z0OOdM1Dqald1drucCD4SjQMx\nCcwxIYQMDR6Xdu6GujLtunZbk/qsscHjtsPTMnq0qO27nFZVn0Y0ioPXed27\nuZoMOVU6Bu7R7h0AxyQhZEwj3m2xNuHLJetQUVmlHVYw87x7u6flULh3f/O6\n/ecN7M2790fH07sJIUOC22VRTluOpsZq7bvtbS06Py+QEAc34t/lAeCo4xeJ\nexs536N/XBJCxi5ynWWzpfE27zbzTejdhJB7Eycsyrfqa8uVczu1445+nW5H\n6iVjgjpVz+ZGxryHkxaXddT3NyFkbEPvHjnk+9GYn+rOBOr3OyH3EpJLIvkb\nkssR6OekfG7YrA1qjFA26m46nnHYGkZ9XxNCxjb07rv78FB855rlyO+U/o97\nQtdnCOdkke3h5siNRdr1fYo8o35sEzJw3Houi7qaUj2n3MDKcHox/jbzQoal\nvm0unW8i9R1tNxVsFoPRrsdQ10fmj2ljrgkhI4yzF0a7Xv716/v6Y9m7JQfd\n9G6X+j84bGDebfi1pxfvNp4fzD6R79rmplqknD2FpKSTOHniGBIT45GsHifd\nxgmcTT6FpsbaIfmOFv+V7+PKipIRyU1sb3Pp684szfX6vm+jfz4QMgDUuedy\nNg/Iu435Wf0+926qzy31uSxzR/V1/DuQ8b7Us/YO3m2z1qlzswktgrMBdkvN\nsHmu3VYLh3Xoy7fL3CLeNrgd9X12aT0v4BDUR+Y3YY43ISPHTfX52dsykr9D\nAh36c727Y+u4Zj/r4u/d5T14t/jtaHm3//0pu3u3OYeg1NNms6nvSAd29dO7\nzWuSTikHjow4jKjIsNuQ5+V1WW+g+/im+q5NS03CkSMHcPFiGrZv24hDh0KR\nkXEOaeeTu5CRnoKww/twXq1/c5AxanFuua/G6VPxuJCROjLHqNqG09GMq1cu\noqGuinFvMjbp4t32fr0X6ERR4XWcPJmA06cT9RhaPq+v5+eoczxFnxPdx/Lm\nOF8e69+7vL/B9eecvZN3i6/aG0tx7XIaLmamIi8/V31uqucst3zS5ufhtx7X\n3PFxl7+9zzms1ci/nIK8ggLYreZ6g3dumU+7ufYGrmal4tLFVBQUFajnlHs3\n99wG8zmHrQaFOedxNe+aGnvU9FB3ejchgYh8VlqaG3DyxAnEx8cp4jXH4o7h\nyuVs3OwYmTmjO1Q9ruXloLS0SLur6d5SPxkXnD+fqrzH2ufP6+7eLQ7rP59J\nb949FPfQCRTvPn0qAdFRRxATHX4b8ry8PhjvlnsTxcYcxaVL6brdCfHRyM7K\n0N/FNztbuyDPXcxM0+vL+wZzvLaqY+PMmeOqHUfQ0FCjn+tpPoTBHI89z7Hg\nQnl5EbJUexsbquneZOwxQO+WeHZK8mlMm/Y55s6djZkzp2HWrBkoLyvF4UP7\nMX/+XG/cpN0bBzc83cwFE8S5I46Gqc/5q/3KD+vNu23WWljqbuBkVCj27g1G\nmBrzh+7ejrgzZ9GkHNSpfNap/bgWLofhsTJvns37Xqfptup1u8W7nt2INTsd\nDd44srcc9bzbXoVjBzcgMjEdblcjnLZafZ+hQcW5VT3qy68g6tAu7NsfotoQ\nghDVhuSMS7BKHaUeUjdrvapDndfT6/W2Xe46JEfuwKGYM3Co9VwKqbuMRZz2\nWno3IT3SW27HyBz/xvXiDnwzexZefPF5TJw4AW+88bqX1/DCC88hNfWscsTh\nz6GVz+i9obvxxBN/QUmx4d6SCyHL+vXr8PTTT6nPnsY+50bcy95t7ttONWaS\n77ebPSDPy+uD8VP5jo2Pi8Kli4Z3G4/TdNndnVWek/VknYF6t3m8pqSc1mMH\nq6Vef9f3lMc+KO/uZV4zKVdcu0K5d3Z2xpDlzBAyYgzAu+WYr6kux8Q3JmDr\nlk24evUy0tPTMGPGdDV2P44D+0Px8ssvIXRPMDZtXK/OjxL1+daKCxfOY+OG\ntQjetQPNTXW4nJWJBx98AJPemoiMjNQ+j1t7826J9148uQ/rt2xH5pVLKCy4\nggtJkQjesw8V9TVoUD57Kv4IYmKPIjvvGqyNRUhNOoXaplo0lmXjxPEE1Khz\nuLkqB+fSzqs6ViA7NU59thzGqeQk1Ks6N5ZmIy0tCSmnYnHxciYi963BkcQL\ncDcVIflkLApKigeV1+KwVCAxbDO2huzD1dxs1YZsJMftxd4j0WhSrl2al4r4\n2DAci4/FDdWv4v+1pVk4cSwMickJOLQrCPsiT6nvjAYUXj6LhGPhOH4yASWV\nZTomT+8m5BZGbKD3ZSS+z+Vzr76uGt/5zr8iJCQYCQkJvnh3QkI8/vKXP2P2\n7K+98efhrUuHcsC8vFy9zSceV+5dYrj35k0b8MMf/gBr167W6zHeffe2j2S8\nWzxackxM75bHEt/uvq48J68NxrvFe8+dO4OF387ByeOxyEhLwbmzp28jJfkU\nrudfxUDuwyZ9IXncpSU31Piv4DbkeYl5p6edRWrKGTgdFro3GTsMwLvluyo6\n6igmvP4qOvRvV8Yi3x2VleU4cGCv+tz+I/aE7MJnn36MlSuXqc+0FuzctR3r\n16/Bp598jJDdO3FVufEjjzyMyZPeMry7c+DeLbkf9sYShK6fj7iMXOWMzXA7\nG+GyV6P0Ri7q6ooQd2gbDhw5jISYAwgO3oXrRTnYuyUIWSWVyD+7HzNnzUHm\njTKUZkYjRHlu3sUENUbYrr77IrE/eCMSUi+i5upxLFu5FOER4bik6h99cAMi\njichLWE/9hw4hFLV/oF6t8TXm6uzsWHpImQWlqDVLW1ogrO5HEWF+dqv9wdv\nRmRMBGKO7MKewxGoayjGsQNbsPfQAZw6FY0tQfNxIO6sGkdkYs/OTYiJi0Z0\n2E6EhkWhoanGl6tC7yb3OpJTcf16HmJjY32eaxIXF4fExJPqs9E27N/n4t1V\nVWXau+02y23++NX0L/HJJx+NiHdLjF+WkpJiPPnkk5gw4TVs3boJP//5z5R7\nb/TGv/t+PRu9e3x695kzJ7Bg/mwkqHIylPv25t0F13MxUO+W++Xd0bvLipCp\nvEHy1undZEwxIO/uRIjXqY3PYbfvmhtZJM79/vvv6vWSziTitdde0WPXgwf3\n6c/wjz/+CB98MEV/fn388YfqOy4GxnU8fatzj94tuRd1hdixag7O3yhHi8PI\nq7DbG9DmsaGx5ByCgtaiqKYWbc4KhAevRPy5izh9ZDOOnU3DiSPbsHXzahw9\nmYyUmN04kZqOuP2rEX76onq/FcXpR7Fm5wGUZsfj25VrUFRZDY+jWjnvWqwO\nWoltO3ehqLpS53sMNNZts9ShoSIdQYuWo6i+TufEyPNORyPaW+3ITz6MDbv2\noclpgb0mB9vXrEB61mmsXbMOxdU18DgrEbl7JQ7GpyAnaT8WLF6CuOOxiAnb\nhmUr1qm2V/Z5TEDvJuMdiR8cCTuIv//9Rb+8DoPXX38V7733LqyWhkHPN3E3\nxLurq8vx3e9+B1WVZervFmMuIY/hwJ999olmZLzbpc97WaqrKvG9730P//W/\n/hcsWDCv384t3MveLYxUnklcf/JMLg0+z0Q8V+ZMiQg/5L2uq+c8k6GYq6W3\nPJOqylLkXs2CpbmOzk3GFgPwbvm8uJBxHs8++1dcV+NZY2nHsVg19k1Pxb69\nIZg+/Uv9bHpais5XLCm+gc8//xShobvx6acfYcq7b+v3vDflXcQdi+7Xd0qv\neSaWCsSGrMLuowlottXr/ObGyqs4eTwBN66dQdDqDahoUN+j7lpEhaxEVHIW\nitIjsWXbegTv3Y+87FPYsmUjgnduxfWyYkSHrEDU2SvoaLOjMisaq7aFouRS\nHFZsDkZDcyNa7FWIPbAGK1csw+btu1CovqfMnOsBebdcB9lQgND1ixGZlK6v\nr5Q2VBek4WTSWWQnHsTGkIOwqf3karyOnWuW4mzGcaxe422XpxaxoUE63p2d\nuBeLVwbhVNJxnEmMQNihwyitpXcTYhJI8W7Tu+vrqvTnojwnyDL1i89G1LvN\n7Uo+4P3334cnnngcL730oo6B97cO97J3j2S8+9ixyD5fVynrHYuJGLB3C1KW\nxNKOH4/FUeXedeq7xcznHv7rKt2oqijRv5c3NdUZ49QROC8IGTIG4N3m58my\nZYvxyScf6hj22rVBeOvNiUg9l6y9WxxbzvFzKUk6fpR/LQdPPfWEvo5y8eJv\ndYxJ5uBcunQxPvzgPZw8Ge+b0/9u2+/Nu2VOv7Lcs9i5ZQ2ORBxRvh2FsL1b\nsHPfYVTW3kDkng04HBmFpBPhus5Xi8thKbuAlfOmYlfkKTgtxdi5chZWbA1F\nk60ROeeOYuv2HUg+ewKHgtcj8vR5VF2OxdIN21HTWK+8uxKRoasRFncKqXH7\nsDN0LwqUr9sGMY+fw1qLa+lR2LZ5A6JijuJkQgT271qPfVHHUV2cieCt6xB3\nMgEnIkOwY89BVFYXIDx4DfYfjcR5Vc9dGxbjYFwyagvPI3jHJpxR+yMlMRwR\nx46jvpF5JoT4Eyj53dVVZfgf/+O/o7KiVNfplidBfz7K74Ij4d3mPUk2b96I\nH/7gB9i5YzuKi4t0zonkexcW3ugxf6E36N0jMI+g2h/p6Sk4evRQn+YRPBp+\nQH0vn8Zg5xGU7UouSHxctJ7HcGTmEXTpWHteTraOs8s1v8O+TUKGmgHOZyLn\nXHNTvfpc3orly5dof46NidJj3uysC+pcjNHX35eWFCL8yCF9roQdPqA+E7Yg\nPj5Wu7mMkW8U5GH16pWIigoftHdrb1XuXZCdhJjIA4iOPIjomGgUlBbrOT8q\nCzKQEBuOY7FHkHrxkvo8rYOtqQxnE8KRda0AbnsNss5G40xGJmwyj0lDEVIT\nIxF/7CjiTyjvra9BY+lFJCYn61xph6UKl9NP4HJ+IRz1N3BKOXLOjYJBebfM\nl+KwVuJKWgKiIw5qjh1PQHl1BZyqftcyE1X9j+KYcvKcG4V6XpaKa6mIiQrD\nycTj6vMvEVk5V/W6uRkncDwhGsfjIpFx+Yoqu5beTchtjO58JsY9eBvx+98/\nismTJ+l87mnTpmpmzJiGBx64H7t2boPk7Q13XW52digfDMcPfvB9Xz63LBLr\nlmstn3/+OeWiVu3TfWvbvevd/vt3+O+bU4fUc2eQnJR41/vmiHPL7ypD4cni\nAQ57s55bZCTOFfN6y5HI/yJk2BjE/N06P019F8h5YOYEmp8nZkxEzhN5bM4f\nKOeoMbdgm/c97f2Knwh3vG+O8kWZa89urUZzQ6V3Dr1b8+3ZmqvQ3Fil1jHv\nRVOj7zVjzvUh6zu8Odpy/x3J125qqNBzgDuttbp8iUn7YuzqsZ6721Y/JPMI\nGts15jm0e+sq+SZG3niNnr/E2lgJi/m42Zjv29Yk61brdulcEkutftzcUK4+\nk6uN+RD7Uwd6NyEjhnw+nko84fNtk6lTP8OqVctRr8b8I+EZnZ3tiI4+qpx7\nk/48N+aYMj7bbxRexzffzPI6z/j1bqnTUHr3SN0nXujzfeKH8FjSc7v38zt8\nMAx1/QkZeWT86L1PvKf/94nXXu3NRZT57M3nutwbx/vY9HHzOfPzpqf769yJ\nFved71dpuqs48e33l/F6sqWrY9rucF+dLuX08Lr590DvUdMb9p7a4K1P1zxt\nY65xc/v+dTXHBf12f94nnpARw7j3b6dx/d1tObmdg84J6A8d3vzurp/JThg5\nOR39K2sEvLs39x5K73Zq744akHeP5DF0J78fSs8nhAwOiXPX15aqz5bAn4tH\n6icxc6nvUPktuR2HrWHU9zUh9xJmbnV3Rjq2Z/hZz98D/b034C3vXqu8u9Ln\n3Q6HQ3u3+K3kdQSqd0s9rVYrnA57wHs3IWQs4YSlqRoN9ZXevwPTvY3fzlyq\nnhVobqwYdTcdz7S4rKO+vwkhYxt/7y6rUN6tHJbeTQghLp1romPIlnr1OXhr\n/p7RrlebX13Eua1NdYx1DzMOWz1zuwkhg4beTQghveO0NyinLYelqRYupyVg\n3EvqIfMVNTfVoKG2bEiuXSQ9UQW7tQ4ed/+uryWEkJ6gdxNCyJ1x2pvQWF+h\nczksTXI9Xu2oI/WQ+tTXlaK5sRJW8W4yNDQbyLWYEuducdtG/RgkhIwP6N2E\nEHInjLwScS+ZT09ioDKP3ajTJLHYGlWnOl0vicmSoUHmUJR5CN3y+0aLE4Ga\n208IGXvQuwkhpA9487qN+T4den7BgKElAOownlD9aeQTuUHnJoQMJfRuQgjp\nD27Dwcn4ha5NCBkm6N2EEEIIIYQMP4Hu3f7b7O7dcs+cLt59OAoHYsS7231z\nbBFCCCGEEBIIdHa2wGJt0verHPveHY3QiBidmyf3biOEEEIIISRQcDksqK2t\nwpeL16G0/JZ3i9Oa3m3eK34kvbt7jsndvNthlzyTaISER6PFaYXV0kAIIYQQ\nQkjAYLc2orK6AlMXr1XeXaEdVu4V3xfv7o97j4x3R2FfVJwquFXfw83AidZW\np3cOAkIIIYQQQkaIVuctD22Vew270OTN7x7z3n3Y/7pKtw/Jp7l1fbqbEEII\nIYSQ4UU5tsGtvzs6zPzu8eXdrV0ce/SvXyWEEEIIIfcOrV5uPefU85lYxlu8\n+6YZ7/a20xxvBMA+IIQQQgghfWe05yDpK93rrZ3b55/G6x3tEu8eb97dbrTP\nY+4vA8a+CSGEEELGBuKy4qnyWN+XN4CROkpdb/m3kXPR3UH1/N3jMM9E2tbq\n9e423ziE3k0IIYQQEuiIt8m1iA0NNaiuKkNVZWAjdZS6Sp27uHeb2+vdxlwf\nxn1zxqd3t93m3aN/HBFCCCGEkDugPNWjHLW8vBgVivq6SjTU1wQ0Ukepa3lZ\nMTwtzm75zYaDGt7dAovFuG/OuPPubvtw1I8jQgghhBByRyRWWltbieKiArhd\nVu2qnR2egEbqKHWVOtfWVHaN9/o9HkvXVUodBuzdhBBCCCEksGkzcrkLb1yD\ny2n15XePBaSuUmepu8759sZ820fBu3ty74F4t9yz3vRul8ul761psViUd9vo\n3YQQQgghYxhxVKfDgqLC/DHl3CZS58Ib+cpLLd2usTRfN73bm2eiHFa8W+LI\n3b1b8jzo3YGOMwDqQAghhBDSf8RVHfZmFBddH7PeXVR4HXZbM707QJD90NnR\n4ru+1aBFegQ3OwZ+/WdHR6u3ZzvQPpxtaPMYdW0f2WtVpV3o9Iz6/iOEEELI\n8DA473bCP/7Y27zawwm9O/AwcvBbNOb+aHU3o6QgHw1Wazcf7+tx6kFHqxUF\nuZdwOTcfrhbn0Lm317M7vfNPepyNKFJ1bbY7BlTXAR3H6jyqrSxGdUPjHc+h\nm+LmaB31fUwIIYSQ/jNQ725v9/gZpsQfnejobPM64cjlAtC7A4tOdQxU5SZh\n7dq1yK1s1vFtOVbclmtY8PkniM8qVR3Tqp73eI+hNrWPPLjZ6fHzaLf6Wz3v\ny9dX63XYEL9vPebNn4O12w+g0enW7zXfo8vwen5nR6ve7zp+jFvl3Dpu/Z5v\na0FHSxPyc3LgUP0u9yRyVGXi688/RkpBva/+8Pquz8PV+6QNHR3e1zr84tTq\nOLyJdvV8u65Hlz7S72tRZbb44tvtqr1ot+Lw1sUIibugjg+P7oPOm+16HXP8\n0qnWbagoQHFFtS5/oOMO/3n6b9t/sl84JyUhhBAyLAzIu5U7oMOFvIvJiItP\nwNXCCu0HNfmpSEhOhUf5661Yp0GH+tu//PZ2923f//K4vzF3encgofyx04HQ\nJe/jvvsfwvL9Zww/VN7cYr2BNfPmICm3Cp1tDrjcLqW4TtRWV6o2NsFmtyoP\ndnuPDdV2WyMcLof3N5QWNBSl4K1nHsfCzXtwLiMLDrcDTvUej8e4T5LHaYXT\nYdPvdzks+rhorC5FVV29z887OtS4sNOF6opCVNbW62NWHLg2/wy+/PAznM0r\nU/Vyw1l7BcvmzkFGcYPXjY331DQ26b+lnq1um25Du9uCirIi2F1ub46IW/u2\nraEMpRXlaOts98tX8b7P5dRtryovQrPDqddHuwWrvpqA+bsSjb/VdtzWGhSX\nlcDT1mY4v7sBYRvmYeHGA2iwGG0fyH6Sa5HlOuSbnV3j5vJ3i9uuXx/9Y4kQ\nQggZf/Tbu9skJuZGRsxOvP/u2/j04yl4a8onOHejAZcOz8erUxfC442Bm34o\nv+HjpjzbqWOd8pwRD+w0YpRtRu6veItepx+/o9O7A4cO5Zj20nOY8uZErA2a\nj9enzECV06Pjwq2OSoSuX45LZVZYb5zDrtBQHNm7FSuDduJ6wQVsWb8JJU12\nHS931uWqvzegoNai3+txVmLvyq/w+0f/gNnL1iHtSjHclnzs3LALZVabjpVn\nnzyE3WHHVb85cGzfOuw/fAjbN6zE/AXzEXX2Eto7lP87qhG1dyOWLV+KZUuX\nYF/UaVhtVdinyv7tAw/ji7nLkJiehxZnCXasXItrdTal3DWIlPcsW4LlK5fj\nWHKWRKDReD0FO4J3ImzfLgQtm4+la7bienWTqr8b+Rlx2LRuJYJWLsG2fRFo\nVG4tsXXx/ob8swjevx/xkQexbtVCLFoehIuF1epgsWP9N+9gyZ7T+lwoyT6J\nNavUNlcsxobte1FpsaE4MxbvPv9HPPH3t7BxxyFUq2Pjtnh6H84XuefU4UMH\nYLM2et3bqf93OqwIDQ1GZUXJmLzWgxBCCAl0+uvdEntEayM+f+7neOGLtci5\nkoHt65YhPrMMmftn4ZFnXsa2zeuweNkaXCmpUd/nLcpDjiNoybdYtSkYRTXN\n6HBV41h4OBKiQrF650G42lpxPT0Oq5YtQNCmXbhR2+zLGbgb9O7AQeqVtHch\nPpq/HR53OT5/8wXsP5uvx2Aeyw1MnfA0YvOaUXt+D558+ml8u2odDkecQF31\nVXz86jPYczpP99vFiCC8/PZXqLS70an2b6u7DnEhy/DUn5/A0i3BuHitFLby\nM3j1qYm4XG/R47TINVMxcVqQ2qdWzJn8e0yZqY7JhDhsXvgxXpr8NWpVf16I\n2og3Jr+HA1GxOLwrCNO+XoyCmkocD11ulL05GJfySuBqvowpz76GtIomXIre\nrN9zMCoGB7cvw5vvfIhLFTZUp+7BE08/g3XBBxAfcwDvvfYcVuw7pY63enz7\n3rOYvmInTh07iG+//RZXVDkS8+682Ymys7vx5DPPYOXm3UiIj8TSaZPx/txN\ncLbasWHOO1i6Nxlt9mLM+3givl65CQlx4Zj1ySQs2hWB8vzz+PqdF/HKlKk4\nEpuIBqfD9xtBX5HzRXx78+b12LZ1kz5nJLemVb0WuicY69YFwdJcT+8mhBBC\nhoH+e7f6nm6zYvPsiXhu4sfYHrIPiclpsLZ04OLBOfjlw39C0Nq1+Hzic5ik\nfKKl1YGwDQswa/4CfDLpJcxYfxAt1kK88fuH8MmMWVgbGony3DP4YPLrmLNw\nEWZ98Tben7UJVo+nT9e00bsDA8kl6XSVY8abT+H9b9Yg6Uw8vpjwZ7wxcyPc\nnTfVISPe/VfE5jajLi0Ujz/9CjLLGr2/b3hwdM0X+GhRiNpfNqz49HUEhSXr\nfAu9Dzvb4ao8h9effQXpVVYdD7aWnMIbz72Dqw2Gd0evn47JM9dq7541+S9Y\ndvCc3gf2Gwl46ek3kVdXjZWfvYg52+ONnaOO4fzcK2hyeuCukrJfRXqlVdfH\n2XAJU56fgLTicqzq8p46fDPlWawIS0fNhX148rlJyG9w6/qELf8cnyzcpY4h\nKzbMmoxPZy/G/gN7cSjsKMobbehs83p3Soi37U26yMZrcXjuqZdxubwGW+ZN\nwfKD51GVuR9PvTgZBY0uvc6Nk1vw1MsfoV6VEbbiM3yxfK/8OoSOAe6rmzfb\nUFdXhSVqLBwdFa76zIGDB/ciaNUK9Xz1bfknhBBCCBkaBpLfLetZqwuwZ+NS\nzJo5FZMmTERIQhbSD8zBH175EJYOoPL0evz4iUmot1kRtXUpFgWtxTfvPoUH\nX5+O5sZivHLfT7A1MVd7xenNX+JHP/8tVm/dgZVz38PDj01AXoO9T/O4jVfv\nlrrJvX38vXtnAHu3zLNRnLoXzzz5F0ydORsL5n2Drz6dhD8//TIyKmy46SjG\nl288o727Nm0Pnn39M1Q7jGsMOzs7UJMdhYmTPsG5s1GYPOl95NbafXMOSn6G\nrTQZr/3tFZwrbdTxc0vxKbz6zJvItRhZTQmbvsJb041496wpT2Nz3BXtw/by\ns3jrxSm4VlOB+e89rZ3Zu3fQ5rajpa1VlX0GL6t6Zta16Fdcyrvff+ENpBeW\n4NsPnsFK33vcyt1fwvzdZ1Ct3Pg51YYqu3F9Z+yGbzBtyW541Djz0rl47Nuz\nA1s2rMDUqdNw4lKRMceL17v/+uI7KHV2GCpfn45XnvgbUgsrsFV594pDaWqd\nHXji1Y/Q4J02sfHiQTzx7GSUO23Yv/gjTF2x33ihc+AxaRnTlJUVYXXQCqxb\nG4RFi+ajvKxYjztG+1gihBBCxisDyTNptVdi/5b1yKm2Ap56rH7vcTw2aQHO\nhM7H396bBbGX5gu78bNnpqAkPx1T3ngDqzZvx7x3HsfPX/wSTQ2FmPDbh3Ci\nuFnrw/E1n+I/H3wSuw4cUr6yEXO/WY4bjVYdI7xbffru3WsD2rtl22PWuyWW\n21KPoC9ewaeLt+Fqbg6uXM5GztUMzJz0DGZsioLHUYKPX/oTIq82oebcLvzp\nuXdRanGiU8ZWMsdHSzWWfTkJE954FbM3hqH95q05usW7rcqzn/vjM0jS1zq2\nw11/GR/8/VmsPxSPK1npWPjJK5ix5hDaPU2YOuExBEVc1PvAWpyIlx5X47im\nJhzbOguvf/A1Ui9cRNqpcAQFbURxoxMtdRfx1l+fwKaw48i6VgRrXSbefPwF\npJbVI2H7N5j44Sz9ntSEvZjwykuIu1yN6tRg1YZ3dBskXh++8kt8Mn8nnNZS\nbF65DCfOX8SV1Bj8/fGHsSbigo7Ji3dXpIbiz395AtuOxCE7OxMH1n+NlyZ9\npcanTVjz1QQsCElSbbuE9159CZsOxuKyapvkn0yZuwEtHe2I2TAdr73/NVLS\nLqCirrHfeSb+yNgj/1oO1irvvpZ3RY9neF8iQgghZPgYiHd3umux+P3n8NLk\nT7F67Up8PPF5zN4SiXN7ZuHxydMgJlKXuh3/+dcpKLqaiEfvexird4Zi9ewp\nuO+PLyI16wImPPIAYvOqdXyt5nIsJr72MjaGHEDIpoWYt3Inmt3d77vSM331\n7qle7xaHlXvF99W7++Pe96p363kC63Iw5/OPkaj36a0l/eh6fDFvPeqbK7D6\nm0+RXGhBw5UYfDZjCapt4t1GGeJ8qQcX4f7fPoEz16r1dbi+fdjRCnulcvhP\npyOrsklfM9DZasXpsE2YMWMGliz8Bl/PmY/065VKgRuxbsFHOJCcp48te2U6\nZn8+DzesDjiqr2L1tzMxd8E8zJs1FQvXBqPeocYM6j1Hti7GtK+mIygkAk31\n17Bw6kxk11jhrMnBGu975n79JVbvDoe9/SZqsqJ8bRDvPrNvHYJ2Rqn914xD\nG7/F7AXfYm3QEixYvAKXS+v1+EK8u/xcKJ5+7hWs3bgGK5bMxRdTp+LQKTVG\nuOnE/g3zsDMmQ5XXgtSonZip6rN44RzMmD0H5/LK1DodKL+SiLkzPlflL8KZ\ny8Wq2waXh33zZitcTpsqO7COKUIIIWQ8MpA8E/nNvLogDasXKd+ZNRMrNoWg\n0uJGZXYCQiPi4eloh70sA5v2HoXN3oj4/Vuwes1ahMfEYu+urcjIvYaI4G3I\nr2vW27zZ6UR63F4ErQnCmlXLEXHmAlqlLvTuMeHdEu9usdUgL+8anB63d7zk\n1PMBuq3VyM3Ng81pQemNa2i0O9CinssvKOxy7xvx7pS9izD5y2XKa9u7zLkt\n5cu9bG7kX4PFadzLRueTK/fOu3QeZ88m43pppWSOoN1jR1lRLqobjWPL42xQ\n7yuA3W3M12erK8b5c2eQmp6BeptD57nI3N9uWy2yMs4hM/c63C4LivOv623J\nvDvW2iL9nvOZl2Br8eh5d1zNVd42GMdYY1UJSsqr0N6p9qGjFpfSzyLlXAqK\nq+p9c/gY11UG42+vf4pcdb5JmZfU9to62tDZ5kRVWQEqahv0OONmhwPXL6cZ\nbSur8s7H6Na5NxWFV5Cadh5lg4x3m+e/5HNzzm5CCCFk+BnofXPMuQE9Lbce\nd7S3KifxXpMl9wVRvmHcc6QVbqfdWE/PEejW8TWfW7UZ8wd6lO+4PW79uKOP\n9wmkdwcIsu9993z02z+d7d796TZSktvVMSfzaKvnTOeWY6TVWohvPpiI3Scv\n99y+LveU9L6vw//eTe1e33d3zX32HlvmNYg3b3bceovfPdk7dT2h/b/dO6+l\nuS3jHpHefarjy87b2mCU2+bXZnO5dW8fw7t34amXPkCV01yn0+fO+hpTb526\n3peq3ffbj1E3b10Gkd9NCCGEkJFnMPeJlzihxL7NOYTFCXxltBlzwOnn2417\n+5n3yfH971+erN/Rqu+305/78NG7xxI95w7rPJWGAhzcdwAVVm/O96DKHGiO\n8vDmNsu9LZuLM7HvUBSa1L69ex5Vb/VxDntdCSGEEDL0DMa7AwF69/hB7pnT\nlzlsxjRtHp1TPer1IIQQQsiIQ++mdwcE+jcQd79+6xiTeH/rGfV6EEIIIWTE\nEVd1OizKXfPHpA9InQtv5CsvtdC7CSGEEEJI4NLmgqfFod3V5bSOKfeWukqd\npe7SBt/8J233mne74T/WIIQQQgghgYnEiWtrK1FcVAC3y3BvfX+9AEbqKHWV\nOtfWVHaZB639XvFuj99+5DxwhBBCCCFjAo/HifLyYlQo6mqr0NhQE9DU1VXp\nusq9rT0t3ed28PPuNn/vLu/i3S6Xq4t3CyPh3f5l9+TdUifTu+XemlJnu83f\nu9uN9mnvNtpujjXkf0IIIYQQEphIfkZHm5FfIk5bU12O6qrARuoodRX37Ojt\nHjsew7ubvd5dUjZevLvNiG/TuwkhhBBCxhxGbPjW/NsSQw5kdH1VXc3xgtEG\nb5y7bfx7t26vmWfS5up53EEIIYQQQgKa0R4D9Ges0AX9vEs7aKty0tZWI797\nXHp3q9G+W233+58QQgghhJDhwuuc5j0AtXe33fLuL8eZd/uPN1p13NvtG3sQ\nQgghhBAybIh3thkx4Fa/GPC94N1tXu++5d+EEEIIIYQMH12d28hF6exoGZd5\nJqZvt3q6x70JIYQQQggZXkznbvU44bA3w9pcr9zaAot1vHn3rXkEb3NtDyGE\nEEIIIcOM1z2tlgZUV5WhrLQQFRXFqK2rxrSl68eRd7d5xxfSbjPe76J3E0II\nIYSQkaHVuOd9VWUpSpVzFxVdx/X8HBQXF2HasvHn3Zo2ya8xcmz09aW+/nB7\n4WM+5mM+5uOeHwdKPfiYj/mYj8fe41avd5eVFKLwRj5uFOQhL/cyCtTjsebd\nUrfbvPtQtzwTr2v78trNeV00br84OB/zMR/zMR/f/jhQ6sHHfMzHfDz2Hhve\nbUdxYT6uX8vBtbwruHL5IvKVf2vvLr3l3Xa7XXvtSHu3f7n+7t2Td8vY4JZ3\nW5V3R/ri3V3m7tb3rHR2825CCCGEEEKGB7mXjMS7C/JzkZeTjatXLiHrYjry\n803vLuvVu8V3xXvFf8eGdzs1RtsN7zbj3oQQQgghhAwnEu8V787LuYwr2ReR\nnZWBzAupyLuWg+nLNowr7/bFuAOg3wkhhBBCyL2FXGPodtt1bsnFzHRkZpxH\n2vkU5ORdwfTl4827R//3BUIIIYQQcm8i94gX776knDtd+XZa6lmknD2DqzmX\n6d2EEEIIIYQMFcq7W5R3Z6Sl4lxKknbu5NMncflK9rjzbrk3kCDtNuL96rGH\nEEIIIYSQEUB5t8tlQ+q5ZCSdOYkk5dynTsYjK/vSuPPuNtOz9ZjDeNxKCCGE\nEELICCAOKt59NjkRiSfikaic+3jCMWRlZY47727vMmegeLf63zeXOSGEEEII\nIcNIWwvcyrtPnzqOE3GxSIiPQVxMFC5ezFDevTEgvftO980xvbu5ufnu3q1x\nE0IIIYQQMuy0i3c7rTh5PE75diTiYqMQExWBC5kZ+GrFRhSLdyuH9fduuR/7\nUHl3d/ceSu+2Wf28+6bkd7s02rsl3u+by5sQQgghhJBhps0Nl/Lu4/GxiI46\nqpz7KKIiwpDh593NAejdss27e7elV+/Wj83/CSGEEEIIGWbEu53Ku+OPRSMy\n4ohy7iOICD+EjIy027xbfFa8ti/ePdBck2Hz7u7zCHr8/JsQQgghhJBhRnJN\nJN59LCYKkeGHEXk0DEePiHefH3fe7X8taRf/JoQQQgghZLjx5pnERkfgaNhB\n7dxHDh9A+r3i3YQQQgghhIwA7V7vlrzucK93hx3aj7T01HHn3aPd14QQQggh\n5N7llneHK+8+oKB3E0IIIYQQMtSY3h0dGa7zSyTmTe8mhBBCCCFkaKF3E0II\nIYQQMvzQuwkhhBBCCBl+xpN3yz196N2EEEIIISQQ6Y93y/0qxWslrtyTdw/0\nnpV38u7uzt1X725qaqJ3E0IIIYSQgKFP3q0c1mKx3NG7BxPzpncTQgghhJDx\nDr2bEEIIIYSQ4YfeTQghhBBCyPBD7yaEEHJPoL7vRr0OhIw3eF71C3o3IYSQ\ncY1HfWe12OF2WdX3XTMhZAiR80rOLznPRv1cHwPQuwkhhIxP3NoHXI4m2G11\nsFpqYG2uJoQMJeq8kvNLzjPt36N+3gc29G5CCCHjkRa3FQ5bvdcPqkbfTwgZ\ntxjnl0P5t5x3o33uBzL0bkIIIeONFrcNdmttAPgIIfcSVfq8k/NvtD8DApXx\n4N1SF7mHJr2bEEJIq8ehvvvrAsBBCLk3kfNPzsPR/iwIRPrq3XLPSvFucdvR\n9m5ze929W+ol3i331jS9ewe9mxBC7ilczqZR9w5C7nXkPBztz4JApC/e3eT1\nbokji3eL40peB72bEEJIINHqccJmYX4JIaONnIdyPo72Z0KgQe8mhBAyXpBr\nukbbNwghBrzG8nbo3YQQQsYF+vusGZy7hJBAoEqfj7yvTlfo3YQQQsYFpnc3\n0bsJGXWa6N09Qe8mhBAyLqB3j0ksan9ZAmyfWYa4fWO5/gOG3t0j9G5CCCHj\ngkF4t8NWixZXI9zORtj87mvpcTfr50bdYUaBvrbd5mUg25D7rHS22dHZ7oDT\nXn/Xcts81tvWGygyz7TL0dBlfwsuVX672o7VMrjypdzWlmbcVG1rbbEM237q\nqZ+k/q4h6qcBQ+/uEXo3IYSQccEAvVvcUvyvuDAH1ZVF2jflb3kt52omCvIv\n3+Zm9wJ9bbt4sPRZf8sX721qKEfS6QQkxEehvDRfPVfTa7lNDRW4lHkOleUF\ng94f5vvraku63F9JHpcVX0Nmxlk0NVYMahsuRz3yci4iLvYoMtKSMFzXHcjx\n2+K6NXem9JPUv1S1Y1TvHUXv7hF6NyGEkHHBALxb/Do/Lwtz53yNt958HVPe\nnYxdOzajWTmXvDZzxpdYu2a59hr5uyePkVi5vGa6nPzvv97d/vZ/TvDfjvl3\nd8+Uv3urT/d1zDFET6/3th3522y7xIS7l2fz67+C65dx6uQx9Xp1r/Xp3i4p\nS1izehleeflFfPjBu9oVzbp2L9dpr1O+fQMTJryKxBOxvrFRb/3S02tdnbgB\nsTFH8P777+D6tWw4vdttUQ4bHrYPL77wrPZ7o841vnLNPutedvfnpPxLman6\nmHpz4mtYu3q5zjeRY8V/Pf/3mY/vts/9X5N+yb50HudTTuk2yGtS7xdffBZH\nVDtavL9XSBt6Ol7utk153nmX44ze3T/Gmnf736uS3k0IIcRHP71bHENig599\n+iH++vQTmD9vFr744mP8+te/RET4AXiUa4t/zZz5JTra7NqbxL/NPAcjj8Ci\nnUZek8cS4zR8qN7nKvJYx9TV34Z7KT+y193mN1K229kAS2OVXt90S0tTtX7N\nLE+cTv5ubqzUz8l2u/uSvE/HipsM55J8h9s9zsizkPX0a972mH720ovP4csv\nP9X5N9IGM1fiVrtr1XubcPjwHuXOL/jGKt372FhX2lGptyXbFP8sL72OX/7q\n51iyeAGSzySgrCTfV0dZz79c6Rd5/Wc/+0/ERB3RZVq86/m7uq5jU7V2dbOO\nPe13+f/111/GP/7j/431a1f64sWSm5GoXP/rmdNQU1Wky5Rtm31k7j//XBfz\nb9lP5nOy7RXLF+Phhx9AfFyEGlOk+Padf538jxM5dlrVduTvXtvmV76xj5vU\ndhbpY1jqKc9Jvb/+eppqR6xuj3EsGceLw1bfpZw7bdOt6io0qfdJvfudb0Xv\n7pHBeLf47mh7t7j/nb07gt5NCCH3Av30biO3JBff/8G/YdfOzep7ohPtrTZs\n2bwOMdFHtGe89eYEvP32m1i3dhWmTv0Ea1Yv98ZBa7UzxcdF6rjwtGmfY9vW\nDWhUHi9+uHrVMv07v5SRmnIKCxfMUX/naX/JzjqP7ds2orG+XLuclJOWegbB\nu7Zi08Y1ejsb1q/WORVLlyzA1C8+wb7QXT7nq64sVK64CtO+/AyzlF9JTNjf\nA6XMxvoK7AnZjumqXjNnTNUxYn/fk/pfy81CyO5tOs9jzjczVXmfIuzwPl/8\n/o0Jr6ryp2tnF2eTdb9S5c34aioiIw7pWOq5syfxt2eewve+9118OfVT7ZhO\nP/eWep05Ha/LmT7tM9WuINRWl6CirADTv/wc//zP/xMffjgF+/fu8tbdeE9K\n8oku5R5PiEJVRSEeeeRBLFo4T7n6fNVPn2LfXqNfjJyVSuwO3qbb/NX0LxB+\nZH+PsWnxUyn/scd+p8ZU0/CXP/9Bu6qO7cq2VZvWrVmh1007fwYH94fg4IEQ\n3e70tCR9fKSmntJOK+8pKcrDqpVL9LFk9l3k0UN46KEHcN9vfoVlS7/F1SsZ\neoy3eeNa/fuKrCf1Dg7eijOnEvSxsGP7JjWmCMO387/psW0hu9X+nP65bp95\nPERFHsZDD96H//zPn+g+lnwW2U6Qqk/mhRQ9npDxTdCqpfp4mTN7Bs6rY02O\ny7qakl63aeZdrVi2SI29PsNi1efXci/2L+5N7+6Ru3t36ZjybrmXvc+7LfRu\nQgi5Z+ind4tDiMM+88yTOra7b1+wjkuKl5kxQPHuBx74Db5V3iyOK483blit\nXTQl+SSeePxP+PTTD5S3zsDjf/mz9krx7vvv/zViY8LR0WbTvvbf/tv/qZx2\nL252OLS7T3j9ZZ8jS1x9184typ1+rOOU4k8PK2d7e/JEzJ8/Gx9/9B7uu+/X\n2gHF28XFX3vt79qlvpn9lY7JS46G6d7y/4mEaB3Dl3Vl+8/89Unle5d8sUwp\nR3zvF7/4Gb766gsd6//0kw/wu98+jPhjEdrXDO+epsciu9WY4E9/+r3+e5oa\nF/xJuerJ49G6Ti88/zf86Ec/1F4Xp7zb3IbU41JmCp5W9ZA8knlzv8bTTz2u\nnbmsNF/X6zvf+VdMmjQRmzet1b5ojEPqtBf7lyveLfvqftUPL6p9tWjRXHzy\n8ft4UO2P06fidJx2t3LYF55/FsuXLdRu/uyzf8WxmKO3XYcpziljgC8+/wTl\nyv8fuP832tFbvHHh4F1b8IffP6rrImVKH02ZMlnvF8npkH754vOPfb9J7Nyx\nGY89+lvtt2YeSJQal/zudw/j17/6pX7fhfSzatxwQx0/9+FUYpx+r4xlnnrq\nCe3s4sD3q3rI8bbo2zld2ibHmvT/H/7wqB7jiXc/9tgjOBZ7VBGORx99WP9G\nM1u2o44D6acHH7xfjY0O67bL7zXP/u1pvY/ffectPK/6VXJrpD7333f7Ns+c\nitfnwOxZX+GVV15Ux+sKnQv0tSrH5vd7Ab17YNzVu0u6erfEk/vj3X1xb3o3\nIYSQQTPA/G7JcXjrrQl47rln8JxyNYmVipeIG0184zW8+upL2pHk9/nPP/9I\ne5e8Jp7y6ivqtYZK7UZbt6zXXi5x7rfeekO54Tztks+rcv/4x8fw+WcfaZ8V\nz1m/bpUvt0G8W2LdkkMh1zFKWRNeexl/Va4sjiOx2F//+hcI3bMTRTdy8JMf\n/wgzlH+dTTqhY5XiphIH1XOxeH03LfW09seM9GQcOrgH3//+/1IOGu7LFRDv\nTk46ju9+918RErLdVxcjH/l1nY8g7RSvl9j575WHisN7vPku77/3NiZMeEX3\nicTV//CHx3RM1ox127w5DPL+p5Rr11YX67lIJHb885//FPnXslBSnKcfS3y5\n+3WZbd3KlfqK1/5G+eXKFYv1+hIjlli15KDL/nnssd/iTbW/JL5+8ngsfvfo\nI3jhhb8ZueR++/vG9St46KH7cezYUV0n2Y+Sg+3QeTPN+rePR5VHy/ukDtJ3\nCfGROr4tXi6xZhkXibfKOs8//4zO9fC/tlH6Rdoux4/0udNu5Mk8/PCDyqXj\nfd79zF+fwuqgpaivLcWvfvULXc7tbTP6X2LOboex/+T3kuPxUehot9+2Hbk+\nVRxe8nFknPBTNZ4TR29vteo6/P73v8NqNWaTfdLTNiXnXsYgj6sxpZR7JTsD\nJ0/EIDR0p46F93nuGnp3j9C7CSGEjAsG4N3iTTLPm8QIxWNWBy3TOblfTv3M\nl2sxd+5MHfOVudnWrlmhvVmc6U9//D22bF6rc7/FC8Xn/uM/foSLF1J0PsHE\nN17F6cQ4HUsX9/3jHx7V+QbiNunnk3zXK7a4jBirxJPFa8Q5JcYtiBfqbanX\nxLuT1BjhX//ln/HuO5Pwwfvv4KMPp2ivXzD/G19OheQw5OZkYv682TrOLDHO\nH/7g+4g4erCrd585jp/85D9QVJijn5d27Nm9TcdpxcHEv+fMmanHIP/+7/+f\njqmLd0ud5Jq9Bx+4TztxqNePG9R7zFi3cd1ktR7HLFw4V88TKNuUfhbXPp4Q\nrRzwmuHdySe6OKsei6ixh+S1mOUa3p2v47gSw5Y6SJ3fnvwmglYtUX1/Gf/2\nb9/D62q88tGH7+p2v6bGS9I/Zj6P2dc7tm/EP/3TP6r+naJjwRKP/97/+13l\nl+n69wnxboktG/Hubdrn9b0XHUb+tMx38tCDD2gXv5CRjIfU8ZJ7NbNLXF08\nVuLF4q3yPnlNnPe3v31Y97s8J/v6+ef+pr1b4t0P6baF39a2gnyj/+W4Eu+X\nOuCmW/8mI3/7tqO2Idsx+ynuWITyOmM/ydhJXpN9LL8fTFLjTNkXevzRbZvL\nly/Ux/rR8AN4+eUX9XMy3pTYOvO7Bw+9mxBCyLig3/ndtdqXFi+ah/q6Mt/3\n0LcLvtH5ABKrnjjxNcyaNV37mjinxFonvfWGdjJxSsmLBVo0klv7H//+I+Rc\nuaDztSXG/dlnH2kvEseROOM85fCSPyGeZebKmt79xz8+quOeEmsUpxbEheQ5\n8cC9oTtxIT0Z//b9/6VcdwdSziYpTuv8FXFAc44Qadf06V/o+sXHH9P+9MMf\nfl+7rse8ftDr3fK85AGbbVi5YpGOc8o62ru/mal98ac/+4nO3TbW82DjxtV4\nTLVHtmd6qunu/v0r/ffZZx+qL3eXep9b5wj/+Mf/rmPckg8tORySX26OQXze\n6vVjs9ybHU7DJ5UnSu60eZ2pjIFWr16m6yhjCIndnktJxtnk04iOCtP5IzJu\nkTGA1FUeP/fcX3Wezrw5X+vrJ+fNnYXf/OZXOp6PTofuZxlTmd4tYx7ZB+b+\nkvrIbxdyzan0j8TLnY6uuSxSP8kvkXGbOVeIxOslDi15JkCrXufJJ/6CdWtX\nGN790AO9tk1ykMSjpf9lvnMZ48lvBuLdkick+wqdLj0+lOsPJF9IYtySnyNj\nGxnjiKt3ttv1bztyHab8jtLTNiXvxa7aLjlE51NPIzIyTK3/AR55+EEUFlzt\ndX4cenffoHcTQggZFwzgusrcnIv6t3bJ0ZZ4d2z0EZ0LLdf6yet/f+l5fV2f\n9m53s85NllxX+Vuugfzd7x7RcWTJbZC44Guv/l37uvyG/+ijj+C73/2OzvOW\neKLEYP/7//NPes5C/7khxJ3kmkzJUakT71Zli9sL8licT14TDxVvlHxucfl0\n9T199uwpVfcPlXuH6nimOSfcS6rer77yIjIz07UXy/WJy5Yt9MWixXMlP/1f\n/uWfdb6w5D5ERhzEbx95CMuWLtTblTi9xEalrh+oukvsU+bIEJ8TF120cK5u\nl8y79+Mf/wcOHwpVrnZa19Hw0wadm/Dgg/fh0IE9SFKeL/0s+TPSPxLH/cEP\n/k1fF9rdu2XsccSvXMmXketSf/azn+pxhumJsi/El+Xvj5X/vvP2W9q7086n\n4JvZM3S+vfE7gDHWiI46jJ/+9Mc6d0L2p/RZm8eic+5/ofy0ouy63u4jDz+k\n8ym2qz7X+8VvnCT9IceKuLrO11Z90n2uD6mPeLn0ocM7P6TE3aUPP3jvHSQn\nnUDonh34pRp3SC5+tXJgyTPquW2NOq9HjkW5PlbmA5frAw4dCEGH8uzlyxbp\nWLkcu9mX0lCr6ir5LOFh+1GjxnsyhpC8/LPJJ7Bn93adIy/5SXfaptR10qQ3\n9LGTnZWur9P8dzWmNK4JpXcPBno3IYSQccEA8kzENfbvC9Y5uvJbvXjzO2+/\niayLqdrT5FoyPYe105hHTfKw5fo18TWJK86cMQ1vvPGqdm757T713Ckd+5Q8\nZ3HjP//pDzpeKY4nfvPLX/wcJ45Hd/E0eSwxadluQ12Z3q7E3AV5LM/Ja7KO\neK7krkgOyzvvvKXdXOZbuZh5zjevtvwv7ii5ze9NmaTzf8W73lPuVqHqbN6n\nUfLDJfYscVkZZ0geu4wNSopy9evm/N2Sq5x1KdXYnnIxiWHLdYWSay7rSQxU\n3veq6rvF3px20//FVxfMn63zP8SJpY9PnojVnif5LXKNpPxO0P3aR3mvf7ni\ngtKPxvtjfPPxyb6Q3wqkX7Kz0nT+zWRVR9nWhNdfUX0d4+0XY94YySOS+WGM\nuUvqdExe+j8vJxNPP/2kHotI/F36SuohYypzv/jPdV5fW6ZzRp588i/eeHq3\ne16q40X6TvrQfJ/U46Sqj1wT8M47b+r/58+dpR1Xfg+Rucl7bptFH4/SJtnf\nkoMvx5o4toxPJP9E4t2vq/Zu32rMqSOeLtuSfRcdGab74t13J+n9INedSp17\n3+ZWuNUxvF6NWaSO8ruL5PLL9cQ9tZXe3T/o3YQQQsYFA8zvFu+6pLwmSvmJ\nxBJlXjjxQnnNd89Gq+GR4pqSm2LmatRVlyAhLlLnNMh8IRK7Nt1MYoMZacm+\nv8VzJOYoLtr93ikyv4dcA6evW1Ov5eVe0phzRstr4p3GPN+NOpdF5pCT3Fyp\nr7/Hm3NxSy6HrCP1l/synlVOKbFzM94teSa/+tXPcTk7TfuplCW5HBKnlnLM\ntptzi4sHS5w07thRPaefbFPqJj4rri79kJqSaLiZ6Z/K38TDZe6TqMhDuHr5\ngq9vJW9b5o+RfIeeXK5LuWo8I34q+8n/fpWyL8Tf5W/pl0K1f+R+ODHRYar/\nLt6WNy79WHD9So/z4V1QdZH9K/vpctZ5/Vx5yTXffvHfX9JGyQuXefi6b0Pv\nA3W8SN/leI+VW2OsBjWGOa/7QuLc4u/Szp7uxXmrbdL/zbpusapd0j7J0bmV\nq1+PazmXdB6KlCF1lfpXesdYsl5WZqqe+1HGbGbf9rZN6UM9L4u1Th+v8juI\n/J5jtr2v5xa9u2fo3YQQQsYFA7xPvLiExEsl91Wu//P3KIlT+zuteZ+ZW3/X\n63xbeW/3OTnkfVKuv0fKdXs9/U4v5fqvK/5uOrwgr/nfN1LimEZ97T16n7RJ\ncn2N1xt1PSUnwfQrKUscTPK7JVdYcoNl3a75L13bLtsxt3lbXoX6W/rOvw1d\n2228z/8eP/K/1PFOeQv+5cr68n/36xfNcUL3Ora6b79XkMwV06Mne+siZUt9\n2rz3lnHpPJSubZK+Exd99HcP6zmue6u/Oc9g9+2Y+076xL8t/WmbfxuMMpt1\nDry5Pam///2d2sxtduvvnrZpXPNpxOfleDXqeuf9RO/uO/RuQggh44IBerc/\nlgG81zLAbQ0F/vdI7E/bxLUk1iz5BxI71fcr7ENZsk5v692p73rro770d3/3\nyZ3qOBTbEf9cs2aFzm/vt4sO8rgZaP8P9vgaSH/Su3smELzb370H4t1SF6mT\n3NOnq3c307sJIeReYQi8+15BYqBy38jLWek6f2O06zPWuHI5Q+fk9Cvv4l6D\n3t0jQ+ndwlB6d09l9ce7reLdB+ndhBByT2B6dzO9uy+Y+TV9vk6O+Oieg0N6\ngt7dE3fz7iI/7xafpXcTQggJVNwuC+jdhAQCVfp8HO3PhECD3k0IIWS84Glx\nqO97xm8JGX1q9Pk42p8JgQa9mxBCyHjCYasfZd8ghMh5ONqfBYEIvZsQQsh4\nosVtVZ//o+8dhNyzqPNPzsPR/iwIROjdhBBCxhdOOB285o2Q0ULOPzkPR/+z\nIPCgdxNCCBlvtHqUe9sbGfcmZCSxVOvzTs6/0f4MCFTo3YQQQsYj8t0v85jZ\nrea9TaoMmgghQ4J5TjVX6/NMzjc6952hdxNCCBmfGPMGt7ht2gcctgbYbXXa\nDwghQ4A6n+S8kvNLzjP/8470zFB7d0/3rBwu75Zt+98n3t+7Gxslt4/eTQgh\nxPAAT4tTz2vm8RBChgQ5n1qcXc4zcmfu6t3Fpdph/e9X6XK5Ata7pY4Wi0XX\n2ULvJoQQ4sNt0EYIGRLMc2rUz+2xw929u2TQ3t0X96Z3E0IIIYSQ8Qy9mxBC\nCCGEkOGH3k0IIYQQQsjwQ+8mhBBCCCFk+KF3E0IIIYQQMvzQuwkhhBBCCBl+\n6N2EEEIIIYQMP/RuQgghhBBChp+x7t1Sh+73q6R3E0IIIYSQQGMovVuc2ITe\nTQghhBBCyC365t0NPu8Wr/X3bsnzoHcTQgghhBByZ+jdhBBCCCGEDD/0bkII\nIYQQQoYfejchhBBCCCHDD72bEEIIIYSQ4YfeTQghhBBCyPBD7yaEEEIIIWT4\noXcTQgghhBAy/Iwl7zbLpncTQgghhJCxxkDuVyl+6+/d5j0rR9q7ZduC6d1S\nN3o3IYQQQggJRPrq3U1NTbBarfRuQgghhBBCBgC9mxBCCCGEkOGH3k0IIYQQ\nQsjwQ+8mhBBCCCFk+KF3E0IIIYQQMvzQuwkhhBBCCBl+6N2EEEIIIYQMP/Ru\nQgghhBBChp+x4t3+ZdO7CSGEEELIWCNQvNt07756t2yzu3eb94mXe2ua3r2d\n3k0IIYQQQgKAu3l3YS/eLZ4bKN4tYwDTu+Ve9re8u4neTQghhBBCAoKR8u6+\n5prQuwkhhBBCyHiE3k0IIYQQQsjwQ+8mhBBCCCFk+KF3E0IIIYQQMvzQuwkh\nhBBCCBl+6N1kOI+ttlb3gF8fqjoY2xmb5Q/Xtvv6vqFv363yhqrsoazjrbKG\ndp8Otn5mvYb7WBvN45kQQu4F6N3En5udraqvOhUdPuS5gZZ1p+/wu70+FHR2\neIZ0G929ZKjL78+2O9pbBrxvpN59WU+2MZRtlHLMbXeo//taj+5lSL382zKQ\ncm7vk1bVn23esgfWXqkH0N6lv+TxYI51qQ9utg3LsdbT8TwUfUkIIaRn6N3E\nn7qaCuTnXUHO1UuKLFy9cgk11WW3eURb2+2P/V+325pw8sQx1NdVosMvvtnj\n616HulOsbSDPt3qcyLyQiqrK0i6e1tN7e2tHT+Wbz/uX35sT3a2MO7Wj+3Pd\n/ai4+DqSzpxQx7/9ruX4973D3oTzqUl6H9zJ46TPKitKcDoxXn9G3K3Pe9sP\n5vpyHDTUVyE97az+OycnSz1O6RLL7am/7rQ9eS3rUrrmbv15p/0hbW1uqlf9\neRIJcVForK++a4y5+/NShtXSgNLigi7rNDfV6WNd/vc/Dn1lt925/9wuGy5k\npOJYzFEUFV4zyrjLPuhLnbs/luP5XMppFFzP6fs52UPdGS8nhJDeGS7vHui9\n4gfq3S6X6zbvbqZ39wv5ro1XzrFh3Soc2L8b+/cFY++encjOytCed/Nmm467\nadCh1zdice1dypC/xTG2bd2AstIb3hh6u44lmvHzpsZa3+u6bO86ZvnmsWn+\nbb7X9AG9HW9Z/s/r90icXtVByt2yeS0uXUzvEhc26t/ubU/7bW2SdW5645bm\na2aMNS01WY9DZF2P247Nm9bgyuVMOXK9bWz1q4fZ5vZbMV5db79teutyW7vN\n+qn/zZhzY0MNziaf8rVd9ktIyHblZdau5arXzO11b4esJ2OdFcsXob721pjH\n3AdmH5nvy792Bbt2btaObsRyO3z1MvvE/33+8VK9b3z7r1U/fz3/KtauWQ5P\niwNn1Jgh4ughv/3c7usPs+zu25PXbxTk6bab/Rp/LEoR6Yul+/e76YD6eV+f\nt3f9nUC5o6x78kQcdmzfhFMn49T4oNp7HLXdtl9vHc+tXfxX/j6lxiirVixG\ndZUxFpM2VFeVYbs61uV/Wcf//Wa9/M+fLseqWi8vJxubNq7R56Z4t9mf/ts1\n/di/z29rf7djStbNvHAepSU39G9csk8OHghB2vlk3368dUzdKqunz4Eu52S3\n9bt/xvQ0ruppXEwIIeORu3t3sfq+b7irdwtD6d3d39tf725QdW5uonf3h452\nD0KVZ4fs3q58uFh9HxehuKhA7f9q/Z1cXHRdf0ennD2FrEsZaFHeWVtdrlwg\n3/e9L/E+iZfZrI1IPBmv/UW+U+W9yUkncOXKRf0+p8OiPUfin/L9LR4u3/ep\n586grrZCO4Ecl8WF11Ei700+iavqvZ4Wuy5PYnPiI2dOn0Be7mVv/dV3t8el\n4/RSx+KifGzeqLw7M83nKbLtIvX8jRt5qj4ndd3r66pwXm1XXM7tMsq32RqR\nmZGqPDdReXa5fk62s2TRPBw+tBclxde93r1WtTMOFzLOIT09Rbfb9OTSkgK9\njYuZ53V7O1Udamsq1HsL1HNpqr1nYWmux7W8y3o74mqml0h/SSz7snJ66XuH\nvRnHYiOwYP5s3U9WS73aR0W6fOkLeZ84rX5PdqbuO6mD1MdsR3W14X3i3cuX\nLezi3dJX4oXmWErWLS8r0m0/fSpB94vUQ34HkW0Uqv6T9WS/yeO2Vqeut4yj\npBxjnFCt9meSjq3LerKfpY6rVy/T+0H6U+K4Es+Vvs9Q/Zd1MU3HruU4knb5\nb0/KlGNj184tyt1X4Er2Bb0PLmddQLY6HqVtUlaWKkv6RdpkjgHKSgtRUV6k\ntyH1sTTXdRmrFd64pvskOHibPibkfXJcyPEo/S1tkfJlf0lZUh8pS7Yn3q6P\nGdXXGzcEqTHNQiTER+n15Xl5T+LxY7pNzU21ul+lHy6qtkpZ0mfm+SP1ylev\nmfu0Tu0jae+qlYv1+E76TX6DqCwv9sWozfNNkGPren4OklT7ZRvSPmmL7pfs\nDN2XBddzfW1esWIR9obu0u2RsmR/yeviznLMybErYz2ps7RHtt/9c0DKlrrK\nvvDfXz1918hvLeZj///l/Bjtzz9CCBkJ7urdRcXaYcW7LRYL7HY7vXucIt+d\nB/aHYN/e3dq7S4oLUVdXrX1JvtN3bN+o45MSd9u6eZ32EYk9bt+2QcdDZT1x\nmojwA+rvRu3v4pniP3t279CxwL17d+k8A/lOD9m9TXudlH3o4B4cCduHyIhD\nygN26t/5LcrVtqjtREceQZxyzs2b12gPkO9/iTsfOhiKM6eOaw8WBxKvvZB+\nTtcn7lgkYqLDsVh5sjid6UCyrW3q9YiIw4iKCMPWLet1+eJJmzevVeWc88X9\nI8IP6v/37Q32jQsWzJ+lY6JSpnjoFuXd27dtxInjsdi5c7N24452t+6X/ft2\n6zZHRYbpcuRcO5dyRsf5jyfEInjXVl12Qny0akModgdv1f1YXlaoxz8Sd5XX\nM9JS9O8H8vvD3DkzER0Vpt1ZYtGHDuzR++6ScrjgXVv09kNCtuGkeq94VHz8\nrXbsVWVZmhv0WGjlisU+7xYvO3P6uDr/9/u8O1ztwzS1n8qV30ldWlRb09U4\nQX4HkXrJvhP3ysvNxp6Q7bovpJyoyMPKeRP13+FHDiA25qhuvzw2HDFXO7O8\nLo4XdyzKOwY7ph9Lnyxf+q32TfFvsw9le+KU4qjr163Ubpuo3tOinO90YoJG\n6i19KX0WG3tUl5V/7aqu15GwA7qs4wkxCFH9fFT1ibTJ9F0ZBy1eNBdbt67X\nfSnOvV+VI+tJ3eW8EG+WOmzdvB6H1DEnx4zU3YwzyzEox+41tV/Wr1uhjrUG\n/buBHDvByp1t6v0yxtqmtiH7+7TyU3FvaZv4rJw/Sd7fACS/vFONg+XcWb9+\npfbu06fi9XrShoS4aN84Q45HGeNJ38gxLMdAlDpGtqjzRY5DqV+86pe93n7Z\nuWOzHv9mq/HKooVz9djxQkaK3j9Hww/p34da1TEVFXVEt1vOo93B2/Q2pL3d\nPwfkmNbnpDo//I8P8Xr/XHF5LD5+4UKqL54uOfVX1DhRjnnGvAkh9wL0bmIi\n33visksWz1c+F6JzTOQ7tF29Js4hDiuu5HY79Xeu+IPE8tYELUNOTrb2XvlO\nFz8TfxQ3kticfB9LnDhXOZp4ucStpTz/18WlxLWkPPEI8dimxhosWDBbxy/d\nLsPjQkN2+t4rnn4t7woOKvdcumS+dqX161Zpd5H4bG5OlvZUf++W8pcsnqf9\n3a7cf7Wq+1HlEC61ftjhfdovpC/Oq3ZmZJzTPvatqsO13Mt6LLFh/SqdA+tS\nvuNxO7Bp42rtJS5VPylT8jfE7SX/Q3IDJCYv3jh71jTtRRIbl5iozdqsHX/+\n/K91H0iOuMSyxWUlj0XWE38TjxNPlzpdzs7AqlVL1Fim3OuK57Fpw2rdH9J/\nOtdbx5GzdR3FbSWO798Oyd0Xh+/u3eJIK1cs0q9JzFVi0lIv8eRVK5eofW7T\n3rpNjVNuqOfE0ysrSrUbS16S6d0SOxX3FYc7rdaRvk9OTtTblv0j2xHvltdl\nPVlf2mZVfVZdVa73X7hyZCkvV/Wd5FtLXHyNqk+8cs22No/q7yPK9Xfodss2\njx45qMZrh3V95bi4fj1H70/ZLxIrlrLkmDp0cC8cDpveJ3IsNyofNn9fkONV\n+vnk8WP6WJPfYqStjY116rOkRu9n6VOJhc+f+7V2VtnP0g4z7izjvVPKjaUP\n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\nE+NDPh8pr5OLL/hCa2uv67+LXZalIPhUsd5NU+PN70O/G2U/b7HY5QhVKPNc\n10CiKIq620TupuYyRvz9XItdHmqyX2Z6z/q9qjuVRSmKoqh7Q+Ruai5CXCq0\n2OWgKIqiKIq6U0XupoIJ9+yxZoOu23AP3L+nKIqiKIq6HSJ3U8EE1m5ra1SR\nuymKoiiKom5NS527A9ObibvxLh9y9+0RWLu9vUlF7qYoiqIoiro13Sp3w79M\n7r43RO6mKIqiKIqav0Lh7t7e3lm5G5ovd88WY0LuXhyRuymKoiiKouavULl7\nYGDgJu4G/5K7716RuymKoiiKouYvcjcVTORuiqIoiqKo+YvcTQUTuZuiKIqi\nKGr+IndTwUTupiiKoiiKmr/I3VQwkbspiqIoiqLmL3I3FUx8bw5FURRFUdT8\nRe6mgonviacoiqIoipq/7mTuRt7k7oXR2OigarHLQVEURVEUdafqdnN3IHuT\nu+9MYZxAi10OiqIoiqKoO1Vz4e7OO4S78S5NcjdFURRFURS1FDVX7u7q6grK\n3WBi6FZjTcjdS03Dt/gdRVEURVEUFShyNzWtzLhwOSdMmzuml3NC91nIceof\n5+J0MPbldrf3YpeBoiiKou42kbup6caE2+0ybWb1yfTm0X3mymce94TK/ox1\nUUScU44Xj2PG9VKw3e0a95VPPE79HO71VbRcJu3F7oNbFdrE/IqMXD75t/uc\n+9+kc6vszTVvKIqiKGp6kbupQLndzll4e6ph37mMsfa2RunqbPX5qIeH+uRG\nQ41MjE/GqzQ11svgQI9vH5v7wHGtLTekqDBH98f2ivJSSU1JlOJLedZ+jsm8\n/PO1tweWx94v8O+hwV5pulFnlWuGY2eq43TfBdZlLm0VLJ2Z6oi/+3o75VrV\nVSm7WqIqLb2k7Tx9/je3ATRqzgd5uRmaVrBy31zeUes+iGNu9ZqtTSmKoijq\nbhO5mwqU7edubLxh2nRA/25vb5OWlmb9e2RkWJqaGn1+72Dpwd+alXleUo8f\nVYbG5+LiPNmw/kvpaG82/TyuvB0Xu8fweZPlr/U41B9u+8mLL+XL9m2bdLz2\ndLdL5M6vDHcflcvFBV4f9eT+lj/cYf62ttn+V/UFYz+V2df3t7Uvvq+vuy77\n9kbpbyKQb630HepDvjlNp5WOZ3Kc2dvsstn+eX//s7/P3n9f/32mS8f2+WM/\nlAfb8PflkgLZsnmt7I+PVsXu261tr+3ompjSJ/Y9BDs/+34DeBt901Bf7W2b\nuZXX5RiT0ZF+yc5KN+eEYd/9icn9JtNC+a2ye+tK9qYoiqLuAZG7qaka9fmy\nDxxIkAsX0vXvbdu2yvr1a/XvwsJ8SUw84tvP9pvOJHBVSXG+bNq42nDZgPJY\nfFy0vPfOa5Kfl6mcXVd7Tb7ask7HYnNzg7Ii/NvgcXBlcVGecjeY8ETaMVnx\n+cd6LD4P9HdLQ0O1VFdXSGF+tuYBH2/GxbNSYjgUabpMnq0m3braKikoyJKi\nohw99mrpJc2rs6NZmbqyolTWrlmh/vhA7q6tqZKLF87oMeNjg5Yf3qSJvFC/\nrKzzZh7RotuhlpYGZdC83Ez1y2O/zo4Ww/bX1B+MNLGtw+SNNsGcA2UpyM8y\n47hbv58uHcwNsH9D/XXJzDir24YG+7SdUOctm9eZfWpUdbXV0tbaKDXVlXq/\nQctm+LilqV5aTbrDpm0uFeVKRsY5aWqsUzZHu6xft1Iab9RKd1fbnMqLPhgf\nG9I2+ML0TcbFc3qPAm2KOufmXFShDBgPyOOGt88KvH1GvzdFURR1t4vcTU3V\nqM/ffexYokREbDV93i+vv/6qPP/8M9q++/bFyKlTJ/z83bPzElgPvAUfKlgN\nLLdzx1dyLOmQ+rjBZpkZ5yXp6EFpaqpTH21aapIcPrRfko8dNuNrRLk20hwD\nhtsfHyNfrlhm9knUz/DL7ti22ewfL2dPpyovHjywT86fP2m2xSkbwt967swJ\nid6zQ86dM/9GR5p9YuXsmTRJ2L9XDiTsVW68fq1cNm1aqzw6GecyLo2NtbJ/\nf4xcSD9t5iP7dE4wmeZOOX/2hKaXYMqG3xM4Hv7mk2nJOsdYv+5LKS+7bOYs\nObqfHUN9PPmwFBbkmN/TgBw5vF9On0rROmNugbynSwfcD45GOihPyvEjcvpk\nivltjBk+vyCRO7dKW1uLqrOzXdv31MnjKsvfPCyHDsZK2dVi5fnEowfknCk/\n8kHfgKE3blglLWZOASafS3lRvsHBXlOWo/LZsvfl6JH9yuu4N4H2xT7Hkg5q\nWkgfcwe7z5BG4DyHoiiKou5GkbupqZrk7pqaGvnii88lPf28REXtki1bNhtm\nPSubN2+U5ubGOXM3NDE+JLsiI6T08iXDrIblEmLVHwofONjs0ME4w3PZyuJH\n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\nNSJChof6lKnB43YZLcYela7OVtm4ebOZL7bq+2zxPXzaMXtj5e13P5GCwkL1\naY8a9t5zqUB+mxAvX1w4rwyOdHp6OiTtxEl59MnnpaKiXDxui/E97gmf5vP+\nIIqiKIpaWiJ3L5TI3VQwLSp3O6wx+uZb70psfLyUlZfL408+LbU116W6ukoy\nMjLMWHHK5ZJiycrKlBsNtRKxbZt8+7s/kq+2Rkjy8WQd3yYnw91xEr//gJWv\nSbNjoEfWZF6QF1OPyxNJieIxdYPPG/HfYOv3Plwm5eVlZmyOax0G+nt8QpqL\n3S8URVEUFR6RuxdK5G4qmBaTu+13XT71zPNSVVWhx7zz7gdSdvWKnDx5Qlat\nXqvb9u2LlS9XrZb2thaJi4uTn/3817Ivdp+kp5+X0ZEBgb97b2y82RavY8Fp\neH7QbO82Y/9Y+VV5ISVZ3IhR8eU5JO9+8KlyN44F4+/ZE63aFRUlOTnZ9HlT\nFEVRd4nI3QslcjcVTIvN3eDmp599QcrKSrUf3//gYyk3f4O712/YqOnEJ+yX\nL1auss4Dfd3K6QP93foZPnMcB+7e6+VurZc+U+mSA6Ul8sLxZJ+/W/M0ZfZx\nt8cpdbXVst/kAcXFx0lhYQG5m6IoirpLRO5eKJG7qWBabO7GM5Dg7uJLRXpe\nePHlV6WyokxOnT4ln3z6maazJzpGVny5Sr9vb2uWhx99Qvp6O2flbqeXu4+U\nXZGXUo7rdvu5zCncLU6pqbkm+2JjVTF790p+fi65m6IoirpLRO5eKJG7qWBa\n7PhuPC+5ddt2Wbb8c4k2fP3Ka29IV2ebxp08+/xLGlfy2htvS1paqvqm4efG\n9h07d06NM9kXJwkHDln5mnE/YMZ9SmWZMvcPovdIUkWpDCIW3OSnfvWPPvPG\ndzs1bjzpWJLqaOJRuXy5mNxNURRF3SUidy+UyN1UMC32eibIs6WlSXbviZZt\n23dIVnaWrxxpJ9IkImKbHDh4UIYGe3U7xvSFC+myfcdOOZY8+VxldEysfLzs\nCym9WibO8WHpN9v3lhTJuqwMWXkxXWKKC2XAMPpgf4+uV/jEMy9Z65l436Fj\nRqdXZqzOYQ1xiqIoirozRO5eKJG7qWBabO6GwLkefbfNsLKvtab3mPI01gSE\nP9teq9vpfRcOttvnA6zfnZObK+s3bpHUEyc1dsWB5yfx74QV642/df3u9hbZ\nuy9eNm3ZKm2tTbq+oL0+uL8Wu18oiqIoKjwidy+UyN1UMC0F7rbLgTX+sBaJ\n//i11vGeWq7ptiNmu7OjVdf1nsA+RljDxF9IG3Ep4O3enk5l98Vuf4qiKIq6\nvSJ3L5Tm9L5Kw7B4Z6U/d4NzlxJ34x2a5O7bo6XC3eGoB8aBeCZm3c/ylzvU\nx06/NkVRFHX3i9y9UArK3bV1yrA2d6ON/bkb3Evuvrt1t3A3RVEURVHTidy9\nUCJ3U8FE7qYoiqKou1nk7oUSuZsKJnI3RVEURd3NIncvlMjdVDCRuymKoijq\nbha5e6FE7qaCidxNURRFUXezyN0LJXI3FUzkboqiKIq6m0XuXiiRu6lgIndT\nFEVR1N0scvdC6W7m7m5yd1h0O7nb43Ytev0oiqIo6l6W0zkeMnOTu2+xrYNw\n9/Wa4NxtvztnyXF3V5dEkrvnrdvJ3TCXc3zR60hRFEVR96TwvmaPi9y9QArO\n3bVLgrvtdCHbvx7I3XiX5pQ4E3J3WHS7udvjcVvszXdDUhRFUdQCadQw4Ji4\n3M5bYm5y960pFO7u6ekhd9+Dut3c7aVv0+cujfemKIqiKOr2ym14G36v+Ri5\nO3SRu6lgWhjuptFoNBqNdicZuTt0kbupYCJ302g0Go1GCzRyd+gid1PBRO6m\n0Wg0Go0WaOTu0EXupoKJ3E2j0Wg0Gi3QyN2hi9xNBRO5m0aj0Wg0WqCRu0MX\nuZsKJnI3jbb0DefA5ubmxS4GjUa7h4zcHbrI3VQwkbtptKVvbW1tkp+fv9jF\noNFo95CRu0PXUuXuYO+qDMbd7e3t0t3VSe4Og8jdNNrSN3B3QUHBYheDRqPd\nQ0buDl1z4W4w7FLkbuRN7r79InfTaEvfyN00Gm2hjdwdusLJ3ZB/PAi5++4Q\nuZtGW/pG7qbRaAtt5O7QRe6mgoncTaMtfcM5r7i42PfZ/7xKo9Fot8PI3aGL\n3E0FE7mbRlv6Bn93Wlqa1NfX6zmR3E2j0W63kbtDF7mbCiZyN4229K2lpUWO\nHj0qlZWVeo4md9NotNtt5O7QRe6mgoncTaMtfQN35+Tk+M635G4ajXa7jdwd\nusjdVDCRu2m0pWGzcTS4m89VLn2by1wo8LpIoy1VI3eHLnI3FUzkbhpt4Q3n\nOpz7/M0+T+Ich/Oev4G7+d6cxTdchxobG+XGjRt6PYKh39Bn6FP8jX4N7D8Y\nvsf11D6G3E1b6kbuDl3kbiqYyN002sIa3lV27NgxPaf5G86TeXl5cuDAATly\n5Iiel22bK3ebs62YM3DYy0wTvVZFRETIJ598IqtWrVJdunRJr2nJycl6XYLl\n5uZKaWmp7zj7+odrK56NxfWV3E27E4zcHbruVO6231WJMqAsNnf39vaSu8Ms\ncjeNtnDW0NAgmzZtkpdfflm6urqmfNfc3CwrV66UjIwMiYmJkYSEBJ9PPBR/\nt9srWngN16U//OEPEhkZKadPn5aNGzdqP+Iadfz4cb2O4hr12Wef6fOvTU1N\nvv7DejTwG61du1bOnTu3yDWh0eZm5O7QNR/uhp95rtwdyN63k7txrSJ3h0/k\nbhpt4QxMvXnzZvnwww/Vh+Bv4LF169bp3zU1NepXtX9b4O6ioqIp++u51d+3\n7faIa7BDnENN4jbnflp4Ddejhx56SFJSUpSrMTd65ZVX9FoJPzjmTeDx5cuX\n63Vsx44d+hl99/nnn+u19cSJE/LBBx/otY5GW+pG7g5dc+HuDnL3PS1yN422\nMIbzIM5dtbW18uWXX2q8ib8dPHhQWQ3W2toq7777ri92Af+ePHlS1+8Gk+Oc\n7XF7z612vIJrXIavxEvP+Q/F01UkLW1NcuXKFbl69eqSUnl5+R2j6upqX6w2\nrku///3v5ZlnnpFly5bJ/fffr//imvXggw9qbAn6NS4uTvcHYz/xxBPy9ttv\ny4YNG/Qah/sd2Gb3K422lI3cHbrI3VQwkbtptIUx+zyI8xf8n4HshZju7du3\n69/wkYK77RhvMDpiiOFnBUs3NzeJuroRxuDycvd4l/SefFIa9v27uHvOSkNz\nncYaIz5lKQkx7HeK8I5QXBO1ec116ZFHHpHY2Fi9b5GYmCgPP/ywziUee+wx\n5e433nhD/eG2/elPf5K/+qu/8sUU4TqGfdGPNNpSN3J36CJ3U8FE7qbRFtbA\n1PCTIuYXhvMczn3gPDseAby8YsUKPQ/CsC+24XyJfZ1Ol+XmdnmFgO7eUuk6\n/O/SfOIX4pmoE4fLqefSpST7WfmZhPP9UpFdJjtGG2UHZ8MPDsM184c//KFc\nuHBBt4O7MVdKSkrS7+Erf/LJJ+W+++7TORMM17DHH39crl+/vpBDjka7JSN3\nhy5yNxVM5G4abWENMSRYC8P2d+N9OPB/4neEZ/XwPCXihf2fvwN3FxYWTknH\n5XGrLO4259K6w9IT/b+kP/9N89nBVU3CbLguPfroo/Lxxx/Lzp075YsvvpBX\nX31V51HPPfec9uG2bdtk69atel3DM5SIGwKXP/vssxrPX1VVJS+88ALPmbQ7\nwsjdoYvcTQUTuZtGW1jD+QzvwLHjhi9fvqwx2zDEfqempkpWVpae/+xzJ7jb\nfm+OfU41Z10ZF5xTzUbXoIzkfioDO78mjuoYXwjKdOdirmF3a4ZrF2Lso6Ki\n9JlKxJvY8SKYI+E8iLnRm2++qddT7Gs/O4s+xXX20KFDsmXLFrY/7Y4wcnfo\nIndTwUTuptGWrs3K3UbK3eY/11i99Cc/IMN7fySe7gINO3HJzMxN7rt1Q9u5\n3dOv1IjrJtaJLCkpuek7XMvA3HacCo221I3cHbrI3VQwkbtptKVv03E3ZEWT\nmPNnd5Z0xf6bjKQ8LjLWq2/PcYG8yd231aZrS6xZgtjuwO9xLcO9jcD3lNJo\nS9XI3aGL3E0FE7mbRlv6hnMe3o1om7V+oP1+HJeMV+2VrqiviaPoC11X0K0r\ne5O7b6fN1pa2T9z/e7Y57U4zcnfoIndTwUTuptGWvmEdQawHDV8qzouTBv42\n5+yMN6RvzzfE0XRc4P/22N/RFsU4v6HdDUbuDl3h4m7IWrtqCXF3J7j7KLl7\nniJ302hL33DOw1p0eP4S58RJ84h76Jr0Jn5XBg/9QsaGG0SfqHQLsXuRjPcV\naHeigcX6+vqmnF/I3aErOHfX+Lgbz10H425/9g4Xd/uzPLl74UXuptGWvmHt\nQbxzBjaF5QxfTzSkSfu+v5XRiy+Iw2Wt9+17lyWNRqMFMbBXRXm5XEhPl9yc\nHN/7ugYGyN2halbuXrNVrlVP5W7MdcLB3dOxN4zcvfRE7qbRlr5hjWj7ucop\n5hmVgcLV0hn9r+Ko2jV5ztUnLp0LX1AajXbHGc4vSYmJcvjQIVVmZqbO3cnd\noYvcTQUTuZtGW/o2I3e72qTn+B+kd/+Pxdl9WTdZ3D1B7qbRaHOyqooK5e1j\nSUnK36kpKcpk4C5yd2gid1PBRO6m0Za+zcTd45050hH9LRk4+YS4nf367njr\nnOtW0Wg0WjCrqqyUI4cP+7g7LTWV3H2LIndTwUTuptGWvk3P3U7pL1olbZHf\nkKGr20WmWTeQRqPRgllVVRW5O0wid1PBRO6m0Za+gbvxDnLbcEb1uHqkL/k3\n0rX3OzLeXWxtJ3fTaLQQjdwdPpG7qWAid9NoS9/wvsq0tDSpr2+Q4ZExfSuO\noy1PemO/IQMn/iweZ4/out3kbhqNFqKRu8MncjcVTORuGm3pG7j7+PHjUltT\na86JeG+OW4YvrZOO6H+Q4dK15vOE0Si5m0ajhWzk7vCJ3E0FE7mbRlv65r9+\nN8wz0SM9p34n7XH/Lo7ObNGFvD3j5G4ajRaykbvDp9m5O0K5u/0O5e6uzg6J\n3E/unq/I3TTa0jdwt/9zlWPt6dIa//fSc/ph8bgGrFdTelyLVj4ajXbnGrk7\nfAond4OHF4u7USawHbk7/CJ302hL36Zwt1tk8NIKad/91zJ8badusk6x9G/T\naLTQjdwdPs2Vuzs6OnzcjXaGfzkYdweyN7n7zhS5m0Zb+ubP3e7RXulLuV8G\n4v9DXH1F1g5cqptGo92ikbvDJ3I3FUzkbhpt6ZvF3dY6gmPNqdIR988yeOYp\nEWeXtYPLKxqNRgvRyN3hE7mbCiZyN4229K211X5vjlsG89+Rrpi/k9HqOPGY\nz3p2DeRujzDshEajzcnI3eETuZsKJnI3jbb0ra2tRVJTj0tDRZ40x/9SBg/9\nQDxD17x47ZnK2B4hd9NotDkbuTt8IndTwUTuptGWvrW3t0naiVSpubhTGrZ+\nU0YuvmFOqP2T3O1v5G4ajRaCkbvDJ3I3FUzkbhpt6Ru4u6AgT8bylklf1L/I\nRO0RsQJLPORuGo02LyN3h0/kbiqYyN002tK3trYOKTwbKz2JP5e+5F+IDNXo\nEiYWc08uZkLUptFooRq5O3wid1PBRO6m0ZauebwPS7Y1d0lO9HPSGfd16Sld\nJR73uLhxblXmnhQ+u71ETgqn0WhzMXJ3+LQUuTvwfTv+zE3uXniRu2m0pWse\nceq/3Y2dkr3uJ9KT8E0Z68y1tnqc3ndU4rnKqdzt1r/J3TQaLbiRu8On+XI3\nuJfcfXeL3E2jLV2z2bnzepkUrfw3GTr9pLgnusQJ1AZzg7c99nom5G4ajRa6\nkbvDJ3I3FUzkbhptCZuGb7ukOjNW8td8XTwN+zX2xO2x40nEj7v9473J3TQa\nbW5G7g6fyN1UMJG7abQlbEDqkSYpOvCinFzzn9JafUZGJ8ancnfgAT72JnfT\naLTgRu4On8jdVDCRu2m0pW3OxiTJ2/FTSdn5ulRczZfB4QEBU7s9s3G3CLmb\nRqPNxcjd4RO5mwomcjeNdjvNM2U57SlE7JkSIuK3v9v3/nePZ1QGMt+Woq++\nIwVnD5rzofndOSesc6qdyLQvq6TRaLS5Gbk7fCJ3U8FE7qbRwm2BhG3FhLgC\nd3NPx90BuwyUSOfBH8ulnb+Q0ryT3iQ95G4ajRY2I3eHT+RuKpjI3TRauG0q\nd/tHYmP9v9EJc55zOKc90u32mHP2iAyPDIljfEBGyrZKx96/lbKjr0txQe7U\n5C2HuCUajUa7RSN3h0/kbiqYyN00Wrjt5ne3t4+5JOdGnyScz5P1u2Nl275D\nklF2XfodkzHaOD9eOJ8hsTH7ZV/CPsk5myCNaX+W5oR/lMaieCkqLLOTJ3fT\naLSwGbk7fCJ3U8FE7qbRwmtufdvN5HoiVV2jsiGjXh7blSs/eWG5/OqNL+VH\nL6yU+99fIZsvlsrVrmHdb3SkX75Y/oUcOpAipzNOS/HJLVK/75vSdvYh6Wwq\nkuKCYiuDwIBxYjeNRpuHkbvDpzuRu+38ZuLuzs5OLXOn4e6d4O4Ucvd8RO6m\n0cJr4G6H9z2TZe0j8vrRCvnVziJ5dNMZ+c0ry+XIlXrZnl4pP3rqZfneqkPy\nwrFKyWwelMa2enn1lWfl3NnzUnglW1rzNkr7nq/LSMU26eqolyuXCgJyInDT\naLT5G7k7fArG3VXXDXe3td0x3N3T0zPJ3R3k7nCI3E2jhdf0nCcuaRock/eT\nrsp3N+XK2rwOiU3JkHc++0LGzT5DLo+88sHH8ube8/KrXcXycFyx7DxXJO9+\n8q6kpSTK9u0bZPeyn0lD/M/FM1gsPW3tcu7kKbnReEPq6+vM+bpLyN00Gi0c\nRu4On2bj7nfWbDXcXR2Uu8G/5O67V+RuGi0MFrC8yKhbZGNmvXxv4wX58HSt\ndDhEsnNy5JPPPlYmx07Lln0uBcVVcqi0Q34ZkS2/+ipddqZmyMTYqBRmJcvr\nD/0vqUr5yOw7Ir3NXZKSeFwqr5XL1bIr0th0Q8jdNBotHEbuDp/I3VQwkbtp\ntPma9WyjrhPosdbdPt/QK/8dWSB/TiiTqr5x3aumpl7eee8dGRoekM6uTvnk\n42XS0dRizosiccVt8pMvD8mzGw5KTXuPlJ+PkDf+/H+kuTRJj+1oapfcrFyZ\ncJjz48SYyuPhOylpNNr8jdwdPpG7qWAid9No8zWbu61/e5xueTH5svx4Z4Ek\nVw/6dhkfd8imTZtkf0K8RMfsll27dsq4Oc8V5RbLlYpa2Xk6R/7zz+/Iu6si\nJPKtn8quj38m40N1enhra6sUFRZOydPjsfzmNBqNNh8jd4dP5G4qmMjdtLvW\nFhBJrZUDrWcpU693y/e2Z8nbZ2ql3wkWd4ntmq6vq5ejR49I8rFEaWqq140X\ns3LlWmWlDE04ZUVMsjz9xpNy+K3/V5rPvW++n9A029papKAgz5uZe8p5lUaj\n0eZj5O7widxNBRO5m3Yn25Rl9KZ7deMCmbUKt0MGx13yyoFi+Vlkrpxt7rci\nuXE+dIvF3sasc6dTC+j2OGTCOSLj5tyH8rZ0d8m5hOfkWsw/S1XBLrHfrtPe\n2jzJ3W7PpGg0Gm2eRu4On8jdVDCRu2l3srnFiu9wq0Rc5lRjRV/oJxFxz55A\nmMzjfR/82epu+enm8/LRqesy4HTq2+Etwp58zY2v7B5zDjTnLreY3xLOkyjq\nYK0MHP2VZO35kXyUECdX20d13/bWFskrLLAPJHfTaLSwGbk7fCJ3U8FE7qbd\nyeb2GLb1PssIubzSU47H9+n2F8SUYdTpkteOX5Gfbc2Scw32b2LCet7y5gP0\n/24l7zFxe7ndUXdc+vZ8Q7IOPis/jUiTD09USZ/Tbc7TrZJfcmnycLf3PZV8\nbw6NRpunkbvDJ3I3FUzkbpq/BSLc0kU6CzjdbkO1hr1d3fUyXnVURuoOimug\nxnJzu20/9MLUorC1T3647ay8dKhUevD+d49Vtulz93j/b7/bEh9GZCT7U+mL\n+qZ0lR2UV1Kvy3e/uij7K1rkRneXJKWlSE11jYwOj0y+H57cTaPR5mnk7vDp\nTudulAFlIXffPpG7aZNmPR3oRVbfJ/31usX7O/ZMDZq4He8q90uv1/Dr5fYB\nqewZljG/7z3etUOUW7sLpOf0C9Kz5zvSF/cNGT77iri7r2j8hmeBoBSxJKtz\nauQ7m8/J4UtN3kI6vT73mdf7s330asN10n/wZzJ08BciI/WS3zYmv9uTJw/E\n58rR8no5ZK6JZaVlMjQ4NHkwuZtGo83TyN3h00JydyB7z5e7kfdM3N1mytzZ\n0U7uDoPI3bRJ85K2x2PFbqiv1mFxocvibrfN4ZOHeP26YSyG1/3bOOiQTdn1\n8qeEK/JYUpkkXusUh8uNE4nGRivaGlbtPvWYNO/5mgydfk7GUh+W3sivy2D6\n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\nkSWvplXKrrI2+f72XFl2vkZ6K/dKV/Q/iSPzQ3FURUn/vr+RkQtvGWAZnfO5\nCTkcKe2Sb36VLavyGjRyYQvW2NhWIKkZR6Q34T9l4OQfRMbbxdFTIO3x35T+\nkw+K2zEyJ+q2sQm13ZzZIN+OOCeJVd36DWKvP06tkl9vSZPCQ09If9z/J67G\nM95jxmWgZKW0Rv+bjFbum3N9JvP0SN3QuPxub448fTBfOsesrS5vzMTWS43y\nwdYPpdqkP3zxXdOFfepjtevkaDwvvXFfk6H018xBIz7/eWiFcEmPOSc8k1Ak\nv4vJlcq+IbGeE7W4284Lo6etMFYaI/+X1KZ/LA6337o0voc07XWznTJ0eZt0\n7PqmDJdslOCe6NCsy+GRFxIr5P7d+XK9a8RXlTmt2O2xauNsPCAte/9OetJf\nMNtGZaa3ysPfXXCpUP92uV0SU9Qi395yXt44USltY04ve9NoNFroRu4On+bD\n3eDdpcDdfF/l7dXt5G5PwCeXZ3K1kUGHW6qaR6XkhkMejS+X38dnSnnWBumL\n/j8yVLpVJhoTpGP3P8rAhfcMUPQEP3G4Lab6KqtOvr05S46Ut0vLmEMeO1gm\nf9xzWiqSH5WO2H8WZ/N5g6lVMnjsl9If+0Px9JZOwbabqEdDaK042iHzz/tn\nauV72y7I2WYrvjmjcUB+tOOi7Il5VTr2fl1GyjZbz8KN98hg2p+l/cB/yXjn\npTlEFrt9DNxjeO7Jg1fl99GFUtM3Zo61YjASKnvkyYitcmn3t2Uo9Zcio9Vi\nv6t9rO20tEf/owyff83MQSamxLrPZva3FxoG5Dvbs2RVxjXvOon2M6huudja\nI/HRT5j0zbylMt7w3bg+q2qn7RqplMHkn8ngofv0GUF7JZk5m8eixsvdY/KL\nyHx5O+WqDLgmRLyp2BStKbqGZSTjfanc+y+yL3G1dIy6fBVRRg/oyYmuEumK\n+b8yePIvZto3MPcyzcGKukbl57tz5NXjpdI/4W0LsdrNv/Y394CXuz0OGSl4\nU1r2/G8ZqdmvRzpnWG+ypa1V8gsKvJ8cZm40Ie+fKJfvbL4gkYWt+hojj91a\ntu+fDnAajTYHI3eHT3cadyMP5IU8A7kb77And4dft5u7/X1//vHd/rYxo07+\nOzJBMvc/IgMJ/yGubsMXwzek+/AvpfPof4tnqGz2k4Zym0OGzJh69uAl+fWe\nAqnq1RXdZFVmnfxx6x4pjfm+dCb/UtyIS5BhGcp+X7p3/o04q+Nn5G7bfWpz\nd/2wS+5LKJQ/78+SRsP02NY67pZnD5yRwzv/R/rj/l6cnVnWgY4xGSvaJM17\n/16Gy7fNwRc5IfYaFmXdI/LzyFx5M7VBBl3Weiwg0OJ+h2yP+VBaov5WxrM/\nNPn0aPyzFm+4UXqP/kh6jvxKHEP1Xu5zahzI7G1nseLW7Bb53lf5cvRan9ix\n29ZcwSVtg81SfuB30rb7/4q7rUBTnbDXJMfxnjbpyX1Vhvf8u7hunJgMX5mj\nWRHcLjlY1inf2ZonewrqvXHabj/utt7n4x67If3Jv5D86J/Ly7uipaR9yNdX\nTrHXRhFf/LXH0SH9x34rHQd+KBO9FSGUKrgllHfLd81cZXthtW9e5fKVY1LT\ncjf+P2rOuam/lo4j/yquwXKr9J6Jm/aGtbS0SkFBofeT9f75is5heTAmX/5n\nV55k1/R7cxvz1h/8HcbnSGk02l1rlZWVU7g7NSWF3H2LWkzuDmRvWLi5OxLc\nfZzcPR8tJHdP+cIbWwCGOFvdK09G7pKyyP+QodRHxO3sMNhgODr9JemI+WuZ\naA0Sh+1dT7uiZ1h+FZklLyWVSb/LyjX1ept8HLlaqqP/Uwby31VfLfh2/Hr8\n/8/eWzjYUWR9///I733ffZ5nF1lkYVlkIQHigeAanAUWCbJogBDCEhIsEEgm\nk3F312Qm43LHXe+4Xnf3e7+/qurue+9YJgOBsA994MxkWsq6uvtTp0+dgjbp\nctjbjzK7I2ciDPXVYDGDvguAZNGKLbF1OFw7CiFyB6XaxIYqNCdugaP0boI9\nc/yJbnjldVCnXQ1r0xtszt/5xQWBVoulcmw72YDT3Vre0s35sOu9PnSW7Icy\n4Tq4pFms7YS44dRfxtL0NlRpt8GxWMmnRG3S68TOI4mbyMFvFo/jwbgeDGq9\n/ObQ3Ei3qQearO3oTXgYi4tjHAvTmOQ8dwfggGkyEuaEP8Hd8yPP4utUN0xo\n3WyEk7+oHse2yFY0zQrfN8IjsXNr3/i1rbBmXoOm+L2451Q18gZVfE1DvCv0\nL+5TgB2W1oNk/HMT7NMFXKoXwQ5M7cuf10xia7wETfNavh6r61q5eeQSKDNv\ngr6J9PmAlndPX8O/m3G3YO8WaguUSJXYFl1Dxpt9ZKzp4vbxc2X9FzN+iyii\n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\n4wTafvwbxmr2Q66RQaVRo29ehsejSvFeai3m5SrWN9Xk2JmOSAxHbMJA8QGc\nKU8j21TQKjUobp7Anm8LEV/VDa1GCzkZjylIOot1hzEetQny7ixoDFoUF5Wg\nvX8M/4itxBuJ1ZifV7J0lRo5FPNNGE5+CKO5z0O52A8VvSdUSkwTZnnmaCzu\nPlGN9LYx6NU6aBVcmeb689AbfxtGaz6HSk3aT0nuIcKXFW29ePjgj/j6TDNJ\nW0PSIcerSB3koxjPeQEjcXdBMVdHyqgg7aBk+2Xk3PdT6/DE0WgMT81BQdLX\nkG1y8ls2246RtHswlP0s5Mpecjzt//Q+0CK/U4pHPotETJmE5KUj5/FtTM5T\njFZAGrMZoxUfkb8XSJk1TJXkPI1Wh5yz5bjrcAKOV/dikbSXWjnNVKVchFq2\ngLEzn2Ao/iYsDGSx9BZIXSZn51FeVI6RuQXsPXUGLyXWYEauJtdNTtKdC9aV\nXtvpiv0Yjf8rZKNlONfcgs6eHnJ9NGw/rfeiVomENil2/FCDuKZJMo7m2oq2\nPa3/wsIiysqLsThRjdGUezGW/hwpF5+HmtaRU7VKDq1aibSWYdz7Yxk+jkuD\npL2RXFstXx7ueEFVZPtsVwaGov6O8QYyliNllysUKC7LJX1iJtg/lcG+Ssf4\natQOTmJ3RBk+LWkndSX9l2yn69jU1dWt6NvLVaPSYaEjAxMxf8PCuS9QUVaC\nmdk5sk/N+pKKtcna59NjRkZGLiiv5eeVlJRgcnKSz2fZMUI78sdSW4aR8Cxl\n9bzSYvRNzaCkewIn6sfwZkE/nkxqwgOnzuKu74ux49si3H28DPefrMCDUWfx\nWHwVHvs8EW/E5eOtnEa8l9WM/bkt+Ci/Gf8ukuCLYgm+LG3BV2Wt+PZsG46d\nbcfxig58W9yID6NzEFfdjajKdkSdI1rVgdNUqzsRS8aj8fX9SKyj2oukug4k\nE40srcUX8ZmYJW03MzOJEakUo2NjGCM6NzdHruX8El1YWNiw0nRkMtkSuzX1\nH3nhhRdYmi+++CIkEgnbTrcNDw/j9OnTiI+PZ9tSU1Px/vvv49SpUzh06BB7\np9HzX3nlFfYuE0WU37qI3L1xXZ+7J6BUKNhz92Jw93L2/iW5W824u0Dk7p+p\nvwZ302spJe9F+l4SVCodQk3W56g7vhntVUfRNdaPPukwWgeG8WJUGR6LKEF1\n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\nfaisyMPB/S/jX2//C04Xt1bLd8e+QWpyCpokzXj2h2S8mtkKpYWyppddY+tc\nGeTJt8AsOci4JnVQgTuia1E4puFTpesvu+Gs/wCmlL/Aq6zjsgt7Peq9dJ3G\nETyYJMGYhVvnkbGxQwFb6cOw5dyIgJmL7/3xWSnuO92CbpkpzIzsg6MnErqU\nP8A2HsdvXLqC4pDRgh0JNXi1dAQOn2DEpWvOeEnZD8OY8D/wzBSwNOdMTjyT\n0oS7PknB/kPH8NF778Hrc2NOo8Shd57CxPE/QVH6Ej46sJ/F1gPfGoI397jW\ngvsTW/BycT8sfoHneC5wzMBQ/BA0Gdvgt41z3E3uxcN1c9gW2YrORTNf+hB3\nwzoNU/69UOY+Cp9rJqzxln7np1fls9oJMr6oh2SRtxf7w5SWcT6XrXdjajtI\nmNsCoSmM5B9vlEjxSGIbxgw0evjS+NLCSjeewe8Q8ebfcOL4V+SZ1Yb5ufk1\nXBU4G7LB5saLuX14JK0fs+Y1wFswxwdsUNe9CUPqNQgo61f0E361Iyw6Angq\nexQvZPZBa3OzkgWCfjE+Tv3LF3sP2bSd0nxokv8Me+/XfD1/2toylLupf/Hv\nXej7gvpp0HVq6Dgk3E/6l46Hvfx9tpbQdx99fy0vl/CuE0WU/xQRuXvjKnK3\nqOvppeBuunbh4OAQWlrb8emhQ+w60/5w9OhRpBDuzs3Jxv0fHsXjpysxrLAJ\nZ8Gt74Yi7e8wn30RHp8DR5tmsSWuGm0qLn/mF+1Ww1L+AszZOxAw9QunQmBG\nahP+vGoCO2Ob0axxcWui0/7pMcFd+xpsqVcAhNetJLGXszvxZHQblOaQfSrg\ns8BSvx+qjCsJ159dtX4yjxcPZLbgkfRuaOw8IVMmJtk4RzOhjb8WtpFUtrlL\nZcPuqEp8GF+BhqY2fH7oINwBD/qnJvHhq7thSvojXH1f48jRI+jo6FiRl8Xp\nxvPZXXg0pRVa17K5lT49LHXvEe67CV51A9tE5zDuKxrDQwntmDdyDLDE3q3s\nhCP1bzBW/ovU1cxvX+GAzX7G9y5gS2Q9skZ49gnjbsa2hjZosun81ucRcMqD\nxDln8+GRlG68XjAIo4eWebV1XVywNLyNb/95I6J+/B4FufmIiYo+7zo1ftKH\nDtbNYnt0K9rlljWPE6jJ2PcjdIn/F57xRNYKS7mb1tuLdpkDO6M78e+KCZK+\n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\npzk8xpzKShe/66msDJo9Z6ZcX79+Ddd9Pt9f7OUHt4+RhoP4zvc6Pf5y/2Md\n7sXvvty2uvTM/f7GTpfT5Al5LKfjx5KpZcsfacyYUVKm6p6rKY+4XlZaOU9t\n5q4Nv5fr5bY5ab7ur/w18Vsjxwnjx9CBqP2SV8/7+X/whs8+/VjqxKRv5syr\ny5NvPsw75s6dRcuYV4wbO4pGjRpR5T77XLx9bt6kD27iW0/kUz5ylQn3lLK7\nKpgP7aYPPniPudUBj5/Q6FFN9e7yyZuvvvjjaBXl9vos9jzjTz72NPzplbnP\n/tc3n+Bp4Hiwjfr3/53atGktfSt4WXXyqkkf7PXqm7fqZCWy9CMruyzs99a1\nbfrqQ13iNMC3rZiMDEpOTmR7K4mOHj0i/Yzvs+Z88aIFdC4v+6p8yHgWOrZl\n8waaOGEsPfnkEzR9+hTP3Bb+zpo1nR566AF679236ZtvvqKpUyZKPqqTvUnz\nm2++pkZPP0Uff/Qh/dz6J9q6dZN77sxBqclJNIf7RZfL5FXjpxQKRe2olXcn\ne3+vsjbeDV5s59127q28u+ECelBcdJnHlc10113/TaNGDmf+wOMSj8f4O3jw\nAPrv//4zbd++me+7xON0mYw98H8XXrkgfiwZj2Su1+H5vaLcxHg4Rc8w1lm/\ne/MGjNHgygUXzlJx4SW5X677Sc+63yHjYgFzHIm9sPFTaywtpICAJRKHiXtP\nnTpBTZu+Sh07tBM9wxyz/bna8oj/UdalSxbJX7wDaeB58C0A+ZexnvMIGSFN\n3GNiXODjLXCnXV1cB7j18WMpwhG6d+siNoPhJJBRaMgO6tSpI505c9LjR7Ri\nNxye95HwAIs3lJVa/laTR3kHlzsnO4uaNHmRoiLDGftFVkjP/i7AyBPvAb8w\ncreuOWz155D0wTmdDrePk8uSmBhHGzess+wzLvPhpEPUoUNb/htv5dvNSS+c\nz+N0L4ucID9T7yYdKRf/b9VJoSeveB/y4xs/ZPIM/zrqy8p/uei4cM9yq/4s\nuRR5ZIR6wTugV/BbI11P+aV+K/zq7o6grRQdHWG988pFqaOXX27skx+7vJzV\n6q/RRVwTmbt/82ojRZVtxIo9crhlVlGtbkP/LFk43HVbXKe2aXimkbO0dXed\nV1TDW9HfnjmdyXb6arHtli5dSGt4XAnavkV0t6pdwHnh/CxaOF+eu5q5FzyL\n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\nhUKhUChuPJR3KxQKhUKhUCgUNx63E+9G2sq7FQqFQqFQKBS3I24E7/b9ds7N\n4N3IU35+vg/vPq28W6FQKBQKhULRIFAb7z5s4925ubk3hXeb+5V3KxQKhUKh\nUCjuFNSFd5/yw7sR1wG+q7xboVAoFAqFQqGoHcq7FQqFQqFQKBSKGw/l3Yrb\nCdDXunxDuq7fmW7o36NWKBQKhUJx50B5t6IhwukoFdivOSpKuB6dtT5bVlpI\n5Cpnnaq5zl3OMgHuRztA+tXdi9/qw9FNnmp6x/WU3a2uv38F1FUnvO4rv7b6\nwfOeNlF+68teVxnUt93cStTWJ1xv+fm+r6HKrla51EPHb0b/eD3qSqGoD5R3\nK24VwEOlzn36WtP/VpQVeX7DNdy/d08IZWYcq7Z/xn2XL52nnTuD6OLFc8Kr\n/d2HceHK5QsUExNppe0nH573kkvefa3lRBoXzudRTHTkDe27TTmqK7Pi+sHl\nLBUbsDZZs1YJ6lM/lr3poMuXz7vTrLjl5a+LDOoqo4YIl6tM2v2N5Fl2+Vh1\nTB6+atebhgboH/JdfX959TrucpSKvBsq776ddVnR8KC8W3ErgPHlzOlMCtm1\nQ/TP7vMpvFJAkyaOp6FDBtK5vGwP79gdupPatWtDWSfT+Xn0z4VumHQtv3VJ\nyRUaN240jWdUx3PRfwYsW0wbWe/PncumgKWLaf261bZ7rXThp96/bw9NmTKR\ncrKz3ONCoU96vudV29iVywU0Y/pU2he2+4bwJtOOg4K20tQpk+h8fi45qpS7\n5nzWfJ+vrGu6r675LvRJt2p9Vv/umt7pm0Z1z9b9OeibVW+FogNZmek0YcJY\nSk1Jsvn2Cr3+Qv7JRxJp2tRJFH8ohnXpCm3ftplmz5ohtqGla9WV2btud3E7\n2bJlA02bNpkOcVqOOvkTa6qfq5Wp928os10GDvHFVy8jK7/+yno1+nI1KCT/\n5aj9/ch7Tk4WLVo0n9bxeCj1VO0cQ111yxt2+R1NPSxtNzBwLS1aOJdKuf9K\nSU6iqaw3h+JieHwso5rKhL6xUpfqk7/a2kqh1OOBqHCaPHmC9DGWP8SaNzR9\nt38dr14WuAf9/IrlS6VPRvnrP6dTF1nURff863rd5Xaj9VxxO0J5t6KuwHh0\nvfwRGJ/HjhlFjz32KEVG7OO+u8LzjosF+fTmG6/To48+TBnpx+S33JzT9NGH\n79PMmdM8/pbKw+XxnVuHgxIOxVKTxi/Srp1BVXguxoikxDhq17YNnc09Lfz/\n3Xfepp9a/kj2w+nmCuBN//znP+jI4Xj3u6mKD9Pum3KK78aTilVezh/K2b5d\nW7pw/ux19euY97mc5TRyxFB68MEH6KTYJqXu/FXKyj5mQK6VR4VPeaz2CD+U\n8cV5lcekyeXyLq//eYNKuZHE/1S+p/IZz+/Octv9Tq/nTHqeeQivurLLvsLr\nd7vt5VVum95VPuf0eg76UlpSSGnHUz2yiWc+9Mbrr1NoSLCPDFye8uDazuDt\ndN9999KKFUu5HyuhHj260rPPNhKeYT/Me0waHl3l/B0/lkLfftOcDh6MoT59\nelFAwGKvstn9skZuJi2n3/p22GRa4SNTm7xtvj1vXbHaG2wJkQHbBDj8y6ip\nJSPbYeJl7GX31jH/fmbrHhcZX6uVV0eVe/3VRZ11wy2/nJxT9N5771CLFj94\n2lFtumddr5StvU9wefVPTrf8YkU+e3bvkjH4l9Y/UdOmr1BJ8WXpt+6775+0\nPGCJVV7fMrnjjXCenpbKY2+hXPdXj44qbcPku8SPzCz5WLJw2PqQyrpZzvz4\nnXfeoszMNLkC/g2fBA6Uo0c31vFnGlHBhbzKp5z+x1+jV7j366+/pE8++Uh4\nd206Ye9PkEZFuZkjcHl039S7XRbedVUpz9p1PdamyxXkqWdbvdrTcPjI2v32\nmz5mKxomlHcr6gKrn3GSGevqkxb6PvDdt956k/7n//w/qVevHuLTMWsmi4su\n0bRpk6hz599Y33LknbNnz6Ann3ic+XeWjGGpKYcpPHw/RUcfoCNHEllHT1BU\nVCTt379PeLvL5aBffm5NX3zxmaRn77PxrkED+9PkSROkXy0rK6ZOnTrKGJuc\nfJiCg3dwulHWWMTvgr/7oYceZN6dwPcWUmpqMo91R6VfR9pH+TyNz00sDK5F\nRYbTbh5PM0+kSz9t+cxK6OfWrWjdutVUxeddfhWw1wu/D+PUgagICuN8Tpww\nRmwZzAlY44+D83dE8hITE2Ubzxxiy4SF7aa9e0Pp7Nkz7nj3UkphGaDMUVHh\nUhb4raIiI/gdkZTCcsccAP7u2xdGp7JOCE+IjNwv6cTFxcq59xjp4LaYJb/v\nC9tDly9fkDQg40hONzHxEF26mE/x8XGc5l46fSqTx/FTlJSUQOlsd4WE7KS9\ne3ZzWy/w+NUgv+TkJIk7Qj5LOT3oxaWL5/m5ROEBSHfHju107Fiq1/x93tls\nKXfY3t3MGfKkb0DMEfQINhh81Dt2BPFfy5eN8i9cMI/at29Lezgf+flnKTPj\nOE0YP5aOHU2WOoBeHDwYzXLbTQlcDsgYNkv2mZPUuMkLFLB8ifRvAcyjXmz8\nvOh/UmK8lD82Nlr8hNmc54jwcEpMiBP5wF9eVlokcy2Nnn6K6zBEbLeMjHTu\nsy+JzPfwtePHUj1tErI7zHqK+ZWIiP1i45m6QH1DJic476GsD6GhIdyP53ti\nqJAGOD7qKTx8n9S9rJNgmZ/NPcNtaw/LLZTlmSLly0g/KjJIO57CdVpQrYyQ\nJvIYERFO0QeiWP5nJO4qinU2hnUA+gs5w64IDd0p+ucb12X4H8qGtobf0QZR\nXrtt4eA2BtlZdbGHEhLi3P6CYj+6EVRFNyCjvawXKOdXX31BP/3Uwot3+9U9\n5rzS1jhPmZnprMN7RL+yTp7w3I8+KSI8zKtPgE/Bkg90yCH2/RtvNBW55zLv\nb9z4BTfvtjjnoUMHpUwom2nHcXHR1KpVC1q2bCnn6YiU31+bt2zHK9zmIqVs\nsTHRokMmnXzmzmjjUZGRlMb5kvlI1l3oJdoz6gb1d571KSpqP02ZPIHLdE7G\n2MGDBtCQIYNElyF75LlJkxe57R6lvdzeoQ8XL5yrYo8jn/nncjk/e1hmu6l1\n65b0+eefSj6t2JviKjphbArUO/QUcoYuOdiGOHkyQ8YF9CXQX7Rb3As92bNn\nl+hbaamla06ffg4cSNqsqzpdr6wrPH+S+z08D11CuwwL2yt9iPFNVXDeY2MP\nSB4TuZ2ncn0cOZx4y8dxRcNAXXn3mTNnbjvefea08u7rAfQzGDunTJ4o/S3+\nt/tKrhbob1esWEbdu3WhF198nh5++CEei45LX4t3wbfQps3PPO414/rMln4f\n/pWWLX/0rIUM2r6Z3nzzdXl+yeKF3D8m08cff0A9uneVZ3CsXr2c/va3v1Ic\nj1PGV4o+8VxeDr3z7tvMAcLdvg0XjRo1gt7kMW/6tMk0cGA/+vrrZrRkyUL5\nHX3vU089IXO/4BI/tWwhvnqMlfA1teKxeQyfu5wV0pYWLZzPY89SWrUygHr3\n7inPOYUDO2nWrBnUvkM71u1K+fn6z2o+Kn0mKAveN2PGVJo0aRxt4jY8YvgQ\n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\nYK6K+FzwXKwJBEfGWmWUA/5atC/43u37Z1by7gfEXoSewC9/LPWIZ27izJks\n0SHYbygXfKTQW5QXc/LQA9hK4BWISYCeiwxYhuC+aIejPTJKr5TRygDRE8O3\nUP9I07N/H/LG9QQdHixteJzExhodwt+dwUFS3i3MpeEDxvdVkM7p05X7CJpY\nCcxteNfFGKmLGKmLkSJP6EKM6MYI2Y8nnzkReBHejX0vkD78leD5sAvMOyCn\njIzjstYE8qjUPafEccB/izWNiF1AHI3F14sl9gXrSGF/QYZoE9Bx2Ztk1Qrp\nI7C/D/ITHr5X+grJ68K54muAnwG2Nfb3QJmw7hhzJygv9s6ATmEPS+L8+bZ5\npIc4E9QpZAK/N+okzx33Ydc32OTwdSNds18S1hdgzx+rLedL2fA+vB/3gNND\n3thrBjq8cqWVH9Q/+mLE3qCc0BfYgqZfQEzTjBlThDsv5TEA3y5DmS2fjEPa\nrq9OQP6INYJt36d3TxrCv2NdJNYlYH2wyZesrXeWiU0JOwD9MfrwEGlDRbJO\nF8+afg7tHOWG72GOj65jLYPRdXtdjXbX1fnzudKXYQ0m0sWY9T3bXLBtYONh\nj62mr70isTrGH3Grx3LFrYXybsXNguxP4I7vM7Gb6B8Rq2Hm4cpkr4PL7liR\nCk8/jf/RnyKOA3PJFcJZyt33X/HsVY3+HHwDfSx4khnrfXUe96GfBm/DNetb\nLVb8KMYKyY/LSl/iBd17wuFdhqdg3zaZe3VZ33lBXGxFeYlbj0s8zyEt+Gjh\na8YeBtdzvtHp/r4y8mXFNVa431m5JzOA38rdPuvKb7S4v8/ivm729Yb/C32C\nNbdRIftmg1si1hJjZHx8bOU+CO74eMgN98g+jz57L5v5aauur1h5qCh2j+3F\nnryb72WjLsCz4NfE3goY8zFX4L3e0OEZu61yW78VM/9EOkYvTLrlpZb+me9/\nG300e+hAZ6wYpiLPcyamydSjxP0zt4XPzVzz7C3jlrGVpsvtbyuofH+ZFccv\n5XfrErjqqayTwvvAZXzlZvJocQhrL0BrjzXr+zGoI/k2iVsfTZmtPeQve9qO\naT/w6yMGAz5YxGOZOQy7TJEO0pR1g7ZvPsn1gjzRY2tPoWKP/ps8esmoxFtG\nJi8mXsO+D6n5hgneUVJ02dOWvXSI84/4cIdb3xBbYvTdfp/R4ZrqojrdsGLI\nK9zzY0Wec9+YOim/0b2SSt0z3/DBdSsW2unua9x9gntvcVy3+qlK+Vi6UejR\nRcDk1awNqWzjLnm/8fPjN9yPfNvbfKl7DY55H/7CNrNi+Eur7JFeWT/l3vuV\n284t2RV6dMzUDf4ibbsuSB3Y7pc+yKaTLnffiLyXSxkteVvtpXqdsPoTpzxj\nYvQkzVKTr0ue95h5WjPeSD/n3uMc555+jp8rvFzg2ae2Jl33rSsrbSv/RWxD\nd+zQ3tpH1B0bCP3DmmTseWmXpeJfF8q7FTdT10x8n/Gz2K+Z6+jn/N2HPito\nxzbZp8TlqvD8bk/D+EOwRxr6Tvs3xOwwaydlLhRrpNxxpKbfBX8295rYUV/f\nkMvNy8zvnv7Uvfeyy5Y/+Hfhj6ruu/XXS67mf/s7TF591/X4PldtWnwde+PJ\nmqvRIz1c056OkVt1fnzfdCvcMqo8L/bUH+amJ4wfQ/c/cB+FhlZ+D9I3TVNf\nvvViT9f3vLpy23XOes7fPSUef5VvuiIDm45U6nKJjzxLPLYK9izDXPcvv7QS\nLuxPV/21Get6kUde3m2pqq7KekPmBYixwd4/2APE6d4rvzqZ+v7m3TaK/cpa\nyl2DjOxpVfj5Drj1bKlfHbLL1/QFNelaXerCX/7sOlWlXdeie77ys5fR5Mnl\n8y7ftlZdXs3zpl7M7zW1A98278lDDe3UPFvdeW19uO/v1emvPzn6k3d1OuHw\nkUdN7/HIwlYnvnn2J8+adN1fGaUc/P/wYUNo2rQp8h03rOVEfA38QJgrvJZ1\nUYo7D8q7FbcLjC/L7sfzB+OLqI5zG5jxsbb0rgeMD+h2jO8Dz0ZMAjg3YjBq\nk2t9gP4Ic/CIxxg3dozExt6M+rnZgN7B5sP8d0TEPr++x+spU/TxiElB/AH2\nihffYwOQg0JxJ8GKDTst627wTZ4dO7bK2krEIJlviSkUDZl3279VWRvv9v1e\npfLuOxP+4kaqu6+u6TWkfDdUmD1ibsaafHtskT1G4U6DFX9QUTlPfpNkav1/\nZ8pUobjVsMcrIUbPuua6rft/xfVF3Xh3lod3g9c2JN6NPCAvhnefPXvWh3ev\nUd6tUNQT9VlTW5/3Id7jVpf9RsHMT998md5+cy4Kxe0Ef7FsCoXBtfJuxHVU\nx7sNT1berVAoFAqFQqFQWFDerVAoFAqFQqFQ3Hgo71YoFAqFQqFQKG48lHcr\n7ji491iz6/j1irGr8Em7rnDWsCfZ7YIbsQeiQqFQKBT/SlDerbiTYP8GR+W5\nw/NNi/qkbb4veLW8W74N4f5OyvXIx60A9tDFfiY3cg9BhUKhUCjudCjvVtx8\nFPr89b3u7//a7rW+XQZui29k4xviVy6dl9/xLcC1rNvl7m8mVHLfuuSjsp1c\nvnSBNm4KlG+/45s7Vflz1efg505JTpTvci9btojW89+an6nr/m7XuhdcYZ2e\nNXvc4T7YG1mZ6TRhwlhKTUmSb+VVTaO6NHW/OoVCoVAoDJR3K24mrO88k/sb\nuuTmcJW+ZMs37fLc4/TcT55v+1be6yT7gXvxreIePbrSs882onPnckS/O3Zo\nRz26d5VncaSnpbIeFVopetKq8Em7cp9qa+9qkrR69uhGzzzztHx/0uzJVplf\nqvJdPny/rFOnDsy5l9Jqblc9undxf5PaO9+435TV+ma9i+zf8DbfQ7bK7KiU\niG1POG9ZOb2+zWa+WWyXvZRNvrlMnt9hm6C8+LZz2vFUz2/xcTH0xuuvU+iu\nYK+8W9+aK/Yqf00y8S6Pk8x3lM0+1rfjXIBCoVAoFHWF8m7FzdQ1IP7QQdq/\nbw8dPBjN1y2eBr585EginczKoMTEQxQcHEQZ6cflu3oHDkTSLuZ7ubmnhVsW\nFRZQSsphSks7SoeYD+7YsZ2SkhKEuzmZswYELKEXX3xeeDc47nI+X79utbz7\nUFwstWrVgnnwEk7jiOh+cvJhyjyRJvnAeYr73HyPuvDKRYqI2E/79++hQQMH\nWGkz7zbfxIyPP0ihu3dRUmJ8lW8Lx8ZE0UMPPUBz586m6OhIudflKuN3Jsn3\ng6OiwlmvC4X/4juNKMf5/LNSPtxjZAY5oLzpjJOZ6SIPyMV8sx35xPfuoyLD\naTfnJfNEusjDfMM9KSmewvaGUmxsNKWnH6NDh2LFJrhYkC9l28f1gfTRTi5d\nOk8LF8yj9u3b0p49u7ldnaXMjOM0Yfw45uIpXC9pFBEezu+PouwzWZLv6Ogo\nLkuEFUvDealOJiKXcus7zMeOJkudw844lXWC0z2mvFuhUCgUdzRuF95tvsdT\nF96dnZ2tvLuhodzStfnzZtPvfXrRjqCtNHLkcFq5IkA42MHYKPr66y+pD/82\nY8YUatfuV2rR4gdas3o5TZo4jlq2/IF69eou3DI5OZF++OE7+u23DjR1ykR+\npic152eDd2wTHQrZtYNefvkl5q+5zD+PU4cO7Wj6tMmEmIeRI4bRH//4R/r+\n+29oNad9+HACffftNzR79gzxv9rPXS4H89JzNGnSOHl+8+ZA6t27JzVp0ph5\nd47wy82bAmkel2njhnXUr28f+a6501EmnLaspJBmTJ9Kf/3rXzjN5rRk8UIr\nfyHBNHXqJHlmyOABnP548S/DFmn2xWc0bepk6tihLc2bO4tc7m8vnD51gjpx\neX9t87PIcOCAfvTppx/TBk4DvLWQbZFFC+ezjbGUVq0MkHympCQJ90aexo0b\nLfmH7H9q+aOUJzfnNN/XQ+SNcvTt25sOs81z/FgyvfXWG/TIow+LzFOYG+Nb\nx980/5q58hFKiI+lTz7+iH75pTXbAGliMw0c2I9lO1T6ki1bNvqVib3PgQ2w\nds0KycecOTPZDlpM3bp2pj3M1Z0aQ65QKBSKOxR14t1ZNfNu8F/wYPDhG/W9\nSuXdtzegZ/DrIuZi8SKLfy5cOI/eeedt8ZEipuG5556lX3/9hQ4dOkhBQdvo\n/vvvpSlTJlBiQjwtWrSAHnzgfvGJwg5s2vQ1as48MP5QHMXFHaQO7dsJV4T/\ndgfz75dfbiK8Ozc3mz744H1q27YNOSrKaCPr+QMP3EfLlwfQ8bRjlJWVQU1f\ne4X69esjcQ44f81zTvze+cLDjx1LZW5cTMuWLhbeXXAhjw4nHaKvvmomfvCC\ngjwaNKg/vf3WW+IvNrEj8D0/8sjDNH/+XLYXjnBbypBndu0KorLSIvF5P/vs\nM2IzpCQn0aOPPkI/t/6JFrNsDsYeEP4Ov3l+fh7bGt/Sq6+8TBHh+5j7HqJm\nzT4X7gt7YQ233Z9++pE5cwrlZGfRp598RD17duP2cUH+X7tmFb+vhLn5PLrn\nnn9QePhekfnnn3/GZUsR7v4t2wbDhg5muZ2jNszvP+Hn4Ne+cD5PbJm7776b\noiL3cxss4jy2opdeaiycG7Hgg9l+2BcWWqNMHO49XcDdp7C9BJkuWbJQYoK2\nbNkg9beY69nEEykUCoVCcaehPrz70qVLyrsVV4WjR5Ml1iEyIoLGjx9NL7zw\nnMRswC8Lf/fMGVNFD4oKL9Err7xEwcHb5RwxJ48//pjES+Bo06Y1DWWOaI74\nuFj6xz/+Lrxvl/i7m7jTJerevav4xq10jtHTTz1JGRnHPXHQSAv80Io3ts4H\nDx7IuldKH3/8Iedpmuc9IbuCxZd+6WI+TRg/hrnim7QzeBvt3Pn/s/ce0FUd\nWb73Wt+8b+at9d68eW/e6/W91dMz0+1Odre72+12djt0cGrnhHPbxjkSjA22\nwWByzjnnKFAOCAECJJAESEJCIAkQygGhnOP+9n+fW1fnXl1JV4BQ2nutvaR7\n7zl1Kp2qX+3aVRUm6y3BrkWFeRZjttTz+5JPdzJXJ52Kl/t3++xkrr9f7PbU\n2izpBj+PGf2l1NHHHnuEFi+a73haG39Cpk6dRO8MfcsZl6lTJ9Nbb77B70od\nvf76q/Txxx/QwQP7KILj8u03Y+ibb8dwXHI5j++S+QUI7MzIG/A49lg5yWUR\nH39cfE1eeOE58YWHYC7CYnorj4qK8uiO22+j2Jgo+Qb+M7///S0UfzKO37ds\nWrhgLrN7E82dPYMefqiTPGHuhj0d5QRZvnwJPfnkE5yfxWInz87K0HPMVVVV\nVVUHrCp3q15P3RceRqtXrRDfgwXMamDAy8UFBD9v8KdhzkvMeeDu0NAg+Xwm\nJUk4L+X0KeFR8CdsrPgfvtFYK3nTTTfy74lOPxOLu1to+LDPxEcD9mwJ55bf\nUUoKh9PaIPuNDOWw2hi+SXhz8uSJ8l7ceefttIvfB8PBGAc88MD9sp/JyBHD\nxV4Mn+wTJ45TQvxJSk9PY6aulLSCMbOyLsg6TMOrSxYvpAcffEC426wnhB81\n4tdQX02PPvow7dyxVeJqzzc8G+lFuq31ky3y+d133qb6ukp66KG/iM/KqVOJ\nzMTHKTExgbKzM+X9HjF8GL333rt05PAh8WlZxiwMW3tZaTFt3rRe/OEPHAin\nV199mUaMGCbxlGdx2Igj/IAwD+BMR2uTlNerL78k45Vg5mVwNgR53VmeQOHf\njvg3N9fRmzxusMY8Zh1prW19qfqbqKqqqqoOLFXuVr0eCn6D7fWP994jPt0Q\nXz8f+QyGBVcOGfKC2EchsCeDnWG7hmA93y3My/hruHvSpAlO26+Pz3Zhz8rK\nMvHtuO++PzrCJebjYcyen8v/p5MT6Ve/uonSUlMsSy4z3htvvCb+0JAa5mHY\nfcd/N47fjTp6/PHHhEVbW6w9RHz3+NA999zN9b+YVq5YJrbszMyLznikpaWK\n30xTg7UvCOzEt912q6z/hITvDaZf//pX4qMulM/v34svPE8bN6wVBm/jbnLJ\nP8jkyd8LC5t9XPD53XeHCrNirAAf8qqqCvmtrrZG5giwPhS+1ytXLqfgQD86\nsD+cwLaQ4OAAuuuuOygjI13CfP+9d5zcPXbsN8LExt4NX3CkI17SYe2HjrwA\ni0/8frz49OC6ZcuWyFglMzOjfZ5wWuG7HR0VScuXL+Wx0lkeS/1O/N0hsMnD\n3o2yP3I4Up6ptm9VVVVV1YGkHXJ3jHK36rVTw933Mw9/MXIEBQT4yTq83/72\nZjoafZjOnUule5jBP/vsE/Fljo2JFvv17NkzmZ/LyNd3F/3nf/yH7EvS3FRP\n7zEjDhnyPEVFHZH9TGAz3r59C9eXOpo/fy7deOMvxcc4Pz+XnnvuGXr6qSe4\nHmdRbm4m3cFcCHvuaeyB0tpI06dNkXitXLGENm1cR3/684P05JOPU0F+jqxR\nhB/zjBnTZA/wMaO/ohtuuIHCQgMpNydTGB124jlzZtK06VNkLSR8ng0vwl4P\nv2jsJ17NTAz/848+ep9GfzVKfDt8+H37iv+/VJQvazrhSzN69Jd0ubjIGYb4\nd/Pnt956g/7ylz/RRebkkpJi+fxnjuuFC+eZZQ/Jb1hDOm/ubJoyZaLEEfMD\nYHmkd9y4b8R/e8mSheIjjzmH3/72N7KGNIDff/j5wKe7sCCP1qxeyUx+J/n5\n+oivDPYP/MlPfiz7ssA/BefowO/7Tw8+QPPnzREOh18N9lp54flnOU9esvJk\nmmueYGwxZ/YMuvfeu3mMtUT+Yk0l1lNiLgBhJiYclz1jsJbTvp+jqqqqqqpq\nf1fD3QF+u53cvWvHVuVu1R6pa2CpSRMnyN4b8EWG3wNssNjXDoy9khkQe3eA\nI2dMnyp+EPA5CQkJkL1I4NMAfwzYd8HT4EKszcPeGXgG+A7n5ExnBkb458+f\npcWLF9BCZnGc+YJrtm3dLL9HHTko9u6MC2kS9syZ0zicPRIe/JURDzxrE8cB\ncV67ZqXswT2d44V7wYTwNwfjTpjwnewZAj9us/cffElCQgIlbOxlaNmEm+ni\nxXPC4bt9ttMOftfS08/I97H8zs1kvocdHesv7ft64zPmAuBTnpwUz3U7Uz6D\nYRM57zB+gF/3uHHf0vcTxwvT5vO4AXuPWPb8UcLd2PsFPuRYN4q1obgO6d7F\ncQkO9pezceCzg3398D2YGXuWoIymTZss4xDYo8V2zfFCeWKdpIkr4pGcnOAx\nTyQtzObH445J3AM4rwMD/WSfF5wndC49RfIUPvgTxo8T27p9HxRVVVVVVdV+\nr401whaRB/fRjm2bRX25D0w5k0xfzVys3K16zdSclYI9p7EftTkXp5rHffD/\nxf846wW/ye/McA31Vdb1OGuGP1tnzjTS0HfeovHMZvCnsPxJrDPMUZexJx+u\nrWPuRTjmfBvxqW6sE8bF/xhvIl5gPdhv62or5H+Ss2Sanb7NiKczTvAnx7k2\nrY2Oe1sdz6p0+CW3rYVEXGod6UC8ES/rnma5trSkyBkmvq/l5xufZnxvzzt8\nNqyL/82+3fiMvDPn/cBnWp7pOIdm6pRJPO6YT+aMGvzFOAB7EFr3NEs+NDnO\nukG41prPRgkb6y/raquc5YHfkS7TdsBH3sUPu7EtT2o95InJb/ikY19HXAv+\nx3jJ2LbNPcrcqqqqqqoDUdF/F+Rlyz5g+/eFiT2tuLiIRk1fqNytes3rmtmT\nGp9ljwsHF7c4vjdnHnr6DJ7DntwPP/RX2UewoMDaC8XYUw2LQnGP/bP9PBvr\nnEXbWY/4zvYsc697nMHt9t+c97bUe/RFdk+H/Xv3OHR0bVfpcobRaDFrq+M7\nxAl+IbDVR0dHUfzJE/z3sNi04Vdi0mniYcJ0zydP5WGPl6ezbpo7yRPzHPNM\nw/juv+sZOqqqqqqqA1Id/TXmj2VvifoaKq8opVHTlLtV+5ainmKfa5wts3Tp\nIvGJsDObapuCW/FO7w0LoaBAX9kjHH4hsbFH5Wx35VpVVVVVVdXeUWNjgn1L\n5sDLLit3q/ZJha+Dqaf4v7fj05fV7NkH35GqyjLxEZH3TPcJUVVVVVVV7RMK\nW9iA4e7Nyt0DTT35gqh2nV8uPimqqqqqqqqqfUJdufsMZV8ld9vZu7vcjXCM\nunM3nt05d+cod6uqqqqqqqqqqvZZtXN3csqVc7cnm7dyt6qqqqqqqqqqqqql\nyt2qqqqqqqqqqqqqPa/K3aqqqqqqqqqqqqo9r8rdqqqqqqqqqqqqqj2vyt2q\nfVW92b/E2z1O+sNeKP0hjqqqqqqqqqpXrsrdqj2r1Z1+tp+T6Pxezh9v6ZJD\nZX/q1rZz3DtSa6/6xrYzz/uoynmOjvPTVfufervXpdnrsbv3uWtH55325Tzo\nz/uBNjnOnOuJOtFrZeSWJve6eb20L9bl7tYN3bdV1VtV7lbtmXpVRx1Li7T3\n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\nCA/3Ij0Njs+4xvgpm/nFztqC7tRltM3Yr9Aed3v+dP6eV8r77drmWGsB4B/X\n5ktvnVMzjdtg+CeiDZY0c1libgO/Od9ZOW+5ntuiUkmzec+c6TBtYWuTyz68\nZr2StHfOOuZ+/leT9DHNjvcMc4jmmbKvd3K8jDOxxkjXWPZP7UvcbdjbhGu4\nG89U7u5favpnT2r6T/s19vYDbQ32q4VtxuzPatYx2cNBew5/B/g+dHS+o+Eb\nrFNHG2meK/2eF3Gx5pPbuNL8bmy9Jj3mM+wRsMNi3hw2Iqwxio2NEbsh/BjM\nGdP255n7MS9rrZW7NnOHYASsB8WcduTB/bI+DWuf1q9fLbZCwxbuafaUbvff\n3MvazkQmbR3d73KNrQxMHrrnD8KB3eynP/2JrBWsr6/xOB9gytXwr3u5esp3\nudex32KrLR/c64On+mHPI7SjLuF6KF/zv6fvUeawv2MPzVdeGSL11f08DXv+\nt0tDB2Xm6VrzXNht4ZcLeyP8rDrL01a3Zzm/x/Pcyq/FrUytONV2GG/3+uOS\nHlzvoQ6ZfLTKpsYZx67aos7KwlPdkHSacnec3eMeV3NNV22ES551431zv8bd\n/8x8b9ait8WrxmN52L/rqI53Vofd86VdeXl4/zprS66mLndUxh2Vpf09B0vD\nlwo+jzivCu0j1j/C/wPzq8423bbG3x6e/TdzradybWpsX5Ytjud7yhN7fTK+\neXY7B3ztMR+h6yr7r/al8yqvjrtzaJly94BRb+bPxI/OZjfqSE37a+wQPa+1\ncg4QbM17w0JkXwcweFlZcZf+I9dyb1YzD46+BGsq4ccRGhIg5wnCB6C/tNso\nN/iCwO9g+7bNYn8daOuJrLnyNJl7xtwybP09lUYTLtY1wF8ePl6wqQ20PFVV\n7UxR39GWoI3GmTloH+GzFBt7VLior74P9jli1f6p7bk7S7i7sLBQuVu117Qj\nG1j7+uvdPNv1bEObHL4L+L+qssyxx3Nzh/bL7qa5O2r8KMCuiIuZo74W/uPX\nSxscZ0+YMUn9dRs/XV+1fH6anP4BPf08k6fGb7+306+qer3V7DuKdhHto+Uz\nQ33af6OvjgdUvVflblXVnlH73GNvt5Wucen9vOl+/Guvaq1vf1D3eezr8TyT\np71dP1VVe0s78xNRVe0JVe5WVVVVVVVVVVVV7XlV7lZVVVVVVVVVVVXteVXu\nVlXtKe3LPrPXM259OR9UVVVVVVWvnyp3q/aEwofY7JHa23G5WrXWJradw+7N\nPa2yNxzJHq+9Hf92ccMexEQefXqbGqw9Vcy60O7kUUdrNSXfulhTqqqqqqqq\nOhhUuVu1JxTrwnHG2tmzp69orwSzxuxaxulKwjRrbnDmM/aXwl5vXa5Ba8Q+\nJiWUnHyKSkuK+9SaNcTl0qV8Opee6iwXl/WK/B3Onks5neQ8A8ObMM1+KZ7O\neTnPeYZzM/tSPqiqqqqqqvaGKnerXvs6VSfnfn/xxXD6YuRw55loLudfOM50\nsLOY/TPOrwP3dbS/Q0fnTFzrMPF5b1gwzZs7S/aO/uij9+UcNfs5E/YzGnAP\nPu/auZWeeuoJSjoVT+b8R/dndpSGjs4qcZ7v4nY+hrmn3RkZHs4EQjmsXLmM\nXnl5CF0qync+X87n5P+RNpyX/MEH71rn1DnOYXc/A9CuOMMZ50YvXDjfZW8M\ncxb5a6+9LGeYe4q3qqqqqqrqYNK+zt14ljt3l5aWKnf3YQVvlZYW05tvvsHs\n+aR1di/ORhTfC8tPw/JlaDsjxpwLbX5LSoonf7/dsr+qO6uZM4pLSy45fEBa\nbGFcuzCNrfuN11+lJYsXUEF+Ns2ZPVPOGDFnIJt0yFnEDn8U/Obru4t+9KN/\no4STcRK2tVdyi5OxzZnb4FxzzjK+N2yM86Crqsqc18m5ZXw/zmnGWQ+G5U38\nEb7ZC8ucL26dZVznPI8eftZgX5zxOWrUSE5HkYSDcUVc3FEJv6qqnIYN+4zu\nv/9el/Ls6JwGK4/qafjwz+mmm26kzIvnnf4m+A1ntn/77RjatnXzdd0jT1VV\nVVVVtS9qR+dVGu6+fPlyl9xt2Lu73G2uU+4eeAqBXfXRRx+m7du20KxZ02ny\n5O8p5fQp4cHjcTE0d+5sSj17mutEI8WfjKV5c+fQufQzoi+/PIQeeOB+mj17\nBuXmXGzjVWbSjIx02rljK+3atZ1WLF9KF86nSpg4n/3ahZkmrIlzEm+88Zf0\nOrP3hvVr5Awc3AdbcGDgHlq4YB7t9tkhz/3+++8oKuqQ8Ct8Ne6443basnk9\nrV27isaPHydhG3s7zgRfv241M/Ae2rhhLaWnneE41wunBgX60Z49O+U+hG0x\neyPFHIsWmzvOF/Tz9ZHvjS07K+sCzZ83R+KB8+bBwjijMj8vS1h9y+YNtIrL\nIy83k3w4HrA/g8cPHAin++77Iw0Z8iKtWbNKzvzBeYl/+cufKCQkUPJvwoTv\n6CTnpScfHZwVirSMHj2K7rj9Nlq6ZKGT0dG2IN+R30eORIo9vbfrpaqqqqqq\nam9qG3cv6JS7wbvu3A0uvhLuhip3D2wFey1fvoTuuecu4cfVq1fQ66+9Iuxb\nVJRHYaHB9Mtf/oJCQ4PERhzKjIfP4eGhzKApdD+z4P3330fz5s12MjK0uLiA\nxoz+krZt3cSMe4S+/fZrev+9d7hOXOKwAq9hmO9SSUmRnB18882/El8JcDds\nyeBPsOyECePol7/4OS1duojWMUN/+slH9NijjwhDFxTk0K23/p6mTJlIm5iT\nvxw1ku688w7hediDP//8U/riixHMsydo+vSpNHLEMGFl2OPf4/QkJiYwk/vR\n0KFviu07Pj5O/D8OHz5EkYcO0EsvvSBnGoN7kYZLlwrpzTf/TrffdhtlZZ6X\n5992261iZ25qrKeJE8fTxO/Hi28JfH8eeeQhGTuEhATQLzgNSN96Th/OuN+1\nc5vcu5Y5HAp/GcQJnN5unoCfv2b1Sorm8cbsWTPor3/9s9jjje0dY6G77rrT\nhcdVVVVVVVUHqyp3q/aEgrGWMGs9+cTjwqiQ5OQEuvHGXwhbwu/37rvvZDa2\nGBl2WPkszEzitwDFb02Nxi7dJDbpZ55+iupqK+W6c+fO0s2/uVkY+1qHCSYF\na8Jmv2PHFpc9PsC7fr576Pbbb6Oc7IvyW1FhLt115500d+4s+R/cHRLsL79l\nZV6gX//6VxRzLEp4FAyfmHCC36NqsTODTZFPixbNF+YNCwul3NwsOhQZQZUV\nJTSMOf2DD9+jU6cSmMnj6Ykn/kbDP//M6dMBCQ7yp3vuvkuu38vjhYce+iu9\nxSze1NhAq1ctp+SkBLlu7ZqVwsd4Xm1NuUv6YKvftm0z/fGP94itHAK7/IMP\n3s/vX6mLL7rlx59D334zhsrLiiU9YPi9e4Od/jGw38PXaNHCecrdqqqqqqqD\nXpW7VXtCwViLFy8Q/wV8Bh828F/w3pIlC7hcK4TlDCPDz/nBBx9wYWT4Gbv6\nNzfRqJHD6Z133hY7q/FdfuxvjwrX1V7jMBdymGBkcClY1M7dCAN29AcfvE/8\nvZE+MOvQoW8JI4NH4XcBXxdIHjM0PoO7cW9Bfo74WYPLYRMH5yKcjAtp9O67\nb9Pj/PxXXnmJdvvslPHE/ff/kaZOnUT7I8IoLDSQ1q1dRUGB/s50tLbU83tw\nUcYZ+yP20irmbIwbMN9w4sQxWjB/rrAx8mUHjzNg7wZ3Y6wh6du62cndW7du\noscee8Th30IyLsH17tyNvEMa3nzzddq6ZSOPJVbzWOMW+vjjD/idbztzeciQ\nF2Q8YXzSr/U+Naqqqqqqqv1FlbtVe0INd7/00ovOdYrYZ+4+5kt//93iiwDW\nPHBwn9QF2GgfeOA+OnDA+vzZZ5/QqC9GyP/NsE03Wpz3zTejxe8B9mbYqo09\nGqxYwWFccZhPPmGxc2tzW5jMkmDEvzEDW/bgVlv6moTnwfnwAzFrOl988Xma\nO2cWvzeFdOedt9OJ48cs23teFt15x+3M4XH87lTRV199QStWLKNTSYnks2sn\n/elP98s4AesSL1xIpz17dssYAT7isTFR4m+9YME8i4yb2++/Lf+zvvXW3+nd\nd4YKR9fX13L+D6H333+XtiAtjrEBOPpvf3tEmBu+Jg8//Ffy8dnu4O5W5++y\nn4mDu/EZ4xrD0rJvCeuMGVMlnwKZv0OZ8+fMmSl2/vPnzpJZ7zpkyBDxxbHm\nGWqlzelsfxRVVVVVVdWBqsrdqj2hYK758+cwTz4gezdjn4zNmzfSiy88R/l5\n2cLE9913L02a9D2dTk5ibvOjn/3sp4696BpoxIhh9OyzT1NBfp5zH2mw9oH9\n4cyit1HE/r1iP486EklDmHUvZqSLPfaqwowI4zBrHWE+x2GeE6YGPy9dulB4\nty19TRQWFix+JmlpKcywVbIG88knH6fTpxOZndPk2RH7QiUv0lJP8+cb+Fl7\n6RLnx89//jNZd5qbm00L5s+n3/72N5Sbk0kzZ0yjnTstBk7le/5w2+/pOLP7\n9GlThPGDggLp5Mnj/DeADh/a72Z/bpE1odhXJOnUSQkDazZ/8pOfMLtHiz0f\nY5UVK5bSHXfeJmMDsPdfmeknTZpA5WUlcqbOSsfvxZfyhZXx+fY7/kCXinLb\nuJv5OSJir8whNDnPFSKxud9ww0/o27FfM6dXyVgL/i6w6dfVVgunw1Zv7PS9\nXU9VVVVVVVWvpyp3q/aEYk/nPbt30kcffSC21h3bt8h+H5EHI5xnF2JPbNjD\np02dJH4RYGJcA5/jAH9fev75Z2nN6hWyf5/ZFxqcCP+P7777VmysWK+3NyxI\n+PnqwxzLYe5xhBks8cS+1M888xSNHz9W/MXb9gFsEh/qm276pdhykdbJkyeK\nXwhs5PC/gM18Gf+GMUZgoB89+gg+L2R+zZN1nNgjG0y7YvkSeuH55yQ87Fcy\natQI5mp/2rRpHY9dZouPNJh8+PDPxKfjyy9H0nfjvqW42KNue403io/1yJHD\n+Z0pE/t2Jo8dPvn4I2Fo2PPhazJlyiRJE9KG9GM9JOzk8LvHGAl5J78z12Ne\nYipfjzkG7H1i9k/J5bxAngwb9qm1F4tjj8Do6MP03HPP0KuvvETHjh4W+z7W\n0n495itZU4rnYN2qfZ9vVVVVVVXVwaLK3ao9oWAqMBzORYw6ckh8P1JTU5y+\n1eAuMGDkwQOi+czBSUmJcr5lfV2l7Id99Gg0RTIbwu/Z8KX4iddXy556sPcm\n8z3g4ybH3iSdh1nRvTA5nmdSkunYsaPMkNGyN6B9/23Ye+FPjb+RkQeYeU+K\nPRn3JSUlUEzMMYqLOybsirMr5XPsMfHfwL4i+/fv4/gckbjEnzwu+4sjjsdP\nxNKRwweFYcv53bR8x5tkv+39+yNkzSXi5X72Op5bXVUuNmcTT6QrKyvDuRcJ\n8ic2NkbSdCYlyXG2TSGXz345j7P4UgHH2fod+wOWlRZznPE5mlL4eqvNqJO8\niI4+Qkejo2XNqHneGb4H6YyOjpL/wdoIK4YVZylhj8fz3pz5qaqqqqqqOgBV\nuVu1pxT2V1dpdeEtl99b2/5vcpzLaMR9HV7bb609HqZ1No7jHtv+03jO1i2b\n6Oabf831L9N5TRuXt7p8Z/9sreds9hDPZrd4kNOOL2G22u5xS3fb++x6xo15\nluvvzhQ5wm1yhmnPI3POj/v1kl8yFmiLvzOOtvxqO1fIcZnc0+oSjqqqqqqq\n6mDSgcDdEmfl7j6q1V78Xu3h/67u7eq3axmmaxhgUfh+4Jwa+F/4+e3p4F5P\nz+4oLt2JY1d56k2ZuIfRVTy9SV9371dVVVVVVR1c6om7c3NzqaCgwMnd4FxP\n51Vea+42580rd6v2ZTX7UicmnpRzb+Dz4elMGVVVVVVVVVVVu3aHu8G9nrjb\n8LJyt+pgUct/o73/haqqqqqqqqpqR6rcrap6par+E6qqqqqqqqreq3K3qqqq\nqqqqqqqqas+rcvcg1PpqVVVVVVVVVdWr097mmX6oyt0DWHv7fVRVVVVVVVUd\nfNrb/NOHVbl7AGkn70CDqqqqqqqqqmoPqXK4cvegUQ91vLffP1VVVVVVVdXB\nq8rfyt0DTuuVtVVVVVVVVVX7tip/K3f3e63vPm/Xq6qqqqqqqqpeY70i/u5t\njlLuviruzh0s3F3vPW8734m6KlVVVVVVVVXVnlUvOXww87edu5NO923uRhzA\n3SUlJe25O2cQcLcXvH0141BVVVVVVVVV1SvV7jLIYGRvV+5OYYbNcnI3uFa5\nu49ofefM7bRry+ca+a6utpJqqsupuqqMqipLWUu61EpoxWVVVVVVVVXVwa5e\ncIOlpcIaYA6wR4ODRVzZRNlbubufaCfM7T6mRP1Gva+sAD+XsoK5mb2rK1RV\nVVVVVVVVe0TBGmAOiz1KhEXAJJ5YZTCzt3J3H1dvmNtRr1HHK8phsy7l/ys5\n/2o5jAbJ/9bWFtZWVVVVVVVVVdVrrC3CGmAOsAcYBCwCJgGbGLugsrdyd59W\nL5kbivGlVb+rOC8bSEVFRUVFRUWltwQsAiYReyAzijdrLwcDeyt391H1krnh\nR1VRDh8sHk821PfuS6aioqKioqKiYhOwCRgFrAJmGezsrdzdR9VLO3dZWTHn\nTQXnaXPvvlgqKioqKioqKh4EjAJWAbPU13nJ3r3NYcrdg4e7O7B1uzO3sXPD\nt0pFRUVFRUVFpa8KWMXYvbvyORnINu++xt2GuQc7d3fF3Nizp7y81JmXKioq\nKioqKip9WcAsYBcwjFfs3ds81ke4G9pd7nZnb0hX3I1ndMTdONOnsLBw4HG3\nF8xdW1NBpSWXJN9UVFRUVFRUVPqLgF3AMGCZwcje3nB3WVlZn+FuxGVQcrft\nHFbM0VRXV/Xui6OioqKioqKicgVSXV3p6m/Swdk6g5m7YWfuLnd35msCUe72\nkrlt3I21wBgnqn+JioqKioqKSn8UMAxYxrm/ySCyeSt39yH1wtYt51BWlvfu\nC6OioqKioqKichVSWWmdrT3YbN7K3X1HO9w30FYny0ovST6pqKioqKioqPRX\nAcuAabri7gblbuXunlAvmFt9TFRUVFRUVFQGgnj0NRkENm/l7j6iXXF3bRXV\nVJdTeVlJ774oKioqKioqKirXQMA0YBswjnK3cndf4m6MB6uryqiivLR3XxIV\nFRUVFRUVlWsgYBqwjfv6SuVu5e6eVm98TJS7VVRUVFRUVAaKeOTujti7D7Ca\ncvcA4W4vfbuVu1VUVFRUVFQGinSLuwcIe/cF7jb3XQl35+XlObg7e+Byd63h\n7lLlbhUVFRUVFZUBIRZ3l1rcPUh8vL09J74z7jbsfS25G2Erd7fZuqFVlcrd\nKioqKioqKgNDyplpwDaGcwYld2dlUU5OjnJ3b3O3m4/JteLulpZmzq9MOnMm\nhU6fTqLTKUl0lv8vLy+76vcnIf4kpaWlXnU4KioqKioqKgNfKjriblblbuXu\ngcDddXW1tGb1Mlq1cilt3bqRtm7ZQGvXrqQt/Le09Or2KFyzegX5++2+qjBU\nVFRUVFRUBocodyt3D3TurqmppkkTx1JYaBCdS08TTUpKpClTxtPhwwed12Vl\nZdLp5CTKzMxwfldfX8f5XsTlVE9paWfFTl5VVen8HfweGOArZQp/JZRp2731\nlJ2TJb+pqKioqKioqCh3K3f3hnqzl8m15O6ZMyZRauoZl+/nzJ5GQYF+8n9s\n7DHasH417dq5lTZuWE0xMdHyfV5eLm3evJ4ORe7n37bRhnWraMeOLVwu5fL7\nOubu4CB/Kce1a1ZQenqbz0lCwkmxrdtZXEVFRUVFRWXwSmfcPVD3ElTu7n29\nvtxdQ9OnTRTbdGhIIIWw+vnuolkzp9CF8+lUdKlQ/j9yOJLy8/MoKuowzZg+\nUfI6M/MijRkzkgID9ghTJyefotmzptG+fWES9vp1K4XdW1tbafWqZbRr1zb5\nHuW9atVS8vffLb+pqKioqKioqCh3K3cPFu4GFwcF+NGUyePp+wnfUGLiSSJG\nYvD2N19/QSHBAXTwYAQFBwXQ6C+HU2zsUcnj78aNoZzcbGd4+8LDaMH82VK+\n69evZia3bOanEhNo1qypUpb5XEYzpk/i+lR4VXFXUVFRUVFRGTii3K3cPfC5\nu1oYOOlUgnyOi4uhaVMnUnHxJfkcFhYs/t9794aIPTyc/0bs20s52Vli7540\ncZyUg5G4uGM0m/ka5WjnbpQZvk9LPSthbN60Xm3dKioqKioqKk5R7lbuHgzc\nPX3a9+IjAkG+r161VPy2W7iM8P3UqROYw4sdZdRIUdGHhcux1hK2cLC2uXfz\nxrW0YcMaYep1a1dRgL+v81m+e3aJ78mihXPo7NkU+e7ChfNct/KlDqSlnpE9\nVFpb2/5XUVFRUVFRGRyi3N3fuXuncncXAu6eNnW8094NgV83fE2STiXKPoNY\n/wiWjojYSz4+22np0oXC4eDusd9+RVu2rKe9YSG022cHzZ093bln95o1rvsI\nZjBjjx37FS1dskDKFmy+ds1y8QfH5wXzZ8l6S7A9/o+PP35VaVNRUVFRUVHp\nPzKYufsLG3f33/Mqlbu7EuRzdNQhKips87UGDx87ekT2DYRcvlxM4eEhFOC/\nh4KC/Cg9PU2+z8i4QFOnTKCE+BOyDyEY+1RivDMc+Iin287Nqa2toymTvxOf\ncfOco/ycs2fPSLkfOLCPx3hZUjfwP87zUVFRUVFRURkcotydQlldcDf4Fyzs\nibsNeyt3X0Purr1+58S7+1+jzOwC+zV8v6sqq6zrWzr31754MYPmzZ1BZaV6\ntr2KioqKioqKq7Tj7lrlbuXu3uVuUxevB3d3JbB3T5r4ndSHrgRljH0EzV6C\nKioqKioqKip2ceduF5u3crdy9yDn7vLyMjoafUTKpitBGeP8nXyuSyoqKioq\nKioq7qLcrdyt3K2ioqKioqKi0vOi3K3crdytoqKioqKiotLzotyt3K3craKi\noqKioqLS86Lcrdyt3K2ioqKioqKi0vOi3K3crdytoqKioqKiotLzotyt3K3c\nraKioqKioqLS86Lc3fV5leBfcDB4uC9wd35+vnK3ioqKioqKiko/E+Xua8Pd\ndvb2lrvN/Ya9lbuVu1VUVFRUVFQGrih3d87d4F7lbuVuFRUVFRUVFZWrFeVu\n5W7lbhUVFRUVFZXBIi1NzEwVpVRfeqnbivtw/5WKcrdyt3K3ioqKioqKykCX\nVmax2vwsKkk8SkVRIVR4MKDbivtwP8JpdbBdd0S5W7lbuVtFRUVFRUVlIEsr\nM1lFWhLlhe2grN2rKNNnJWXt6r7KfXw/wqlIOyXhdkeUu5W7lbtVVFRUVFRU\nBrJUZ6ZRjv8GyvJZRdm+aynbb92VK9+PcHL810u43RHlbuVu5W4VFRUVFRWV\ngSot9XVUELHbYu6r4W03RXgIF+F7K8rdyt3K3SoqKioqKioDVWrzMynLd801\nZW4ne3O4CN9bUe7uPe72dG4OVLlbuVtFRUVFRUXl2khF+inxyfbejwSM7p0v\nCsJF+F7HRbnbyd3g2e5wt2Hv683dznPis5W7r4VculQk+aqioqKioqIy8KQ8\nNcFrH5Os3aspB3/3rPaKvREuwvdWlLtTKIu5OycnxyN328+rhA8ItCe5293P\nBHFQ7u5Z7t63L5zCw8N69BkqKioqKv1DTH/f16SpqZFaW1s7/B2/WexhcUhT\nU3On119rwbNgx2poqPf6njrO58uXi3swVpZ4y92wXefv96XK9GQqPBTosJF3\nzt7K3deOu8G7yt0Dn7t9fHax7uzRZ6ioqKio9G0BM27fvo2WLFksunu3j8w5\nXw+JijpM+/fv6/D3mJhjFBQUyCzhmaPBEwcPRlCA/x4KDPClANbgIH9hmY4E\nYeXm5lwzNgfv79q1TcL0Vs6fTyd/v91ORuop8Ya7wdgF+/dQ3aV8uaf+MjNX\nZGCX+58odyt39wftS9zt7+9Lfn6+PfoMFRUVFZW+K+hnZ86cTpMnTxT23rp1\nC40fP46WLl3stH3X1zfI34KCfGaEMue9Zq2Xkbq6Wun/IWBaMAZYoiNJS0ul\n1157RZ7nSTAeGDPmK9q7t+N5WTDDtKkTaNvWTRSxby+F7w3lv2HMEGX8W5Uz\nPhAwBpgjPz+P1q1dIfxjj39pWSkV8zONNDe3iO28oaFR0t7kdlYj0nupqFDC\nmDt3Bp0717avHngK6i6wcYNxkpJO0ZLF81ziBwEzIY7ugmdcCaN3yd171lDB\nAV+qK8qj2sIcammoF/6uK86nwkNBDp8T5W7lbuXuayFgbrC3ioqKisrgFD+/\nPfTppx+72GrPnTtHH374HkVGRkq/HRDgTwcPHqCNGzfQwoUL6OTJE3JdVNQR\nOnLksPyP63bs2CY8gf7c39+P1qxZTStWLKfk5KR2z8V+DnPmzJJnT5r0fbvf\nwQ7z5s2hoUPfotTU1A7jD2aYNXMKs0FWu9+SkhLpwAHLln758iUKCQkQlg8N\nCaKvx4wkH5/tzvsSE05SUKAfBQX5UWzMUXl+cfEl2r8/nA4fPsj55MP3BzIb\nWfMAYHc/310UEhxA0dFHhLszMs7LeOP48VgKRFisJ0/EyXfQuLgY2r17h8QJ\ntvnVq5a24258BpPb5xvAY2lpadecu7EfSf4+H+bsPKrOTKfCyABqqq6kosPB\nVJ11juovFzKT+3W4H4pyt3J3f9De4m6Ua3BwILefftwe+FNoaAhNnDiB9Xv+\nP1i+w28h3B51Zp9QUVFRURkYAhYcO/ZrsXO7y8qVy8UOjj75o48+EH6Ojo6i\n9evX0qhRI6WPXrVqBX+/TK5Hn/7xxx/Q2bNn6NSpRHrvvXcoNjaGtm3bSnv2\n+Lj4dOBahIP+xtd3D02dOqXd8+PiYumZZ57k+H3L8ZhBERGefVFqqmto5ozJ\ntH3bZrFz7w0Lpuwsa2+7LP67cMEcSmCm9t2zkznZh6qrKjlex2jypO+Ep8HW\n2dmZtHTJAjrOXJycfIqWL1tEZ86kUObFDJo6eTyPLw5RYmI8LVgwm+Jijwrj\nbNmygXbu2CrXh+0Npgnjv5Fw4D+yfOlCSog/IYpwMy6cF75HXI4ePcz5k0Ar\nVyyR57izNPIJ8wDHjx8XPgIbIS8uXrx4RWXcKXfvWSM27coLKZQbtJnyQrdT\nc10N/91BuSHbqOrCGSo6EirXKXcrdw9E7q6vreox7kZeoo3DGNzi7mCaPPl7\nYW8wOL7Db7imoqL8mj1XRUVFRaVvChjviy9GUlhYaLvfduzYLv0D+uQPPniX\n2TVevkc//tlnnwhTb9iwTmzaEPTpw4Z9xtx9ls6dS+dwR4jPSmBgADNrojNc\nMMG2bVvo888/kTCXLFlEI0Z8ThkZGc5r8Izvv/9OfktOThab0Oeffyqs4i7g\nBnD3xo1rxa87wH+3cK4R2JunTplAq1cto0qHDbmK+Wb+3JnyFxIWFiQcDtt2\n5MEIsZ/7cziZmRdp7pzpzvWS8MeGDbuEWWnmjEnMJ5YfSSn/xTPA+bhmxvSJ\n4nN+4EC4fC/+L+Gh4gtjJCIiTJjc3d5tyiU1NY3i4+PpxInjdPp08hX7onfl\nZ5ITuImyA3CW5UrKD/cR7oYNXM6kDNhk/d5DfiZgHuVu5e5e5e66nuNuT4J5\nQPXvVlFRURm8smjRApo+farLd+jDv/lmDG3Zskn6Z9ixMzIuOH8fPfpLOnTo\nkHD3qlUrnd+DjeFTgn4dPiiwdS9evFCuQb8PQd8/adJEsbMvX76UPvnkQ3rp\npReErY2AA95//x2XZyIOYFB3wbWzZ08TRvYk59LT6Juvv6CVK5cIg0BKmSvm\nzp4u/t8QrMkEXx8+HMnpOiC8fCYlmS4wvy9ZPN/p1w2fkpDgQCosKKCZzOZO\n/3fOI7A64gAb+OJFc+nIkUg67AgLcQCP+7EaiYmJpmVLF3rkbgjYCXmZlJTU\n4TXeSFfcnYVz3+FHAp8TG3fjM+zcWT24rtLOPsrdyt3K3SoqKioqA13SmQk/\n++xjsUEnJCRQfPxJWr9+HQ0f/rn0ueib4WO9du0aOn/+PO3fHyF+J/n5BbLe\n8csvR4pvybFjR8Uunp+fK37Vvr6+cv+WLZvpnXfeln4eAj6ArzJs3eDoGTOm\niy85bOSZmZnidwIuwDpP+LogfvAxgR84+n93ATNMnvwdRUbul3WN6emplJp6\nljmiUny5V61cKnbsNauXU/jeEHk+7N4zpk8WP+yCwgI6lZjArDyPn5/BLFQo\ne6zgfL4LF84J05u1l757dgk/g7MXM48jXPjFHzsWTePGjpb7T5yIE/+RHL6/\nkMMGyxcVFUiezJ8/S+KH6zZtXEuLFszplKkNT12NeL1/twfu7un9u5W7lbsH\nG3f7+PjIXoIqKioqKoNXsDZy6tTJwsAzZkxjneq0LaM/Bmdjf0GwN9ZAwl8b\nAmZYsGAeM+gCmjVrBm3fvlX6fDA0fMNh58bvWJfZ0ZpArNc0virwR5k8eZJc\nm5KSQtOmTebnLhT/76CgAI++FuCH9etW8VhhNe3cuZXjsIXHEJvF5wMMjP39\nwB5g8fXrV4lvSDN/Dg0Nos2b1lN09GHh6LDQYLk2IGAP7eAwCgvyZQyBsIyt\n/vChg8LRELD6xg1rZH3kvvAw2rJ5g1wPlgkI9KXdPjspwG+PhAkfcviqwHdl\n+/bNFBwcIGs74W9+tVzdlXSLu5m3m+vrmL93KXcPQu7u9LxKOSd+l3L3VUp4\n+N4O16qoqKioqAweQd969Gi02K2xZ54R9MXw54bPA1gc9nDjrwEpLi6We/Cb\nff87hIfvE5lP7de7C7jD7KUC7oBvieFr2L+xlhPP7si9GYyRn5frtHNbekZs\nd9hzBH/b4pTp3I+ktraG0tNSKcdhQ0fc09LO0pkzp517CdbV1YvN2sSnrKxU\n9ho0kpV5Ua4vY25COoxNHyyTevaM/FZaWuK8vpa/P3s2hS6cP8fXVNMl5vGe\nPt+nO+dV5oZspfIzJyknaLNX1yt3Xxl3ezonvje5G8/Es5W7e5670Z4gb1VU\nVFRUVDwJ+mLYu8HAKv1PusPdlnZ9Prxy97XjboxbO+JusDFUuXvgcLeKioqK\nikpngr46JCRY+mOV/icV6accZ757yd1e+Jc4uZvDRfhex0W5W7lbuVtFRUVF\nRUVlgEptfmaH595crSJchO+tKHcrd/eKeqhbyt0qKioqKioq11pa6uuoIGJP\nN31NvPMxQbgI31vpjLvbMbdyt3J3L3B3ednlHnoTVVRUVFRUVAaD4Az4HP8N\n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\nfx7/kvtdieWnn6j/tElT4o9//vnvNh36A3vG3ojdhs0pN356ykDdKDtcyrOL\n1q5PPrZr2l36Hu4mtpV+O2Xanth81jS0AfHUrs3Q78V6EFNCn1IWYmoOmesT\nfseHDiOzVw3XF8wu19J1s07g+/wfO4B5qSPrGNZyrM9sDIlZw/AT/zwxSNyL\noR3yOPb9NrabMpH3e63YI9bPHOM7spY6cnjK2nNuWxdatvWBWbN9l50ztvGh\nyeOCuQZYj5A3ceeUhbbiGuQeC+fYdar2WJikNv8kdVbi7qSk5kkYhTl9Ye6G\njYtgnw7mbuZU/J6//CPfC2O15Rv9orXnBCwKN8vzZHzn74YnYCmOEVcBN+OL\n+/LL/Fx4xfo+/vlT22dr91Cw8STr7fRkDwT4kPn+V3ecZo88cwzuhP9/+vF7\ne1wYDx8x/kX4AT5AsicJecGhtkyGm8gPnx/nwEFSLvKDaUiL+GTqRl7CieQP\n78KiPJdH/vhFKYuU/ZtWvvyNtpJ9i+0zo/b88vTEP0Sf/PKPH+2ec9yXxzf4\n///3oPUMae4jJA3KTTuTP+nSpuxzQl6kJ7Ee1OXu8mJ7rw/aAZ++7IPBeoiy\nsT8L59MmP5r60FZwOOmSJ3tXUG5sgXahjpQNXy3lyONe1vK59Z/5e2dYV/FT\n+lD6gudpSZ/YJvqCvWnET57vJzNny8a6i+P85Dz6V2wOe+EYax5ZNyH+BrtS\nVtK3z1z+mrfbMjHut2ZtnSTe4Z5ZY5AObcAx/kY7iF+W+ymcJ/2a21DBrgvX\nFnWmvRYXZ9t7l9Bn0ha5zfzwRD3E/jlGu3GMtZHYN+2BT5vvkpbYW/63r9q/\nP7bhGWsHso6lTbEn6sDv3GsgPgr7kLq7ed9v7TfJuV+bdpTrUuw4t62Ztm3R\nLtR10RxbWpy3e/jzfelj1mV8j/7/ppWe9jiYlBSjmsDd+X4mOXdPTifuTkpC\n+bOUv7UlcRLMn+29fe3fHj6xx3MeI/tbe+9q+Y495uxZ/OS5v/2Bjex+wx3S\ny48/+Xte3oftPYLdvxXzl/TdOok/sJ2fsz+z6HGdf/tj+ezPh+09wR+Xs1AW\n87vkK3+TMvdKT/ZOfrx3el4WKbubZ7tN5LvUuZWfu693Wf/yHKG0kdRV9ouW\ndpP2fmwLD59ol2L5iu3iltOV2xdu+drt1LIFdx91foodPj5PjpXYyaOH7TaW\n8rp9K/k/Tue3J/ug1TfuucV+LbPrMjty7a5oM0/Uw7F/95oou17k/8W/FetU\nVnfqwRoJnz778GALbXsqXo+/5mV8VGJvnW2r07GH7eeqH5XYRVLSOEvGAzv2\n4x/54cFIcDdlgLsfPHjQ5u4n9xE8kO1P3J2UlJSUNMbK915fyvcxj6A8SUnj\nLvFdyDuwfjDc/e8duBvfMpwL7xa5W/Y0CcXdwtyItBF5+XL361NHsx0Hjpk6\n/aLexklJSUlJSVqS91tqlyMpaZwlsWHE/vHcOvuPEvs5Ozeb/cezm7L5hVt/\n2M+kE3cLF4faz8T1dRe5u7h/d5G72ffw3r317OT597L/2bTDxqjJPbCkpKSk\npKSkpKSkYUu4mz2IJve9mR2c2pedOn44mzp+IvvTxGvZ8p07ue/YI84kFHd3\nijEpvjcHudxNuVzuxk+Pv/4/X9iaffDJ1VbcXWLvpKSkpKSkpKQkHT1s7Rlw\nwvD20UNT2QcfXLI+4r1HeafFWv4Oms8/f8LfLdwN98LeZXEmdXK3+LyFuykP\n5YK7KafsabK+vpYdOHk2+68N27NP5+bsM/fEerefq0lKSkpKSkpKSkoaqn7P\nVu7cyk6fPpVtfXMq+/Pm17ObrXfm9OLuTvHddXA3eRS5m3IIdxNrItxNueHu\npeXl7PXJI9lTW3dmB06fyy5fvZbdvH07mzfHG6s7zdBCUlJSUlJSkre05+1g\n0uaomnXNMPbblz7MXtyxJ3vqlTeyS1c+Msy91n6mktgNfMlwLTEdnfYzGSZ3\nk7c8WyncTayJcDflXltby9ZWV7OlpaXs6Jnz2cSufdnLr+/NNu2eHJL2mzwn\nh6/d/NwfVrs1tC/bZPLWkH/b7Esq0xue0i5npNr4RtJQFEFfJ42S/OcGnfmo\nhnk4NEt4S4GdduXc5qfB+HCDGX827NyX7TxwLPvok08Nr65mq6srlrthWOFu\neaayG3ejbtzdib0H5W43xhv2hrsp/6rh7tWVFcPfK9nszZvZxQ+vZGfevZhN\nn3u3RO9kJ98OpxNnz2fHz5zT0em3vXTMU0dPaehsdmRaR4dPnvHSkWkdHTpx\nOnKdShpAB4/7ajqwquQdUqHr4VmXCPo6TmmPH9115ORplXHXf14IOx8draLA\n87AvI4SWFjvBbT7y5cAy1jx1/kJ2/r33DW9fzZaXlixz37171/qKeT5RYkzw\ndUuMCTHVxHiUxZkUubu4j2BI7pYyyLOVxVgTeb5yxXD3nTu8a/hOtnKXn8vZ\nHVPXopaXbmdLtxf9tHirp26jWwteWvTUrYV5P83PeWnBV3N+mp+7GVRzN301\nG1azfpqdmVHSDS/N3NCRf/muJw1BN6776pqS/Mo3c12/LcdDkY8d9rzhj7s3\nZ/1k54eA81HoebWKvBkhsBYNx3jJk518Wey2sFsP+bJiGWveWV7KVlpMatnU\nMDc+YonrRhJj0umZSg1/N3K5uxhrgo++jL2JOVlcXMxu3bpVqoWFBS/Nz88H\n1ZxhVh/dNIzpo1mYUEEzZmzS0A0zDmvo2rVrjdCnn34aVFr5Jg2mq1evqki7\n3kn1Snt8C6XrZt3nq5DzjNa8irRYwpd1fNkpNLP5smIn1rx9+7blUZe5idOQ\nGBOYuxjbXdzLZNj7mbjvzinGeLv7mlAP2Bv/vcve1Bn+dsUxH3Xj9n7l24ch\n5cv7WusH37TqWI/Evr4JrdDjv1Z6GnNiUlJVVeG30PY8TuymxYK+c0NotqxD\noed+Ddbpxr/9qsiPVQSDLi8vt5lb4kuEu11ft7wvp7iXicY+gmV7mkiMt/sO\nHeFu1hLUjTpSV+FvV7RD8Vgn+TJ6FZb3UWh78LXX0Hatde3FPibFrirzjsY6\naNzWS0mjqdD2rMWDo8CNGuN4aJ+pJoeGzjck61ThHV8W82XAQQR/4geGR9db\n+wZKXDfcyt6B4ut2udt9prKO91UW3xPfibspB2WSWBN5dyXldt+jQ73yvQXz\nZy2pM/xd1J1WvE0vlX13kPRg/l7y5f3Q5/muC6qsH7SuvdjXBb7SumcWunza\n8+2oS5PfYpZ2v4RSHfcaQ+erIe3xNxTTas6FoaXls/RhJ+TLYqEZsEzwJ35g\nYW78w+7egfKOSpe5h8XdRZ+3cLe7h7f7vnjhbnm+shhvItyNxPddt2hfH4Xm\n+JC8XyW9YawVY1LotbbWmKm1vgktrfkz9nqMm7T6LXTfadVBaxzSGk9j8oWW\nyZctq6iKb1ZDg3BtJ9YNqUG4UJgbSXwJzC3vyXGfpyzuH+juZVKMM5G9TIr7\nmQzK3ajo73a5232HjhtvIn5vN+ZkEIXm7tDpheT9KusCrfWDlrTGwtgV2qcx\nbtLmmlGXdv+NurTHDw0O1fCZjgKvanGtFjtVYed+JbztMjesWozrdvcPLPq6\nhbslDjsEd7vf7xZn4rK3+3ylPGPpsrfszyIxJ0XJ+iOkfBl+0HVAUSFtLDTH\nV7lGx43jY18/xD4vxr5+0OaVpDj6V+v60LrOtce3UKwae/nGkadDc3JoBixj\nTeHtMuaGW4vvypG9+3rtZTJonEkZd5ftJVjG3RJrItyN3x7/vRtzUiY3Dryb\nZJ3SSz5pCe+H5u6QPvsqNhv6WtHw79ch7Xll2NLmhlilzZnDVuxto2UHTbmO\ntMeZULyqNX9UYdDYeTV0eqE52ZfHfPnOV514sxjPLTEawt3C3O7+gb32Mgkd\n340kzqQY4y1rAconz1gWuVtivSXmpKwNujF5kc99z/PtZ1+b8OV43/Nil+Za\nI+b1g9b9h9jXN7FLm0Ni5R6ttondDrTttZe0xrXQDDoKTKvlrx2G/3cQheDf\nfiTxE73U7fswqcvdEqsh8SVF5q7yTGVV7u60p4nkIzHebpyJ6/OW91e6z1i6\nz1m6MSdFCZd3ky+fC3sP2yZC++2r+Pe1rj2tMSn0+Kq1zoh9vktKGgXFzrWh\nudE339jHvyrjuIZfqY4507eMdXCCj0JzshZ3d5LEYBT3L5HnFMWH3M3XXXUv\nE1/u7rSnieRfFmvicrcbc0Ld3P0FyyRt0UuDtrnvmmiUVMe1F7u0/Pah1xlN\nmRe1uStpvBXanuvgxtDXpdbYEXL80/LX+qZXx5yp5SceVU4elK9dyR7dEtNd\nfJayLK7b5z2V/XA3x/qN8XZjTcp83kXulnVGUb7c7eMX903LNz1fVeH4kGuC\nUVhjhB6TmrLOCD3naM2L2vN80nirDs7T8q/Gyqp18aXGeK/JtVrztW++IZlI\nU52Yz43pduNLyrhbYjvcPQQHjTF59OhRV+72eX+O+Lxd7i4+Y+nubyL83S93\nl323bo6vyt4hFTLf0Lxfh8aNu2PXKMzvGvWNnd+0mDX1XXzt4qvQ42lon27s\nPuKY5/468g2t0GzXiR+L3N3J1118N3xZbHc/vu5O3N3tvZXuPt5lsSZle5sI\nd7vPWhYlPvFeGkbfDIPPfddrWtde6DW5b3qhuTv2dUHs64fQXBF7u2jzmQa/\naZUvdP9q902vdtHgWs3xVCs9jXmrDg3q162bdULn68t2g7CiMKjr6+7E3T7P\nU/YT2+1ydxl7F2O8O71DpxhvIrHpxX0Fuyk0d4dOL7Sawvta64LQ46aW72Pc\n1g+xc3fS8KRtOzFKk0NDp6cxntbBtXXMr03gXy0W802vG2/Ks5TF5ymr+LpF\nvWJM+uHuYox3J5+3W17X5118h/yw1BTuDple7LyvyfFaCj0/xS5NTkmKS1r9\nq3VdxlxfLa4Nzciac5cW/2rx9DA5OaTEF+xyt8RIl70Xvsjcg8Z2F7lb2NtN\np4rPu/geHVEVv/ewudvXHjTWbE3h/SrpNcVnoM3zaf2QlFQu7WtlmLzqqypj\nm7bPZZjj+Cjwb0jW0dQwuLD4Tkp5HrG4h0k3X/cg+wd24+5u79CpEuddFust\nMTVFSRx4L1Vp31Bpaa0LRsFvH7p8sY+Zsc9Ndcw7aZ2RNG7Suo60xo7QY6pm\n+/nWQWte1ebbYfOvBtt1Ys0y7u72bkrfuG4f7hbm9uHu4vOV3dhbuLvsOUuX\nv4ehfvulk7R4P7TNhlwXVLlGtdYFoaU9X8QqbT9XUlJIaV9PsSo0X2rxr+Zc\n6Jue1tzvq5AsVpXHBpEbiyEx3YNydxVfdxl3V/V5d4o3cfcWLO4vWCbfNuv0\n/X7SGgXe17oP4Jtv7GNDaGlzf6zS5oGkJB9pXyc+0uBQLV+oL4dqjvlac5wm\nx2jIh+0GZUX3fZRl78eRd+TAsZ3eTTnI85RVuLvM513G3d3YW7hbfvYrn36p\nkp4W7/vaWOi1YuzrgqTRlO+8rc00Sc2UJjcmjZ60GXOcFJLtqvJdUcLcZXuX\nFP3c3bi7zNcdiru7+bw7xZu47/cR9qZebn0HaTfftg2dZmh7GMbabhj3AWK7\nh1S3tOeLXtJaB/nmm/goqYqack8exV4+H2mPv0l/VExcOwy5LNlNvtxdxtyu\nX3nQuG5f7u7k8+4Wb1L2Hkv3WUuJoSlrn07H+z2vCneHTKsO7tZaF/hKe8xJ\nelKxr4NGgY+S4lHs9hza9rXLmPSkNOf0mHh1GOm5ccnd5Jtvp+9W8XMjn/iS\nKr5u4W6OD8relFVUtsdJ2V4n7nOkw2jzftPzTau4f+KwrpVRuEabMnZpzwOj\nrtD3eXzly29N4rwmtJ+WvSSVS2vc1ZLvPFhFTapLaH6qW24sdxlzu9xdFtPt\n6+v25e4y9i7j7k77m6Ay9i6+09KNX3dVpd185JtWyPPqkJZda40hsY9dSaMp\nX35LnFeu0O2nbQ9JST6qgy+1eNU335CMFZrZqqRXpm7MLf7jupm7F3f7+rzL\n2Lu4hijGfPcr37YNeZ6WjVU5L3Q9RnEtOwxpzwNJ9c+fMa/7tPi3Ke2XNJg0\nx96YWbUKr8bEoSEYNgSzDTs9YdJe78UZNL7Eh7tDsXenfU6Ksd8ui5cd73Ru\nL/mmVXy/fQibCL1+CK3Yr2UtafN8UpKPQvOvdn2SRkva43SosVyzfKH5Uivf\n0GxShdv6ZUWXtcU/3Gu/wCJzD+rrrsrdvuztPmsp/C11LGufom+8m0L3zTD6\nehD7qoO9NaR1LYfmbu05ZVzq0RRpc1Kyg3g0Tv0R+1wzCnOcFiNoM1QvVeHF\nbhI+7RZbUgdzC3fzsx+fdy/27rTfySAaZr/0k2/I80bhmtIqn9ZYqKUmzYtN\naD9faXP1sDlPu59jlm/7xdzOWnZQB7/FnG9deWsotE+1ClcX1SmWOwRzd3on\nfDfuroO9y3zf3dpCQ2XlGUYZQ9tY6Hxjv/aaMnaNwvykUQ8tXhg3Do29vtrX\nZ6zXUpXzYq1DHXag5UurmrfGXK3JWRoq47gib4fyc1fxdVfl7qrsXeb79uXc\nTnL3VeykQfPoV9p2FvJaHsS2B2mbpowhTRkztebZxG+jqdj7TXtcGPa1WeW8\nmFVH/zZlXg9dDy1+8mG7QfnOh7eL+5aEZu4idw/K3mV7DJbx9yDy7Zth9OEw\nbCzmOlTRuI2FWmNc6PKNI88kxaMmcXfsY28T2mUU+sNXTZn/QzPboPzYibdD\nMHe/3B2CvTv5vt34k1i4e9DyxFKPpqxHtK5l7fqEUhPmznFUU7gndqV2Hlxp\n3K2/XepQU1hn0PL48rYPc/fj6/bhbh/2rsLfvu0wLDXFFptyLWvXJ5TGbezX\nnvOSkpL6l+b8ETq9cZuPtBhmEM7VYjufOO5hMHcZd4dk7yJ/8/+iNLlbi+O1\nyxnreqRJ42FSkq+07H7crqU0XsUl7XnEZ56ucm4T5mBt9gilXqzZy8ddB3P3\n4u4q7O3L38LgTebusvr1K+26hFQaG+Jqv6TR1LhxT1MU+hrWHo9iHde066Oh\nkMzRJO7oVLdufOrD2yGYuxt3V2XvKvxdt7TsK9l/GhuSkkSxc0Xs5UsaXYUe\n88dtXtBovzra0DdfTV7sx8ddlbmrcPeg7K3N3+Oi2K/R2MeGpKQ6pHVdxj4e\nJDVfTbG/0GXUZoWkx/Ll7dDM7cPd/bB3bP7vpiv2a37cxi5t/kl8FIe0+znZ\n1eipKeOkhv2NQn2156akarwdgrn75e6Q/D2ItPsrVsXefk0aXzXqO27t1xRp\n93Oyq9FTU/pj3Owv9jm4KQrFksPi7TLmrsrdZexdhb/r5vKkOK/5ptRDq75N\nkXa/DFvaHDxO3JOu87iut1TfJE0NyqQheLsTc/fL3nXxd1JajyQ1V9qclObi\n1L+pf5OaJG1GaZrq9HGnT/qkT/qkT/qkT/qkT/qkz3A//wIWIxkv\n " - ], - {{0, 381.0}, {367.0, 0}}, - {0, 255}, - ColorFunction -> RGBColor, - ImageResolution -> {144.0, 144.0}, - RasterInterpolation -> "High" - ], - BoxForm`ImageTag[ - "Byte", - ColorSpace -> "RGB", - Interleaving -> True - ], - Selectable -> False - ], - DefaultBaseStyle -> "ImageGraphics", - ImageSize -> Automatic, - ImageSizeRaw -> {367.0, 381.0}, - PlotRange -> {{0, 367.0}, {0, 381.0}} - ] - ], - "Input", - CellID -> 65238394 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData["ProcessEnvironment"], - "ExampleSubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "1c18137f-2400-4c09-a81f-67ad4ea7ccfb", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 23.5236}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[\"ProcessEnvironment\"], \"ExampleSubsection\", CellID -> 676738753]" - |>, - CellTags -> "Translated", - CellID -> 676738753 - ], - Cell[ - "MCP\:30b5\:30fc\:30d0\:306b\:6e21\:3059\:5fc5\:8981\:304c\:3042\:308b\:74b0\:5883\:5909\:6570\:3092\:30ab\:30b9\:30bf\:30de\:30a4\:30ba\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b1f2fc74-2d5f-4293-bdbb-3d1ba3efd4a4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 25.0213}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Customize the environment variables that should be passed to the MCP server:\", \"ExampleText\", CellID -> 347054391]" - |>, - CellTags -> "Translated", - CellID -> 347054391 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "installed", - "=", - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - "\"ClaudeDesktop\"", - ",", - RowBox[ - { - "ProcessEnvironment", - "->", - RowBox[ - {"<|", RowBox[{"\"MY_VARIABLE\"", "->", "1337"}], "|>"} - ] - } - ] - } - ], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 20463154 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 84949630 - ] - }, - Open - ] - ], - Cell[ - "\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:3092\:8868\:793a\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8e1261f3-082d-4d5f-aa3f-23e7ee11b219", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 26.5041}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"View the configuration file:\", \"ExampleText\", CellID -> 760139644]" - |>, - CellTags -> "Translated", - CellID -> 760139644 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "FilePrint", - "[", - RowBox[{"installed", "[", "\"Location\"", "]"}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 40891800 - ], - Cell[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"MY_VARIABLE\":1337\n\t\t\t}\n\t\t}\n\t}\n}", - "Print", - CellLabel -> "During evaluation of In[3]:=", - CellID -> 3825267 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "UninstallMCPServer", - "[", - RowBox[{"\"ClaudeDesktop\"", ",", "\"Wolfram\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[4]:=", - CellID -> 7190951 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"], - ImageSizeCache -> {10.0329, {0.0, 10.0329}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[4]=", - CellID -> 784899504 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["ToolOptions", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "78f17b69-76af-46be-9872-d47d9f4b010d", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 32.0455}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[InterpretationBox[Cell[\"ToolOptions\", \"ExampleSubsection\"], $Line = 0; ]], \"ExampleSubsection\", CellID -> 299069562]" - |>, - CellTags -> "Translated", - CellID -> 299069562 - ], - Cell[ - TextData[ - { - "\:5206\:96e2\:3055\:308c\:305f\:30b5\:30f3\:30c9\:30dc\:30c3\:30af\:30b9\:5316\:30ed\:30fc\:30ab\:30eb\:30ab\:30fc\:30cd\:30eb\:3092", - Cell[ - BoxData["WolframLanguageEvaluatorTool"], - "InlineFormula" - ], - "\:306b\:4f7f\:7528\:3059\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "aa6dd4f6-c5ed-43f1-b2c7-d4ac9ba696e4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 33.5717}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Use a separate sandboxed local kernel for the \", Cell[BoxData[\"WolframLanguageEvaluatorTool\"], \"InlineFormula\"], \":\"}], \"ExampleText\", CellID -> 35526031]" - |>, - CellTags -> "Translated", - CellID -> 35526031 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - "\"Claude\"", - ",", - "\"Wolfram\"", - ",", - RowBox[ - { - "\"ToolOptions\"", - "->", - RowBox[ - { - "<|", - RowBox[ - { - "\"WolframLanguageEvaluator\"", - "->", - RowBox[ - {"<|", RowBox[{"\"Method\"", "->", "\"Local\""}], "|>"} - ] - } - ], - "|>" - } - ] - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 92147123 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Claude\\\\claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Claude\\\\claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/MCPServer\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.20", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Claude\\claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.20", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 236967861 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 953527304 - ], - Cell[ - TextData[ - { - "\:7d44\:8fbc\:307f\:30c4\:30fc\:30eb\:306b\:3064\:3044\:3066\:ff0c\:5229\:7528\:53ef\:80fd\:306a\:3059\:3079\:3066\:306e\:30aa\:30d7\:30b7\:30e7\:30f3\:3068\:305d\:306e\:30c7\:30d5\:30a9\:30eb\:30c8\:5024\:3092 ", - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPToolOptions", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions" - ] - ], - "InlineFormula" - ], - "\:3092\:7528\:3044\:3066\:53d6\:5f97\:3059\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "01cf6c1c-c33b-40e5-b83c-815828a3cbe0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 36.4598}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Get all the available options and their default values for built-in tools with \", Cell[BoxData[ButtonBox[\"$DefaultMCPToolOptions\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions\"]], \"InlineFormula\"], \":\"}], \"ExampleText\", CellID -> 11951286]" - |>, - CellTags -> "Translated", - CellID -> 11951286 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData["$DefaultMCPToolOptions"], - "Input", - CellLabel -> "In[1]:=", - CellID -> 303715989 - ], - Cell[ - BoxData[ - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"WolframAlphaContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"MaxItems\"", "\[Rule]", "Automatic"}], - ",", - RowBox[ - { - "\"IncludeWolframLanguageResults\"", - "\[Rule]", - "Automatic" - } - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"WolframLanguageMaxItems\"", "\[Rule]", "10"}], - ",", - RowBox[ - {"\"WolframAlphaMaxItems\"", "\[Rule]", "Automatic"} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframLanguageContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[{"\"MaxItems\"", "\[Rule]", "10"}], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframLanguageEvaluator\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"Method\"", "\[Rule]", "\"Session\""}], - ",", - RowBox[{"\"ImageExportMethod\"", "\[Rule]", "\"None\""}], - ",", - RowBox[{"\"TimeConstraint\"", "\[Rule]", "60"}] - } - ], - "\[RightAssociation]" - } - ] - } - ] - } - ], - "\[RightAssociation]" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 908901578 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 128269263 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 64118143 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 317455460 - ], - Cell[ - "\:5bfe\:8c61\:306eJSON\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:306b\:30b3\:30e1\:30f3\:30c8\:304c\:542b\:307e\:308c\:3066\:3044\:308b\:5834\:5408\:ff0c\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306f\:5931\:6557\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "40062818-b134-4049-96bc-007d58545bbf", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 44.9513}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"If the target JSON configuration file contains comments, installation will fail:\", \"ExampleText\", CellID -> 505105976]" - |>, - CellTags -> "Translated", - CellID -> 505105976 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Cursor\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 94468852 - ], - Cell[ - BoxData[ - TemplateBox[ - { - "Developer`ReadRawJSONFile", - "jsonkeynstr", - "\"Object keys must be strings.\"", - 2, - 1, - 44, - 20184187186632264838, - "Local", - "Developer`ReadRawJSONFile" - }, - "MessageTemplate2", - BaseStyle -> "MSG" - ] - ], - "Message", - CellLabel -> "During evaluation of In[1]:=", - CellID -> 4264690 - ], - Cell[ - BoxData[ - TemplateBox[ - { - "Developer`ReadRawJSONFile", - "jsonhintposandchar", - "\"An error occurred near character '\\!\\(\\*RowBox[{\\\"\\\\\\\"/\\\\\\\"\\\"}]\\)', at line \\!\\(\\*RowBox[{\\\"3\\\"}]\\):\\!\\(\\*RowBox[{\\\"5\\\"}]\\)\"", - 2, - 1, - 45, - 20184187186632264838, - "Local", - "Developer`ReadRawJSONFile" - }, - "MessageTemplate2", - BaseStyle -> "MSG" - ] - ], - "Message", - CellLabel -> "During evaluation of In[1]:=", - CellID -> 899983905 - ], - Cell[ - BoxData[ - TemplateBox[ - { - "InstallMCPServer", - "InvalidMCPConfiguration", - "\"Invalid MCP configuration file: \\!\\(\\*RowBox[{\\\"File\\\", \\\"[\\\", TemplateBox[List[\\\"\\\\\\\"C:/Users/rhennigan/.cursor/mcp.json\\\\\\\"\\\"], \\\"FileArgument\\\"], \\\"]\\\"}]\\).\"", - 2, - 1, - 46, - 20184187186632264838, - "Local", - "Wolfram`AgentTools`InstallMCPServer" - }, - "MessageTemplate2", - BaseStyle -> "MSG" - ] - ], - "Message", - CellLabel -> "During evaluation of In[1]:=", - CellID -> 78620661 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Failure", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - FrameBox[ - StyleBox[ - "\"\[WarningSign]\"", - "Message", - StripOnInput -> False, - FontSize -> 35 - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - TagBox[ - GridBox[ - { - { - TagBox["\"Message: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Invalid MCP configuration file: \\!\\(\\*TagBox[RowBox[{\\\"File\\\", \\\"[\\\", TemplateBox[List[\\\"\\\\\\\"C:/Users/rhennigan/.cursor/mcp.json\\\\\\\"\\\"], \\\"FileArgument\\\"], \\\"]\\\"}], Function[Short[Slot[1], 5]]]\\).\"", - "SummaryItem" - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, - GridBoxSpacings -> {"Columns" -> {{0}}} - ], - "SummaryItem" - ] - }, - { - TagBox[ - GridBox[ - { - { - TagBox["\"Tag: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"InstallMCPServer::InvalidMCPConfiguration\"", - "SummaryItem" - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, - GridBoxSpacings -> {"Columns" -> {{0}}} - ], - "SummaryItem" - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - FrameBox[ - StyleBox[ - "\"\[WarningSign]\"", - "Message", - StripOnInput -> False, - FontSize -> 35 - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - TagBox[ - GridBox[ - { - { - TagBox["\"Message: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Invalid MCP configuration file: \\!\\(\\*TagBox[RowBox[{\\\"File\\\", \\\"[\\\", TemplateBox[List[\\\"\\\\\\\"C:/Users/rhennigan/.cursor/mcp.json\\\\\\\"\\\"], \\\"FileArgument\\\"], \\\"]\\\"}], Function[Short[Slot[1], 5]]]\\).\"", - "SummaryItem" - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, - GridBoxSpacings -> {"Columns" -> {{0}}} - ], - "SummaryItem" - ] - }, - { - TagBox[ - GridBox[ - { - { - TagBox["\"Tag: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"InstallMCPServer::InvalidMCPConfiguration\"", - "SummaryItem" - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, - GridBoxSpacings -> {"Columns" -> {{0}}} - ], - "SummaryItem" - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Failure[ - "InstallMCPServer::InvalidMCPConfiguration", - <| - "MessageParameters" :> {File["C:/Users/rhennigan/.cursor/mcp.json"]}, - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`InstallMCPServer, - "InvalidMCPConfiguration" - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 407890897 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "FilePrint", - "[", - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 822920787 - ], - Cell[ - "{\n\t\"mcpServers\":{\n\t\t// This is the Wolfram MCP server\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\"\n\t\t\t}\n\t\t}\n\t}\n}", - "Print", - CellLabel -> "During evaluation of In[2]:=", - CellID -> 682185659 - ] - }, - Open - ] - ], - Cell[ - "\:3053\:308c\:306f\:ff0cMCP\:30b5\:30fc\:30d0\:7528\:306eJSON\:8a2d\:5b9a\:306e\:95a2\:9023\:90e8\:5206\:3092\:30b3\:30d4\:30fc\:3057\:ff0c\:305d\:308c\:3092\:624b\:52d5\:3067\:633f\:5165\:3059\:308b\:3053\:3068\:3067\:56de\:907f\:3067\:304d\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c3e1196d-b7b6-4fe1-b0cd-00b4987faf1f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 22, 46.8265}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"To work around this, you can copy the relevant part of the JSON configuration for an MCP server and manually insert it:\", \"ExampleText\", CellID -> 562110371]" - |>, - CellTags -> "Translated", - CellID -> 562110371 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - RowBox[ - {"MCPServerObject", "[", "\"WolframLanguage\"", "]"} - ], - "[", - "\"JSONConfiguration\"", - "]" - } - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 160100735 - ], - Cell[ - BoxData[ - "\"{\\n\\t\\\"mcpServers\\\":{\\n\\t\\t\\\"WolframLanguage\\\":{\\n\\t\\t\\t\\\"command\\\":\\\"wolfram\\\",\\n\\t\\t\\t\\\"args\\\":[\\n\\t\\t\\t\\t\\\"-run\\\",\\n\\t\\t\\t\\t\\\"Wolfram`AgentTools`StartMCPServer[]\\\",\\n\\t\\t\\t\\t\\\"-noinit\\\",\\n\\t\\t\\t\\t\\\"-noprompt\\\"\\n\\t\\t\\t],\\n\\t\\t\\t\\\"env\\\":{\\n\\t\\t\\t\\t\\\"MCP_SERVER_NAME\\\":\\\"WolframLanguage\\\"\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\"" - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 318989119 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "FilePrint", - "[", - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[4]:=", - CellID -> 149630094 - ], - Cell[ - "{\n\t\"mcpServers\":{\n\t\t// This is the Wolfram MCP server\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\"\n\t\t\t}\n\t\t},\n\t\t// This part was pasted in manually\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}", - "Print", - CellLabel -> "During evaluation of In[4]:=", - CellID -> 122707127 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 249719923 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 286085858 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 44261870], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 99767341 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 69155631 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 389040509 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 413321334 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 436677547 - ], - Cell[ - "Wolfram/AgentTools/ref/InstallMCPServer", - "Categorization", - CellLabel -> "URI", - CellID -> 694244737 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 53081346], - Cell["XXXX", "Keywords", CellID -> 229963536] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 36012056 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 11615120 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 366394457 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 914104 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 73042647 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/MCPServerObject.nb b/Documentation/Japanese/ReferencePages/Symbols/MCPServerObject.nb deleted file mode 100644 index 874537b4..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/MCPServerObject.nb +++ /dev/null @@ -1,6261 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell["MCPServerObject", "ObjectName", CellID -> 534741533], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ], - "[", - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - "]" - } - ] - ], - "InlineFormula" - ], - " \[LineSeparator]\:4e0e\:3048\:3089\:308c\:305f\:540d\:524d\:306eMCP\:30b5\:30fc\:30d0\:3092\:53d6\:308a\:51fa\:3059\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - RowBox[ - { - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - "[", - "\"\!\(\*StyleBox[\"propery\", \"TI\"]\)\"", - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]MCP\:30b5\:30fc\:30d0\:306e\:6307\:5b9a\:3055\:308c\:305f\:7279\:6027\:3092\:4e0e\:3048\:308b\:ff0e" - } - ], - "Usage", - CellID -> 260355213 - ], - Cell[ - "\:4ee5\:4e0b\:306f\:ff0c\:540d\:524d\:3067\:6307\:5b9a\:3067\:304d\:308b\:5b9a\:7fa9\:6e08\:307f\:306eMCP\:30b5\:30fc\:30d0\:3067\:3042\:308b\:ff0e", - "Notes", - CellID -> 160459376 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"WolframAlpha\"", - Cell[ - "Wolfram|Alpha\:304b\:3089\:60c5\:5831\:3092\:53d6\:5f97\:3059\:308b\:305f\:3081\:306b\:6700\:9069\:5316\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"WolframLanguage\"", - Cell[ - "Wolfram\:8a00\:8a9e\:306e\:30b3\:30fc\:30c9\:3092\:8a18\:8ff0\:304a\:3088\:3073\:8a55\:4fa1\:3059\:308b\:305f\:3081\:306b\:6700\:9069\:5316\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Wolfram\"", - Cell[ - "Wolfram|Alpha\:3068Wolfram\:8a00\:8a9e\:306e\:6a5f\:80fd\:3092\:7d44\:307f\:5408\:305b\:305f\:3082\:306e", - "TableText" - ] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b2895ec2-dac5-4cd6-9d7b-85980ec8f235", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 58, 7.00799}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"WolframAlpha\\\"\", Cell[\"an MCP server that is optimized for retrieving information from Wolfram|Alpha\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"WolframLanguage\\\"\", Cell[\"an MCP server that is optimized for writing and evaluating Wolfram Language code\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Wolfram\\\"\", Cell[\"a blend of Wolfram|Alpha and Wolfram Language functionality\", \"TableText\"]}}]], \"2ColumnTableMod\", CellID -> 8640607]" - |>, - CellTags -> "Translated", - CellID -> 8640607 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineFormula" - ], - "\:3067\:4f5c\:6210\:3057\:305f\:305d\:306e\:4ed6\:306e\:4efb\:610f\:306eMCP\:30b5\:30fc\:30d0\:3082\:ff0c\:540d\:524d\:306b\:3088\:3063\:3066\:53c2\:7167\:3067\:304d\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8fee0ca2-3820-4077-9e08-01417fa23826", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 58, 11.0936}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Additionally, any other MCP servers you have created with \", Cell[BoxData[ButtonBox[\"CreateMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/CreateMCPServer\"]], \"InlineFormula\"], \" can be referenced by name.\"}], \"Notes\", CellID -> 676868825]" - |>, - CellTags -> "Translated", - CellID -> 676868825 - ], - Cell[ - TextData[ - { - "\:4ee5\:4e0b\:306f\:ff0c", - Cell[ - BoxData["\"\!\(\*StyleBox[\"property\", \"TI\"]\)\""], - "InlineFormula" - ], - " \:306e\:6709\:52b9\:306a\:5024\:306e\:4e00\:90e8\:3067\:3042\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "43ef2ce7-f3f9-45f2-9c92-169c06321b70", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 58, 13.3211}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Some valid values for \", Cell[BoxData[\"\\\"\\!\\(\\*StyleBox[\\\"property\\\", \\\"TI\\\"]\\)\\\"\"], \"InlineFormula\"], \" are:\"}], \"Notes\", CellID -> 357554321]" - |>, - CellTags -> "Translated", - CellID -> 357554321 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"LLMConfiguration\"", - Cell[ - TextData[ - { - "\:30b5\:30fc\:30d0\:6a5f\:80fd\:3092\:5b9a\:7fa9\:3059\:308b", - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ] - } - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Tools\"", - Cell[ - TextData[ - { - "\:30b5\:30fc\:30d0\:30fc\:3067\:5229\:7528\:53ef\:80fd\:306a", - Cell[ - BoxData[ButtonBox["LLMTool", BaseStyle -> "Link"]], - "InlineFormula" - ], - " \:30aa\:30d6\:30b8\:30a7\:30af\:30c8\:306e\:30ea\:30b9\:30c8" - } - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"JSONConfiguration\"", - Cell[ - "\:591a\:304f\:306eMCP\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:3067\:4f7f\:7528\:3067\:304d\:308b\:ff0cJSON\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:306b\:5bfe\:5fdc\:3059\:308b\:6587\:5b57\:5217", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Installations\"", - Cell[ - "\:30b5\:30fc\:30d0\:304c\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:3066\:3044\:308b\:5834\:6240", - "TableText" - ] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "e06dd45f-dacc-4a62-99ca-b1c3bfddc521", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 1, 58, 15.3505}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"LLMConfiguration\\\"\", Cell[TextData[{\"the \", Cell[BoxData[ButtonBox[\"LLMConfiguration\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \" that defines the server features\"}], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Tools\\\"\", Cell[TextData[{\"the list of \", Cell[BoxData[ButtonBox[\"LLMTool\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \" objects available to the server\"}], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"JSONConfiguration\\\"\", Cell[\"a string corresponding to a JSON configuration file that you can use in many MCP clients\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Installations\\\"\", Cell[\"locations where the server has been installed\", \"TableText\"]}}]], \"2ColumnTableMod\", CellID -> 72914843]" - |>, - CellTags -> "Translated", - CellID -> 72914843 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObjectQ", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjectQ" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObjects", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjects" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "b16d09f9-136c-4041-a045-60f6d7c930ef" - ], - cellobj$$ = - CellObject[ - "9b9fa879-78c9-40e5-ad27-d75cd9715350", - "76d6b2fd-b6ee-4d63-a56e-be4383083f2d" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 128104088 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell["XXXX", "Tutorials", CellID -> 42188993] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 206588872] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 197001389] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 68239954 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - "\:7d44\:8fbc\:307f\:306eMCP\:30b5\:30fc\:30d0\:3092\:53d6\:308a\:51fa\:3059\:ff1a", - "ExampleText", - CellID -> 356093584 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[{"MCPServerObject", "[", "\"Wolfram\"", "]"}] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 384574518 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 50791210 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[{"MCPServerObject", "[", "\"WolframAlpha\"", "]"}] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 292922220 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframAlpha\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframAlpha\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - {"\"WolframAlphaContext\"", "\"WolframAlpha\"", "", "", ""} - }, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframAlpha", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframAlphaContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram Alpha. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframAlphaResults, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 121904750 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - {"MCPServerObject", "[", "\"WolframLanguage\"", "]"} - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 139451396 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguage\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframLanguage\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframLanguage\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframLanguageContext\"", - "\"WolframLanguageEvaluator\"", - "", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframLanguage", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedDocumentation, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 26168514 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 542755697 - ], - Cell[ - "\:30ab\:30b9\:30bf\:30e0\:306eMCP\:30b5\:30fc\:30d0\:3092\:4f5c\:6210\:3057\:ff0c\:6b21\:306b\:3053\:308c\:3092\:540d\:524d\:3067\:53d6\:308a\:51fa\:3059\:ff1a", - "ExampleText", - CellID -> 152523696 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"My MCP Server\"", - ",", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[ - { - "LLMTool", - "[", - RowBox[ - { - "\"PrimeFinder\"", - ",", - RowBox[{"{", RowBox[{"\"n\"", "->", "\"Integer\""}], "}"}], - ",", - RowBox[{RowBox[{"Prime", "[", "#n", "]"}], "&"}] - } - ], - "]" - } - ], - "}" - } - ] - } - ], - "|>" - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 410795458 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 366691072 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[{"MCPServerObject", "[", "\"My MCP Server\"", "]"}] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 95282960 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {10.0329, {0.0, 10.0329}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"], - ImageSizeCache -> {10.0329, {0.0, 10.0329}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 259402010 - ] - }, - Open - ] - ], - Cell[ - BoxData[RowBox[{"DeleteObject", "[", "%", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 273523327 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 235304446 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\:3092\:53d6\:5f97\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 167855219 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[{"MCPServerObject", "[", "\"Wolfram\"", "]"}] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 248247119 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 48578679 - ] - }, - Open - ] - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:3092\:53d6\:5f97\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 635623345 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"LLMConfiguration", "[", "server", "]"}]], - "Input", - CellLabel -> "In[2]:=", - CellID -> 763685971 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["LLMConfiguration", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = True, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {10.0329, {0.0, 10.0329}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Model: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["Automatic", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"], - ImageSizeCache -> {14.8133, {0.0, 14.8133}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Model: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["Automatic", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tools: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TemplateBox[ - { - TagBox[ - TooltipBox[ - "\"WolframContext\"", - "\"Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Tooltip" - ] - ] - ], - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve any relevant information from Wolfram. Always\\nuse this tool at the start of new conversations or if the topic changes to\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve any relevant information from Wolfram. Always\\nuse this tool at the start of new conversations or if the topic changes to\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"context\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"A detailed summary of what the user is trying to achieve or learn about.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"A detailed summary of what the user is trying to achieve or learn about.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Selectable -> False, - Editable -> False, - SelectWithContents -> True - ] - }, - "ClickToCopy2" - ] - }, - { - TemplateBox[ - { - TagBox[ - TooltipBox[ - "\"WolframLanguageEvaluator\"", - "\"Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\\nParse natural language input with `\[FreeformPrompt][\\\"query\\\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\\n\\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Tooltip" - ] - ] - ], - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluate Wolfram Language code for the user in a separate kernel. The user does\\nnot automatically see the result. Do not ask permission to evaluate code. You mu\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluate Wolfram Language code for the user in a separate kernel. The user does\\nnot automatically see the result. Do not ask permission to evaluate code. You mu\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"code\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The Wolfram Language code to evaluate.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The Wolfram Language code to evaluate.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"timeConstraint\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The time constraint for the evaluation (default is 60 seconds).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The time constraint for the evaluation (default is 60 seconds).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Integer\"", - RowBox[{"Interpreter", "[", "\"Integer\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Selectable -> False, - Editable -> False, - SelectWithContents -> True - ] - }, - "ClickToCopy2" - ] - }, - { - TemplateBox[ - { - TagBox[ - TooltipBox[ - "\"WolframAlpha\"", - "\"Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Tooltip" - ] - ] - ], - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Use natural language queries with Wolfram|Alpha to get up-to-date computational\\nresults about entities in chemistry, physics, geography, history, art, astronomy\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Use natural language queries with Wolfram|Alpha to get up-to-date computational\\nresults about entities in chemistry, physics, geography, history, art, astronomy\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`Chatbook`Common`getWolframAlphaText", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"query\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"the input\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"the input\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"steps\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"whether to show step-by-step solution\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"whether to show step-by-step solution\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Boolean\"", - RowBox[{"Interpreter", "[", "\"Boolean\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Selectable -> False, - Editable -> False, - SelectWithContents -> True - ] - }, - "ClickToCopy2" - ] - } - }, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}}, - BaselinePosition -> {{1, 1}, Axis}, - DefaultBaseStyle -> "Column", - GridBoxAlignment -> {"Columns" -> {{Left}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Column" - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMConfiguration[ - <| - "Model" -> Automatic, - "MaxTokens" -> Automatic, - "Temperature" -> Automatic, - "TotalProbabilityCutoff" -> Automatic, - "Prompts" -> Automatic, - "PromptDelimiter" -> Automatic, - "StopTokens" -> Automatic, - "ToolMethod" -> Automatic, - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 163820367 - ] - }, - Open - ] - ], - Cell[ - "\:30b5\:30fc\:30d0\:304c\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:305f\:5834\:6240\:3092\:898b\:308b\:ff1a", - "ExampleText", - CellID -> 34177191 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"server", "[", "\"Installations\"", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 15390740 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - ",", - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ] - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 260730800 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 166107764 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\:3092\:ff0c", - Cell[ - BoxData[ButtonBox["LLMSynthesize", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:306e", - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:3068\:3057\:3066\:4f7f\:3046\:ff1a" - } - ], - "ExampleText", - CellID -> 522656092 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[{"MCPServerObject", "[", "\"WolframAlpha\"", "]"}] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 236140536 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframAlpha\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframAlpha\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - {"\"WolframAlphaContext\"", "\"WolframAlpha\"", "", "", ""} - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "WolframAlpha", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframAlphaContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram Alpha. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframAlphaResults, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 252819182 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "LLMSynthesize", - "[", - RowBox[ - { - "\"Which generates more geothermal? New Zealand or Iceland?\"", - ",", - RowBox[ - { - "LLMEvaluator", - "->", - RowBox[{"LLMConfiguration", "[", "server", "]"}] - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 391730515 - ], - Cell[ - BoxData[ - "\"In 2022, New Zealand generated approximately **6.194 billion kWh** of geothermal energy, which is equivalent to about **707.1 MW**. In contrast, Iceland produced around **5.209 billion kWh** of geothermal energy, or about **594.6 MW**.\\n\\nThus, based on these figures, New Zealand generates more geothermal energy than Iceland.\\n\\nFor more detailed information, you can refer to the sources: [Geothermal Energy Generation in New Zealand](https://www.wolframalpha.com/input?i=geothermal+energy+generation+in+New+Zealand) and [Geothermal Energy Generation in Iceland](https://www.wolframalpha.com/input?i=geothermal+energy+generation+in+Iceland).\"" - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 122502525 - ] - }, - Open - ] - ], - Cell[ - "\:7d50\:679c\:3092\:30d5\:30a9\:30fc\:30de\:30c3\:30c8\:3059\:308b\:ff1a", - "ExampleText", - CellID -> 606998422 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - RowBox[ - {"ResourceFunction", "[", "\"ImportMarkdownString\"", "]"} - ], - "[", - "%", - "]" - } - ] - ], - "Input", - CellLabel -> "In[7]:=", - CellID -> 277463255 - ], - Cell[ - BoxData[ - Cell[ - TextData[ - { - "In 2022, New Zealand generated approximately ", - StyleBox["6.194 billion kWh", FontWeight -> Bold], - " of geothermal energy, which is equivalent to about ", - StyleBox["707.1 MW", FontWeight -> Bold], - ". In contrast, Iceland produced around ", - StyleBox["5.209 billion kWh", FontWeight -> Bold], - " of geothermal energy, or about ", - StyleBox["594.6 MW", FontWeight -> Bold], - ".\n\nThus, based on these figures, New Zealand generates more geothermal energy than Iceland.\n\nFor more detailed information, you can refer to the sources: ", - ButtonBox[ - "Geothermal Energy Generation in New Zealand", - BaseStyle -> "Hyperlink", - ButtonData -> { - URL[ - "https://www.wolframalpha.com/input?i=geothermal+energy+generation+in+New+Zealand" - ], - None - }, - ButtonNote -> "https://www.wolframalpha.com/input?i=geothermal+energy+generation+in+New+Zealand" - ], - " and ", - ButtonBox[ - "Geothermal Energy Generation in Iceland", - BaseStyle -> "Hyperlink", - ButtonData -> { - URL[ - "https://www.wolframalpha.com/input?i=geothermal+energy+generation+in+Iceland" - ], - None - }, - ButtonNote -> "https://www.wolframalpha.com/input?i=geothermal+energy+generation+in+Iceland" - ], - "." - } - ], - "Text", - Background -> None - ] - ], - "Output", - CellLabel -> "Out[7]=", - CellID -> 440457516 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 21191711 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 94724105 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 635781998 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 164377662 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 7012883 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 98847445 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 563343696 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 370199806 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 104083968], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 433987609 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 633890588 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 38817823 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 148705287 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 186913036 - ], - Cell[ - "Wolfram/AgentTools/ref/MCPServerObject", - "Categorization", - CellLabel -> "URI", - CellID -> 1009719 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 8134633], - Cell["XXXX", "Keywords", CellID -> 22423304] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 85435895 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 281157942 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 115842 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 6626821 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 433569035 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <| - "Paclet" -> "Wolfram/AgentTools", - "TryRealOnly" -> False - |>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/MCPServerObjectQ.nb b/Documentation/Japanese/ReferencePages/Symbols/MCPServerObjectQ.nb deleted file mode 100644 index 9494b2fa..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/MCPServerObjectQ.nb +++ /dev/null @@ -1,1950 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell["MCPServerObjectQ", "ObjectName", CellID -> 278535327], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "MCPServerObjectQ", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjectQ" - ], - "[", - StyleBox["server", "TI"], - "]" - } - ] - ], - "InlineFormula" - ], - " \[LineSeparator]", - Cell[BoxData[StyleBox["server", "TI"]], "InlineFormula"], - " \:304c\:6709\:52b9\:306a", - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\:3067\:3042\:308c\:3070", - Cell[ - BoxData[ButtonBox["True", BaseStyle -> "Link"]], - "InlineFormula" - ], - " \:3092\:ff0c\:305d\:308c\:4ee5\:5916\:306e\:5834\:5408\:306f", - Cell[ - BoxData[ButtonBox["False", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:3092\:8fd4\:3059\:ff0e" - } - ], - "Usage", - TaggingRules -> <| - "OrignialExpressionUUID" -> "86d0183a-a33f-4b47-9fb1-c446ec075a46", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 32, 37.9444}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"MCPServerObjectQ\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObjectQ\"], \"[\", StyleBox[\"server\", \"TI\"], \"]\"}]], \"InlineFormula\"], \" \[LineSeparator]gives \", Cell[BoxData[ButtonBox[\"True\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \" if \", Cell[BoxData[StyleBox[\"server\", \"TI\"]], \"InlineFormula\"], \" is a valid \", Cell[BoxData[ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"]], \"InlineFormula\"], \" and \", Cell[BoxData[ButtonBox[\"False\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \" otherwise.\"}], \"Usage\", CellID -> 22091999]" - |>, - CellTags -> "Translated", - CellID -> 22091999 - ], - Cell["XXXX", "Notes", CellID -> 585495582] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "0f176905-6585-4940-93e2-0203475425fc" - ], - cellobj$$ = - CellObject[ - "d6845046-e275-4f3e-a477-d8d1654e8736", - "c4a190d2-b563-49fb-92ba-01ec2b65826f" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 667697070 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell["XXXX", "Tutorials", CellID -> 215228507] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 602707628] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 50211630] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 932189874 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - TextData[ - { - "\:5f0f\:304c\:6709\:52b9\:306a", - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\:304b\:3069\:3046\:304b\:30c6\:30b9\:30c8\:3059\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 79034404 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[{"MCPServerObject", "[", "\"Wolfram\"", "]"}] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 18361783 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 252400189 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"MCPServerObjectQ", "[", "server", "]"}]], - "Input", - CellLabel -> "In[2]:=", - CellID -> 351779039 - ], - Cell[ - BoxData["True"], - "Output", - CellLabel -> "Out[2]=", - CellID -> 216573667 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 81841482 - ], - Cell[ - TextData[ - { - "\:30ab\:30b9\:30bf\:30e0\:306e", - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\:306f\:6709\:52b9\:3067\:3042\:308b\:ff1a" - } - ], - "ExampleText", - CellID -> 188884219 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"My MCP Server\"", - ",", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[ - { - "LLMTool", - "[", - RowBox[ - { - "\"PrimeFinder\"", - ",", - RowBox[{"{", RowBox[{"\"n\"", "->", "\"Integer\""}], "}"}], - ",", - RowBox[{RowBox[{"Prime", "[", "#n", "]"}], "&"}] - } - ], - "]" - } - ], - "}" - } - ] - } - ], - "|>" - } - ] - } - ], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 355377765 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 55147875 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"MCPServerObjectQ", "[", "server", "]"}]], - "Input", - CellLabel -> "In[2]:=", - CellID -> 413451691 - ], - Cell[ - BoxData["True"], - "Output", - CellLabel -> "Out[2]=", - CellID -> 71662113 - ] - }, - Open - ] - ], - Cell[ - "\:4e00\:65e6\:524a\:9664\:3055\:308c\:308b\:3068\:ff0c\:6709\:52b9\:3067\:306f\:306a\:304f\:306a\:308b\:ff1a", - "ExampleText", - CellID -> 341969515 - ], - Cell[ - BoxData[RowBox[{"DeleteObject", "[", "server", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 292211447 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"MCPServerObjectQ", "[", "server", "]"}]], - "Input", - CellLabel -> "In[4]:=", - CellID -> 138861782 - ], - Cell[ - BoxData["False"], - "Output", - CellLabel -> "Out[4]=", - CellID -> 52932615 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 256597815 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 66376322 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 634868308 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 165488405 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 182414845 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 949668290 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 334549200 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 810910852 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 119682790 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 415361720], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 81966376 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 145831344 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 405114878 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 2308871 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 204971323 - ], - Cell[ - "Wolfram/AgentTools/ref/MCPServerObjectQ", - "Categorization", - CellLabel -> "URI", - CellID -> 286126405 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 28015249], - Cell["XXXX", "Keywords", CellID -> 401878919] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 458703059 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 2642746 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 108747647 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 107920253 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 2022293 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/MCPServerObjects.nb b/Documentation/Japanese/ReferencePages/Symbols/MCPServerObjects.nb deleted file mode 100644 index 359c1a0b..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/MCPServerObjects.nb +++ /dev/null @@ -1,3552 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell["MCPServerObjects", "ObjectName", CellID -> 844261537], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "MCPServerObjects", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjects" - ], - "[", - "]" - } - ] - ], - "InlineFormula" - ], - " \[LineSeparator]\:73fe\:5728\:30de\:30b7\:30f3\:4e0a\:3067\:4f5c\:6210\:3055\:308c\:305f\:3059\:3079\:3066\:306e\:30ab\:30b9\:30bf\:30e0MCP\:30b5\:30fc\:30d0\:3092\:8fd4\:3059\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "MCPServerObjects", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjects" - ], - "[", - "\"\!\(\*StyleBox[\"patt\", \"TI\"]\)\"", - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]\:6307\:5b9a\:3055\:308c\:305f\:6587\:5b57\:5217\:30d1\:30bf\:30fc\:30f3\:306b\:4e00\:81f4\:3059\:308b\:540d\:524d\:3092\:6301\:3064\:30ab\:30b9\:30bf\:30e0MCP\:30b5\:30fc\:30d0\:3092\:8fd4\:3059\:ff0e" - } - ], - "Usage", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8712fd85-42e3-42e2-ae84-15eec9ae9e0c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 36, 27.3659}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"MCPServerObjects\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObjects\"], \"[\", \"]\"}]], \"InlineFormula\"], \" \[LineSeparator]gives all the custom MCP servers that have been created on the current machine.\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"MCPServerObjects\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObjects\"], \"[\", \"\\\"\\!\\(\\*StyleBox[\\\"patt\\\", \\\"TI\\\"]\\)\\\"\", \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]gives the custom MCP servers that have a name matching the given string pattern.\"}], \"Usage\", CellID -> 620438377]" - |>, - CellTags -> "Translated", - CellID -> 620438377 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "MCPServerObjects", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjects" - ], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ] - ], - "InlineFormula" - ], - "\:306f\:ff0c", - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineFormula" - ], - "\:3067\:4f5c\:6210\:3055\:308c\:305f\:30ab\:30b9\:30bf\:30e0MCP\:30b5\:30fc\:30d0\:3092\:4e0e\:3048\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "0b0d6ad1-5211-4130-8d32-6c45428d29f5", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 36, 30.793}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[BoxData[RowBox[{ButtonBox[\"MCPServerObjects\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObjects\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}]], \"InlineFormula\"], \" gives custom MCP servers that have been created with \", Cell[BoxData[ButtonBox[\"CreateMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/CreateMCPServer\"]], \"InlineFormula\"], \".\"}], \"Notes\", CellID -> 60030695]" - |>, - CellTags -> "Translated", - CellID -> 60030695 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "MCPServerObjects", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjects" - ], - "[", - "]" - } - ] - ], - "InlineFormula" - ], - "\:306f", - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "MCPServerObjects", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObjects" - ], - "[", - ButtonBox["All", BaseStyle -> "Link"], - "]" - } - ] - ], - "InlineFormula" - ], - "\:3068\:540c\:7b49\:3067\:3042\:308b\:ff0e" - } - ], - "Notes", - CellID -> 153533768 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "a5daabc2-93b0-4fbc-9437-89db7166ac2f" - ], - cellobj$$ = - CellObject[ - "8ee3e7d1-59ad-464f-84ba-7b1c7acce495", - "f34fccd6-0a2b-4bab-8116-9ae428e0ef1c" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 157477218 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell["XXXX", "Tutorials", CellID -> 157078367] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 67212738] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 159413143] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 284538935 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - "\:3044\:304f\:3064\:304b\:306e\:30ab\:30b9\:30bf\:30e0MCP\:30b5\:30fc\:30d0\:3092\:4f5c\:6210\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "0a43c4e3-ae40-436b-ac0b-c7ce33eebea4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 35, 25.313}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Create some custom MCP servers:\", \"ExampleText\", CellID -> 299599348]" - |>, - CellTags -> "Translated", - CellID -> 299599348 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"My MCP Server\"", - ",", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[ - { - "LLMTool", - "[", - RowBox[ - { - "\"PrimeFinder\"", - ",", - RowBox[{"{", RowBox[{"\"n\"", "->", "\"Integer\""}], "}"}], - ",", - RowBox[{RowBox[{"Prime", "[", "#n", "]"}], "&"}] - } - ], - "]" - } - ], - "}" - } - ] - } - ], - "|>" - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 616925789 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - AutoDelete -> False, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 37350111 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[{"\"Inert MCP Server\"", ",", RowBox[{"<|", "|>"}]}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 459174950 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {14.8133, {0.0, 14.8133}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Inert MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - Thickness[0.071749], - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - } - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Inert MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - BaselinePosition -> Baseline, - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Inert MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Inert MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - DefaultBaseStyle -> { }, - Evaluator -> Automatic, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - BaseStyle -> {Editable -> False}, - DynamicModuleValues :> { }, - Initialization :> (boxObj = EvaluationBox[]), - UnsavedVariables :> {boxObj, cellObj} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\Inert%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Inert MCP Server", - "LLMEvaluator" -> <| |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\Inert%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 468933456 - ] - }, - Open - ] - ], - Cell[ - "\:3059\:3079\:3066\:306e\:30ab\:30b9\:30bf\:30e0MCP\:30b5\:30fc\:30d0\:3092\:53d6\:5f97\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2db48c46-72de-4b77-b45b-531b6df34cdf", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 35, 27.7414}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Get all the custom MCP servers:\", \"ExampleText\", CellID -> 604143086]" - |>, - CellTags -> "Translated", - CellID -> 604143086 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"MCPServerObjects", "[", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 67495770 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Inert MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Inert MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Inert MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Inert MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\Inert%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Inert MCP Server", - "LLMEvaluator" -> <| |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\Inert%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 592742191 - ] - }, - Open - ] - ], - Cell[ - "\:7279\:5b9a\:306e\:540d\:524d\:306e\:30d1\:30bf\:30fc\:30f3\:306b\:4e00\:81f4\:3059\:308b\:30b5\:30fc\:30d0\:306e\:307f\:3092\:53d6\:5f97\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8f66f5a1-8126-47ef-b30a-d1a3145e29df", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 35, 29.308}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Get only servers matching a specific name pattern:\", \"ExampleText\", CellID -> 59182486]" - |>, - CellTags -> "Translated", - CellID -> 59182486 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"MCPServerObjects", "[", "\"My*\"", "]"}]], - "Input", - CellLabel -> "In[5]:=", - CellID -> 409580242 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"My MCP Server\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"My MCP Server\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"My MCP Server\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"PrimeFinder\"", "", "", "", ""}}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\MCPServer\\\\Servers\\\\My%20MCP%20Server\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "My MCP Server", - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "PrimeFinder", - "Description" -> "", - "Parameters" -> { - "n" -> <| - "Interpreter" -> "Integer", - "Help" -> Missing["NotSpecified"], - "Required" -> True - |> - }, - "Function" -> (Prime[#n] &), - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |>, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\MCPServer\\Servers\\My%20MCP%20Server" - ], - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1 - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[5]=", - CellID -> 6933985 - ] - }, - Open - ] - ], - Cell[ - "\:3059\:3079\:3066\:306e\:30ab\:30b9\:30bf\:30e0MCP\:30b5\:30fc\:30d0\:3092\:524a\:9664\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "02cc158b-02df-494f-9953-86fea758a792", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 35, 30.8208}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Delete all custom MCP servers:\", \"ExampleText\", CellID -> 26429741]" - |>, - CellTags -> "Translated", - CellID -> 26429741 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "DeleteObject", - "/@", - RowBox[{"MCPServerObjects", "[", "]"}] - } - ] - ], - "Input", - CellLabel -> "In[6]:=", - CellID -> 431259310 - ], - Cell[ - BoxData[RowBox[{"{", RowBox[{"Null", ",", "Null"}], "}"}]], - "Output", - CellLabel -> "Out[6]=", - CellID -> 32840873 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"MCPServerObjects", "[", "]"}]], - "Input", - CellLabel -> "In[7]:=", - CellID -> 805869644 - ], - Cell[ - BoxData[RowBox[{"{", "}"}]], - "Output", - CellLabel -> "Out[7]=", - CellID -> 424473374 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 166238447 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 38009259 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 616918703 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 81627687 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 8901000 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 195265473 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 343117849 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 388586096 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 126982895 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 689555948 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 851336461], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 338706760 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 26265818 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 110822343 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 17656733 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 176825543 - ], - Cell[ - "Wolfram/AgentTools/ref/MCPServerObjects", - "Categorization", - CellLabel -> "URI", - CellID -> 736645152 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 135080291], - Cell["XXXX", "Keywords", CellID -> 246267234] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 35369308 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 279200290 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 104780882 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 69634451 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 233304754 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/ReferencePages/Symbols/UninstallMCPServer.nb b/Documentation/Japanese/ReferencePages/Symbols/UninstallMCPServer.nb deleted file mode 100644 index 06e0f7cb..00000000 --- a/Documentation/Japanese/ReferencePages/Symbols/UninstallMCPServer.nb +++ /dev/null @@ -1,7084 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell[ - "UninstallMCPServer", - "ObjectName", - CellID -> 117074851 - ], - Cell[ - TextData[ - { - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ], - "[", - "\"\!\(\*StyleBox[\"application\", \"TI\"]\)\"", - "]" - } - ] - ], - "InlineFormula" - ], - " \[LineSeparator]\:6307\:5b9a\:3055\:308c\:305f\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:7528\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:3066\:3044\:308b\:3059\:3079\:3066\:306eMCP\:30b5\:30fc\:30d0\:30fc\b\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ], - "[", - RowBox[ - { - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]\:6307\:5b9a\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0\b\:3092\:ff0c\:305d\:308c\:304c\:4ee5\:524d\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:3066\:3044\:305f\:3059\:3079\:3066\:306e\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:304b\:3089\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ], - "[", - RowBox[ - { - "\"\!\(\*StyleBox[\"application\", \"TI\"]\)\"", - ",", - StyleBox["server", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]\:6307\:5b9a\:3055\:308c\:305f\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:304b\:3089\:6307\:5b9a\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ], - "[", - RowBox[ - { - RowBox[ - { - ButtonBox["File", BaseStyle -> "Link"], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - ",", - StyleBox["server", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]\:4e0e\:3048\:3089\:308c\:305fJSON\:69cb\:6210\:30d5\:30a1\:30a4\:30eb\:304b\:3089\:6307\:5b9a\:3055\:308c\:305fMCP\:30b5\:30fc\:30d0\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ], - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[ - { - "\"\!\(\*StyleBox[\"application\", \"TI\"]\)\"", - ",", - StyleBox["directory", "TI"] - } - ], - "}" - } - ], - ",", - StyleBox["server", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]", - Cell[BoxData[StyleBox["directory", "TI"]], "InlineFormula"], - " \:306b\:542b\:307e\:308c\:308b\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:7528\:306eMCP\:30b5\:30fc\:30d0\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e\n", - Cell[" ", "ModInfo"], - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ], - "[", - ButtonBox["All", BaseStyle -> "Link"], - "]" - } - ] - ], - "InlineFormula" - ], - "\[LineSeparator]\:4ee5\:524d\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:305f\:3059\:3079\:3066\:306eMCP\:30b5\:30fc\:30d0\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff0e" - } - ], - "Usage", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8a9df4f3-e9ce-41ce-a4ae-3885bffcdf65", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 5.989}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"], \"[\", \"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\", \"]\"}]], \"InlineFormula\"], \" \[LineSeparator]uninstalls all the MCP servers that have been installed for the specified application.\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"], \"[\", RowBox[{ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}], \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]uninstalls the specified MCP server from any applications it has previously been installed for.\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"], \"[\", RowBox[{\"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\", \",\", StyleBox[\"server\", \"TI\"]}], \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]uninstalls the specified MCP server from the specified application.\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"], \"[\", RowBox[{RowBox[{ButtonBox[\"File\", BaseStyle -> \"Link\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}], \",\", StyleBox[\"server\", \"TI\"]}], \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]uninstalls the specified MCP server from the given JSON configuration file.\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"], \"[\", RowBox[{RowBox[{\"{\", RowBox[{\"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\", \",\", StyleBox[\"directory\", \"TI\"]}], \"}\"}], \",\", StyleBox[\"server\", \"TI\"]}], \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]uninstalls the MCP server for a project contained in \", Cell[BoxData[StyleBox[\"directory\", \"TI\"]], \"InlineFormula\"], \".\\n\", Cell[\" \", \"ModInfo\"], Cell[BoxData[RowBox[{ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"], \"[\", ButtonBox[\"All\", BaseStyle -> \"Link\"], \"]\"}]], \"InlineFormula\"], \"\[LineSeparator]uninstalls all previously installed MCP servers.\"}], \"Usage\", CellID -> 51785951]" - |>, - CellTags -> "Translated", - CellID -> 51785951 - ], - Cell[ - TextData[ - { - Cell[BoxData[StyleBox["server", "TI"]], "InlineFormula"], - " \:306e\:5024\:3068\:3057\:3066\:306f\:ff0c\:4ee5\:4e0b\:306e\:3044\:305a\:308c\:304b\:3092\:7528\:3044\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9e1e328e-40b1-4ac2-835d-f037823c89d7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 17.8719}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The value for \", Cell[BoxData[StyleBox[\"server\", \"TI\"]], \"InlineFormula\"], \" can be one of the following:\"}], \"Notes\", CellID -> 701239966]" - |>, - CellTags -> "Translated", - CellID -> 701239966 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"\!\(\*StyleBox[\"name\", \"TI\"]\)\"", - Cell[ - TextData[ - { - "\:65e2\:5b58\:306e", - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ], - "\:306e\:540d\:524d" - } - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - RowBox[{"<|", StyleBox["\[Ellipsis]", "TR"], "|>"}], - Cell[ - TextData[ - { - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:306b\:5bfe\:5fdc\:3059\:308b\:9023\:60f3" - } - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - RowBox[ - { - ButtonBox["LLMConfiguration", BaseStyle -> "Link"], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - Cell[ - TextData[ - Cell[ - BoxData[ButtonBox["LLMConfiguration", BaseStyle -> "Link"]], - "InlineFormula" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - RowBox[ - { - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - Cell[ - TextData[ - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineFormula" - ] - ], - "TableText" - ] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3ce2d69d-b951-4d04-9e7d-d69957fcef7b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 20.3862}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"\\!\\(\\*StyleBox[\\\"name\\\", \\\"TI\\\"]\\)\\\"\", Cell[TextData[{\"the name of an existing \", Cell[BoxData[ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"]], \"InlineFormula\"]}], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], RowBox[{\"<|\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"|>\"}], Cell[TextData[{\"an association corresponding to an \", Cell[BoxData[ButtonBox[\"LLMConfiguration\", BaseStyle -> \"Link\"]], \"InlineFormula\"]}], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], RowBox[{ButtonBox[\"LLMConfiguration\", BaseStyle -> \"Link\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}], Cell[TextData[{\"an \", Cell[BoxData[ButtonBox[\"LLMConfiguration\", BaseStyle -> \"Link\"]], \"InlineFormula\"]}], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], RowBox[{ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}], Cell[TextData[{\"an \", Cell[BoxData[ButtonBox[\"MCPServerObject\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/MCPServerObject\"]], \"InlineFormula\"]}], \"TableText\"]}}]], \"2ColumnTableMod\", CellID -> 565390]" - |>, - CellTags -> "Translated", - CellID -> 565390 - ], - Cell[ - "\:4ee5\:4e0b\:306f\:ff0c\:540d\:524d\:3067\:6307\:5b9a\:3067\:304d\:308b\:5b9a\:7fa9\:6e08\:307f\:306eMCP\:30b5\:30fc\:30d0\:3067\:3042\:308b\:ff0e", - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "e9202069-1b73-481f-a3b9-6ad6c45d5e79", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 25.4965}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Some predefined MCP servers that can be specified by name are:\", \"Notes\", CellID -> 160459376]" - |>, - CellTags -> "Translated", - CellID -> 160459376 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"WolframAlpha\"", - Cell[ - "Wolfram|Alpha \:304b\:3089\:60c5\:5831\:3092\:53d6\:5f97\:3059\:308b\:305f\:3081\:306b\:6700\:9069\:5316\:3055\:308c\:305f MCP \:30b5\:30fc\:30d0", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"WolframLanguage\"", - Cell[ - "Wolfram\:8a00\:8a9e\:306e\:30b3\:30fc\:30c9\:3092\:8a18\:8ff0\:3057\:8a55\:4fa1\:3059\:308b\:305f\:3081\:306b\:6700\:9069\:5316\:3055\:308c\:305f MCP \:30b5\:30fc\:30d0", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Wolfram\"", - Cell[ - "Wolfram|Alpha\:3068Wolfram\:8a00\:8a9e\:306e\:6a5f\:80fd\:3092\:7d44\:307f\:5408\:305b\:305f\:3082\:306e", - "TableText" - ] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "d59d5d2b-aa93-46cd-b019-4d08b0dface3", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 27.4493}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"WolframAlpha\\\"\", Cell[\"an MCP server that is optimized for retrieving information from Wolfram|Alpha\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"WolframLanguage\\\"\", Cell[\"an MCP server that is optimized for writing and evaluating Wolfram Language code\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Wolfram\\\"\", Cell[\"a blend of Wolfram|Alpha and Wolfram Language functionality\", \"TableText\"]}}]], \"2ColumnTableMod\", CellID -> 8640607]" - |>, - CellTags -> "Translated", - CellID -> 8640607 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "CreateMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/CreateMCPServer" - ] - ], - "InlineFormula" - ], - "\:3092\:7528\:3044\:3066\:4f5c\:6210\:3057\:305f\:305d\:306e\:4ed6\:306eMCP\:30b5\:30fc\:30d0\:3082\:ff0c\:540d\:524d\:306b\:3088\:3063\:3066\:53c2\:7167\:53ef\:80fd\:3067\:3042\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "09e6e3a0-390d-4c47-bd47-074874a189ac", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 30.3241}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Additionally, any other MCP servers you have created with \", Cell[BoxData[ButtonBox[\"CreateMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/CreateMCPServer\"]], \"InlineFormula\"], \" can be referenced by name.\"}], \"Notes\", CellID -> 676868825]" - |>, - CellTags -> "Translated", - CellID -> 676868825 - ], - Cell[ - TextData[ - { - Cell[ - BoxData["\"\!\(\*StyleBox[\"application\", \"TI\"]\)\""], - "InlineFormula" - ], - " \b\:306b\:4f7f\:7528\:53ef\:80fd\:306a\:5024\:306e\:306b\:306f\:4ee5\:4e0b\:304c\:3042\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2db1687d-78d1-4648-b7d5-838038b93013", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 32.6513}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Some possible values for \", Cell[BoxData[\"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\"], \"InlineFormula\"], \" are:\"}], \"Notes\", CellID -> 16022026]" - |>, - CellTags -> "Translated", - CellID -> 16022026 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"ClaudeCode\"", - Cell[ - TextData[ - ButtonBox[ - "Claude Code", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://code.claude.com"], None}, - ButtonNote -> "https://code.claude.com" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"ClaudeDesktop\"", - Cell[ - TextData[ - ButtonBox[ - "Claude Desktop", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://claude.ai/download"], None}, - ButtonNote -> "https://claude.ai/download" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Codex\"", - Cell[ - TextData[ - ButtonBox[ - "Codex", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://openai.com/codex"], None}, - ButtonNote -> "https://openai.com/codex" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"CopilotCLI\"", - Cell[ - TextData[ - ButtonBox[ - "GitHub Copilot CLI", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://github.com/features/copilot/cli"], None}, - ButtonNote -> "https://github.com/features/copilot/cli" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Cursor\"", - Cell[ - TextData[ - ButtonBox[ - "Cursor", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://www.cursor.com/"], None}, - ButtonNote -> "https://www.cursor.com/" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"GeminiCLI\"", - Cell[ - TextData[ - ButtonBox[ - "Gemini CLI", - BaseStyle -> "Hyperlink", - ButtonData -> { - URL[ - "https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#gemini-cli" - ], - None - }, - ButtonNote -> "https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#gemini-cli" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"OpenCode\"", - Cell[ - TextData[ - ButtonBox[ - "OpenCode", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://opencode.ai"], None}, - ButtonNote -> "https://opencode.ai" - ] - ], - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"VisualStudioCode\"", - Cell[ - TextData[ - ButtonBox[ - "Visual Studio Code", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://code.visualstudio.com"], None}, - ButtonNote -> "https://code.visualstudio.com" - ] - ], - "TableText" - ] - } - } - ] - ], - "2ColumnTableMod", - TaggingRules -> { - "OrignialExpressionUUID" -> "df4cb655-5962-49d7-b56f-0c95f13965e3", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 35.5723}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"ClaudeCode\\\"\", Cell[TextData[ButtonBox[\"Claude Code\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://code.claude.com\"], None}, ButtonNote -> \"https://code.claude.com\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"ClaudeDesktop\\\"\", Cell[TextData[ButtonBox[\"Claude Desktop\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://claude.ai/download\"], None}, ButtonNote -> \"https://claude.ai/download\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Codex\\\"\", Cell[TextData[ButtonBox[\"Codex\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://openai.com/codex\"], None}, ButtonNote -> \"https://openai.com/codex\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"CopilotCLI\\\"\", Cell[TextData[ButtonBox[\"GitHub Copilot CLI\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://github.com/features/copilot/cli\"], None}, ButtonNote -> \"https://github.com/features/copilot/cli\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Cursor\\\"\", Cell[TextData[ButtonBox[\"Cursor\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://www.cursor.com/\"], None}, ButtonNote -> \"https://www.cursor.com/\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"GeminiCLI\\\"\", Cell[TextData[ButtonBox[\"Gemini CLI\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#gemini-cli\"], None}, ButtonNote -> \"https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#gemini-cli\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"OpenCode\\\"\", Cell[TextData[ButtonBox[\"OpenCode\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://opencode.ai\"], None}, ButtonNote -> \"https://opencode.ai\"]], \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"VisualStudioCode\\\"\", Cell[TextData[ButtonBox[\"Visual Studio Code\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://code.visualstudio.com\"], None}, ButtonNote -> \"https://code.visualstudio.com\"]], \"TableText\"]}}]], \"2ColumnTableMod\", TaggingRules -> {\"Alphabetized\" -> True}, CellID -> 822744168]", - "Alphabetized" -> True - }, - CellTags -> "Translated", - CellID -> 822744168 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ], - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[ - { - "\"\!\(\*StyleBox[\"application\", \"TI\"]\)\"", - ",", - StyleBox["directory", "TI"] - } - ], - "}" - } - ], - ",", - StyleBox["server", "TI"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\:306f\:ff0c", - Cell[BoxData["\"ClaudeCode\""], "InlineFormula"], - "\:3084", - Cell[BoxData["\"OpenCode\""], "InlineFormula"], - "\:7b49\:ff0c\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:30d9\:30fc\:30b9\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:3092\:30b5\:30dd\:30fc\:30c8\:3059\:308b\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306b\:5bfe\:3057\:3066\:4f7f\:7528\:3055\:308c\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f4b876d0-6a94-4c1a-98db-84e01b603d49", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 42.7211}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[BoxData[RowBox[{ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"], \"[\", RowBox[{RowBox[{\"{\", RowBox[{\"\\\"\\!\\(\\*StyleBox[\\\"application\\\", \\\"TI\\\"]\\)\\\"\", \",\", StyleBox[\"directory\", \"TI\"]}], \"}\"}], \",\", StyleBox[\"server\", \"TI\"]}], \"]\"}]], \"InlineFormula\"], \" is used for applications that support directory-based projects, such as \", Cell[BoxData[\"\\\"ClaudeCode\\\"\"], \"InlineFormula\"], \", and \", Cell[BoxData[\"\\\"OpenCode\\\"\"], \"InlineFormula\"], \".\"}], \"Notes\", CellID -> 157338048]" - |>, - CellTags -> "Translated", - CellID -> 157338048 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ] - ], - "InlineFormula" - ], - "\:306f\:ff0c\:4ee5\:4e0b\:306e\:30aa\:30d7\:30b7\:30e7\:30f3\:3092\:53d6\:308b\:ff0e" - } - ], - "Notes", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2a204a1f-7c6b-4f6f-bf6f-4be6224a9cbf", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 46.4244}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{Cell[BoxData[ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"]], \"InlineFormula\"], \" accepts the following options:\"}], \"Notes\", CellID -> 199331470]" - |>, - CellTags -> "Translated", - CellID -> 199331470 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "ApplicationName", - ButtonBox["Automatic", BaseStyle -> "Link"], - Cell[ - "\:30d5\:30a1\:30a4\:30eb\:304b\:3089\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:969b\:306b\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:540d\:3092\:6307\:5b9a\:3059\:308b", - "TableText" - ] - } - } - ] - ], - "3ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3cde7cc0-e56a-4b6c-afab-489e329a5cb8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 41, 48.8809}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"ApplicationName\", ButtonBox[\"Automatic\", BaseStyle -> \"Link\"], Cell[\"specify the application name when uninstalling from a file\", \"TableText\"]}}]], \"3ColumnTableMod\", CellID -> 122031451]" - |>, - CellTags -> "Translated", - CellID -> 122031451 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:9805\:76ee", - Cell[ - BoxData[ - TemplateBox[ - { - "SeeAlso", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related reference (function) pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "SeeAlsoSection", - CellID -> 4086756 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "MCPServerObject", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/MCPServerObject" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"], - Cell[ - BoxData[ - ButtonBox[ - "DeleteObject", - BaseStyle -> "Link", - ButtonData -> "paclet:ref/DeleteObject" - ] - ], - "InlineSeeAlsoFunction", - TaggingRules -> {"PageType" -> "Function"} - ], - Cell[ - BoxData[ - RowBox[ - { - Cell[ - TextData[ - StyleBox[" \[FilledVerySmallSquare] ", "InlineSeparator"] - ] - ], - DynamicModuleBox[ - { - nbobj$$ = - NotebookObject[ - "22c59c35-37c5-4a97-8bbf-f2a3deb0b54d", - "39509774-ab71-409d-a018-f62aae4378a3" - ], - cellobj$$ = - CellObject[ - "be1d45fb-2ca8-4894-8fe5-5212629768c5", - "e85c3563-03ec-4c55-ab34-a7d394d4ee53" - ] - }, - TemplateBox[ - { - GraphicsBox[ - { - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - CircleBox[{0, 0}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{0, 0.62}, {0, -0.62}}] - }, - { - Thickness[0.06], - StrokeForm[Hue[0.4167, 0.406, 0.502]], - LineBox[{{-0.62, 0}, {0.62, 0}}] - } - }, - ImagePadding -> {{1.0, 1.0}, {2.4, 1.0}}, - ImageSize -> 16, - PlotRange -> {{-1.06, 1.06}, {-1.06, 1.06}}, - BaselinePosition -> Center -> Center - ], - nbobj$$, - cellobj$$ - }, - "InlineListingAddButton" - ], - Initialization :> - (nbobj$$ = EvaluationNotebook[]; - cellobj$$ = EvaluationCell[]) - ] - } - ] - ], - "InlineListingAddButton" - ] - } - ], - "SeeAlso", - CellID -> 118905349 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:30c6\:30af\:30cb\:30ab\:30eb\:30ce\:30fc\:30c8", - Cell[ - BoxData[ - TemplateBox[ - { - "TechNotes", - Cell[ - BoxData[ - FrameBox[ - Cell["Insert links to related tech notes.", "MoreInfoText"], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "TechNotesSection", - CellID -> 172645056 - ], - Cell["XXXX", "Tutorials", CellID -> 14041208] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:95a2\:9023\:3059\:308b\:30ac\:30a4\:30c9", - "MoreAboutSection", - CellID -> 118862528 - ], - Cell["XXXX", "MoreAbout", CellID -> 119044106] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:95a2\:9023\:30ea\:30f3\:30af", - Cell[ - BoxData[ - TemplateBox[ - { - "RelatedLinks", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Insert links to any related page, including web pages.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "RelatedLinksSection", - CellID -> 687367542 - ], - Cell["XXXX", "RelatedLinks", CellID -> 327486041] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:4f8b\:984c\:306e\:521d\:671f\:5316", - Cell[ - BoxData[ - TemplateBox[ - { - "ExamplesInitialization", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Input that is to be evaluated before any examples are run, e.g. Needs[\[Ellipsis]].", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExamplesInitializationSection", - CellID -> 137342190 - ], - Cell[ - BoxData[ - RowBox[{"Needs", "[", "\"Wolfram`AgentTools`\"", "]"}] - ], - "ExampleInitialization", - CellID -> 20053184 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - GridBox[ - { - { - StyleBox[ - "\:57fa\:672c\:4f8b\:984c", - "PrimaryExamplesSection" - ], - ButtonBox[ - RowBox[ - {"\:8ffd\:52a0\:4f8b\:984c", " ", "\[RightTriangle]"} - ], - BaseStyle -> "ExtendedExamplesLink", - ButtonData :> "ExtendedExamples" - ] - } - } - ], - $Line = 0; - ] - ], - "PrimaryExamplesSection", - CellID -> 33930945 - ], - Cell[ - TextData[ - { - ButtonBox[ - "Claude Desktop", - BaseStyle -> "Hyperlink", - ButtonData -> {URL["https://claude.ai/download"], None}, - ButtonNote -> "https://claude.ai/download" - ], - "\:7528\:306e\:30c7\:30d5\:30a9\:30eb\:30c8\:306eMCP\:30b5\:30fc\:30d0\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "511ac133-5371-4850-849f-ed7e19d3d7c7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 39, 20.117}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Install the default MCP server for \", ButtonBox[\"Claude Desktop\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://claude.ai/download\"], None}, ButtonNote -> \"https://claude.ai/download\"], \":\"}], \"ExampleText\", CellID -> 12425924]" - |>, - CellTags -> "Translated", - CellID -> 12425924 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[{"InstallMCPServer", "[", "\"ClaudeDesktop\"", "]"}] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 335891485 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 245509191 - ] - }, - Open - ] - ], - Cell[ - "\:305d\:308c\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2fbd7e98-22b1-414f-b4f7-c5aba1849323", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 39, 22.0894}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Uninstall it:\", \"ExampleText\", CellID -> 259865962]" - |>, - CellTags -> "Translated", - CellID -> 259865962 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - {"UninstallMCPServer", "[", "\"ClaudeDesktop\"", "]"} - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 737154476 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 123756569 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\t", "ExampleDelimiter"], - $Line = 0; - ] - ], - "ExampleDelimiter", - CellID -> 237682501 - ], - Cell[ - "\:305d\:308c\:307e\:3067\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:305f\:3059\:3079\:3066\:306eMCP\:30b5\:30fc\:30d0\:3092\:30a2\:30f3\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:ff1a", - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f8201669-5c50-4aeb-88fe-0193a417a2d6", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 39, 38.5832}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Uninstall all previously installed MCP servers:\", \"ExampleText\", CellID -> 241790957]" - |>, - CellTags -> "Translated", - CellID -> 241790957 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"UninstallMCPServer", "[", "All", "]"}]], - "Input", - CellLabel -> "In[1]:=", - CellID -> 14944104 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\".\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\".\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServer" - ], - "MessageParameters" -> {"Wolfram"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\".\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\".\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - {"\"C:/Users/rhennigan/.cursor/mcp.json\""}, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"command\":\"wolfram\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"Wolfram`AgentTools`StartMCPServer[]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServer" - ], - "MessageParameters" -> {"Wolfram"}, - "Location" -> File["C:/Users/rhennigan/.cursor/mcp.json"], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "Name" -> "Wolfram", - "Location" -> "BuiltIn", - "Transport" -> "StandardInputOutput", - "ServerVersion" -> "1.0.0", - "ObjectVersion" -> 1, - "LLMEvaluator" -> <| - "Tools" -> { - LLMTool[ - <| - "Name" -> "WolframContext", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`relatedWolframContext, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "Description" -> "Evaluate Wolfram Language code for the user in a separate kernel. The user does not automatically see the result. Do not ask permission to evaluate code. You must include the result in your response in order for them to see it. If a formatted result is provided as a markdown link, use that in your response instead of typing out the output. The evaluator supports interactive content such as Manipulate. You have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks. Natural language input is parsed before evaluation, so it works like macro expansion. You should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation (default is 60 seconds).", - "Required" -> False - |> - }, - "Function" -> Wolfram`AgentTools`DefaultServers`Private`evaluateWolframLanguage, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ], - LLMTool[ - <| - "Name" -> "WolframAlpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "the input", - "Required" -> True - |>, - "steps" -> <| - "Interpreter" -> "Boolean", - "Help" -> "whether to show step-by-step solution", - "Required" -> False - |> - }, - "Function" -> Wolfram`Chatbook`Common`getWolframAlphaText, - "Options" -> { }, - "LLMPacletVersion" -> "1.6.10" - |> - ] - } - |> - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 467595449 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:8ffd\:52a0\:4f8b\:984c", - Cell[ - BoxData[ - TemplateBox[ - { - "MoreExamples", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Extended examples in standardized sections.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "ExtendedExamplesSection", - CellTags -> "ExtendedExamples", - CellID -> 133175109 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30b9\:30b3\:30fc\:30d7", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 947858009 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:4e00\:822c\:5316\:3068\:62e1\:5f35", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 329630595 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:30aa\:30d7\:30b7\:30e7\:30f3", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 69348279 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - InterpretationBox[ - Cell["ApplicationName", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - CellID -> 349016062 - ], - Cell[ - TextData[ - { - "\:975e\:6a19\:6e96\:306e\:69cb\:6210\:5f62\:5f0f\:3067\:3042\:308b\:5834\:5408\:ff0c", - Cell[ - BoxData[ - RowBox[ - { - ButtonBox[ - "UninstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/UninstallMCPServer" - ], - "[", - RowBox[ - { - RowBox[ - { - ButtonBox["File", BaseStyle -> "Link"], - "[", - StyleBox["\[Ellipsis]", "TR"], - "]" - } - ], - ",", - StyleBox["\[Ellipsis]", "TR"] - } - ], - "]" - } - ] - ], - "InlineFormula" - ], - "\:3092\:4f7f\:7528\:3059\:308b\:969b\:306b\:306f\:ff0c", - Cell[BoxData["ApplicationName"], "InlineFormula"], - "\:30aa\:30d7\:30b7\:30e7\:30f3\:3092\:6307\:5b9a\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff1a" - } - ], - "ExampleText", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a811d027-2ffa-4232-8b19-732e2e9a4237", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 38, 26.0143}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"When using \", Cell[BoxData[RowBox[{ButtonBox[\"UninstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/UninstallMCPServer\"], \"[\", RowBox[{RowBox[{ButtonBox[\"File\", BaseStyle -> \"Link\"], \"[\", StyleBox[\"\[Ellipsis]\", \"TR\"], \"]\"}], \",\", StyleBox[\"\[Ellipsis]\", \"TR\"]}], \"]\"}]], \"InlineFormula\"], \", you'll need to specify the \", Cell[BoxData[\"ApplicationName\"], \"InlineFormula\"], \" option if it's a non-standard configuration format:\"}], \"ExampleText\", CellID -> 758087187]" - |>, - CellTags -> "Translated", - CellID -> 758087187 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "file", - "=", - RowBox[ - { - "File", - "[", - RowBox[ - { - "FileNameJoin", - "[", - RowBox[ - { - "{", - RowBox[ - { - "$TemporaryDirectory", - ",", - RowBox[{"CreateUUID", "[", "]"}] - } - ], - "}" - } - ], - "]" - } - ], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 21956564 - ], - Cell[ - BoxData[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\e45c2432-d479-42e7-927d-7e51b2f76b1f\"" - }, - "FileArgument" - ], - "]" - } - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 343102696 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - "file", - ",", - "\"Wolfram\"", - ",", - RowBox[{"\"ApplicationName\"", "->", "\"OpenCode\""}] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 425177898 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\e45c2432-d479-42e7-927d-7e51b2f76b1f\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\e45c2432-d479-42e7-927d-7e51b2f76b1f\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "OpenCode"}, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Local\\Temp\\e45c2432-d479-42e7-927d-7e51b2f76b1f" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 130657566 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "UninstallMCPServer", - "[", - RowBox[{"file", ",", "\"Wolfram\""}], - "]" - } - ] - ], - "Input", - CellLabel -> "In[3]:=", - CellID -> 371131518 - ], - Cell[ - BoxData[ - RowBox[ - { - "Missing", - "[", - RowBox[ - { - "\"NotInstalled\"", - ",", - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\e45c2432-d479-42e7-927d-7e51b2f76b1f\"" - }, - "FileArgument" - ], - "]" - } - ] - } - ], - "]" - } - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 144912027 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "UninstallMCPServer", - "[", - RowBox[ - { - "file", - ",", - "\"Wolfram\"", - ",", - RowBox[{"\"ApplicationName\"", "->", "\"OpenCode\""}] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[4]:=", - CellID -> 102308803 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {9.87553, {0.0, 9.87553}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\e45c2432-d479-42e7-927d-7e51b2f76b1f\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully uninstalled MCP server \\\"Wolfram\\\" for OpenCode.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Local\\\\Temp\\\\e45c2432-d479-42e7-927d-7e51b2f76b1f\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"UninstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "UninstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "UninstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "OpenCode"}, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Local\\Temp\\e45c2432-d479-42e7-927d-7e51b2f76b1f" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.18", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[4]=", - CellID -> 68182221 - ] - }, - Open - ] - ], - Cell[ - BoxData[RowBox[{"DeleteFile", "[", "file", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 536126654 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["XXXX", "ExampleSubsection"], - $Line = 0; - ] - ], - "ExampleSubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f8e041f0-0886-4416-b674-28376653c182", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 22, 5, 38, 29.6422}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[InterpretationBox[Cell[\"XXXX\", \"ExampleSubsection\"], $Line = 0; ]], \"ExampleSubsection\", CellID -> 313769223]" - |>, - CellTags -> "Translated", - CellID -> 502250250 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 51685201 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell["\:7279\:6027\:3068\:95a2\:4fc2", "ExampleSection"], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 334842013 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:8003\:3048\:3089\:308c\:308b\:554f\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 126903047 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:30a4\:30f3\:30bf\:30e9\:30af\:30c6\:30a3\:30d6\:306a\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 196287435 - ], - Cell[ - BoxData[ - InterpretationBox[ - Cell[ - "\:304a\:3082\:3057\:308d\:3044\:4f8b\:984c", - "ExampleSection" - ], - $Line = 0; - ] - ], - "ExampleSection", - CellID -> 122185660 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 46861683], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 20392503 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "Categorization", - Cell[ - BoxData[ - TemplateBox[ - { - "Metadata", - Cell[ - BoxData[ - FrameBox[ - Cell[ - "Metadata such as page URI, context, and type of documentation page.", - "MoreInfoText" - ], - BaseStyle -> "IFrameBox" - ] - ], - "MoreInfoTextOuter" - ] - }, - "MoreInfoOpenerButtonTemplate" - ] - ] - ] - } - ], - "CategorizationSection", - CellID -> 26274187 - ], - Cell[ - "Symbol", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 301344626 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 85939878 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 264027903 - ], - Cell[ - "Wolfram/AgentTools/ref/UninstallMCPServer", - "Categorization", - CellLabel -> "URI", - CellID -> 113491534 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 12645618], - Cell["XXXX", "Keywords", CellID -> 421973294] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Syntax Templates", - "TemplatesSection", - CellID -> 156610164 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Additional Function Template", - CellID -> 226406610 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Arguments Pattern", - CellID -> 134538307 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Local Variables", - CellID -> 235385939 - ], - Cell[ - BoxData[""], - "Template", - CellLabel -> "Color Equal Signs", - CellID -> 85474685 - ] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "FunctionPageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/Tutorials/DefaultTools.nb b/Documentation/Japanese/Tutorials/DefaultTools.nb deleted file mode 100644 index 96e36f62..00000000 --- a/Documentation/Japanese/Tutorials/DefaultTools.nb +++ /dev/null @@ -1,5983 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30c4\:30fc\:30eb", - "Title", - TaggingRules -> <| - "OrignialExpressionUUID" -> "0e240255-7a6b-8340-9a16-b0e02eb54dc6", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 18, 43.1001}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Default Tools\", \"Title\", CellID -> 75685437]" - |>, - CellTags -> "Translated", - CellID -> 75685437 - ], - Cell[ - TextData[ - { - "AgentTools\:30d1\:30af\:30ec\:30c3\:30c8\:306b\:306f\:ff0c\:540d\:524d\:306b\:3088\:3063\:3066\:53c2\:7167\:3067\:304d\:308b", - Cell[ - BoxData[ButtonBox["LLMTool", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:30aa\:30d6\:30b8\:30a7\:30af\:30c8\:306e\:96c6\:5408\:304c\:4ed8\:5c5e\:3057\:3066\:3044\:308b\:ff0e\:3053\:306e\:30da\:30fc\:30b8\:3067\:306f\:ff0c\:305d\:308c\:3089\:306e\:5404\:30c4\:30fc\:30eb\:306e\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3092\:63d0\:4f9b\:3059\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "23c759fa-5ed4-a845-b23b-b84101531798", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 18, 47.6516}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The AgentTools paclet comes with a set of \", Cell[BoxData[ButtonBox[\"LLMTool\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \" objects that can be referenced by name. This page provides the documentation for each of those tools.\"}], \"Text\", CellID -> 107989892]" - |>, - CellTags -> "Translated", - CellID -> 107989892 - ], - Cell[ - BoxData[ - GridBox[ - { - { - ButtonBox[ - "$DefaultMCPTools", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPTools" - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ButtonBox["LLMTool", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:30aa\:30d6\:30b8\:30a7\:30af\:30c8\:306e\:9023\:60f3\:3092\:4e0e\:3048\:308b" - } - ], - "TableText" - ] - }, - { - ButtonBox[ - "$DefaultMCPToolOptions", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions" - ], - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30c4\:30fc\:30eb\:3067\:5229\:7528\:53ef\:80fd\:306a\:30aa\:30d7\:30b7\:30e7\:30f3\:306e\:9023\:60f3\:3092\:4e0e\:3048\:308b", - "TableText" - ] - } - } - ] - ], - "DefinitionBox", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a8163c0e-3094-e44f-bea6-744c1488cfaa", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 18, 50.5568}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{ButtonBox[\"$DefaultMCPTools\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$DefaultMCPTools\"], Cell[TextData[{\"gives an association of \", Cell[BoxData[ButtonBox[\"LLMTool\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \" objects\"}], \"TableText\"]}, {ButtonBox[\"$DefaultMCPToolOptions\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions\"], Cell[\"gives an association of available options for the default tools\", \"TableText\"]}}]], \"DefinitionBox\", CellID -> 186163406]" - |>, - CellTags -> "Translated", - CellID -> 186163406 - ], - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:306e\:30c4\:30fc\:30eb\:306b\:95a2\:3059\:308b\:60c5\:5831\:3092\:53d6\:5f97\:3059\:308b\:305f\:3081\:306b\:4f7f\:308f\:308c\:308b\:30b7\:30f3\:30dc\:30eb\:ff0e", - "Caption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3e53f246-7f7b-824b-a9f4-377b53044196", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 18, 52.9386}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Symbols used to get information about default tools.\", \"Caption\", CellID -> 158574943]" - |>, - CellTags -> "Translated", - CellID -> 158574943 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:4e8b\:524d\:5b9a\:7fa9\:3055\:308c\:305f\:30c4\:30fc\:30eb\:306e\:5b8c\:5168\:306a\:96c6\:5408\:3092\:53d6\:5f97\:3059\:308b\:ff1a", - "MathCaption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6db62cef-0229-ed43-881d-1415fe9ad84a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 20, 23.1044}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Get the full set of predefined tools:\", \"MathCaption\", CellID -> 615603959]" - |>, - CellTags -> "Translated", - CellID -> 615603959 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"Dataset", "[", "$DefaultMCPTools", "]"}]], - "Input", - CellLabel -> "In[1]:=", - CellID -> 60517562 - ], - Cell[ - BoxData[ - TagBox[ - TagBox[ - DynamicModuleBox[ - { - TypeSystem`NestedGrid`PackagePrivate`$state$$ = <| - "InitialData" -> <| - "CodeInspector" -> - LLMTool[ - <| - "Name" -> "CodeInspector", - "DisplayName" -> "Code Inspector", - "Description" -> "Inspects Wolfram Language code using the CodeInspector package and returns a formatted report of issues found. The tool supports inspecting code strings, individual files, or entire directories of Wolfram Language source files.", - "Function" -> Wolfram`AgentTools`CodeInspectorToolFunction, - "Options" -> { }, - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "Wolfram Language code string to inspect.", - "Required" -> False - |>, - "file" -> <| - "Interpreter" -> "String", - "Help" -> "File or directory path to inspect. For directories, recursively inspects all .wl, .m, and .wls files.", - "Required" -> False - |>, - "tagExclusions" -> <| - "Interpreter" -> "String", - "Help" -> "Comma-separated list of tags to exclude (e.g., \"UnusedVariable,SuspiciousSessionSymbol\").", - "Required" -> False - |>, - "severityExclusions" -> <| - "Interpreter" -> "String", - "Help" -> "Comma-separated list of severities to exclude. Default: \"Formatting,Scoping\". Available: Fatal, Error, Warning, Scoping, Remark, Formatting.", - "Required" -> False - |>, - "confidenceLevel" -> <| - "Interpreter" -> "Number", - "Help" -> "Minimum confidence level (0.0 to 1.0). Default: 0.75. Issues below this confidence are excluded.", - "Required" -> False - |>, - "limit" -> <| - "Interpreter" -> "Integer", - "Help" -> "Maximum number of issues to display. Default: 100.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "CreateSymbolDoc" -> - LLMTool[ - <| - "Name" -> "CreateSymbolDoc", - "DisplayName" -> "Create Symbol Documentation", - "Description" -> "Creates a new symbol documentation page for a Wolfram Language paclet. The tool generates a properly structured .nb file in the correct location within the paclet's documentation directory.", - "Function" -> Wolfram`AgentTools`Tools`PacletDocumentation`Private`createSymbolPacletDocumentation, - "Options" -> { }, - "Parameters" -> { - "pacletDirectory" -> <| - "Interpreter" -> "String", - "Help" -> "Absolute path to the paclet root directory.", - "Required" -> True - |>, - "symbolName" -> <| - "Interpreter" -> "String", - "Help" -> "Name of the symbol being documented (e.g., \"MyFunction\").", - "Required" -> True - |>, - "pacletName" -> <| - "Interpreter" -> "String", - "Help" -> "Name of the paclet (e.g., \"AgentTools\" or \"Wolfram/AgentTools\").", - "Required" -> True - |>, - "publisherID" -> <| - "Interpreter" -> "String", - "Help" -> "Publisher ID for the paclet (e.g., \"Wolfram\"). Can be omitted for legacy paclets or included in pacletName.", - "Required" -> False - |>, - "context" -> <| - "Interpreter" -> "String", - "Help" -> "Full context for the symbol. Defaults based on pacletName/publisherID.", - "Required" -> False - |>, - "usage" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown string with usage cases as bullet points: `- \\`MyFunc[x]\\` does something with *x*`", - "Required" -> True - |>, - "notes" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown string for Details & Options section. Each paragraph becomes a note cell.", - "Required" -> False - |>, - "seeAlso" -> <| - "Interpreter" -> "String", - "Help" -> "Symbol names separated by newlines or commas (e.g., \"Plus\\nMinus\" or \"Plus, Minus\").", - "Required" -> False - |>, - "techNotes" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown links to tutorials, one per line: `[Title](paclet:Publisher/Paclet/tutorial/Name)`", - "Required" -> False - |>, - "relatedGuides" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown links to guides, one per line: `[Title](paclet:Publisher/Paclet/guide/Name)`", - "Required" -> False - |>, - "relatedLinks" -> <| - "Interpreter" -> "String", - "Help" -> "External links in markdown format, one per line: `[label](url)`", - "Required" -> False - |>, - "keywords" -> <| - "Interpreter" -> "String", - "Help" -> "Keywords separated by newlines or commas.", - "Required" -> False - |>, - "newInVersion" -> <| - "Interpreter" -> "String", - "Help" -> "Version string for \"New in:\" field (e.g., \"1.0\").", - "Required" -> False - |>, - "basicExamples" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown content for Basic Examples section. Code blocks will be evaluated automatically.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "EditSymbolDoc" -> - LLMTool[ - <| - "Name" -> "EditSymbolDoc", - "DisplayName" -> "Edit Symbol Documentation", - "Description" -> "Edits an existing symbol documentation page. Supports operations like setting usage, notes, see also, and adding/modifying examples. Example inputs are automatically evaluated and outputs are generated.", - "Function" -> Wolfram`AgentTools`Tools`PacletDocumentation`Private`editSymbolPacletDocumentation, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "Path to the notebook file or documentation URI.", - "Required" -> True - |>, - "operation" -> <| - "Interpreter" -> "String", - "Help" -> "The edit operation: setUsage, setNotes, addNote, setDetailsTable, setSeeAlso, setTechNotes, setRelatedGuides, setRelatedLinks, setKeywords, setHistory.", - "Required" -> True - |>, - "content" -> <| - "Interpreter" -> "String", - "Help" -> "New content in markdown or appropriate format for the operation.", - "Required" -> False - |>, - "position" -> <| - "Interpreter" -> "Integer", - "Help" -> "Position for addNote operation (1-indexed). Negative values count from the end (-1 = last).", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "EditSymbolDocExamples" -> - LLMTool[ - <| - "Name" -> "EditSymbolDocExamples", - "DisplayName" -> "Edit Symbol Documentation Examples", - "Description" -> "Edits example sections of an existing symbol documentation page. Supports operations for appending, prepending, inserting, replacing, removing, clearing, and setting examples. Example code is automatically evaluated and output cells are generated. Returns the generated content as markdown for verification.", - "Function" -> Wolfram`AgentTools`Tools`PacletDocumentation`Private`editSymbolPacletDocumentationExamples, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "Path to the notebook file or documentation URI.", - "Required" -> True - |>, - "operation" -> <| - "Interpreter" -> "String", - "Help" -> "The edit operation: appendExample, prependExample, insertExample, replaceExample, removeExample, clearExamples, setExamples.", - "Required" -> True - |>, - "section" -> <| - "Interpreter" -> "String", - "Help" -> "Target example section: BasicExamples, Scope, GeneralizationsExtensions, Options, Applications, PropertiesRelations, PossibleIssues, InteractiveExamples, NeatExamples.", - "Required" -> True - |>, - "content" -> <| - "Interpreter" -> "String", - "Help" -> "Markdown content for example cells. Code blocks are evaluated automatically. Use --- to separate example groups.", - "Required" -> False - |>, - "position" -> <| - "Interpreter" -> "Integer", - "Help" -> "Position for insert/replace/remove operations (1-indexed). Negative values count from the end (-1 = last).", - "Required" -> False - |>, - "subsection" -> <| - "Interpreter" -> "String", - "Help" -> "For Options section, the option name to target.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "MCPAppsTest" -> - LLMTool[ - <| - "Name" -> "MCPAppsTest", - "DisplayName" -> "MCP Apps Test", - "Description" -> "A diagnostic tool for testing the MCP Apps pipeline. Echoes the input message back along with server metadata.", - "Function" -> Wolfram`AgentTools`Tools`MCPAppsTest`Private`mcpAppsTestEvaluate, - "Options" -> { }, - "Parameters" -> { - "message" -> <| - "Interpreter" -> "String", - "Help" -> "A message to echo back for testing.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "NotebookViewer" -> - LLMTool[ - <| - "Name" -> "NotebookViewer", - "DisplayName" -> "Notebook Viewer", - "Description" -> "View an interactive Wolfram Cloud notebook inline. Provide a cloud notebook URL and the notebook will be rendered using the Wolfram Notebook Embedder, allowing the user to view and interact with the notebook directly.", - "Function" -> Wolfram`AgentTools`Tools`NotebookViewer`Private`notebookViewerEvaluate, - "Options" -> { }, - "Parameters" -> { - "url" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Cloud notebook URL to embed.", - "Required" -> True - |>, - "allowInteract" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to enable interactivity in the embedded notebook (default: true).", - "Required" -> False - |>, - "maxHeight" -> <| - "Interpreter" -> "Integer", - "Help" -> "Maximum height in pixels. If omitted, the notebook sizes to fit its content.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "ReadNotebook" -> - LLMTool[ - <| - "Name" -> "ReadNotebook", - "DisplayName" -> "Read Notebook", - "Description" -> "Reads the contents of a Wolfram notebook (.nb) as markdown text.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram notebook to read, specified as a file path or a NotebookObject[...]", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "SymbolDefinition" -> - LLMTool[ - <| - "Name" -> "SymbolDefinition", - "DisplayName" -> "Symbol Definition", - "Description" -> "Retrieves the definitions of one or more Wolfram Language symbols and returns them in a readable markdown format.\nThe tool generates clean, formatted definition strings by intelligently managing the context path to minimize fully qualified symbol names.\n\nUse fully qualified symbol names (e.g., System`Plus, Wolfram`AgentTools`CreateMCPServer) if the context is known.\nMultiple symbols can be requested by separating them with commas.", - "Function" -> Wolfram`AgentTools`Tools`SymbolDefinition`Private`getSymbolDefinition, - "Options" -> { }, - "Parameters" -> { - "symbols" -> <| - "Interpreter" -> "String", - "Help" -> "The symbol name (or multiple names, comma separated).", - "Required" -> True - |>, - "includeContextDetails" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to include a JSON map showing which symbols belong to which contexts (default: false).", - "Required" -> False - |>, - "maxLength" -> <| - "Interpreter" -> "Integer", - "Help" -> "Maximum character length for output before truncation (default: 10000).", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "TestReport" -> - LLMTool[ - <| - "Name" -> "TestReport", - "DisplayName" -> "Test Report", - "Description" -> "Runs Wolfram Language test files (.wlt) and returns a report of the results", - "Function" -> Wolfram`AgentTools`Tools`TestReport`Private`testReport, - "Options" -> { }, - "Parameters" -> { - "paths" -> <| - "Interpreter" -> "String", - "Help" -> "Comma separated list of paths to Wolfram Language test files (.wlt) or directories of test files", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "An optional time constraint (in seconds) for each test file", - "Required" -> False - |>, - "memoryConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "An optional memory constraint (in bytes) for each test file", - "Required" -> False - |>, - "newKernel" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to use a fresh kernel for running tests (default is true)", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "WolframAlpha" -> - LLMTool[ - <| - "Name" -> "WolframAlpha", - "DisplayName" -> "Wolfram|Alpha", - "Description" -> "Use natural language queries with Wolfram|Alpha to get up-to-date computational results about entities in chemistry, physics, geography, history, art, astronomy, and more.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Function" -> Wolfram`AgentTools`Tools`WolframAlpha`Private`wolframAlphaToolEvaluate, - "Options" -> { }, - "Parameters" -> { - "query" -> <| - "Interpreter" -> "String", - "Help" -> "The query to send to Wolfram|Alpha.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "WolframAlphaContext" -> - LLMTool[ - <| - "Name" -> "WolframAlphaContext", - "DisplayName" -> "Wolfram|Alpha Context", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram Alpha. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible (up to 250 words).", - "Function" -> Wolfram`AgentTools`Tools`Context`Private`relatedWolframAlphaPrompt, - "LLMKit" -> "Required", - "Initialization" :> - Wolfram`AgentTools`Common`initializeVectorDatabases[], - "Options" -> { }, - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "WolframContext" -> - LLMTool[ - <| - "Name" -> "WolframContext", - "DisplayName" -> "Wolfram Context", - "Description" -> "Uses semantic search to retrieve any relevant information from Wolfram. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible (up to 250 words).", - "Function" -> Wolfram`AgentTools`Common`relatedWolframContext, - "LLMKit" -> "Suggested", - "Initialization" :> - Wolfram`AgentTools`Common`initializeVectorDatabases[], - "Options" -> { }, - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "WolframLanguageContext" -> - LLMTool[ - <| - "Name" -> "WolframLanguageContext", - "DisplayName" -> "Wolfram Language Context", - "Description" -> "Uses semantic search to retrieve information from various sources that can be used to help write Wolfram Language code. Always use this tool at the start of new conversations or if the topic changes to ensure you have up-to-date relevant information. This uses semantic search, so the context argument should be written in natural language (not a search query) and contain as much detail as possible.", - "Function" -> Wolfram`AgentTools`Common`relatedDocumentation, - "LLMKit" -> "Suggested", - "Initialization" :> - Wolfram`AgentTools`Common`initializeVectorDatabases[], - "Options" -> { }, - "Parameters" -> { - "context" -> <| - "Interpreter" -> "String", - "Help" -> "A detailed summary of what the user is trying to achieve or learn about.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "WolframLanguageEvaluator" -> - LLMTool[ - <| - "Name" -> "WolframLanguageEvaluator", - "DisplayName" -> "Wolfram Language Evaluator", - "Description" -> "Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\nThe user does not automatically see the result, so you must include the result in your response in order for them to see it.\nIf a formatted result is provided as a markdown link, use that in your response instead of typing out the output.\nDo not ask permission to evaluate code.\nYou have read access to local files.\nParse natural language input with `\[FreeformPrompt][\"query\"]`, which is analogous to ctrl-= input in notebooks.\nNatural language input is parsed before evaluation, so it works like macro expansion.\nYou should ALWAYS use this natural language input to obtain things like `Quantity`, `DateObject`, `Entity`, etc.\n\[FreeformPrompt] should be written as \\uf351 in JSON.\nAlways use the Wolfram context tool before using this tool to make sure you have the most up-to-date information.", - "Function" -> Wolfram`AgentTools`Tools`WolframLanguageEvaluator`Private`evaluateWolframLanguage, - "Options" -> { }, - "Parameters" -> { - "code" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram Language code to evaluate.", - "Required" -> True - |>, - "timeConstraint" -> <| - "Interpreter" -> "Integer", - "Help" -> "The time constraint for the evaluation. Uses the server's configured default if not specified.", - "Required" -> False - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - "WriteNotebook" -> - LLMTool[ - <| - "Name" -> "WriteNotebook", - "DisplayName" -> "Write Notebook", - "Description" -> "Converts markdown text to a Wolfram notebook and saves it to a file.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook, - "Options" -> { }, - "Parameters" -> { - "file" -> <| - "Interpreter" -> "String", - "Help" -> "The file to write the notebook to (must end in .nb).", - "Required" -> True - |>, - "overwrite" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to overwrite an existing file (default is False).", - "Required" -> False - |>, - "markdown" -> <| - "Interpreter" -> "String", - "Help" -> "The markdown text to write to a notebook.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ] - |>, - "AllowEmbedding" -> True, - "InitialShape" -> - TypeSystem`PackageScope`Limited[ - TypeSystem`PackageScope`ColumnShape[ - TypeSystem`PackageScope`KeyValueShape[ - TypeSystem`PackageScope`AtomShape[252.0], - TypeSystem`PackageScope`UnknownShape[False] - ] - ], - 15, - Infinity, - { } - ], - "InitialType" -> - TypeSystem`Assoc[ - TypeSystem`Atom[ - TypeSystem`Enumeration[ - "CodeInspector", - "CreateSymbolDoc", - "EditSymbolDoc", - "EditSymbolDocExamples", - "MCPAppsTest", - "NotebookViewer", - "ReadNotebook", - "SymbolDefinition", - "TestReport", - "WolframAlpha", - "WolframAlphaContext", - "WolframContext", - "WolframLanguageContext", - "WolframLanguageEvaluator", - "WriteNotebook" - ] - ], - TypeSystem`AnyType, - 15 - ], - "Meta" -> <| |>, - "RowTarget" -> 20, - "ColumnTarget" -> 10, - "Shape" -> - TypeSystem`PackageScope`Limited[ - TypeSystem`PackageScope`ColumnShape[ - TypeSystem`PackageScope`KeyValueShape[ - TypeSystem`PackageScope`AtomShape[252.0], - TypeSystem`PackageScope`UnknownShape[False] - ] - ], - 15, - Infinity, - { } - ], - "Type" -> - TypeSystem`Assoc[ - TypeSystem`Atom[ - TypeSystem`Enumeration[ - "CodeInspector", - "CreateSymbolDoc", - "EditSymbolDoc", - "EditSymbolDocExamples", - "MCPAppsTest", - "NotebookViewer", - "ReadNotebook", - "SymbolDefinition", - "TestReport", - "WolframAlpha", - "WolframAlphaContext", - "WolframContext", - "WolframLanguageContext", - "WolframLanguageEvaluator", - "WriteNotebook" - ] - ], - TypeSystem`AnyType, - 15 - ], - "Path" -> { }, - "DisplayedRowCount" -> 15, - "DisplayedColumnCount" -> 1, - "DataRowCount" -> 15, - "DataColumnCount" -> 1, - "SortPaths" -> { }, - "SortDirections" -> { }, - "HiddenItemsMap" -> Null, - "UpdateType" -> 1 - |>, - TypeSystem`NestedGrid`PackagePrivate`$outputID$$, - TypeSystem`NestedGrid`PackagePrivate`$path$$ = { }, - TypeSystem`NestedGrid`PackagePrivate`$vPos$$ = 1, - TypeSystem`NestedGrid`PackagePrivate`$hPos$$ = 1, - TypeSystem`NestedGrid`PackagePrivate`$grid$$ = - DynamicModule[ - { - TypeSystem`NestedGrid`PackagePrivate`renderedGrid = - Deploy[ - Style[ - Grid[ - { - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "CodeInspector", - Style[ - "CodeInspector", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["CodeInspector"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["CodeInspector"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"CodeInspector\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Inspects Wolfram Language code using the CodeInspector package and returns a\\nformatted report of issues found. The tool supports inspecting code strings,\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["CodeInspector"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "CreateSymbolDoc", - Style[ - "CreateSymbolDoc", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["CreateSymbolDoc"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["CreateSymbolDoc"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"CreateSymbolDoc\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Creates a new symbol documentation page for a Wolfram Language paclet. The tool\\ngenerates a properly structured .nb file in the correct location within the pacl\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["CreateSymbolDoc"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "EditSymbolDoc", - Style[ - "EditSymbolDoc", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["EditSymbolDoc"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["EditSymbolDoc"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"EditSymbolDoc\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Edits an existing symbol documentation page. Supports operations like setting\\nusage, notes, see also, and adding/modifying examples. Example inputs are\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["EditSymbolDoc"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "EditSymbolDocExamples", - Style[ - "EditSymbolDocExamples", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["EditSymbolDocExamples"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["EditSymbolDocExamples"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"EditSymbolDocExamples\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Edits example sections of an existing symbol documentation page. Supports\\noperations for appending, prepending, inserting, replacing, removing, clearing,\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["EditSymbolDocExamples"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "MCPAppsTest", - Style[ - "MCPAppsTest", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["MCPAppsTest"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["MCPAppsTest"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"MCPAppsTest\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"A diagnostic tool for testing the MCP Apps pipeline. Echoes the input message\\nback along with server metadata.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["MCPAppsTest"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "NotebookViewer", - Style[ - "NotebookViewer", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["NotebookViewer"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["NotebookViewer"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"NotebookViewer\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"View an interactive Wolfram Cloud notebook inline. Provide a cloud notebook URL\\nand the notebook will be rendered using the Wolfram Notebook Embedder, allowing \"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["NotebookViewer"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "ReadNotebook", - Style[ - "ReadNotebook", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["ReadNotebook"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["ReadNotebook"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["ReadNotebook"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "SymbolDefinition", - Style[ - "SymbolDefinition", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["SymbolDefinition"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["SymbolDefinition"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"SymbolDefinition\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Retrieves the definitions of one or more Wolfram Language symbols and returns\\nthem in a readable markdown format.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["SymbolDefinition"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "TestReport", - Style[ - "TestReport", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["TestReport"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["TestReport"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"TestReport\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Runs Wolfram Language test files (.wlt) and returns a report of the results\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["TestReport"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframAlpha", - Style[ - "WolframAlpha", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframAlpha"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframAlpha"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlpha\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Use natural language queries with Wolfram|Alpha to get up-to-date computational\\nresults about entities in chemistry, physics, geography, history, art, astronomy\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframAlpha"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframAlphaContext", - Style[ - "WolframAlphaContext", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframAlphaContext"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframAlphaContext"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframAlphaContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve any relevant information from Wolfram Alpha.\\nAlways use this tool at the start of new conversations or if the topic changes\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframAlphaContext"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframContext", - Style[ - "WolframContext", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframContext"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframContext"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve any relevant information from Wolfram. Always\\nuse this tool at the start of new conversations or if the topic changes to\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframContext"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframLanguageContext", - Style[ - "WolframLanguageContext", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframLanguageContext"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframLanguageContext"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageContext\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Uses semantic search to retrieve information from various sources that can be\\nused to help write Wolfram Language code. Always use this tool at the start of\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframLanguageContext"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WolframLanguageEvaluator", - Style[ - "WolframLanguageEvaluator", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WolframLanguageEvaluator"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframLanguageEvaluator"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframLanguageEvaluator\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Evaluates Wolfram Language code for the user in a Wolfram Language kernel.\\nThe user does not automatically see the result, so you must include the result\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WolframLanguageEvaluator"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - }, - { - Item[ - Pane[ - Annotation[ - EventHandler[ - MouseAppearance[ - Mouseover[ - "WriteNotebook", - Style[ - "WriteNotebook", - FontColor -> RGBColor[0.274963, 0.536987, 0.791992] - ] - ], - "LinkHand" - ], - {"MouseClicked", 1} :> - If[ TypeSystem`NestedGrid`PackagePrivate`checkInteractivity[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`updateState[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - {Key["WriteNotebook"]}, - 1 - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WriteNotebook"]}, - "RowHeader", - False - ], - "Mouse" - ], - ImageSize -> {{252.0, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - Background -> RGBColor[0.950047, 0.950047, 0.950047], - Alignment -> {Left, Baseline} - ], - Item[ - Pane[ - Annotation[ - RawBoxes[ - StyleBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - TemplateBox[ - { - GridBox[ - { - { - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - "SummaryPanel" - ], - "]" - } - ], - FontFamily -> - Dynamic[CurrentValue[{"StyleHints", "CodeFont"}]], - ShowStringCharacters -> True - ] - ], - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - {Key["WriteNotebook"]}, - "Item", - False - ], - "Mouse" - ], - ImageSize -> {{60, Full}, Automatic}, - ImageMargins -> {{5, 3}, {4, 5}} - ], - ItemSize -> {Full, Automatic} - ] - } - }, - BaseStyle -> { - ContextMenu -> - Dynamic[ - TypeSystem`NestedGrid`PackagePrivate`$contextMenuTrigger; - Which[ - UnsameQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastOutputID, - TypeSystem`NestedGrid`PackagePrivate`localHold[ - TypeSystem`NestedGrid`PackagePrivate`$outputID$$ - ] - ], - { }, - SameQ[ - TypeSystem`NestedGrid`PackagePrivate`$contextMenuTrigger, - TypeSystem`NestedGrid`PackagePrivate`$lastContextMenuTrigger - ], - TypeSystem`NestedGrid`PackagePrivate`$lastContextMenu, - True, - - TypeSystem`NestedGrid`PackagePrivate`$lastContextMenuTrigger = - TypeSystem`NestedGrid`PackagePrivate`$contextMenuTrigger; - - TypeSystem`NestedGrid`PackagePrivate`$lastContextMenu = - Block[ - { - TypeSystem`NestedGrid`PackagePrivate`$globalScrollPos = { - TypeSystem`NestedGrid`PackagePrivate`$vPos$$, - TypeSystem`NestedGrid`PackagePrivate`$hPos$$ - } - }, - With[ - { - TypeSystem`NestedGrid`PackagePrivate`lastPath$ = - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`lastPathType$ = - TypeSystem`NestedGrid`PackagePrivate`$lastPathType, - TypeSystem`NestedGrid`PackagePrivate`isLeafHeader$ = - TypeSystem`NestedGrid`PackagePrivate`$lastPathIsLeafHeader, - TypeSystem`NestedGrid`PackagePrivate`headerHidden$ = - And[ - MatchQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPathType, - Alternatives["RowHeader", "ColumnHeader"] - ], - TypeSystem`NestedGrid`PackagePrivate`headerHiddenQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ] - ], - TypeSystem`NestedGrid`PackagePrivate`allHidden$ = - TypeSystem`NestedGrid`PackagePrivate`allHiddenQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`anyHidden$ = - TypeSystem`NestedGrid`PackagePrivate`anyHiddenQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`sortDirection$ = - TypeSystem`NestedGrid`PackagePrivate`columnSortDirection[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$["SortPaths"], - TypeSystem`NestedGrid`PackagePrivate`$state$$[ - "SortDirections" - ] - ], - TypeSystem`NestedGrid`PackagePrivate`haveData$ = - Not[ - FailureQ[ - TypeSystem`NestedGrid`PackagePrivate`datasetInitialData[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ] - ] - ], - TypeSystem`NestedGrid`PackagePrivate`isKeyDummy$ = - Not[ - FreeQ[TypeSystem`NestedGrid`PackagePrivate`$lastPath, Keys] - ] - }, - Join[ - { - If[ Or[ - Not[TypeSystem`NestedGrid`PackagePrivate`haveData$], - Not[TypeSystem`NestedGrid`PackagePrivate`anyHidden$], - TypeSystem`NestedGrid`PackagePrivate`isKeyDummy$ - ], - Nothing, - MenuItem[ - StringJoin[ - "Show ", - Which[ - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "Item" - ], - "", - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "RowHeader" - ], - "Row", - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "ColumnHeader" - ], - "Column", - True, - "" - ] - ], - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateHiddenItems[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - "remove" - ] - ], - MenuEvaluator -> Automatic - ] - ], - If[ Or[ - Not[TypeSystem`NestedGrid`PackagePrivate`haveData$], - TypeSystem`NestedGrid`PackagePrivate`pathEmptyQ[ - TypeSystem`NestedGrid`PackagePrivate`$lastPath, - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ], - TypeSystem`NestedGrid`PackagePrivate`isKeyDummy$, - And[ - TypeSystem`NestedGrid`PackagePrivate`allHidden$, - TypeSystem`NestedGrid`PackagePrivate`headerHidden$ - ] - ], - Nothing, - MenuItem[ - StringJoin[ - "Hide ", - Which[ - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "Item" - ], - "", - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "RowHeader" - ], - "Row", - Equal[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - "ColumnHeader" - ], - "Column", - True, - "" - ] - ], - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateHiddenItems[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - "add" - ] - ], - MenuEvaluator -> Automatic - ] - ], - Delimiter - }, - If[ And[ - TypeSystem`NestedGrid`PackagePrivate`haveData$, - MatchQ[ - TypeSystem`NestedGrid`PackagePrivate`lastPathType$, - Alternatives["ColumnHeader", "KeyDummy"] - ], - TypeSystem`NestedGrid`PackagePrivate`isLeafHeader$, - Not[TypeSystem`NestedGrid`PackagePrivate`allHidden$] - ], - { - If[ UnsameQ[ - TypeSystem`NestedGrid`PackagePrivate`sortDirection$, - "Ascending" - ], - MenuItem[ - "Sort", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateSort[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - "Ascending" - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ], - If[ UnsameQ[ - TypeSystem`NestedGrid`PackagePrivate`sortDirection$, - "Descending" - ], - MenuItem[ - "Reverse Sort", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateSort[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - "Descending" - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ], - If[ UnsameQ[ - TypeSystem`NestedGrid`PackagePrivate`sortDirection$, - None - ], - MenuItem[ - "Unsort", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`updateSort[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - TypeSystem`NestedGrid`PackagePrivate`lastPath$, - None - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ], - Delimiter - }, - { } - ], - { - MenuItem[ - "Copy Position to Clipboard", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`toCurrentPosition[ - TypeSystem`NestedGrid`PackagePrivate`copyClip - ] - ], - MenuEvaluator -> Automatic - ], - If[ TypeSystem`NestedGrid`PackagePrivate`haveData$, - MenuItem[ - "Copy Data to Clipboard", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`toCurrentData[ - TypeSystem`NestedGrid`PackagePrivate`$state$$, - TypeSystem`NestedGrid`PackagePrivate`copyClip - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ], - Delimiter, - MenuItem[ - "Paste Position in New Cell", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`toCurrentPosition[ - TypeSystem`NestedGrid`PackagePrivate`cellPaste - ] - ], - MenuEvaluator -> Automatic - ], - If[ TypeSystem`NestedGrid`PackagePrivate`haveData$, - MenuItem[ - "Paste Data in New Cell", - KernelExecute[ - TypeSystem`NestedGrid`PackagePrivate`toCurrentData[ - TypeSystem`NestedGrid`PackagePrivate`$state$$, - TypeSystem`NestedGrid`PackagePrivate`cellPaste - ] - ], - MenuEvaluator -> Automatic - ], - Nothing - ] - } - ] - ] - ] - ] - ], - FontFamily -> "Source Sans Pro", - FontSize -> 14, - FontWeight -> Plain - }, - Dividers -> All, - FrameStyle -> RGBColor[0.749004, 0.749004, 0.749004], - Spacings -> {0, 0}, - Alignment -> Left, - BaseStyle -> { - FontFamily -> "Source Sans Pro", - FontSize -> 14, - FontWeight -> Plain - } - ], - LineBreakWithin -> False, - ContextMenu -> { }, - NumberMarks -> False, - ShowAutoStyles -> False - ] - ], - TypeSystem`NestedGrid`PackagePrivate`initialQ = True - }, - Dynamic[ - TypeSystem`NestedGrid`PackagePrivate`setupViewPath[ - TypeSystem`NestedGrid`PackagePrivate`$path$$, - - If[ Not[TypeSystem`NestedGrid`PackagePrivate`initialQ], - Module[ - { - TypeSystem`NestedGrid`PackagePrivate`tmpGrid$ = $Failed, - TypeSystem`NestedGrid`PackagePrivate`tmpData$ = - TypeSystem`NestedGrid`PackagePrivate`datasetData[ - TypeSystem`NestedGrid`PackagePrivate`$state$$ - ] - }, - - TypeSystem`NestedGrid`PackagePrivate`tmpGrid$ = - If[ FailureQ[TypeSystem`NestedGrid`PackagePrivate`tmpData$], - TypeSystem`NestedGrid`PackagePrivate`renderedGrid, - TypeSystem`NestedGrid`PackagePrivate`renderGrid[TypeSystem`NestedGrid`PackagePrivate`$state$$, TypeSystem`NestedGrid`PackagePrivate`$path$$, TypeSystem`NestedGrid`PackagePrivate`$vPos$$, TypeSystem`NestedGrid`PackagePrivate`$hPos$$, TypeSystem`NestedGrid`PackagePrivate`$grid$$, TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - TypeSystem`NestedGrid`PackagePrivate`tmpData$ - ] - ]; - - If[ Not[ - FailureQ[TypeSystem`NestedGrid`PackagePrivate`tmpGrid$] - ], - TypeSystem`NestedGrid`PackagePrivate`renderedGrid = - TypeSystem`NestedGrid`PackagePrivate`tmpGrid$ - ]; - ] - ]; - - TypeSystem`NestedGrid`PackagePrivate`initialQ = False; - TypeSystem`NestedGrid`PackagePrivate`$vPos$$; - TypeSystem`NestedGrid`PackagePrivate`$hPos$$; - If[ FailureQ[TypeSystem`NestedGrid`PackagePrivate`renderedGrid], - TypeSystem`SparseGrid[ - TypeSystem`H["(data no longer present)"] - ], - TypeSystem`NestedGrid`PackagePrivate`renderedGrid - ] - ], - TrackedSymbols :> { - TypeSystem`NestedGrid`PackagePrivate`$vPos$$, - TypeSystem`NestedGrid`PackagePrivate`$hPos$$ - } - ], - DynamicModuleValues :> { } - ], - TypeSystem`NestedGrid`PackagePrivate`$topBar$$ = - Dynamic[ - TypeSystem`NestedGrid`PackagePrivate`makeFramedBar[ - TypeSystem`PackageScope`SubViewPathbar[ - TypeSystem`NestedGrid`PackagePrivate`$path$$, - TypeSystem`NestedGrid`PackagePrivate`updateState[ - TypeSystem`NestedGrid`PackagePrivate`$state$$, - TypeSystem`NestedGrid`PackagePrivate`$path$$, - TypeSystem`NestedGrid`PackagePrivate`$vPos$$, - TypeSystem`NestedGrid`PackagePrivate`$hPos$$, - TypeSystem`NestedGrid`PackagePrivate`$grid$$, - TypeSystem`NestedGrid`PackagePrivate`localHold[ - TypeSystem`NestedGrid`PackagePrivate`$outputID$$ - ] - ] - ] - ], - TrackedSymbols :> {TypeSystem`NestedGrid`PackagePrivate`$path$$} - ], - TypeSystem`NestedGrid`PackagePrivate`$bottomBar$$ = - Dynamic[ - Replace[ - Replace[ - TypeSystem`NestedGrid`PackagePrivate`mouseAnnotation$$, - { - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - Null, - Blank[] - ] -> "", - TypeSystem`NestedGrid`PackagePrivate`$SliceMarker[TypeSystem`NestedGrid`PackagePrivate`localHold[TypeSystem`NestedGrid`PackagePrivate`$outputID$$]][ - Pattern[ - TypeSystem`NestedGrid`PackagePrivate`path$, - Blank[] - ], - Pattern[ - TypeSystem`NestedGrid`PackagePrivate`pathType$, - Blank[] - ], - Pattern[ - TypeSystem`NestedGrid`PackagePrivate`isLeafHeader$, - Blank[] - ] - ] :> - ( - Increment[ - TypeSystem`NestedGrid`PackagePrivate`$contextMenuTrigger - ]; - - - TypeSystem`NestedGrid`PackagePrivate`$lastPath = - TypeSystem`NestedGrid`PackagePrivate`path$; - - - TypeSystem`NestedGrid`PackagePrivate`$lastPathType = - TypeSystem`NestedGrid`PackagePrivate`pathType$; - - - TypeSystem`NestedGrid`PackagePrivate`$lastPathIsLeafHeader = - TypeSystem`NestedGrid`PackagePrivate`isLeafHeader$; - - - TypeSystem`NestedGrid`PackagePrivate`$lastOutputID = - TypeSystem`NestedGrid`PackagePrivate`localHold[ - TypeSystem`NestedGrid`PackagePrivate`$outputID$$ - ]; - - TypeSystem`NestedGrid`PackagePrivate`makePathTrail[ - TypeSystem`NestedGrid`PackagePrivate`path$, - TypeSystem`NestedGrid`PackagePrivate`makePathElements - ]), - Null :> Spacer[10], - Blank[] :> Spacer[10] - } - ], - Pattern[ - TypeSystem`NestedGrid`PackagePrivate`bar, - Except[Alternatives[Blank[Spacer], ""]] - ] :> - TypeSystem`NestedGrid`PackagePrivate`makeFramedPathbar[ - TypeSystem`NestedGrid`PackagePrivate`bar - ] - ], - TrackedSymbols :> {TypeSystem`NestedGrid`PackagePrivate`mouseAnnotation$$} - ], - TypeSystem`NestedGrid`PackagePrivate`mouseAnnotation$$ = - Null - }, - DynamicWrapperBox[ - DynamicBox[ - ToBoxes[ - Dataset`DatasetContent[ - 2, - "Path" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$path$$], - "Grid" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$grid$$], - "State" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$state$$], - "VPos" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$vPos$$], - "HPos" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$hPos$$], - "TopBar" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$topBar$$], - "BottomBar" -> - Hold[TypeSystem`NestedGrid`PackagePrivate`$bottomBar$$], - "OutputID" -> - Hold[ - TypeSystem`NestedGrid`PackagePrivate`localHold[ - TypeSystem`NestedGrid`PackagePrivate`$outputID$$ - ] - ] - ], - StandardForm - ], - ImageSizeCache -> {828.0, {518.943, 524.234}}, - TrackedSymbols :> { - TypeSystem`NestedGrid`PackagePrivate`$state$$, - TypeSystem`NestedGrid`PackagePrivate`$grid$$ - } - ], - TypeSystem`NestedGrid`PackagePrivate`mouseAnnotation$$ = - MouseAnnotation[], - ImageSizeCache -> {828.0, {518.943, 524.234}} - ], - BaseStyle -> { - LineBreakWithin -> False, - LightDarkAutoColorRules -> Association["MarkedColors" -> True] - }, - DynamicModuleValues :> { }, - Initialization :> - (TypeSystem`NestedGrid`PackagePrivate`$outputID$$ = - CreateUUID[]), - UnsavedVariables :> {TypeSystem`NestedGrid`PackagePrivate`$outputID$$} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - Dataset`InterpretDataset[1], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 432676543 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:30c4\:30fc\:30eb\:3092\:540d\:524d\:3067\:4f7f\:7528\:3059\:308b\:30ab\:30b9\:30bf\:30e0MCP\:30b5\:30fc\:30d0\:30fc\:3092\:4f5c\:6210\:3059\:308b\:ff1a", - "MathCaption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "905807a6-8137-7948-9b95-e0d5d146dc8b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 20, 34.5643}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Create a custom MCP server that uses default tools by name:\", \"MathCaption\", CellID -> 198329011]" - |>, - CellTags -> "Translated", - CellID -> 198329011 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "server", - "=", - RowBox[ - { - "CreateMCPServer", - "[", - RowBox[ - { - "\"WolframNotebooks\"", - ",", - RowBox[ - { - "<|", - RowBox[ - { - "\"Tools\"", - "->", - RowBox[ - { - "{", - RowBox[{"\"ReadNotebook\"", ",", "\"WriteNotebook\""}], - "}" - } - ] - } - ], - "|>" - } - ] - } - ], - "]" - } - ] - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 149717489 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframNotebooks\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WolframNotebooks\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"WolframNotebooks\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"WolframNotebooks\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - {{"\"ReadNotebook\"", "\"WriteNotebook\"", "", "", ""}}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\ApplicationData\\\\Wolfram\\\\AgentTools\\\\Servers\\\\WolframNotebooks\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> Association["Tools" -> {"ReadNotebook", "WriteNotebook"}], - "Name" -> "WolframNotebooks", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.0.0", - "Transport" -> "StandardInputOutput", - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Wolfram\\ApplicationData\\Wolfram\\AgentTools\\Servers\\WolframNotebooks" - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[2]=", - CellID -> 810309137 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[RowBox[{"server", "[", "\"Tools\"", "]"}]], - "Input", - CellLabel -> "In[3]:=", - CellID -> 189887862 - ], - Cell[ - BoxData[ - RowBox[ - { - "{", - RowBox[ - { - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"ReadNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Reads the contents of a Wolfram notebook (.nb) as markdown text.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"notebook\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The Wolfram notebook to read, specified as a file path or a NotebookObject[...]\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The Wolfram notebook to read, specified as a file path or a NotebookObject[...]\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "ReadNotebook", - "DisplayName" -> "Read Notebook", - "Description" -> "Reads the contents of a Wolfram notebook (.nb) as markdown text.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`readNotebook, - "Options" -> { }, - "Parameters" -> { - "notebook" -> <| - "Interpreter" -> "String", - "Help" -> "The Wolfram notebook to read, specified as a file path or a NotebookObject[...]", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - ",", - InterpretationBox[ - RowBox[ - { - TagBox["LLMTool", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"WriteNotebook\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Description: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "\"Converts markdown text to a Wolfram notebook and saves it to a file.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Function: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - "Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Parameters: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - TagBox[ - TooltipBox[ - "\"file\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The file to write the notebook to (must end in .nb).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The file to write the notebook to (must end in .nb).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - }, - { - TagBox[ - TooltipBox[ - "\"overwrite\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"Whether to overwrite an existing file (default is False).\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"Whether to overwrite an existing file (default is False).\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"Boolean\"", - RowBox[{"Interpreter", "[", "\"Boolean\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"(optional)\"" - }, - { - TagBox[ - TooltipBox[ - "\"markdown\"", - "\"\\\"Help\\\" description sent to the LLM: \\\"The markdown text to write to a notebook.\\\"\"", - TooltipStyle -> "TextStyling" - ], - Function[ - Annotation[ - #1, - "\"Help\" description sent to the LLM: \"The markdown text to write to a notebook.\"", - "Tooltip" - ] - ] - ], - TagBox[ - TooltipBox[ - TemplateBox[ - { - "\"String\"", - RowBox[{"Interpreter", "[", "\"String\"", "]"}] - }, - "ClickToCopy2" - ], - "\"parameter interpreter\"", - TooltipStyle -> "TextStyling" - ], - Annotation[#1, "parameter interpreter", "Tooltip"] & - ], - "\"\"" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {{1, 1}, Axis}, - BaseStyle -> {ButtonBoxOptions -> {ImageSize -> Automatic}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - LLMTool[ - <| - "Name" -> "WriteNotebook", - "DisplayName" -> "Write Notebook", - "Description" -> "Converts markdown text to a Wolfram notebook and saves it to a file.", - "Function" -> Wolfram`AgentTools`Tools`Notebooks`Private`writeNotebook, - "Options" -> { }, - "Parameters" -> { - "file" -> <| - "Interpreter" -> "String", - "Help" -> "The file to write the notebook to (must end in .nb).", - "Required" -> True - |>, - "overwrite" -> <| - "Interpreter" -> "Boolean", - "Help" -> "Whether to overwrite an existing file (default is False).", - "Required" -> False - |>, - "markdown" -> <| - "Interpreter" -> "String", - "Help" -> "The markdown text to write to a notebook.", - "Required" -> True - |> - }, - "LLMPacletVersion" -> "2.2.10" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - } - ], - "}" - } - ] - ], - "Output", - CellLabel -> "Out[3]=", - CellID -> 52255318 - ] - }, - Open - ] - ], - Cell[ - BoxData[RowBox[{"DeleteObject", "[", "server", "]"}]], - "Input", - CellLabel -> "In[4]:=", - CellID -> 321316846 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "$DefaultMCPToolOptions", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions" - ] - ], - "InlineFormula" - ], - "\:3092\:4f7f\:3063\:3066\:ff0c\:7d44\:8fbc\:307f\:30c4\:30fc\:30eb\:306b\:5bfe\:3057\:3066\:5229\:7528\:53ef\:80fd\:306a\:3059\:3079\:3066\:306e\:30aa\:30d7\:30b7\:30e7\:30f3\:3068\:305d\:306e\:30c7\:30d5\:30a9\:30eb\:30c8\:5024\:3092\:53d6\:5f97\:3059\:308b\:ff1a" - } - ], - "MathCaption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c47e1e8e-d24b-6b49-b33f-ce0af274d71a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 22, 33.0023}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Get all the available options and their default values for built-in tools with \", Cell[BoxData[ButtonBox[\"$DefaultMCPToolOptions\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/$DefaultMCPToolOptions\"]], \"InlineFormula\"], \":\"}], \"MathCaption\", CellID -> 802574522]" - |>, - CellTags -> "Translated", - CellID -> 802574522 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData["$DefaultMCPToolOptions"], - "Input", - CellLabel -> "In[5]:=", - CellID -> 491234430 - ], - Cell[ - BoxData[ - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[ - { - "\"WolframAlphaContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"MaxItems\"", "\[Rule]", "Automatic"}], - ",", - RowBox[ - { - "\"IncludeWolframLanguageResults\"", - "\[Rule]", - "Automatic" - } - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"WolframLanguageMaxItems\"", "\[Rule]", "10"}], - ",", - RowBox[ - {"\"WolframAlphaMaxItems\"", "\[Rule]", "Automatic"} - ] - } - ], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframLanguageContext\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[{"\"MaxItems\"", "\[Rule]", "10"}], - "\[RightAssociation]" - } - ] - } - ], - ",", - RowBox[ - { - "\"WolframLanguageEvaluator\"", - "\[Rule]", - RowBox[ - { - "\[LeftAssociation]", - RowBox[ - { - RowBox[{"\"Method\"", "\[Rule]", "\"Session\""}], - ",", - RowBox[{"\"ImageExportMethod\"", "\[Rule]", "\"None\""}], - ",", - RowBox[{"\"TimeConstraint\"", "\[Rule]", "60"}] - } - ], - "\[RightAssociation]" - } - ] - } - ] - } - ], - "\[RightAssociation]" - } - ] - ], - "Output", - CellLabel -> "Out[5]=", - CellID -> 26788116 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineFormula" - ], - "\:3092\:4f7f\:3063\:3066\:30c4\:30fc\:30eb\:30aa\:30d7\:30b7\:30e7\:30f3\:3092\:30ab\:30b9\:30bf\:30de\:30a4\:30ba\:3059\:308b\:ff1a" - } - ], - "MathCaption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b122c2d7-571d-e948-885b-1ad580b00a5c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 22, 35.1009}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Customize tool options with \", Cell[BoxData[ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"]], \"InlineFormula\"], \":\"}], \"MathCaption\", CellID -> 109473233]" - |>, - CellTags -> "Translated", - CellID -> 109473233 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - "\"Claude\"", - ",", - "\"Wolfram\"", - ",", - RowBox[ - { - "\"ToolOptions\"", - "->", - RowBox[ - { - "<|", - RowBox[ - { - "\"WolframLanguageEvaluator\"", - "->", - RowBox[ - {"<|", RowBox[{"\"Method\"", "->", "\"Local\""}], "|>"} - ] - } - ], - "|>" - } - ] - } - ] - } - ], - "]" - } - ] - ], - "Input", - CellLabel -> "In[6]:=", - CellID -> 329675912 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {10.0329, {0.0, 10.0329}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Claude\\\\claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Claude\\\\claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\15.0\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\",\n\t\t\t\t\"WOLFRAM_BASE\":\"C:\\\\ProgramData\\\\Wolfram\",\n\t\t\t\t\"WOLFRAM_USERBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\",\n\t\t\t\t\"APPDATA\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\",\n\t\t\t\t\"WOLFRAM_LOCALBASE\":\"C:\\\\Users\\\\rhennigan\\\\AppData\\\\Roaming\\\\Wolfram\\\\Objects\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.20", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:\\Users\\rhennigan\\AppData\\Roaming\\Claude\\claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.7.20", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[6]=", - CellID -> 70570624 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:30c4\:30fc\:30eb", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "1983bd5c-0986-0648-a880-f51920c24b1a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 23, 32.6421}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Context Tools\", \"Section\", CellID -> 4777726]" - |>, - CellTags -> "Translated", - CellID -> 4777726 - ], - Cell[ - BoxData[ - GridBox[ - { - { - "WolframAlphaContext", - Cell[ - "Wolfram Alpha\:306e\:7d50\:679c\:306b\:5bfe\:3059\:308b\:30bb\:30de\:30f3\:30c6\:30a3\:30c3\:30af\:691c\:7d22", - "TableText" - ] - }, - { - "WolframLanguageContext", - Cell[ - "Wolfram\:8a00\:8a9e\:306e\:30ea\:30bd\:30fc\:30b9\:ff08\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:ff0c\:95a2\:6570\:30ea\:30dd\:30b8\:30c8\:30ea\:ff0c\:30c7\:30fc\:30bf\:30ea\:30dd\:30b8\:30c8\:30ea\:ff0c\:30cb\:30e5\:30fc\:30e9\:30eb\:30cd\:30c3\:30c8\:30ea\:30dd\:30b8\:30c8\:30ea\:7b49\:ff09\:5168\:4f53\:306b\:6e21\:308b\:30bb\:30de\:30f3\:30c6\:30a3\:30c3\:30af\:691c\:7d22", - "TableText" - ] - }, - { - "WolframContext", - Cell[ - TextData[ - { - Cell[BoxData["WolframAlphaContext"], "InlineFormula"], - "\:3068", - Cell[BoxData["WolframLanguageContext"], "InlineFormula"], - "\:306e\:7d50\:679c\:3092\:7d44\:307f\:5408\:305b\:308b" - } - ], - "TableText" - ] - } - } - ] - ], - "DefinitionBox", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2c43280c-1a57-7b44-aa32-cf41d1c6bc2e", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 23, 33.8667}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{\"WolframAlphaContext\", Cell[\"Semantic search for Wolfram Alpha results\", \"TableText\"]}, {\"WolframLanguageContext\", Cell[\"Semantic search across Wolfram Language resources (documentation, function repository, data repository, neural net repository, and more)\", \"TableText\"]}, {\"WolframContext\", Cell[TextData[{\"Combines results from \", Cell[BoxData[\"WolframAlphaContext\"], \"InlineFormula\"], \" and \", Cell[BoxData[\"WolframLanguageContext\"], \"InlineFormula\"]}], \"TableText\"]}}]], \"DefinitionBox\", CellID -> 341865292]" - |>, - CellTags -> "Translated", - CellID -> 341865292 - ], - Cell[ - "\:30af\:30a8\:30ea\:304b\:3089\:95a2\:9023\:3059\:308b\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:3092\:751f\:6210\:3059\:308b\:305f\:3081\:306b\:4f7f\:7528\:3055\:308c\:308b\:30c4\:30fc\:30eb\:ff0e", - "Caption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "cd72199f-9659-3343-8895-f661aff3ae56", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 23, 36.6055}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Tools used to generate relevant context from a query.\", \"Caption\", CellID -> 359727090]" - |>, - CellTags -> "Translated", - CellID -> 359727090 - ], - Cell[ - CellGroupData[ - { - Cell[ - "WolframAlphaContext", - "Subsection", - CellID -> 202596464 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - Cell[BoxData["WolframAlphaContext"], "InlineFormula"], - "\:30c4\:30fc\:30eb\:3067\:5229\:7528\:53ef\:80fd\:306a\:30aa\:30d7\:30b7\:30e7\:30f3\:306f\:4ee5\:4e0b\:306e\:901a\:308a\:3067\:3042\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "325f42ec-d14b-ec45-bfff-6a54d6f4429f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 27, 41.0401}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Options available for the \", Cell[BoxData[\"WolframAlphaContext\"], \"InlineFormula\"], \" tool are:\"}], \"Text\", CellID -> 142021108]" - |>, - CellTags -> "Translated", - CellID -> 142021108 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "IncludeWolframLanguageResults", - ButtonBox["Automatic", BaseStyle -> "Link"], - Cell[ - "\:7d50\:679c\:306b\:95a2\:9023\:3059\:308bWolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:3092\:542b\:3081\:308b\:304b\:3069\:3046\:304b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - ButtonBox["MaxItems", BaseStyle -> "Link"], - ButtonBox["Automatic", BaseStyle -> "Link"], - Cell[ - "\:542b\:3081\:308bWolfram|Alpha\:306e\:7d50\:679c\:306e\:6700\:5927\:6570", - "TableText" - ] - } - } - ] - ], - "3ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "26ce7023-6c67-2843-9143-b26a1fa38671", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 27, 43.1875}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"IncludeWolframLanguageResults\", ButtonBox[\"Automatic\", BaseStyle -> \"Link\"], Cell[\"whether to include relevant Wolfram Language code in results \", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], ButtonBox[\"MaxItems\", BaseStyle -> \"Link\"], ButtonBox[\"Automatic\", BaseStyle -> \"Link\"], Cell[\"maximum number of Wolfram|Alpha results to include\", \"TableText\"]}}]], \"3ColumnTableMod\", CellID -> 366786664]" - |>, - CellTags -> "Translated", - CellID -> 366786664 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "WolframLanguageContext", - "Subsection", - CellID -> 1055322546 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - Cell[BoxData["WolframLanguageContext"], "InlineFormula"], - "\:30c4\:30fc\:30eb\:3067\:5229\:7528\:53ef\:80fd\:306a\:30aa\:30d7\:30b7\:30e7\:30f3\:306f\:6b21\:306e\:901a\:308a\:3067\:3042\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "72a8e5b9-b201-b74f-b3fa-ee37c1857558", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 28, 20.7957}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Options available for the \", Cell[BoxData[\"WolframLanguageContext\"], \"InlineFormula\"], \" tool are:\"}], \"Text\", CellID -> 668416934]" - |>, - CellTags -> "Translated", - CellID -> 668416934 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - ButtonBox["MaxItems", BaseStyle -> "Link"], - "10", - Cell[ - "\:542b\:3081\:308bWolfram\:8a00\:8a9e\:306e\:7d50\:679c\:306e\:6700\:5927\:6570", - "TableText" - ] - } - } - ] - ], - "3ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "65f9f573-c265-204e-95d1-80bc405754eb", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 28, 22.4335}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], ButtonBox[\"MaxItems\", BaseStyle -> \"Link\"], \"10\", Cell[\"maximum number of Wolfram Language results to include\", \"TableText\"]}}]], \"3ColumnTableMod\", CellID -> 642225201]" - |>, - CellTags -> "Translated", - CellID -> 642225201 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["WolframContext", "Subsection", CellID -> 69373339], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - Cell[BoxData["WolframContext"], "InlineFormula"], - "\:30c4\:30fc\:30eb\:3067\:5229\:7528\:53ef\:80fd\:306a\:30aa\:30d7\:30b7\:30e7\:30f3\:306f\:6b21\:306e\:901a\:308a\:3067\:3042\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b606f7cb-f9c5-804c-beae-6948e7d05ec2", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 28, 38.9217}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Options available for the \", Cell[BoxData[\"WolframContext\"], \"InlineFormula\"], \" tool are:\"}], \"Text\", CellID -> 523674207]" - |>, - CellTags -> "Translated", - CellID -> 523674207 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "WolframAlphaMaxItems", - ButtonBox["Automatic", BaseStyle -> "Link"], - Cell[ - "\:542b\:3081\:308bWolfram|Alpha\:306e\:7d50\:679c\:306e\:6700\:5927\:6570", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "WolframLanguageMaxItems", - "10", - Cell[ - "\:542b\:3081\:308bWolfram\:8a00\:8a9e\:306e\:7d50\:679c\:306e\:6700\:5927\:6570", - "TableText" - ] - } - } - ] - ], - "3ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a655c2e5-5c6f-c241-9ab7-754d565d126a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 28, 40.3938}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"WolframAlphaMaxItems\", ButtonBox[\"Automatic\", BaseStyle -> \"Link\"], Cell[\"maximum number of Wolfram|Alpha results to include\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"WolframLanguageMaxItems\", \"10\", Cell[\"maximum number of Wolfram Language results to include\", \"TableText\"]}}]], \"3ColumnTableMod\", CellID -> 170976471]" - |>, - CellTags -> "Translated", - CellID -> 170976471 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Wolfram\:8a00\:8a9e\:30c4\:30fc\:30eb", - "Section", - CellID -> 35046207 - ], - Cell[ - BoxData[ - GridBox[ - { - { - "WolframLanguageEvaluator", - Cell[ - "Wolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:3092\:8a55\:4fa1\:3059\:308b", - "TableText" - ] - }, - { - "CodeInspector", - Cell[ - "Wolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:3092\:691c\:67fb\:3057\:ff0c\:554f\:984c\:306e\:66f8\:5f0f\:4ed8\:304d\:30ec\:30dd\:30fc\:30c8\:3092\:8fd4\:3059", - "TableText" - ] - }, - { - "TestReport", - Cell[ - "Wolfram\:8a00\:8a9e\:306e\:30c6\:30b9\:30c8\:30d5\:30a1\:30a4\:30eb(.wlt)\:3092\:5b9f\:884c\:3057\:ff0c\:66f8\:5f0f\:4ed8\:304d\:30ec\:30dd\:30fc\:30c8\:3092\:8fd4\:3059", - "TableText" - ] - }, - { - "SymbolDefinition", - Cell[ - "\:30b7\:30f3\:30dc\:30eb\:306e\:5b9a\:7fa9\:3092\:53ef\:8aad\:5f62\:5f0f\:3067\:53d6\:5f97\:3059\:308b", - "TableText" - ] - } - } - ] - ], - "DefinitionBox", - TaggingRules -> <| - "OrignialExpressionUUID" -> "757a442d-ead7-eb49-8851-4535ca9e851b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 29, 39.651}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{\"WolframLanguageEvaluator\", Cell[\"Evaluates Wolfram Language code\", \"TableText\"]}, {\"CodeInspector\", Cell[\"Inspects Wolfram Language code and returns a formatted report of issues\", \"TableText\"]}, {\"TestReport\", Cell[\"Runs Wolfram Language test files (.wlt) and returns a formatted report\", \"TableText\"]}, {\"SymbolDefinition\", Cell[\"Retrieves symbol definitions in a readable format\", \"TableText\"]}}]], \"DefinitionBox\", CellID -> 94911744]" - |>, - CellTags -> "Translated", - CellID -> 94911744 - ], - Cell[ - "Wolfram\:8a00\:8a9e\:306e\:958b\:767a\:3092\:652f\:63f4\:3059\:308b\:305f\:3081\:306e\:30c4\:30fc\:30eb\:ff0e", - "Caption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4b3e60c4-a86d-2449-a28c-59cfe4749e87", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 29, 42.0388}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Tools to aid Wolfram Language development.\", \"Caption\", CellID -> 101814387]" - |>, - CellTags -> "Translated", - CellID -> 101814387 - ], - Cell[ - CellGroupData[ - { - Cell[ - "WolframLanguageEvaluator", - "Subsection", - CellID -> 629220623 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - Cell[BoxData["WolframLanguageEvaluator"], "InlineFormula"], - "\:30c4\:30fc\:30eb\:3067\:5229\:7528\:53ef\:80fd\:306a\:30aa\:30d7\:30b7\:30e7\:30f3\:306f\:6b21\:306e\:901a\:308a\:3067\:3042\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ccfcbe62-d70e-4b4b-bd57-9a628f9e6cd5", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 36, 19.6809}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Options available for the \", Cell[BoxData[\"WolframLanguageEvaluator\"], \"InlineFormula\"], \" tool are:\"}], \"Text\", CellID -> 778436426]" - |>, - CellTags -> "Translated", - CellID -> 778436426 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "ImageExportMethod", - ButtonBox["None", BaseStyle -> "Link"], - Cell[ - "\:51fa\:529b\:5185\:306e\:753b\:50cf\:3092\:3069\:306e\:3088\:3046\:306b\:30a8\:30ad\:30b9\:30dd\:30fc\:30c8\:3059\:308b\:304b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - ButtonBox["Method", BaseStyle -> "Link"], - "\"Session\"", - Cell[ - "\:8a55\:4fa1\:306b\:4f7f\:7528\:3059\:308b\:30ab\:30fc\:30cd\:30eb\:306e\:7a2e\:985e", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - ButtonBox["TimeConstraint", BaseStyle -> "Link"], - "60", - Cell[ - "\:8a55\:4fa1\:306b\:5bfe\:3059\:308b\:30c7\:30d5\:30a9\:30eb\:30c8\:306e\:6642\:9593\:5236\:7d04", - "TableText" - ] - } - } - ] - ], - "3ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "70034788-c1c4-3247-b810-5929a3fdda1b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 36, 21.5494}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"ImageExportMethod\", ButtonBox[\"None\", BaseStyle -> \"Link\"], Cell[\"how to export images in outputs\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], ButtonBox[\"Method\", BaseStyle -> \"Link\"], \"\\\"Session\\\"\", Cell[\"the type of kernel to use for evaluations\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], ButtonBox[\"TimeConstraint\", BaseStyle -> \"Link\"], \"60\", Cell[\"the default time constraint for evaluations\", \"TableText\"]}}]], \"3ColumnTableMod\", CellID -> 115198350]" - |>, - CellTags -> "Translated", - CellID -> 115198350 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - Cell[ - BoxData[ButtonBox["Method", BaseStyle -> "Link"]], - "InlineFormula" - ], - "\:30aa\:30d7\:30b7\:30e7\:30f3\:306b\:306f\:ff0c\:6b21\:306e\:5024\:304c\:6307\:5b9a\:3067\:304d\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "569b6144-d045-234c-9264-d2d1c2906e0c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 36, 24.0547}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The following values can be given for the \", Cell[BoxData[ButtonBox[\"Method\", BaseStyle -> \"Link\"]], \"InlineFormula\"], \" option:\"}], \"Text\", CellID -> 30464121]" - |>, - CellTags -> "Translated", - CellID -> 30464121 - ], - Cell[ - BoxData[ - GridBox[ - { - { - Cell[" ", "ModInfo"], - "\"Session\"", - Cell[ - "\:30b5\:30f3\:30c9\:30dc\:30c3\:30af\:30b9\:5316\:3055\:308c\:3066\:3044\:306a\:3044", - "TableText" - ], - Cell[ - "\:5b9f\:884c\:4e2d\:306eMCP\:30b5\:30fc\:30d0\:3068\:540c\:3058\:30ab\:30fc\:30cd\:30eb\:3092\:4f7f\:7528\:3059\:308b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Local\"", - Cell[ - "\:66f8\:304d\:8fbc\:307f/\:5b9f\:884c\:306f\:5236\:9650\:4ed8\:304d", - "TableText" - ], - Cell[ - "\:5c02\:7528\:306e\:30b5\:30f3\:30c9\:30dc\:30c3\:30af\:30b9\:5316\:3055\:308c\:305f\:30ed\:30fc\:30ab\:30eb\:30ab\:30fc\:30cd\:30eb\:3092\:4f7f\:7528\:3059\:308b", - "TableText" - ] - }, - { - Cell[" ", "ModInfo"], - "\"Cloud\"", - Cell[ - "\:5b8c\:5168\:306b\:30b5\:30f3\:30c9\:30dc\:30c3\:30af\:30b9\:5316\:3055\:308c\:3066\:3044\:308b", - "TableText" - ], - Cell[ - "\:5b8c\:5168\:306b\:30b5\:30f3\:30c9\:30dc\:30c3\:30af\:30b9\:5316\:3055\:308c\:305f\:30af\:30e9\:30a6\:30c9\:30ab\:30fc\:30cd\:30eb\:3092\:4f7f\:7528\:3059\:308b", - "TableText" - ] - } - } - ] - ], - "3ColumnTableMod", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b62d53a9-dcfc-d44e-b7da-8b02ca4554a5", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 36, 26.2427}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{Cell[\" \", \"ModInfo\"], \"\\\"Session\\\"\", Cell[\"not sandboxed\", \"TableText\"], Cell[\"use the same kernel as the running MCP server\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Local\\\"\", Cell[\"limited write/execute\", \"TableText\"], Cell[\"use a dedicated sandboxed local kernel\", \"TableText\"]}, {Cell[\" \", \"ModInfo\"], \"\\\"Cloud\\\"\", Cell[\"fully sandboxed\", \"TableText\"], Cell[\"uses a fully sandboxed cloud kernel\", \"TableText\"]}}]], \"3ColumnTableMod\", CellID -> 320340621]" - |>, - CellTags -> "Translated", - CellID -> 320340621 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30ce\:30fc\:30c8\:30d6\:30c3\:30af\:30c4\:30fc\:30eb", - "Section", - CellID -> 85701031 - ], - Cell[ - BoxData[ - GridBox[ - { - { - "ReadNotebook", - Cell[ - "Markdown\:30c6\:30ad\:30b9\:30c8\:3068\:3057\:3066Wolfram\:30ce\:30fc\:30c8\:30d6\:30c3\:30af(.nb)\:3092\:8aad\:307f\:53d6\:308b", - "TableText" - ] - }, - { - "WriteNotebook", - Cell[ - "Markdown\:30c6\:30ad\:30b9\:30c8\:304b\:3089Wolfram\:30ce\:30fc\:30c8\:30d6\:30c3\:30af(.nb)\:30d5\:30a1\:30a4\:30eb\:3092\:4f5c\:6210\:3059\:308b", - "TableText" - ] - } - } - ] - ], - "DefinitionBox", - TaggingRules -> <| - "OrignialExpressionUUID" -> "5dd69f0c-f03c-c34c-b526-761e6775b5eb", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 37, 50.0547}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{\"ReadNotebook\", Cell[\"Reads Wolfram notebooks (.nb) as Markdown text\", \"TableText\"]}, {\"WriteNotebook\", Cell[\"Creates Wolfram notebook (.nb) files from Markdown text\", \"TableText\"]}}]], \"DefinitionBox\", CellID -> 80727097]" - |>, - CellTags -> "Translated", - CellID -> 80727097 - ], - Cell[ - "Wolfram\:30ce\:30fc\:30c8\:30d6\:30c3\:30af\:30d5\:30a1\:30a4\:30eb\:306e\:8aad\:53d6\:308a\:3068\:66f8\:51fa\:3057\:306b\:7528\:3044\:3089\:308c\:308b\:30c4\:30fc\:30eb\:ff0e", - "Caption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "764f93ce-102c-f645-bfd0-a698a64939ea", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 37, 51.872}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Tools used for reading and writing Wolfram notebook files.\", \"Caption\", CellID -> 10162514]" - |>, - CellTags -> "Translated", - CellID -> 10162514 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Related Guides", - "TutorialMoreAboutSection", - CellID -> 163915743 - ], - Cell["XXXX", "TutorialMoreAbout", CellID -> 249157370] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Related Tech Notes", - "RelatedTutorialsSection", - CellID -> 658864671 - ], - Cell["XXXX", "RelatedTutorials", CellID -> 111678137] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 730100372], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 368642370 - ], - Cell[ - CellGroupData[ - { - Cell[ - "Categorization", - "CategorizationSection", - CellID -> 716543128 - ], - Cell[ - "Tech Note", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 223367056 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 11921226 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 212024587 - ], - Cell[ - "Wolfram/AgentTools/tutorial/DefaultTools", - "Categorization", - CellLabel -> "URI", - CellID -> 767770896 - ] - }, - Closed - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 804456581], - Cell["XXXX", "Keywords", CellID -> 10033688] - }, - Closed - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <| - "Paclet" -> "Wolfram/AgentTools", - "TryRealOnly" -> False - |>, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "TechNotePageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/Tutorials/QuickStartforAICodingApplications.nb b/Documentation/Japanese/Tutorials/QuickStartforAICodingApplications.nb deleted file mode 100644 index a2a43ec2..00000000 --- a/Documentation/Japanese/Tutorials/QuickStartforAICodingApplications.nb +++ /dev/null @@ -1,4000 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell[ - "AI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306e\:30af\:30a4\:30c3\:30af\:30b9\:30bf\:30fc\:30c8", - "Title", - TaggingRules -> <| - "OrignialExpressionUUID" -> "84511540-ce84-204b-878f-f6110d3e0a7f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 46, 24.5533}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Quick Start for AI Coding Applications\", \"Title\", CellID -> 252778366]" - |>, - CellTags -> "Translated", - CellID -> 252778366 - ], - Cell[ - "\:3053\:306e\:30ac\:30a4\:30c9\:3067\:306f\:ff0cClaude Code\:ff0cCursor\:ff0cVisual Studio Code\:7b49\:306eAI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3067Wolfram MCP Server\:3092\:8a2d\:5b9a\:3059\:308b\:624b\:9806\:3092\:8aac\:660e\:3059\:308b\:ff0e\:6700\:5f8c\:306b\:306f\:ff0cAI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30b7\:30b9\:30bf\:30f3\:30c8\:304cWolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:3092\:8a55\:4fa1\:3057\:ff0c\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3092\:691c\:7d22\:3057\:ff0c\:30ce\:30fc\:30c8\:30d6\:30c3\:30af\:3092\:8aad\:307f\:66f8\:304d\:3057\:ff0c\:30c6\:30b9\:30c8\:3092\:5b9f\:884c\:3057\:ff0c\:30b3\:30fc\:30c9\:3092\:691c\:67fb\:3059\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:3088\:3046\:306b\:306a\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "73829a75-ce23-2243-b6d7-234f8f813d24", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 46, 26.1152}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"This guide walks you through setting up the Wolfram MCP Server with AI coding applications like Claude Code, Cursor, Visual Studio Code, and others. By the end, your AI coding assistant will be able to evaluate Wolfram Language code, search documentation, read and write notebooks, run tests, and inspect code.\", \"Text\", CellID -> 45152051]" - |>, - CellTags -> "Translated", - CellID -> 45152051 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:63a8\:5968\:3055\:308c\:308b\:30b5\:30fc\:30d0", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "489745f6-b553-744f-848a-3e07c62cba65", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 48, 4.60189}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Recommended Server\", \"Section\", CellID -> 20240614]" - |>, - CellTags -> "Translated", - CellID -> 20240614 - ], - Cell[ - TextData[ - { - "Wolfram\:8a00\:8a9e\:306e\:958b\:767a\:306b\:304a\:3044\:3066\:306f\:ff0c", - StyleBox["WolframLanguage", "InlineCode"], - "\:30b5\:30fc\:30d0\:3092\:4f7f\:7528\:3059\:308b\:3053\:3068\:304c\:63a8\:5968\:3055\:308c\:308b\:ff0e\:3053\:308c\:306b\:3088\:308a\:ff0cAI\:306f\:6b21\:306e\:3053\:3068\:3092\:884c\:3046\:3053\:3068\:304c\:3067\:304d\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "19a8849d-116b-0b42-bbb5-b4b67ab81f5a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 48, 5.66169}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"For Wolfram Language development, it's recommended to use the \", StyleBox[\"WolframLanguage\", \"InlineCode\"], \" server. It gives the AI the ability to:\"}], \"Text\", CellID -> 163743119]" - |>, - CellTags -> "Translated", - CellID -> 163743119 - ], - Cell[ - TextData[ - { - StyleBox[ - "Wolfram\:30ea\:30bd\:30fc\:30b9\:3092\:691c\:7d22", - FontWeight -> Bold - ], - "\:ff1a\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:ff0c\:95a2\:6570\:30ea\:30dd\:30b8\:30c8\:30ea\:ff0c\:30c7\:30fc\:30bf\:30ea\:30dd\:30b8\:30c8\:30ea\:7b49\:3092\:542b\:3080" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9554f2ac-3765-b343-9317-f6e724215490", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 48, 7.83019}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Search Wolfram resources\", FontWeight -> Bold], \" including documentation, function repository, data repository, and more\"}], \"Item\", CellID -> 29860757]" - |>, - CellTags -> "Translated", - CellID -> 29860757 - ], - Cell[ - TextData[ - { - "\:5b9f\:88c5\:3092\:30c6\:30b9\:30c8\:3057\:ff0c\:6319\:52d5\:3092\:691c\:8a3c\:3059\:308b\:305f\:3081\:306b", - StyleBox[ - "\:30b3\:30fc\:30c9\:3092\:5b9f\:884c", - FontWeight -> Bold - ], - "\:3059\:308b" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "bab1d6c9-c366-7b4f-ac1c-68dbebaafbd2", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 48, 9.40501}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Execute code\", FontWeight -> Bold], \" to test implementations and verify behavior\"}], \"Item\", CellID -> 134261439]" - |>, - CellTags -> "Translated", - CellID -> 134261439 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:30ce\:30fc\:30c8\:30d6\:30c3\:30af\:306e\:8aad\:307f\:66f8\:304d", - FontWeight -> Bold - ], - "\:ff1a", - Cell[ - BoxData[Cell[".nb", Background -> None]], - "InlineCode" - ], - "\:30d5\:30a1\:30a4\:30eb\:3092\:30de\:30fc\:30af\:30c0\:30a6\:30f3\:3068\:3057\:3066\:6271\:3046\:305f\:3081" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "130727f3-18b2-ee44-aa97-f70f1c9ae91b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 48, 11.1129}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Read and write notebooks\", FontWeight -> Bold], \" for working with \", Cell[BoxData[Cell[\".nb\", Background -> None]], \"InlineCode\"], \" files as markdown\"}], \"Item\", CellID -> 71060673]" - |>, - CellTags -> "Translated", - CellID -> 71060673 - ], - Cell[ - TextData[ - { - "\:65e2\:5b58\:306e\:30b3\:30fc\:30c9\:3092\:7406\:89e3\:3059\:308b\:305f\:3081\:306b", - StyleBox[ - "\:30b7\:30f3\:30dc\:30eb\:306e\:5b9a\:7fa9\:3092\:8abf\:3079\:308b", - FontWeight -> Bold - ] - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "07feb3ab-6e45-1a48-b952-12c947dabc88", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 51, 33.4724}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Look up symbol definitions\", FontWeight -> Bold], \" to understand existing code\"}], \"Item\", CellID -> 443492278]" - |>, - CellTags -> "Translated", - CellID -> 443492278 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:30b3\:30fc\:30c9\:3092\:70b9\:691c", - FontWeight -> Bold - ], - "\:3057\:ff0c\:6f5c\:5728\:7684\:306a\:554f\:984c\:304a\:3088\:3073\:30b9\:30bf\:30a4\:30eb\:4e0a\:306e\:554f\:984c\:3092\:78ba\:8a8d\:3059\:308b" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "e7dda9ad-2e94-b949-bc98-d539b7e2c5a6", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 48, 14.3918}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Inspect code\", FontWeight -> Bold], \" for potential issues and style problems\"}], \"Item\", CellID -> 875700]" - |>, - CellTags -> "Translated", - CellID -> 875700 - ], - Cell[ - TextData[ - { - "\:30c6\:30b9\:30c8\:30b9\:30a4\:30fc\:30c8\:306b\:5bfe\:3059\:308b\:5909\:66f4\:3092\:691c\:8a3c\:3059\:308b\:305f\:3081\:306b", - StyleBox[ - "\:30c6\:30b9\:30c8\:3092\:5b9f\:884c\:3059\:308b", - FontWeight -> Bold - ] - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3d91928d-c161-7140-96a5-cd4ec7abe691", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 17, 52, 46.6921}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Run tests\", FontWeight -> Bold], \" to validate changes against your test suite\"}], \"Item\", CellID -> 1694173]" - |>, - CellTags -> "Translated", - CellID -> 1694173 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f1222771-dab9-2340-941d-b4b3a2dcf590", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 1, 5.50046}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Installation\", \"Section\", CellID -> 21492039]" - |>, - CellTags -> "Translated", - CellID -> 21492039 - ], - Cell[ - TextData[ - { - "\:3059\:3079\:3066\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:65b9\:6cd5\:3067", - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineFormula" - ], - "\:95a2\:6570\:304c\:4f7f\:7528\:3055\:308c\:308b\:ff0eWolfram\:8a00\:8a9e\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:958b\:304d\:ff0c\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306b\:9069\:3057\:305f\:30b3\:30de\:30f3\:30c9\:3092\:5b9f\:884c\:3059\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c8b6c6e7-fc7e-bb47-9c5f-62c3380795ef", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 1, 7.79253}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"All installation methods use the \", Cell[BoxData[ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"]], \"InlineFormula\"], \" function. Open a Wolfram Language session and run the appropriate command for your application.\"}], \"Text\", CellID -> 417606428]" - |>, - CellTags -> "Translated", - CellID -> 417606428 - ], - Cell[ - CellGroupData[ - { - Cell[ - "Claude Code", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "74f3c483-b0d5-e244-8573-26b55eeff19e", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 1, 10.0823}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Claude Code\", \"Subsection\", CellID -> 473004862]" - |>, - CellTags -> "Translated", - CellID -> 473004862 - ], - Cell[ - "\:30b5\:30fc\:30d0\:3092\:5927\:57df\:7684\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:304b\:ff0c\:3042\:308b\:3044\:306f\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:3067\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:304b\:3092\:9078\:629e\:3059\:308b\:ff0e\:5927\:57df\:7684\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306f\:3059\:3079\:3066\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:3067\:5229\:7528\:53ef\:80fd\:3067\:3042\:308b\:4e00\:65b9\:ff0c\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306f\:7279\:5b9a\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:5185\:3067\:306e\:307f\:5229\:7528\:53ef\:80fd\:3067\:3042\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ee256482-4ab2-8a49-bd80-932e77f00833", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 1, 11.6105}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Choose whether to install the server globally or project-level. Global installation is available in all projects, while project-level installation is available only in a specific project directory.\", \"Text\", CellID -> 587836698]" - |>, - CellTags -> "Translated", - CellID -> 587836698 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:5927\:57df\:7684\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:ff1a", - "MathCaption", - CellID -> 360997577 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"ClaudeCode\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 225747086 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:ff1a", - "MathCaption", - CellID -> 668996838 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[{"\"ClaudeCode\"", ",", "\"/path/to/project\""}], - "}" - } - ], - ",", - "\"WolframLanguage\"" - } - ], - "]" - } - ] - ], - "Input", - CellID -> 209348474 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b3\:30de\:30f3\:30c9\:30e9\:30a4\:30f3\:304b\:3089\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3092\:691c\:8a3c\:3059\:308b\:ff1a", - "MathCaption", - CellID -> 223231909 - ], - Cell[ - "claude mcp get WolframLanguage", - "ExternalLanguage", - CellEvaluationLanguage -> "Shell", - CellID -> 40285647 - ] - }, - Open - ] - ], - Cell[ - "\:51fa\:529b\:306b\:306f\:300cWolframLanguage\:300d\:30b5\:30fc\:30d0\:306b\:63a5\:7d9a\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:304c\:793a\:3055\:308c\:3066\:3044\:306a\:3051\:308c\:3070\:306a\:3089\:306a\:3044\:ff0e", - "Text", - CellID -> 58055741 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Cline", "Subsection", CellID -> 962855634], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Cline\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 44390945 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Copilot CLI", "Subsection", CellID -> 28915509], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"CopilotCLI\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 373383170 - ], - Cell[ - CellGroupData[ - { - Cell[ - "To verify the installation from the command line:", - "MathCaption", - CellID -> 15460488 - ], - Cell[ - "copilot -i \"/mcp show\"", - "ExternalLanguage", - CellEvaluationLanguage -> "Shell", - CellID -> 427698004 - ] - }, - Open - ] - ], - Cell[ - "\:51fa\:529b\:306b\:306f\:300cWolframLanguage\:300d\:30b5\:30fc\:30d0\:304c\:8a2d\:5b9a\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:304c\:793a\:3055\:308c\:3066\:3044\:306a\:3051\:308c\:3070\:306a\:3089\:306a\:3044\:ff0e", - "Text", - CellID -> 243159260 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Cursor", "Subsection", CellID -> 16561161], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Cursor\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 158083412 - ], - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3092\:691c\:8a3c\:3059\:308b\:306b\:306f\:4ee5\:4e0b\:3092\:884c\:3046\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f3d44c10-9533-fa48-aec0-5afc00c09188", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 5, 12.4699}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"To verify the installation:\", \"Text\", CellID -> 211186324]" - |>, - CellTags -> "Translated", - CellID -> 211186324 - ], - Cell[ - "Cursor\:8a2d\:5b9a\:3078\:79fb\:52d5\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "93dfdd73-9819-b342-884d-0aec4a7d7990", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 5, 13.8567}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Navigate to Cursor settings\", \"Item\", CellID -> 242341421]" - |>, - CellTags -> "Translated", - CellID -> 242341421 - ], - Cell[ - "\:300cTools & MCP\:300d\:30bf\:30d6\:3092\:9078\:629e\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4adf24a5-061c-1a48-a184-28b784062c0a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 5, 15.1957}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Select the \\\"Tools & MCP\\\" tab\", \"Item\", CellID -> 495461010]" - |>, - CellTags -> "Translated", - CellID -> 495461010 - ], - Cell[ - "\:300cWolframLanguage\:300d\:304c\:300cInstalled MCP Servers\:300d\:306e\:4e0b\:306b\:4e00\:89a7\:8868\:793a\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:3092\:78ba\:8a8d\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "43a9c2c9-14fe-3942-8354-bc82d081de4a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 5, 16.2102}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Verify that \\\"WolframLanguage\\\" is listed under \\\"Installed MCP Servers\\\"\", \"Item\", CellID -> 106649718]" - |>, - CellTags -> "Translated", - CellID -> 106649718 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Gemini CLI", "Subsection", CellID -> 438009868], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"GeminiCLI\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 307809286 - ], - Cell[ - CellGroupData[ - { - Cell[ - "To verify the installation from the command line:", - "MathCaption", - CellID -> 6936848 - ], - Cell[ - "gemini -i \"/mcp\"", - "ExternalLanguage", - CellEvaluationLanguage -> "Shell", - CellID -> 181421179 - ] - }, - Open - ] - ], - Cell[ - "\:51fa\:529b\:306b\:306f\:ff0c\:300cWolframLanguage\:300d\:30b5\:30fc\:30d0\:304c\:8a2d\:5b9a\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:304c\:793a\:3055\:308c\:3066\:3044\:306a\:3051\:308c\:3070\:306a\:3089\:306a\:3044\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "82e48231-b856-4a4e-aefc-cdf39703e62c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 9, 57.9453}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"The output should indicate that the \\\"WolframLanguage\\\" server is configured.\", \"Text\", CellID -> 238422330]" - |>, - CellTags -> "Translated", - CellID -> 238422330 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Google Antigravity", - "Subsection", - CellID -> 422986796 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Antigravity\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 12039926 - ], - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3092\:691c\:8a3c\:3059\:308b\:306b\:306f\:4ee5\:4e0b\:3092\:884c\:3046\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "589c6aca-345e-b248-9f06-d81a9bf6cf01", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 10, 41.8304}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"To verify the installation:\", \"Text\", CellID -> 28462221]" - |>, - CellTags -> "Translated", - CellID -> 28462221 - ], - Cell[ - "\:30a8\:30c7\:30a3\:30bf\:30d3\:30e5\:30fc\:3067\:ff0c\:300cAgent\:300d\:30d1\:30cd\:30eb\:306e\:53f3\:4e0a\:306b\:3042\:308b\:300c...\:300d\:30e1\:30cb\:30e5\:30fc\:3092\:30af\:30ea\:30c3\:30af\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "bacb2d78-aeca-1e47-8d1f-568ae51f6275", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 10, 42.8081}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"In the editor view, click the \\\"...\\\" menu at the top right of the \\\"Agent\\\" panel\", \"Item\", CellID -> 776175506]" - |>, - CellTags -> "Translated", - CellID -> 776175506 - ], - Cell[ - "\:300cMCP Servers\:300d\:3092\:9078\:629e\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "5d540855-51a2-2248-b56d-43fd18b88e0c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 10, 44.3468}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Select \\\"MCP Servers\\\"\", \"Item\", CellID -> 322829750]" - |>, - CellTags -> "Translated", - CellID -> 322829750 - ], - Cell[ - "\:30d1\:30cd\:30eb\:306e\:53f3\:4e0a\:306b\:3042\:308b\:300cManage MCP Servers\:300d\:3092\:30af\:30ea\:30c3\:30af\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8623c29d-b120-5245-ac8e-fa189eda2fe5", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 10, 45.5611}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Click \\\"Manage MCP Servers\\\" at the top right of the panel\", \"Item\", CellID -> 453151772]" - |>, - CellTags -> "Translated", - CellID -> 453151772 - ], - Cell[ - "\:300cWolframLanguage\:300d\:304c\:300cInstalled MCP Servers\:300d\:306e\:4e0b\:306b\:4e00\:89a7\:8868\:793a\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:3092\:78ba\:8a8d\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a4517b58-9085-3c43-b817-f150feb58489", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 10, 46.8188}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Verify that \\\"WolframLanguage\\\" is listed under \\\"Installed MCP Servers\\\"\", \"Item\", CellID -> 395951229]" - |>, - CellTags -> "Translated", - CellID -> 395951229 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[StyleBox["Kiro", IgnoreSpellCheck -> True]], - "Subsection", - CellID -> 485644884 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:5927\:57df\:7684\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:ff1a", - "MathCaption", - CellID -> 680099035 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Kiro\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 508309466 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:ff1a", - "MathCaption", - CellID -> 889938143 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[{"\"Kiro\"", ",", "\"/path/to/project\""}], - "}" - } - ], - ",", - "\"WolframLanguage\"" - } - ], - "]" - } - ] - ], - "Input", - CellID -> 27559843 - ] - }, - Open - ] - ], - Cell[ - TextData[ - { - "\:4ee5\:4e0b\:306e\:624b\:9806\:306b\:5f93\:3063\:3066\:ff0c", - StyleBox["Kiro", IgnoreSpellCheck -> True], - " IDE\:3067MCP\:304c\:6709\:52b9\:306b\:306a\:3063\:3066\:3044\:308b\:3053\:3068\:3092\:78ba\:8a8d\:3059\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "43f19cca-ec5a-9547-88a6-a9cc11dbd11c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 50, 51.6569}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Ensure MCP is enabled in the \", StyleBox[\"Kiro\", IgnoreSpellCheck -> True], \" IDE by following these steps:\"}], \"Text\", CellID -> 152959268]" - |>, - CellTags -> "Translated", - CellID -> 152959268 - ], - Cell[ - "\:5de6\:5074\:306e\:30b5\:30a4\:30c9\:30d0\:30fc\:306b\:3042\:308bKiro\:30a2\:30a4\:30b3\:30f3\:3092\:30af\:30ea\:30c3\:30af\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2a7fabf8-0e17-7640-840c-2f5e7efeb524", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 50, 54.1503}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Click on the Kiro icon on the left side bar\", \"Item\", CellID -> 2872413]" - |>, - CellTags -> "Translated", - CellID -> 2872413 - ], - Cell[ - "\:300cMCP Servers\:300d\:306e\:4e0b\:3067\:ff0c\:307e\:3060\:6709\:52b9\:306b\:306a\:3063\:3066\:3044\:306a\:3044\:5834\:5408\:306f\:ff0c\:300cEnable MCP\:300d\:30dc\:30bf\:30f3\:3092\:30af\:30ea\:30c3\:30af\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "5b537737-71e6-1a4c-9ff6-38f7aaf99916", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 50, 57.4507}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Under \\\"MCP Servers\\\", click on the \\\"Enable MCP\\\" button if it is not already enabled\", \"Item\", CellID -> 395518729]" - |>, - CellTags -> "Translated", - CellID -> 395518729 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["OpenAI Codex", "Subsection", CellID -> 3310560], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Codex\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 660227621 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b3\:30de\:30f3\:30c9\:30e9\:30a4\:30f3\:304b\:3089\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3092\:691c\:8a3c\:3059\:308b\:ff1a", - "MathCaption", - CellID -> 306930245 - ], - Cell[ - "codex mcp get WolframLanguage", - "ExternalLanguage", - CellEvaluationLanguage -> "Shell", - CellID -> 446582763 - ] - }, - Open - ] - ], - Cell[ - "\:51fa\:529b\:306b\:306f\:300cWolframLanguage\:300d\:30b5\:30fc\:30d0\:304c\:6709\:52b9\:3068\:306a\:3063\:3066\:3044\:308b\:3053\:3068\:304c\:793a\:3055\:308c\:3066\:3044\:306a\:3051\:308c\:3070\:306a\:3089\:306a\:3044\:ff0e", - "Text", - CellID -> 725136532 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["OpenCode", "Subsection", CellID -> 209014095], - Cell[ - "\:30b5\:30fc\:30d0\:3092\:5927\:57df\:7684\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:304b\:ff0c\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:3067\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:304b\:3092\:9078\:629e\:3059\:308b\:ff0e\:5927\:57df\:7684\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306f\:3059\:3079\:3066\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:3067\:5229\:7528\:53ef\:80fd\:3067\:3042\:308b\:4e00\:65b9\:ff0c\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306f\:7279\:5b9a\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:3067\:306e\:307f\:5229\:7528\:53ef\:80fd\:3067\:3042\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a3601915-329e-0447-9d54-09fb4f6be586", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 52, 55.0798}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Choose whether to install the server globally or project-level. Global installation is available in all projects, while project-level installation is available only in a specific project directory.\", \"Text\", CellID -> 402161500]" - |>, - CellTags -> "Translated", - CellID -> 402161500 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:5927\:57df\:7684\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:ff1a", - "MathCaption", - CellID -> 111372503 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"OpenCode\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 130077181 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:ff1a", - "MathCaption", - CellID -> 151841815 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[{"\"OpenCode\"", ",", "\"/path/to/project\""}], - "}" - } - ], - ",", - "\"WolframLanguage\"" - } - ], - "]" - } - ] - ], - "Input", - CellID -> 85021059 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b3\:30de\:30f3\:30c9\:30e9\:30a4\:30f3\:304b\:3089\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3092\:691c\:8a3c\:3059\:308b\:ff1a", - "MathCaption", - CellID -> 474390559 - ], - Cell[ - "opencode mcp list", - "ExternalLanguage", - CellEvaluationLanguage -> "Shell", - CellID -> 213669027 - ] - }, - Open - ] - ], - Cell[ - "\:51fa\:529b\:306b\:306f\:300cWolframLanguage\:300d\:30b5\:30fc\:30d0\:306b\:63a5\:7d9a\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:304c\:793a\:3055\:308c\:3066\:3044\:306a\:3051\:308c\:3070\:306a\:3089\:306a\:3044\:ff0e", - "Text", - CellID -> 145828150 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Visual Studio Code", - "Subsection", - CellID -> 358304962 - ], - Cell[ - "\:30b5\:30fc\:30d0\:3092\:5927\:57df\:7684\:306b\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:304b\:ff0c\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:3067\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:304b\:3092\:9078\:629e\:3059\:308b\:ff0e\:5927\:57df\:7684\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306f\:3059\:3079\:3066\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:3067\:5229\:7528\:53ef\:80fd\:3067\:3042\:308b\:4e00\:65b9\:ff0c\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306f\:7279\:5b9a\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:3067\:306e\:307f\:5229\:7528\:53ef\:80fd\:3067\:3042\:308b\:ff0e", - "Text", - CellID -> 487374692 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:5927\:57df\:7684\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:ff1a", - "MathCaption", - CellID -> 354557782 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - {"\"VisualStudioCode\"", ",", "\"WolframLanguage\""} - ], - "]" - } - ] - ], - "Input", - CellID -> 59885571 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:ff1a", - "MathCaption", - CellID -> 260881034 - ], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[ - { - RowBox[ - { - "{", - RowBox[ - {"\"VisualStudioCode\"", ",", "\"/path/to/project\""} - ], - "}" - } - ], - ",", - "\"WolframLanguage\"" - } - ], - "]" - } - ] - ], - "Input", - CellID -> 355122900 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Windsurf", "Subsection", CellID -> 308002613], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Windsurf\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 382155078 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Zed", "Subsection", CellID -> 169119072], - Cell[ - BoxData[ - RowBox[ - { - "InstallMCPServer", - "[", - RowBox[{"\"Zed\"", ",", "\"WolframLanguage\""}], - "]" - } - ] - ], - "Input", - CellID -> 657386784 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:305d\:306e\:4ed6\:306e\:30af\:30e9\:30a4\:30a2\:30f3\:30c8", - "Subsection", - CellID -> 45503149 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:4ed6\:306eMCP\:4e92\:63db\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306b\:3064\:3044\:3066\:306f\:ff0c\:751f\:306eJSON\:8a2d\:5b9a\:3092\:751f\:6210\:3057\:ff0c\:305d\:308c\:3092\:624b\:52d5\:3067\:9069\:5fdc\:3055\:305b\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:ff1a", - "MathCaption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3a99621b-0646-3b43-a981-8d2ffc702f48", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 54, 46.9437}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"For other MCP-compatible clients, you can generate the raw JSON configuration and adapt it manually:\", \"MathCaption\", CellID -> 476425863]" - |>, - CellTags -> "Translated", - CellID -> 476425863 - ], - Cell[ - BoxData[ - RowBox[ - { - RowBox[ - {"MCPServerObject", "[", "\"WolframLanguage\"", "]"} - ], - "[", - "\"JSONConfiguration\"", - "]" - } - ] - ], - "Input", - CellID -> 219411299 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306e\:691c\:8a3c", - "Subsubsection", - CellID -> 121314755 - ], - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:5f8c\:ff0c\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30c4\:30fc\:30eb\:3092\:518d\:8d77\:52d5\:3057\:ff0cWolfram\:30c4\:30fc\:30eb\:304c\:5229\:7528\:53ef\:80fd\:3067\:3042\:308b\:3053\:3068\:3092\:78ba\:8a8d\:3059\:308b\:ff0e\:307b\:3068\:3093\:3069\:306e\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306b\:306f\:ff0c\:8a2d\:5b9a\:6e08\:307f\:306eMCP\:30b5\:30fc\:30d0\:3068\:305d\:306e\:72b6\:614b\:3092\:4e00\:89a7\:8868\:793a\:3059\:308b\:65b9\:6cd5\:304c\:3042\:308b\:ff0e\:78ba\:4fe1\:304c\:6301\:3066\:306a\:3044\:5834\:5408\:306b\:306f\:ff0cAI\:306b\:5358\:306b\:6b21\:306e\:3088\:3046\:306b\:5c0b\:306d\:308b\:3053\:3068\:3082\:5e38\:306b\:53ef\:80fd\:3067\:3042\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "166639c9-fbce-3a42-ba99-3db1a8e7fcda", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 55, 38.1869}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"After installing, restart your coding tool and confirm the Wolfram tools are available. Most applications have a way to list configured MCP servers and their status. If you're unsure, you can always just ask the AI:\", \"Text\", CellID -> 642278401]" - |>, - CellTags -> "Translated", - CellID -> 642278401 - ], - Cell[ - BoxData[ - GridBox[ - { - { - PaneBox[ - "\"\\\"\:5229\:7528\:53ef\:80fd\:306aWolfram\:8a00\:8a9e\:30c4\:30fc\:30eb\:306b\:306f\:4f55\:304c\:3042\:308b\:304b\\\"\"", - BaseStyle -> { - "Text", - FontColor -> - LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]] - }, - ImageMargins -> 5, - ImageSize -> {Full, Automatic} - ] - } - }, - AutoDelete -> False, - GridBoxBackground -> { - "Columns" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}} - }, - GridBoxDividers -> { - "ColumnsIndexed" -> { - 1 -> - Directive[ - LightDarkSwitched[ - RGBColor[0.87, 0.94, 1], - RGBColor[0.249113, 0.329519, 0.42312] - ], - AbsoluteThickness[4] - ] - }, - "Rows" -> {{False}} - }, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - ], - "Text", - "BlockQuote", - TaggingRules -> <| - "OrignialExpressionUUID" -> "824f49a5-7f20-f341-9b8b-23ecc1ce9aff", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 56, 15.7672}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{PaneBox[\"\\\"\\\\\\\"What Wolfram Language tools do you have access to?\\\\\\\"\\\"\", BaseStyle -> {\"Text\", FontColor -> LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]]}, ImageMargins -> 5, ImageSize -> {Full, Automatic}]}}, AutoDelete -> False, GridBoxBackground -> {\"Columns\" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}}}, GridBoxDividers -> {\"ColumnsIndexed\" -> {1 -> Directive[LightDarkSwitched[RGBColor[0.87, 0.94, 1], RGBColor[0.249113, 0.329519, 0.42312]], AbsoluteThickness[4]]}, \"Rows\" -> {{False}}}, GridBoxItemSize -> {\"Columns\" -> {{Automatic}}, \"Rows\" -> {{Automatic}}}]], \"Text\", \"BlockQuote\", ShowStringCharacters -> False, Background -> None, CellID -> 426436109]" - |>, - ShowStringCharacters -> False, - Background -> None, - CellTags -> "Translated", - CellID -> 426436109 - ], - Cell[ - TextData[ - { - "AI\:306f\:ff0c", - StyleBox["WolframLanguageEvaluator", "InlineCode"], - "\:ff0c", - StyleBox["WolframLanguageContext", "InlineCode"], - "\:ff0c", - StyleBox["TestReport", "InlineCode"], - "\:7b49\:306e\:30c4\:30fc\:30eb\:3092\:5217\:6319\:3059\:308b\:306f\:305a\:3067\:3042\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f3955061-cbb9-0247-8850-11a00b4d6c35", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 56, 27.0377}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The AI should list tools like \", StyleBox[\"WolframLanguageEvaluator\", \"InlineCode\"], \", \", StyleBox[\"WolframLanguageContext\", \"InlineCode\"], \", \", StyleBox[\"TestReport\", \"InlineCode\"], \", etc.\"}], \"Text\", CellID -> 529677147]" - |>, - CellTags -> "Translated", - CellID -> 529677147 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "AGENTS.md\:3092\:7528\:3044\:305fAI\:30ac\:30a4\:30c0\:30f3\:30b9\:306e\:8a2d\:5b9a", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4629861e-ffe3-4840-a654-2afe637a8e3f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 9.6691}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Configuring AI Guidance with AGENTS.md\", \"Section\", CellID -> 53298116]" - |>, - CellTags -> "Translated", - CellID -> 53298116 - ], - Cell[ - TextData[ - { - "AI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30c4\:30fc\:30eb\:306f\:ff0c\:4ee5\:524d\:306e\:4f1a\:8a71\:306b\:95a2\:3059\:308b\:8a18\:61b6\:3092\:6301\:305f\:306a\:3044\:72b6\:614b\:3067\:5404\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:958b\:59cb\:3059\:308b\:ff0e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:306e\:30eb\:30fc\:30c8\:306b\:3042\:308b", - Cell[ - BoxData[Cell["AGENTS.md", Background -> None]], - "InlineCode" - ], - "\:30d5\:30a1\:30a4\:30eb\:ff08\:307e\:305f\:306f\:540c\:69d8\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:30ec\:30d9\:30eb\:306e\:6307\:793a\:30d5\:30a1\:30a4\:30eb\:ff09\:306f\:ff0c\:30b3\:30fc\:30c9\:30d9\:30fc\:30b9\:ff0c\:898f\:7d04\:ff0c\:304a\:3088\:3073Wolfram\:8a00\:8a9e\:30c4\:30fc\:30eb\:3092\:52b9\:679c\:7684\:306b\:4f7f\:7528\:3059\:308b\:65b9\:6cd5\:306b\:95a2\:3059\:308b\:672c\:8cea\:7684\:306a\:6587\:8108\:3092AI\:306b\:4e0e\:3048\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "45a7cba4-04f5-6d43-a085-089f3bf21e84", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 11.2509}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"AI coding tools start each session with no memory of previous conversations. An \", Cell[BoxData[Cell[\"AGENTS.md\", Background -> None]], \"InlineCode\"], \" file (or similar project-level instructions file) at the root of your project gives the AI essential context about your codebase, conventions, and how to use the Wolfram Language tools effectively.\"}], \"Text\", CellID -> 242095628]" - |>, - CellTags -> "Translated", - CellID -> 242095628 - ], - Cell[ - TextData[ - { - StyleBox[ - "Claude Code\:30e6\:30fc\:30b6\:3078\:306e\:6ce8\:8a18\:ff1a", - FontWeight -> Bold - ], - " Claude Code\:306f\:ff0c\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:6307\:793a\:306e\:305f\:3081\:306b\:ff0c", - Cell[ - BoxData[Cell["AGENTS.md", Background -> None]], - "InlineCode" - ], - "\:3067\:306f\:306a\:304f", - Cell[ - BoxData[Cell["CLAUDE.md", Background -> None]], - "InlineCode" - ], - "\:30d5\:30a1\:30a4\:30eb\:3092\:4f7f\:7528\:3059\:308b\:ff0e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:304cClaude Code\:306e\:307f\:3092\:4f7f\:7528\:3059\:308b\:5834\:5408\:ff0c\:4ee3\:308a\:306b\:6307\:793a\:30d5\:30a1\:30a4\:30eb\:3092", - Cell[ - BoxData[Cell["CLAUDE.md", Background -> None]], - "InlineCode" - ], - "\:3068\:547d\:540d\:3059\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:ff0e\:8907\:6570\:306eAI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30c4\:30fc\:30eb\:3092\:4f7f\:7528\:3057\:ff0c\:5358\:4e00\:306e\:4fe1\:983c\:3067\:304d\:308b\:60c5\:5831\:6e90\:3092\:7dad\:6301\:3057\:305f\:3044\:5834\:5408\:ff0c\:9078\:629e\:80a2\:306f2\:3064\:3042\:308b\:ff1a " - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "7ee823f0-75c1-1a43-abe4-e97c4f248faa", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 13.8532}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Note for Claude Code users:\", FontWeight -> Bold], \" Claude Code uses a \", Cell[BoxData[Cell[\"CLAUDE.md\", Background -> None]], \"InlineCode\"], \" file for project instructions rather than \", Cell[BoxData[Cell[\"AGENTS.md\", Background -> None]], \"InlineCode\"], \". If your project only uses Claude Code, you can name your instructions file \", Cell[BoxData[Cell[\"CLAUDE.md\", Background -> None]], \"InlineCode\"], \" instead. If you use multiple AI coding tools and want to maintain a single source of truth, you have two options: \"}], \"Text\", CellID -> 331350253]" - |>, - CellTags -> "Translated", - CellID -> 331350253 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[Cell["@AGENTS.md", Background -> None]], - "InlineCode" - ], - "\:3092", - Cell[ - BoxData[Cell["CLAUDE.md", Background -> None]], - "InlineCode" - ], - "\:30d5\:30a1\:30a4\:30eb\:5185\:306b\:7f6e\:304f\:3053\:3068\:3067\:ff0c", - Cell[ - BoxData[Cell["AGENTS.md", Background -> None]], - "InlineCode" - ], - "\:306e\:5185\:5bb9\:3092\:81ea\:52d5\:7684\:306b\:542b\:3081\:308b\:3053\:3068\:304c\:3067\:304d\:308b" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "88084d5b-6735-4544-90e4-75b415b51e77", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 18.8603}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Put \", Cell[BoxData[Cell[\"@AGENTS.md\", Background -> None]], \"InlineCode\"], \" in your \", Cell[BoxData[Cell[\"CLAUDE.md\", Background -> None]], \"InlineCode\"], \" file to automatically include the contents of \", Cell[BoxData[Cell[\"AGENTS.md\", Background -> None]], \"InlineCode\"]}], \"Item\", CellID -> 686770717]" - |>, - CellTags -> "Translated", - CellID -> 686770717 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[Cell["CLAUDE.md", Background -> None]], - "InlineCode" - ], - "\:3092", - Cell[ - BoxData[Cell["AGENTS.md", Background -> None]], - "InlineCode" - ], - "\:3078\:306e", - StyleBox[ - "\:30b7\:30f3\:30dc\:30ea\:30c3\:30af\:30ea\:30f3\:30af", - IgnoreSpellCheck -> True - ], - "\:3068\:3057\:3066\:4f5c\:6210\:3059\:308b\:ff08\:4f8b\:3048\:3070\:ff0c", - Cell[ - BoxData[ - Cell["ln -s AGENTS.md CLAUDE.md", Background -> None] - ], - "InlineCode" - ], - "\:ff09\:ff0e" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a0b88bff-8935-2a40-b65c-d7cce62206c2", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 20.8074}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Create \", Cell[BoxData[Cell[\"CLAUDE.md\", Background -> None]], \"InlineCode\"], \" as a \", StyleBox[\"symlink\", IgnoreSpellCheck -> True], \" to \", Cell[BoxData[Cell[\"AGENTS.md\", Background -> None]], \"InlineCode\"], \" (e.g., \", Cell[BoxData[Cell[\"ln -s AGENTS.md CLAUDE.md\", Background -> None]], \"InlineCode\"], \")\"}], \"Item\", CellID -> 625813132]" - |>, - CellTags -> "Translated", - CellID -> 625813132 - ], - Cell[ - CellGroupData[ - { - Cell[ - "AGENTS.md\:304c\:91cd\:8981\:3067\:3042\:308b\:7406\:7531", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b312ba42-93c5-ff4a-887e-cb2218c4501d", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 23.303}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Why AGENTS.md Matters\", \"Subsection\", CellID -> 188150770]" - |>, - CellTags -> "Translated", - CellID -> 188150770 - ], - Cell[ - "\:30ac\:30a4\:30c0\:30f3\:30b9\:304c\:306a\:3051\:308c\:3070\:ff0cAI\:306f\:6b21\:306e\:3088\:3046\:306b\:52d5\:4f5c\:3059\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "42894882-cd18-d744-951b-d7eb6769e319", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 24.361}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Without guidance, the AI will:\", \"Text\", CellID -> 4099103]" - |>, - CellTags -> "Translated", - CellID -> 4099103 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[Cell["WolframLanguageContext", Background -> None]], - "InlineCode" - ], - "\:3092\:4f7f\:7528\:3057\:3066\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3092\:53c2\:7167\:3059\:308b\:30bf\:30a4\:30df\:30f3\:30b0\:304c\:5206\:304b\:3089\:306a\:3044" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8864a9c7-a55c-0c42-8b4b-a9b9a3081fc7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 25.8408}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Not know when to use \", Cell[BoxData[Cell[\"WolframLanguageContext\", Background -> None]], \"InlineCode\"], \" to look up documentation\"}], \"Item\", CellID -> 196469298]" - |>, - CellTags -> "Translated", - CellID -> 196469298 - ], - Cell[ - "\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:306e\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:306e\:6163\:7fd2\:3084\:30d1\:30bf\:30fc\:30f3\:3092\:898b\:843d\:3068\:3059", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "76fbbe20-021f-764d-a8e5-797147518b18", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 27.541}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Miss your project's coding conventions and patterns\", \"Item\", CellID -> 168589247]" - |>, - CellTags -> "Translated", - CellID -> 168589247 - ], - Cell[ - "\:306a\:3058\:307f\:306e\:306a\:3044\:30b9\:30bf\:30a4\:30eb\:3067\:30b3\:30fc\:30c9\:3092\:8a18\:8ff0\:3057\:305f\:308a\:ff0c\:975e\:63a8\:5968\:306e\:30d1\:30bf\:30fc\:30f3\:3092\:4f7f\:7528\:3057\:305f\:308a\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6473847b-0008-b142-ab30-4fa2cbfc3352", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 28.9916}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Write code in unfamiliar styles or use deprecated patterns\", \"Item\", CellID -> 175079940]" - |>, - CellTags -> "Translated", - CellID -> 175079940 - ], - Cell[ - "\:30c6\:30b9\:30c8\:304a\:3088\:3073\:30b3\:30fc\:30c9\:691c\:67fb\:3092\:30b9\:30ad\:30c3\:30d7\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c8a4ad4e-86bf-b646-93c0-5f374fb3a756", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 30.4513}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Skip testing and code inspection\", \"Item\", CellID -> 343077630]" - |>, - CellTags -> "Translated", - CellID -> 343077630 - ], - Cell[ - TextData[ - { - StyleBox["AGENTS.md", "InlineCode"], - "\:304c\:9069\:5207\:306b\:8a18\:8ff0\:3055\:308c\:3066\:3044\:308c\:3070\:ff0cAI\:306f\:6700\:521d\:304b\:3089\:305d\:306e\:6163\:7fd2\:306b\:5f93\:3046\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "996b1153-6768-de40-b2cd-dc5a8179198a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 18, 57, 31.7008}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"With a well-written \", StyleBox[\"AGENTS.md\", \"InlineCode\"], \", the AI will follow your conventions from the start.\"}], \"Text\", CellID -> 361607913]" - |>, - CellTags -> "Translated", - CellID -> 361607913 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:542b\:3081\:308b\:5185\:5bb9", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "560ddc78-b4ca-f643-a2d3-04d30e1d6d17", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 3, 46.4833}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"What to Include\", \"Subsection\", CellID -> 18765451]" - |>, - CellTags -> "Translated", - CellID -> 18765451 - ], - Cell[ - TextData[ - { - "1. ", - StyleBox[ - "\:30c4\:30fc\:30eb\:30ac\:30a4\:30c0\:30f3\:30b9", - FontWeight -> Bold - ], - " - \:5404Wolfram\:8a00\:8a9e\:30c4\:30fc\:30eb\:3092\:3044\:3064\:3069\:306e\:3088\:3046\:306b\:4f7f\:7528\:3059\:308b\:304b" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ce744395-9eb3-424f-a2d5-87bffbe5a00e", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 3, 47.8643}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"1. \", StyleBox[\"Tool guidance\", FontWeight -> Bold], \" - When and how to use each Wolfram Language tool\"}], \"Text\", CellID -> 36628611]" - |>, - CellTags -> "Translated", - CellID -> 36628611 - ], - Cell[ - TextData[ - { - "2. ", - StyleBox[ - "\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:306e\:30ec\:30a4\:30a2\:30a6\:30c8", - FontWeight -> Bold - ], - "\[LongDash]\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:69cb\:9020\:ff0c\:4e3b\:8981\:30d5\:30a1\:30a4\:30eb\:ff0c\:30a8\:30f3\:30c8\:30ea\:30dd\:30a4\:30f3\:30c8" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "074922ec-1c69-2b44-b29f-d8a766fb128e", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 3, 49.5167}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"2. \", StyleBox[\"Project layout\", FontWeight -> Bold], \" - Directory structure, key files, entry points\"}], \"Text\", CellID -> 422594424]" - |>, - CellTags -> "Translated", - CellID -> 422594424 - ], - Cell[ - TextData[ - { - "3. ", - StyleBox[ - "\:30b3\:30fc\:30c9\:30b9\:30bf\:30a4\:30eb", - FontWeight -> Bold - ], - "\:ff0d\:547d\:540d\:898f\:7d04\:ff0c\:30d1\:30bf\:30fc\:30f3\:ff0c\:30a8\:30e9\:30fc\:51e6\:7406\:306e\:30a2\:30d7\:30ed\:30fc\:30c1" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2cf17663-7e13-0045-8f66-a1ba04d7fc20", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 3, 51.382}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"3. \", StyleBox[\"Code style\", FontWeight -> Bold], \" - Naming conventions, patterns, error handling approach\"}], \"Text\", CellID -> 94795104]" - |>, - CellTags -> "Translated", - CellID -> 94795104 - ], - Cell[ - TextData[ - { - "4. ", - StyleBox["\:30c6\:30b9\:30c8", FontWeight -> Bold], - "\[LongDash]\:30c6\:30b9\:30c8\:3092\:3069\:306e\:3088\:3046\:306b\:5b9f\:884c\:3059\:308b\:304b\:ff0c\:30c6\:30b9\:30c8\:30d5\:30a1\:30a4\:30eb\:304c\:3069\:3053\:306b\:5b58\:5728\:3059\:308b\:304b\:ff0c\:306a\:3089\:3073\:306b\:30c6\:30b9\:30c8\:5f62\:5f0f" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "7f1a98d6-e078-564f-9280-00475821c3f7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 3, 53.7847}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"4. \", StyleBox[\"Testing\", FontWeight -> Bold], \" - How to run tests, where test files live, test format\"}], \"Text\", CellID -> 173768514]" - |>, - CellTags -> "Translated", - CellID -> 173768514 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:5229\:7528\:53ef\:80fd\:306a\:30c4\:30fc\:30eb", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b304d156-10c7-0642-b3dd-ee8cecdca3cb", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 3, 55.6001}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Available Tools\", \"Subsection\", CellID -> 61825447]" - |>, - CellTags -> "Translated", - CellID -> 61825447 - ], - Cell[ - TextData[ - { - StyleBox["WolframLanguage", "InlineCode"], - "\:30b5\:30fc\:30d0\:306f\:ff0c", - StyleBox["AGENTS.md", "InlineCode"], - "\:306b\:304a\:3044\:3066\:53c2\:7167\:3067\:304d\:308b\:4ee5\:4e0b\:306e\:30c4\:30fc\:30eb\:3092\:63d0\:4f9b\:3059\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "89e5266f-62a0-0246-845d-d3cc1b2f9402", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 3, 56.7558}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The \", StyleBox[\"WolframLanguage\", \"InlineCode\"], \" server provides these tools that you can reference in your \", StyleBox[\"AGENTS.md\", \"InlineCode\"], \":\"}], \"Text\", CellID -> 647305114]" - |>, - CellTags -> "Translated", - CellID -> 647305114 - ], - Cell[ - BoxData[ - GridBox[ - { - { - "WolframLanguageContext", - Cell[ - "Wolfram\:30ea\:30bd\:30fc\:30b9\:ff08\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:ff0c\:95a2\:6570\:30ea\:30dd\:30b8\:30c8\:30ea\:ff0c\:30c7\:30fc\:30bf\:30ea\:30dd\:30b8\:30c8\:30ea\:ff0c\:30cb\:30e5\:30fc\:30e9\:30eb\:30cd\:30c3\:30c8\:30ea\:30dd\:30b8\:30c8\:30ea\:7b49\:ff09\:5168\:4f53\:306b\:6e21\:3063\:3066\:30bb\:30de\:30f3\:30c6\:30a3\:30c3\:30af\:691c\:7d22\:3092\:884c\:3046", - "TableText" - ] - }, - { - "WolframLanguageEvaluator", - Cell[ - "Wolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:3092\:5b9f\:884c\:3059\:308b", - "TableText" - ] - }, - { - "ReadNotebook", - Cell[ - "Wolfram\:30ce\:30fc\:30c8\:30d6\:30c3\:30af\:ff08.nb\:ff09\:3092\:30de\:30fc\:30af\:30c0\:30a6\:30f3\:3068\:3057\:3066\:8aad\:307f\:53d6\:308b", - "TableText" - ] - }, - { - "WriteNotebook", - Cell[ - "\:30de\:30fc\:30af\:30c0\:30a6\:30f3\:3092Wolfram\:30ce\:30fc\:30c8\:30d6\:30c3\:30af\:306b\:5909\:63db\:3059\:308b", - "TableText" - ] - }, - { - "SymbolDefinition", - Cell[ - "\:8aad\:307f\:3084\:3059\:3044\:5f62\:5f0f\:3067\:30b7\:30f3\:30dc\:30eb\:5b9a\:7fa9\:3092\:8abf\:3079\:308b", - "TableText" - ] - }, - { - "CodeInspector", - Cell[ - "\:30b3\:30fc\:30c9\:306e\:554f\:984c\:3092\:691c\:67fb\:3057\:ff0c\:66f8\:5f0f\:4ed8\:304d\:30ec\:30dd\:30fc\:30c8\:3092\:8fd4\:3059", - "TableText" - ] - }, - { - "TestReport", - Cell[ - "Wolfram\:8a00\:8a9e\:306e\:30c6\:30b9\:30c8\:30d5\:30a1\:30a4\:30eb(.wlt)\:3092\:5b9f\:884c\:3059\:308b", - "TableText" - ] - } - } - ] - ], - "DefinitionBox", - TaggingRules -> <| - "OrignialExpressionUUID" -> "daf0e70f-5d71-3b4d-bcca-e65dd43c6449", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 3, 58.813}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{\"WolframLanguageContext\", Cell[\"Semantic search across Wolfram resources (documentation, function repository, data repository, neural net repository, and more)\", \"TableText\"]}, {\"WolframLanguageEvaluator\", Cell[\"Execute Wolfram Language code\", \"TableText\"]}, {\"ReadNotebook\", Cell[\"Read Wolfram notebooks (.nb) as markdown\", \"TableText\"]}, {\"WriteNotebook\", Cell[\"Convert markdown to Wolfram notebooks\", \"TableText\"]}, {\"SymbolDefinition\", Cell[\"Look up symbol definitions in readable format\", \"TableText\"]}, {\"CodeInspector\", Cell[\"Inspect code for issues and return a formatted report\", \"TableText\"]}, {\"TestReport\", Cell[\"Run Wolfram Language test files (.wlt)\", \"TableText\"]}}]], \"DefinitionBox\", CellID -> 498691150]" - |>, - CellTags -> "Translated", - CellID -> 498691150 - ], - Cell[ - TextData[ - { - StyleBox["WolframLanguage", "InlineCode"], - "MCP\:30b5\:30fc\:30d0\:306b\:3088\:3063\:3066\:63d0\:4f9b\:3055\:308c\:308b\:30c4\:30fc\:30eb\:ff0e" - } - ], - "Caption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "259a3e00-2188-4d4d-9cc0-06b74d6bf284", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 4, 2.70712}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Tools provided by the \", StyleBox[\"WolframLanguage\", \"InlineCode\"], \" MCP server.\"}], \"Caption\", CellID -> 48455874]" - |>, - CellTags -> "Translated", - CellID -> 48455874 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "AGENTS.md\:30c6\:30f3\:30d7\:30ec\:30fc\:30c8", - "Subsection", - CellID -> 177100587 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:4ee5\:4e0b\:306f\:ff0cWolfram\:8a00\:8a9e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:5411\:3051\:306b\:9069\:5fdc\:3067\:304d\:308b\:30c6\:30f3\:30d7\:30ec\:30fc\:30c8\:3067\:3042\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "98294202-6184-fb45-9f44-0012ce51c441", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 7, 27.8624}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Below is a template you can adapt for your Wolfram Language project:\", \"Text\", CellID -> 6877108]" - |>, - CellTags -> "Translated", - CellID -> 6877108 - ], - Cell[ - TextData[ - { - "# AGENTS.md\n\n## Overview\n\nBrief description of what your project does.\n\n## Development\n\nAlways use the WolframLanguageContext tool when working with Wolfram Language code\nto look up documentation and find relevant functions before writing code.\n\nWhen you make changes to source code, write and run tests using the TestReport tool\nand check your work with the CodeInspector tool.\n\n## Project Structure\n\n- `Kernel/` - Main source files\n - `MyPaclet.wl` - Entry point\n - `Utilities.wl` - Helper functions\n- `Tests/` - Test files (.wlt)\n- `Documentation/` - Notebooks and docs\n\n## Code Style\n\n- Use `UpperCamelCase` for public function names\n- Use `lowerCamelCase` for internal function names\n- Use `Enclose`/`Confirm` for error handling:\n ```wl\n myFunction[arg_] := Enclose[\n Module[{result},\n result = ConfirmBy[computation[", - StyleBox["arg", IgnoreSpellCheck -> True], - "], StringQ];\n result\n ]\n ];\n ```\n\n## Writing Tests\n\nWrite tests in this format:\n\n```wl\nVerificationTest[\n input,\n expected,\n TestID -> \"DescriptiveTestID\"\n]\n```\n\nTest files go in the `Tests/` directory with a `.wlt` extension.\n\n## Key Patterns\n\nDescribe any project-specific patterns, conventions, or architectural decisions\nthat the AI should follow." - } - ], - "Program", - CellID -> 146381601 - ] - }, - Open - ] - ], - Cell[ - "\:30c6\:30f3\:30d7\:30ec\:30fc\:30c8\:3092\:5b9f\:969b\:306e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:69cb\:9020\:ff0c\:6163\:4f8b\:ff0c\:304a\:3088\:3073\:8981\:4ef6\:306b\:5408\:3046\:3088\:3046\:306b\:8abf\:6574\:3059\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "709b207d-5e72-c74c-96f4-e618a7377c33", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 7, 50.1215}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Adjust the template to match your actual project structure, conventions, and requirements.\", \"Text\", CellID -> 183210177]" - |>, - CellTags -> "Translated", - CellID -> 183210177 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:5b9f\:969b\:306e", - StyleBox["AGENTS.md", "InlineCode"], - "\:30d5\:30a1\:30a4\:30eb\:3092\:78ba\:8a8d\:3059\:308b\:305f\:3081\:306b\:ff0c\:3053\:306e\:30d1\:30af\:30ec\:30c3\:30c8\:306e\:958b\:767a\:6642\:306b\:4f7f\:7528\:3055\:308c\:305f\:3082\:306e\:3092\:8868\:793a\:3059\:308b\:ff1a" - } - ], - "MathCaption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "34deadb7-e37b-bb4f-887c-f29a7a6022aa", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 20, 19, 7, 51.7164}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"To see a real-world \", StyleBox[\"AGENTS.md\", \"InlineCode\"], \" file, view the one used during development of this paclet:\"}], \"MathCaption\", CellID -> 105849119]" - |>, - CellTags -> "Translated", - CellID -> 105849119 - ], - Cell[ - BoxData[ - RowBox[ - { - "Import", - "[", - RowBox[ - { - RowBox[ - { - RowBox[ - {"PacletObject", "[", "\"Wolfram/AgentTools\"", "]"} - ], - "[", - RowBox[{"\"AssetLocation\"", ",", "\"AGENTS.md\""}], - "]" - } - ], - ",", - "\"Text\"" - } - ], - "]" - } - ] - ], - "Input", - CellID -> 73860916 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - StyleBox["AGENTS.md", "InlineCode"], - "\:3092\:6700\:65b0\:306e\:72b6\:614b\:306b\:4fdd\:3064" - } - ], - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "e2593fb4-5ee9-5a4d-8971-ec024829a1f5", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 43, 11.1522}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Keeping \", StyleBox[\"AGENTS.md\", \"InlineCode\"], \" Up to Date\"}], \"Subsection\", CellID -> 177881101]" - |>, - CellTags -> "Translated", - CellID -> 177881101 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[Cell["AGENTS.md", Background -> None]], - "InlineCode" - ], - "\:306f\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:3068\:3068\:3082\:306b\:9032\:5316\:3059\:308b\:751f\:304d\:305f\:6587\:66f8\:3067\:3042\:308b\:ff0e\:6b21\:306e\:5834\:5408\:306b\:306f\:66f4\:65b0\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a36b96c8-d655-6c4d-b23b-5a5e356af026", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 43, 23.1263}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Your \", Cell[BoxData[Cell[\"AGENTS.md\", Background -> None]], \"InlineCode\"], \" is a living document that should evolve with your project. Update it when you:\"}], \"Text\", CellID -> 712505701]" - |>, - CellTags -> "Translated", - CellID -> 712505701 - ], - Cell[ - "\:65b0\:3057\:3044\:30d5\:30a1\:30a4\:30eb\:ff0c\:30c7\:30a3\:30ec\:30af\:30c8\:30ea\:ff0c\:307e\:305f\:306f\:30a2\:30fc\:30ad\:30c6\:30af\:30c1\:30e3\:30b3\:30f3\:30dd\:30fc\:30cd\:30f3\:30c8\:3092\:8ffd\:52a0\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "651dbc8d-8bf4-2340-84af-48fa82fb6849", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 43, 32.0356}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Add new files, directories, or architectural components\", \"Item\", CellID -> 184563806]" - |>, - CellTags -> "Translated", - CellID -> 184563806 - ], - Cell[ - "\:65b0\:305f\:306a\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30d1\:30bf\:30fc\:30f3\:307e\:305f\:306f\:6163\:4f8b\:3092\:78ba\:7acb\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "890c2dea-d4b8-8947-ac08-54739252ddb8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 43, 33.7698}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Establish new coding patterns or conventions\", \"Item\", CellID -> 636056347]" - |>, - CellTags -> "Translated", - CellID -> 636056347 - ], - Cell[ - "AI\:304c\:628a\:63e1\:3057\:3066\:304a\:304f\:3079\:304d\:5883\:754c\:4e8b\:4f8b\:307e\:305f\:306f\:843d\:3068\:3057\:7a74\:3092\:898b\:4ed8\:3051\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "bb9969a6-96de-0342-bdd4-af08456b420b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 43, 46.6568}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Discover edge cases or gotchas the AI should know about\", \"Item\", CellID -> 593706313]" - |>, - CellTags -> "Translated", - CellID -> 593706313 - ], - Cell[ - "\:30c6\:30b9\:30c8\:6226\:7565\:307e\:305f\:306f\:30ef\:30fc\:30af\:30d5\:30ed\:30fc\:3092\:5909\:66f4\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3d044275-6ee9-464c-9b07-849b282457f8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 43, 48.6056}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Change testing strategies or workflows\", \"Item\", CellID -> 408023110]" - |>, - CellTags -> "Translated", - CellID -> 408023110 - ], - Cell[ - TextData[ - { - "\:91cd\:5927\:306a\:5909\:66f4\:306e\:5f8c\:3067\:6570\:5206\:304b\:3051\:3066", - Cell[ - BoxData[Cell["AGENTS.md", Background -> None]], - "InlineCode" - ], - "\:3092\:66f4\:65b0\:3057\:3066\:304a\:304f\:3068\:ff0cAI\:304c\:53e4\:3044\:524d\:63d0\:3092\:4f7f\:3046\:3053\:3068\:3092\:9632\:3052\:308b\:305f\:3081\:ff0c\:5c06\:6765\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:306b\:304a\:3051\:308b\:6642\:9593\:306e\:7bc0\:7d04\:3068\:306a\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "394ffa38-5f18-1f4a-9b33-921465b02204", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 43, 49.8709}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"A few minutes spent updating \", Cell[BoxData[Cell[\"AGENTS.md\", Background -> None]], \"InlineCode\"], \" after significant changes saves time in future sessions by preventing the AI from making outdated assumptions.\"}], \"Text\", CellID -> 726437045]" - |>, - CellTags -> "Translated", - CellID -> 726437045 - ], - Cell[ - BoxData[ - GridBox[ - { - { - PaneBox[ - Cell[ - TextData[ - { - StyleBox["\:30d2\:30f3\:30c8\:ff1a", FontWeight -> Bold], - "AI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:652f\:63f4\:30c4\:30fc\:30eb\:306f\:ff0c\:3053\:306e\:30d5\:30a1\:30a4\:30eb\:306e\:4f5c\:6210\:304a\:3088\:3073\:66f4\:65b0\:304c\:652f\:63f4\:3067\:304d\:308b\:305f\:3081\:ff0c\:5358\:306b\:4f9d\:983c\:3059\:308c\:3070\:3088\:3044\:ff0e\:305f\:3060\:3057\:ff0cAI\:304c\:63d0\:6848\:3057\:305f\:5909\:66f4\:304c\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:306e\:898f\:7d04\:304a\:3088\:3073\:8981\:4ef6\:3092\:6b63\:78ba\:306b\:53cd\:6620\:3057\:3066\:3044\:308b\:3053\:3068\:3092\:78ba\:8a8d\:3059\:308b\:305f\:3081\:ff0c\:5e38\:306b\:6ce8\:610f\:6df1\:304f\:78ba\:8a8d\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff0e" - } - ], - Background -> None - ], - BaseStyle -> { - "Text", - FontColor -> - LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]] - }, - ImageMargins -> 5, - ImageSize -> {Full, Automatic}, - ScrollPosition -> {0.0, 0.0} - ] - } - }, - AutoDelete -> False, - GridBoxBackground -> { - "Columns" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}} - }, - GridBoxDividers -> { - "ColumnsIndexed" -> { - 1 -> - Directive[ - LightDarkSwitched[ - RGBColor[0.87, 0.94, 1], - RGBColor[0.249113, 0.329519, 0.42312] - ], - AbsoluteThickness[4] - ] - }, - "Rows" -> {{False}} - }, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - ], - "Text", - "BlockQuote", - TaggingRules -> <| - "OrignialExpressionUUID" -> "04f04091-6a7b-be4c-a768-d644e1cad204", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 43, 51.9157}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{PaneBox[Cell[TextData[{StyleBox[\"Tip:\", FontWeight -> Bold], \" AI coding assistants can help you write and update this file\[LongDash]just ask! However, always review AI-suggested changes carefully to ensure they accurately reflect your project's conventions and requirements.\"}], Background -> None], BaseStyle -> {\"Text\", FontColor -> LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]]}, ImageMargins -> 5, ImageSize -> {Full, Automatic}, ScrollPosition -> {0., 0.}]}}, AutoDelete -> False, GridBoxBackground -> {\"Columns\" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}}}, GridBoxDividers -> {\"ColumnsIndexed\" -> {1 -> Directive[LightDarkSwitched[RGBColor[0.87, 0.94, 1], RGBColor[0.249113, 0.329519, 0.42312]], AbsoluteThickness[4]]}, \"Rows\" -> {{False}}}, GridBoxItemSize -> {\"Columns\" -> {{Automatic}}, \"Rows\" -> {{Automatic}}}]], \"Text\", \"BlockQuote\", ShowStringCharacters -> False, Background -> None, CellID -> 141046162]" - |>, - ShowStringCharacters -> False, - Background -> None, - CellTags -> "Translated", - CellID -> 141046162 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "AI\:652f\:63f4\:958b\:767a\:306e\:6700\:9069\:306a\:5b9f\:8df5\:65b9\:6cd5", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9e93efdd-ca2e-a042-989a-9f4c17d99bc6", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 48.8326}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Best Practices for AI-Assisted Development\", \"Section\", CellID -> 295086114]" - |>, - CellTags -> "Translated", - CellID -> 295086114 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30c6\:30b9\:30c8\:99c6\:52d5\:578b\:958b\:767a", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "7cf5aa18-3347-0d4a-80a2-09910bfea6ba", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 29.2317}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Test-Driven Development\", \"Subsection\", CellID -> 10996841]" - |>, - CellTags -> "Translated", - CellID -> 10996841 - ], - Cell[ - "AI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30c4\:30fc\:30eb\:306f\:ff0c\:30c6\:30b9\:30c8\:99c6\:52d5\:578b\:30ef\:30fc\:30af\:30d5\:30ed\:30fc\:3068\:6b63\:5e38\:306b\:6a5f\:80fd\:3059\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "42b22fe0-9a01-7c44-8839-83b302cf8acc", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 30.6841}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"AI coding tools work well with a test-driven workflow:\", \"Text\", CellID -> 895907941]" - |>, - CellTags -> "Translated", - CellID -> 895907941 - ], - Cell[ - TextData[ - { - "1. \:671f\:5f85\:3055\:308c\:308b\:632f\:308b\:821e\:3044\:3092\:8a18\:8ff0\:3059\:308b", - StyleBox[ - "\:30c6\:30b9\:30c8\:3092\:6700\:521d\:306b\:66f8\:304f", - FontWeight -> Bold - ] - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "de575e56-302f-c241-99d2-a28d55da2c72", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 59, 30.4821}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"1. \", StyleBox[\"Write tests first\", FontWeight -> Bold], \" describing the expected behavior\"}], \"Text\", CellID -> 272445577]" - |>, - CellTags -> "Translated", - CellID -> 272445577 - ], - Cell[ - TextData[ - { - "2. \:95a2\:6570\:304c\:30c6\:30b9\:30c8\:306b\:5408\:683c\:3059\:308b\:3088\:3046\:306b", - StyleBox[ - "AI\:306b\:5b9f\:88c5\:3092\:4f9d\:983c\:3059\:308b", - FontWeight -> Bold - ] - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "38d443ca-4ea4-a94b-afeb-6627fb9605a3", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 34.9503}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"2. \", StyleBox[\"Ask the AI to implement\", FontWeight -> Bold], \" the function to pass the tests\"}], \"Text\", CellID -> 283173657]" - |>, - CellTags -> "Translated", - CellID -> 283173657 - ], - Cell[ - TextData[ - { - "3. ", - StyleBox[ - "TestReport\:3092\:7528\:3044\:3066\:30c6\:30b9\:30c8\:3092\:5b9f\:884c", - FontWeight -> Bold - ], - "\:3057\:ff0c\:691c\:8a3c\:3059\:308b" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f022509b-3215-6e46-be4e-d843f563cbdd", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 36.4597}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"3. \", StyleBox[\"Run tests with TestReport\", FontWeight -> Bold], \" to verify\"}], \"Text\", CellID -> 119584645]" - |>, - CellTags -> "Translated", - CellID -> 119584645 - ], - Cell[ - TextData[ - { - "4. \:3059\:3079\:3066\:306e\:30c6\:30b9\:30c8\:304c\:901a\:308b\:307e\:3067", - StyleBox["\:53cd\:5fa9\:3059\:308b", FontWeight -> Bold] - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4c6e5bcf-469f-0144-825a-4826a5510fcf", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 38.4968}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"4. \", StyleBox[\"Iterate\", FontWeight -> Bold], \" until all tests pass\"}], \"Text\", CellID -> 57905655]" - |>, - CellTags -> "Translated", - CellID -> 57905655 - ], - Cell[ - "\:3053\:308c\:306f\:ff0cAI\:304c\:305d\:308c\:306b\:7167\:3089\:3057\:3066\:4f5c\:696d\:3059\:308b\:305f\:3081\:306e\:5177\:4f53\:7684\:306a\:4ed5\:69d8\:3092\:4e0e\:3048\:ff0c\:81ea\:52d5\:691c\:8a3c\:3092\:63d0\:4f9b\:3059\:308b\:3082\:306e\:3067\:3042\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "27bc9fa8-c91e-f54c-ac61-d59617c7a823", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 39.9496}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"This gives the AI a concrete specification to work against and provides automatic verification.\", \"Text\", CellID -> 292120757]" - |>, - CellTags -> "Translated", - CellID -> 292120757 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:8a08\:753b\:30e2\:30fc\:30c9\:3092\:4f7f\:7528\:3059\:308b", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "7025aa15-f32a-8b4f-8405-beb1930f907c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 54.4673}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Use Planning Mode\", \"Subsection\", CellID -> 332403986]" - |>, - CellTags -> "Translated", - CellID -> 332403986 - ], - Cell[ - "\:81ea\:660e\:3067\:306a\:3044\:30bf\:30b9\:30af\:306b\:3064\:3044\:3066\:306f\:ff0c\:5b9f\:88c5\:3059\:308b\:524d\:306bAI\:306b\:8a08\:753b\:3092\:7acb\:3066\:308b\:3088\:3046\:4f9d\:983c\:3059\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4022e521-a5ee-d841-92ee-8c4cb9c3b47f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 55.8406}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"For non-trivial tasks, ask the AI to plan before implementing:\", \"Text\", CellID -> 548525010]" - |>, - CellTags -> "Translated", - CellID -> 548525010 - ], - Cell[ - BoxData[ - GridBox[ - { - { - PaneBox[ - "\"\\\"\:4e0e\:3048\:3089\:308c\:305f\:30b9\:30ad\:30fc\:30de\:306b\:5f93\:3063\:3066CSV\:30d5\:30a1\:30a4\:30eb\:3092Association\:3078\:3068\:89e3\:6790\:3059\:308b\:95a2\:6570\:3092\:8ffd\:52a0\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff0e\:30b3\:30fc\:30c9\:3092\:66f8\:304d\:59cb\:3081\:308b\:524d\:306b\:5b9f\:88c5\:3092\:8a08\:753b\:3057\:ff0c\:5fc5\:8981\:306b\:5fdc\:3058\:3066\:660e\:78ba\:5316\:306e\:305f\:3081\:306e\:8cea\:554f\:3092\:3059\:308b\:ff0e\\\"\"", - BaseStyle -> { - "Text", - FontColor -> - LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]] - }, - ImageMargins -> 5, - ImageSize -> {Full, Automatic}, - ScrollPosition -> {0.0, 0.0} - ] - } - }, - AutoDelete -> False, - GridBoxBackground -> { - "Columns" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}} - }, - GridBoxDividers -> { - "ColumnsIndexed" -> { - 1 -> - Directive[ - LightDarkSwitched[ - RGBColor[0.87, 0.94, 1], - RGBColor[0.249113, 0.329519, 0.42312] - ], - AbsoluteThickness[4] - ] - }, - "Rows" -> {{False}} - }, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - ], - "Text", - "BlockQuote", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a853b682-888e-f64c-bb18-69a840ce2553", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 53, 57.3753}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{PaneBox[\"\\\"\\\\\\\"I need to add a function that parses CSV files into Associations according to a given schema. Plan the implementation before writing code and ask me clarifying questions as needed.\\\\\\\"\\\"\", BaseStyle -> {\"Text\", FontColor -> LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]]}, ImageMargins -> 5, ImageSize -> {Full, Automatic}]}}, AutoDelete -> False, GridBoxBackground -> {\"Columns\" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}}}, GridBoxDividers -> {\"ColumnsIndexed\" -> {1 -> Directive[LightDarkSwitched[RGBColor[0.87, 0.94, 1], RGBColor[0.249113, 0.329519, 0.42312]], AbsoluteThickness[4]]}, \"Rows\" -> {{False}}}, GridBoxItemSize -> {\"Columns\" -> {{Automatic}}, \"Rows\" -> {{Automatic}}}]], \"Text\", \"BlockQuote\", ShowStringCharacters -> False, Background -> None, CellID -> 17091729]" - |>, - ShowStringCharacters -> False, - Background -> None, - CellTags -> "Translated", - CellID -> 17091729 - ], - Cell[ - "\:3053\:308c\:306b\:3088\:308a\:ff0cAI\:306f\:30b3\:30fc\:30c9\:30d9\:30fc\:30b9\:3092\:63a2\:7d22\:3057\:ff0c\:65e2\:5b58\:306e\:30d1\:30bf\:30fc\:30f3\:3092\:7406\:89e3\:3057\:ff0c\:5909\:66f4\:3092\:52a0\:3048\:308b\:524d\:306b\:30ec\:30d3\:30e5\:30fc\:7528\:306e\:30a2\:30d7\:30ed\:30fc\:30c1\:3092\:63d0\:6848\:3059\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4a8ac353-9ff8-e546-94c7-d8196734f570", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 54, 0.725152}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"This lets the AI explore the codebase, understand existing patterns, and propose an approach for your review before making changes.\", \"Text\", CellID -> 20414306]" - |>, - CellTags -> "Translated", - CellID -> 20414306 - ], - Cell[ - TextData[ - { - StyleBox["\:6ce8\:ff1a", FontWeight -> Bold], - " \:591a\:304f\:306e\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306f\:ff0c\:3053\:306e\:7a2e\:306e\:4f5c\:696d\:306b\:6700\:9069\:5316\:3055\:308c\:305f\:30e2\:30fc\:30c9\:3078\:5207\:308a\:66ff\:3048\:308b\:7d44\:8fbc\:307f\:306e\:300c\:8a08\:753b\:30e2\:30fc\:30c9\:300d\:3092\:30b5\:30dd\:30fc\:30c8\:3057\:3066\:3044\:308b\:ff0e\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:304c\:3053\:308c\:3092\:30b5\:30dd\:30fc\:30c8\:3057\:3066\:3044\:308b\:5834\:5408\:ff0c\:30b3\:30fc\:30c9\:3092\:66f8\:304f\:524d\:306b\:5b9f\:88c5\:3092\:8a08\:753b\:3059\:308b\:305f\:3081\:306b\:305d\:308c\:3092\:4f7f\:7528\:3059\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "df72f941-94d7-0d4b-84ca-74bd4274a1ac", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 16, 54, 2.64498}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Note:\", FontWeight -> Bold], \" Many applications support a built-in \\\"planning mode\\\" that switches it into a mode that is optimized for this type of work. If your application supports this, you should use it to plan the implementation before writing code.\"}], \"Text\", CellID -> 849064227]" - |>, - CellTags -> "Translated", - CellID -> 849064227 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:5927\:898f\:6a21\:30bf\:30b9\:30af\:306b\:304a\:3044\:3066\:300c\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:52a3\:5316\:300d\:3092\:56de\:907f\:3059\:308b", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "56f1aab4-8337-3540-96e4-b6fa5b2042fc", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 10.3895}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Avoiding \\\"Context Rot\\\" in Large Tasks\", \"Subsection\", CellID -> 188603163]" - |>, - CellTags -> "Translated", - CellID -> 188603163 - ], - Cell[ - "AI \:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30c4\:30fc\:30eb\:306b\:306f\:6709\:9650\:306e\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:30a6\:30a3\:30f3\:30c9\:30a6\:304c\:3042\:308b\:ff0e\:5927\:898f\:6a21\:306a\:6a5f\:80fd\:3092\:5b9f\:88c5\:3059\:308b\:969b\:306b\:306f\:ff0c\:4f1a\:8a71\:304c\:9577\:304f\:306a\:308b\:306b\:3064\:308c\:3066\:84c4\:7a4d\:3055\:308c\:305f\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:304c\:6027\:80fd\:3092\:4f4e\:4e0b\:3055\:305b\:308b\:3053\:3068\:304c\:3042\:308b\:ff0e\:591a\:304f\:306e\:30c4\:30fc\:30eb\:306f\:ff0c\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:5727\:7e2e\:ff0c\:30b5\:30d6\:30a8\:30fc\:30b8\:30a7\:30f3\:30c8\:ff0c\:30bf\:30b9\:30af\:7ba1\:7406\:7b49\:306e\:7de9\:548c\:6226\:7565\:3092\:63d0\:4f9b\:3059\:308b\:304c\:ff0c\:3053\:308c\:3089\:306fAI\:304c\:3069\:306e\:60c5\:5831\:304c\:91cd\:8981\:3067\:3042\:308b\:304b\:3092\:5224\:65ad\:3059\:308b\:3053\:3068\:306b\:4f9d\:5b58\:3057\:3066\:3044\:308b\:ff0e\:8aa4\:308a\:306f\:6642\:9593\:306e\:7d4c\:904e\:3068\:3068\:3082\:306b\:7d2f\:7a4d\:3057\:ff0c\:7d50\:679c\:3068\:3057\:3066\:6b21\:7b2c\:306b\:60aa\:5316\:3059\:308b\:7d50\:679c\:3078\:3068\:3064\:306a\:304c\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "1ee13e73-aafe-3f4a-b82d-f8ef466cfd6d", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 11.9478}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"AI coding tools have finite context windows. When implementing large features, accumulated context can degrade performance as the conversation grows. Many tools offer mitigation strategies\[LongDash]context compression, sub-agents, task management\[LongDash]but these rely on AI deciding what information matters. Mistakes compound over time, leading to progressively worse results.\", \"Text\", CellID -> 236151048]" - |>, - CellTags -> "Translated", - CellID -> 236151048 - ], - Cell[ - "\:8907\:6570\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:306b\:307e\:305f\:304c\:308b\:8907\:96d1\:306a\:6a5f\:80fd\:306b\:3064\:3044\:3066\:306f\:ff0c\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:7ba1\:7406\:306b\:5bfe\:3059\:308b\:624b\:52d5\:306e\:30a2\:30d7\:30ed\:30fc\:30c1\:306e\:65b9\:304c\:9069\:5207\:306b\:6a5f\:80fd\:3059\:308b\:3053\:3068\:304c\:591a\:3044\:ff0e\:3053\:3053\:3067\:306f\:ff0c\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:3092\:52b9\:7387\:7684\:306b\:7ba1\:7406\:3059\:308b\:30ef\:30fc\:30af\:30d5\:30ed\:30fc\:306e\:4f8b\:3092\:8aac\:660e\:3059\:308b\:ff0e\:4e2d\:6838\:3068\:306a\:308b\:8003\:3048\:65b9\:306f\:ff0c1\:3064\:306e\:9577\:3044\:4f1a\:8a71\:3092\:7d99\:7d9a\:3059\:308b\:306e\:3067\:306f\:306a\:304f\:ff0c\:7cbe\:9078\:3057\:305f\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:3092\:7528\:3044\:3066\:65b0\:3057\:3044\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:958b\:59cb\:3059\:308b\:3068\:3044\:3046\:3082\:306e\:3067\:3042\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "36eb29bb-7063-ba4b-9531-74b89032d61a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 14.7565}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"For complex features spanning multiple sessions, a manual approach to context management often works better. Here we'll describe an example workflow that efficiently manages context. The core idea: instead of continuing one long conversation, start fresh sessions with carefully curated context.\", \"Text\", CellID -> 545559776]" - |>, - CellTags -> "Translated", - CellID -> 545559776 - ], - Cell[ - TextData[ - StyleBox[ - "\:3053\:306e\:624b\:6cd5\:3092\:4f7f\:7528\:3059\:3079\:304d\:5834\:5408\:ff1a", - FontWeight -> Bold - ] - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "d81f07fd-df83-f64e-88d2-8ae08249abca", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 17.2161}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[StyleBox[\"When to use this approach:\", FontWeight -> Bold]], \"Text\", CellID -> 82089831]" - |>, - CellTags -> "Translated", - CellID -> 82089831 - ], - Cell[ - "\:8907\:6570\:56de\:306e\:5b9f\:88c5\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:8981\:3059\:308b\:6a5f\:80fd", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9c404865-1d7a-1c4e-b342-08c3f7fb69ef", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 20.0781}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Features requiring more than one implementation session\", \"Item\", CellID -> 708221200]" - |>, - CellTags -> "Translated", - CellID -> 708221200 - ], - Cell[ - "\:6570\:6642\:9593\:ff08\:307e\:305f\:306f\:6570\:65e5\:ff09\:306b\:6e21\:308b\:53ef\:80fd\:6027\:304c\:9ad8\:3044\:4f5c\:696d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3b3ed8a9-e2da-2c4a-b39a-86bf81d48ebd", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 21.5913}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Work that's likely to span multiple hours (or days)\", \"Item\", CellID -> 564445208]" - |>, - CellTags -> "Translated", - CellID -> 564445208 - ], - Cell[ - "\:7cbe\:5ea6\:306e\:7dad\:6301\:304c\:91cd\:8981\:3067\:3042\:308b\:30bf\:30b9\:30af", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "cf7c94d6-93b8-4f4a-90b5-77f2fc6c11c8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 23.1483}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Tasks where maintaining accuracy is critical\", \"Item\", CellID -> 18136131]" - |>, - CellTags -> "Translated", - CellID -> 18136131 - ], - Cell[ - TextData[ - StyleBox[ - "\:904e\:5270\:3067\:3042\:308b\:5834\:5408\:ff1a", - FontWeight -> Bold - ] - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "877ff630-cc78-de42-8ace-83f568010585", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 24.6219}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[StyleBox[\"When it's overkill:\", FontWeight -> Bold]], \"Text\", CellID -> 504429862]" - |>, - CellTags -> "Translated", - CellID -> 504429862 - ], - Cell[ - "\:5358\:4e00\:30bb\:30c3\:30b7\:30e7\:30f3\:306e\:6a5f\:80fd", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3be552ac-921c-a146-8ba3-a67fdf6dbb62", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 26.0591}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Single-session features\", \"Item\", CellID -> 346324516]" - |>, - CellTags -> "Translated", - CellID -> 346324516 - ], - Cell[ - "\:8fc5\:901f\:306a\:30d0\:30b0\:4fee\:6b63\:307e\:305f\:306f\:30ea\:30d5\:30a1\:30af\:30bf\:30ea\:30f3\:30b0", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3070fb55-34d0-f44f-86be-b4bf4f221e12", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 27.2753}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Quick bug fixes or refactors\", \"Item\", CellID -> 665674270]" - |>, - CellTags -> "Translated", - CellID -> 665674270 - ], - Cell[ - "\:63a2\:7d22\:7684\:30d7\:30ed\:30c8\:30bf\:30a4\:30d4\:30f3\:30b0", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "16680f59-2bf6-cd4a-a3d8-e6561dba561b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 4, 28.8319}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Exploratory prototyping\", \"Item\", CellID -> 292196197]" - |>, - CellTags -> "Translated", - CellID -> 292196197 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30ef\:30fc\:30af\:30d5\:30ed\:30fc", - "Subsubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a096fdee-664a-8a44-b661-e6944369b0c0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 12, 41.1886}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"The Workflow\", \"Subsubsection\", CellID -> 7609188]" - |>, - CellTags -> "Translated", - CellID -> 7609188 - ], - Cell[ - "\:6a5f\:80fd\:4f5c\:696d\:306f\:6b21\:306e3\:3064\:306e\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3092\:7528\:3044\:3066\:6574\:7406\:3059\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ff1a6cd3-377a-e347-8aaa-8455ed169a71", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 12, 42.8827}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Organize your feature work using three documents:\", \"Text\", CellID -> 434082901]" - |>, - CellTags -> "Translated", - CellID -> 434082901 - ], - Cell[ - BoxData[ - GridBox[ - { - { - RowBox[{"Specs", "/", RowBox[{"FeatureName", ".", "md"}]}], - Cell[ - "\:4f55\:3092\:69cb\:7bc9\:3059\:308b\:304b\:ff08\:8981\:4ef6\:ff0cAPI\:ff0c\:30a8\:30c3\:30b8\:30b1\:30fc\:30b9\:ff09", - "TableText" - ] - }, - { - RowBox[{"TODO", "/", RowBox[{"FeatureName", ".", "md"}]}], - Cell[ - "\:5b8c\:4e86\:3059\:3079\:304d\:30bf\:30b9\:30af\:ff08\:30c1\:30a7\:30c3\:30af\:30ea\:30b9\:30c8\:ff09", - "TableText" - ] - }, - { - RowBox[ - {"Progress", "/", RowBox[{"FeatureName", ".", "md"}]} - ], - Cell[ - "\:4f55\:304c\:5b8c\:4e86\:3057\:305f\:304b\:ff08\:30bb\:30c3\:30b7\:30e7\:30f3\:8981\:7d04\:ff09", - "TableText" - ] - } - } - ] - ], - "DefinitionBox", - TaggingRules -> <| - "OrignialExpressionUUID" -> "66ef60a4-6747-ac47-968b-266796bd5f41", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 12, 44.9322}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{RowBox[{\"Specs\", \"/\", RowBox[{\"FeatureName\", \".\", \"md\"}]}], Cell[\"What to build (requirements, API, edge cases)\", \"TableText\"]}, {RowBox[{\"TODO\", \"/\", RowBox[{\"FeatureName\", \".\", \"md\"}]}], Cell[\"Tasks to complete (checklist)\", \"TableText\"]}, {RowBox[{\"Progress\", \"/\", RowBox[{\"FeatureName\", \".\", \"md\"}]}], Cell[\"What's been done (session summaries)\", \"TableText\"]}}]], \"DefinitionBox\", CellID -> 20659446]" - |>, - CellTags -> "Translated", - CellID -> 20659446 - ], - Cell[ - "\:63a8\:5968\:3055\:308c\:308b\:4f5c\:696d\:6587\:66f8\:ff0e", - "Caption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ac696a74-34e8-4e40-b560-7b9f3d6c802c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 12, 47.2498}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Suggested working documents.\", \"Caption\", CellID -> 372684583]" - |>, - CellTags -> "Translated", - CellID -> 372684583 - ], - Cell[ - "\:5404\:30bb\:30c3\:30b7\:30e7\:30f3\:306b\:304a\:3044\:3066\:ff0c1\:3064\:306e\:30bf\:30b9\:30af\:3092\:5b8c\:4e86\:3059\:308b\:305f\:3081\:306e\:6307\:793a\:3068\:3068\:3082\:306b\:ff0c\:3053\:308c\:30893\:3064\:306e\:30d5\:30a1\:30a4\:30eb\:3092\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:3068\:3057\:3066\:63d0\:4f9b\:3059\:308b\:ff0e\:30bf\:30b9\:30af\:306e\:5b8c\:4e86\:5f8c\:ff0cAI\:304c\:9032\:6357\:30ed\:30b0\:304a\:3088\:3073\:30bf\:30b9\:30af\:30ea\:30b9\:30c8\:3092\:66f4\:65b0\:3057\:305f\:3089\:ff0c\:30e6\:30fc\:30b6\:306f\:6b21\:306e\:30bf\:30b9\:30af\:306e\:305f\:3081\:306b\:65b0\:3057\:3044\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:958b\:59cb\:3059\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8c6874d2-8c80-4243-a2b2-19596169aed0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 12, 48.4234}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Each session, you provide these three files as context along with instructions to complete one task. After completing a task, the AI updates the progress log and task list, then you start a fresh session for the next task.\", \"Text\", CellID -> 783824928]" - |>, - CellTags -> "Translated", - CellID -> 783824928 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:4ed5\:69d8\:66f8\:3092\:4f5c\:6210\:3059\:308b", - "Subsubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3ec61113-64ac-3b4f-97c9-ebd32613df73", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 15, 17.4511}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Create a Specifications Document\", \"Subsubsection\", CellID -> 51982903]" - |>, - CellTags -> "Translated", - CellID -> 51982903 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:958b\:59cb\:3059\:308b\:524d\:306b\:ff0c\:8a73\:7d30\:306a\:4ed5\:69d8\:3092\:66f8\:304f\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "db96b257-e8cb-9648-80bb-0bd48e3ea46a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 15, 18.8492}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Before starting, write a detailed spec:\", \"Text\", CellID -> 175029031]" - |>, - CellTags -> "Translated", - CellID -> 175029031 - ], - Cell[ - "# Feature: CSV Import with Schema Validation\n\n## Requirements\n- Parse CSV files into lists of Associations\n- Support custom column type specifications\n- Validate data against provided schema\n- Return Failure objects for invalid data\n\n## API Design\n```wl\nCSVImportValidated[file, schema] (* returns {<|...|>, ...} or Failure *)\n```\n\n## Schema Format\n```wl\n<|\"Name\" -> \"String\", \"Age\" -> \"Integer\", \"Score\" -> \"Real\"|>\n```\n\n## Edge Cases\n- Empty files return {}\n- Missing columns return Failure[\"MissingColumn\", ...]\n- Type mismatches return Failure[\"TypeError\", ...]", - "Program", - CellID -> 217614637 - ] - }, - Open - ] - ], - Cell[ - "AI\:30a2\:30b7\:30b9\:30bf\:30f3\:30c8\:306f\:3053\:306e\:4ed5\:69d8\:66f8\:306e\:8349\:6848\:4f5c\:6210\:306b\:5f79\:7acb\:3064\:53ef\:80fd\:6027\:304c\:3042\:308b\:ff0eAPI\:8a2d\:8a08\:3092\:63d0\:6848\:3059\:308b\:3053\:3068\:3084\:ff0c\:898b\:843d\:3068\:3057\:3066\:3044\:308b\:53ef\:80fd\:6027\:306e\:3042\:308b\:30a8\:30c3\:30b8\:30b1\:30fc\:30b9\:3092\:7279\:5b9a\:3059\:308b\:3053\:3068\:3092\:4f9d\:983c\:3059\:308b\:3068\:3088\:3044\:ff0e\:3057\:304b\:3057\:ff0c\:3042\:3089\:3086\:308b\:8a73\:7d30\:304c\:6b63\:78ba\:306b\:306a\:308b\:307e\:3067\:53cd\:5fa9\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff0e\:3053\:306e\:4ed5\:69d8\:66f8\:306f\:3059\:3079\:3066\:306e\:5b9f\:88c5\:4f5c\:696d\:306b\:304a\:3051\:308b\:4fe1\:983c\:3067\:304d\:308b\:552f\:4e00\:306e\:60c5\:5831\:6e90\:3068\:306a\:308b\:305f\:3081\:ff0c\:3053\:3053\:3067\:306e\:4e0d\:6b63\:78ba\:3055\:306f\:30b3\:30fc\:30c9\:3078\:3068\:6ce2\:53ca\:3059\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "783277a6-4afa-df49-a97a-1e4ab2fa1a0b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 15, 34.6836}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"AI assistants can help draft this spec\[LongDash]ask them to propose an API design or identify edge cases you might have missed. However, iterate until every detail is correct. This spec becomes the source of truth for all implementation work, so inaccuracies here will propagate into the code.\", \"Text\", CellID -> 76417110]" - |>, - CellTags -> "Translated", - CellID -> 76417110 - ], - Cell[ - TextData[ - StyleBox[ - "\:826f\:3044\:4ed5\:69d8\:306e\:305f\:3081\:306e\:30d2\:30f3\:30c8\:ff1a", - FontWeight -> Bold - ] - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "bc715900-e7fb-6344-949b-a8087fbd66de", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 15, 38.4983}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[StyleBox[\"Tips for good specs:\", FontWeight -> Bold]], \"Text\", CellID -> 51731880]" - |>, - CellTags -> "Translated", - CellID -> 51731880 - ], - Cell[ - "\:623b\:308a\:5024\:306e\:578b\:304a\:3088\:3073\:30a8\:30e9\:30fc\:6761\:4ef6\:3092\:660e\:793a\:7684\:306b\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ae299365-5dec-4545-9a17-c90f09bffbb0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 15, 39.8111}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Be explicit about return types and error conditions\", \"Item\", CellID -> 7971379]" - |>, - CellTags -> "Translated", - CellID -> 7971379 - ], - Cell[ - "\:81ea\:660e\:3067\:306f\:306a\:3044\:6319\:52d5\:306b\:3064\:3044\:3066\:306f\:5177\:4f53\:4f8b\:3092\:542b\:3081\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9233d505-e82e-9d4c-8f05-38b86321b78c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 15, 41.1922}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Include concrete examples for non-obvious behavior\", \"Item\", CellID -> 584637548]" - |>, - CellTags -> "Translated", - CellID -> 584637548 - ], - Cell[ - "\:524d\:63d0\:304a\:3088\:3073\:5236\:7d04\:3092\:6587\:66f8\:5316\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b2e47a2c-b5fd-914a-b253-140c31dfcc75", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 15, 42.6261}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Document assumptions and constraints\", \"Item\", CellID -> 10345139]" - |>, - CellTags -> "Translated", - CellID -> 10345139 - ], - Cell[ - TextData[ - { - ButtonBox[ - "\:3053\:3053\:3092\:30af\:30ea\:30c3\:30af", - BaseStyle -> "Hyperlink", - ButtonData -> { - URL[ - "https://github.com/WolframResearch/AgentTools/blob/main/Specs/CodeInspectorTool.md" - ], - None - }, - ButtonNote -> "https://github.com/WolframResearch/AgentTools/blob/main/Specs/CodeInspectorTool.md" - ], - "\:3059\:308b\:3068\:ff0cAgentTools\:30d1\:30af\:30ec\:30c3\:30c8\:306e\:6a5f\:80fd\:3092\:5b9f\:88c5\:3059\:308b\:305f\:3081\:306b\:4f7f\:7528\:3055\:308c\:305f\:5b9f\:4f8b\:3092\:898b\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "fdcba414-ce67-d34a-b1c6-d17443614f56", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 15, 44.0109}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{ButtonBox[\"Click here\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://github.com/WolframResearch/AgentTools/blob/main/Specs/CodeInspectorTool.md\"], None}, ButtonNote -> \"https://github.com/WolframResearch/AgentTools/blob/main/Specs/CodeInspectorTool.md\"], \" to view a real example used to implement a feature for the AgentTools paclet.\"}], \"Text\", CellID -> 293826924]" - |>, - CellTags -> "Translated", - CellID -> 293826924 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30bf\:30b9\:30af\:30ea\:30b9\:30c8\:3092\:751f\:6210\:3059\:308b", - "Subsubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "55084d84-3ae7-0145-8a5b-fbbd2a7b8cc5", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 17, 41.4905}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Generate a Task List\", \"Subsubsection\", CellID -> 891639401]" - |>, - CellTags -> "Translated", - CellID -> 891639401 - ], - Cell[ - "\:65b0\:3057\:3044\:30bb\:30c3\:30b7\:30e7\:30f3\:306b\:304a\:3044\:3066\:ff0cAI\:306b\:5bfe\:3057\:ff0c\:6b21\:306e\:4ed5\:69d8\:306b\:57fa\:3065\:3044\:3066\:30bf\:30b9\:30af\:30ea\:30b9\:30c8\:3092\:751f\:6210\:3059\:308b\:3088\:3046\:4f9d\:983c\:3059\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "1b18ce22-f2b2-5a4a-b497-d08a9de15f97", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 17, 42.8104}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"In a new session, ask the AI to generate a task list based on the spec:\", \"Text\", CellID -> 287516331]" - |>, - CellTags -> "Translated", - CellID -> 287516331 - ], - Cell[ - BoxData[ - GridBox[ - { - { - PaneBox[ - "\"\\\"Specs/CSVImportValidated.md\:3092\:5206\:6790\:3057\:ff0c\:5b9f\:88c5\:30bf\:30b9\:30af\:3078\:3068\:5206\:89e3\:3059\:308b\:ff0e\:30c1\:30a7\:30c3\:30af\:30ea\:30b9\:30c8\:4ed8\:304d\:306eTODO/CSVImportValidated.md\:3092\:4f5c\:6210\:3059\:308b\:ff0e\\\"\"", - BaseStyle -> { - "Text", - FontColor -> - LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]] - }, - ImageMargins -> 5, - ImageSize -> {Full, Automatic}, - ScrollPosition -> {0.0, 0.0} - ] - } - }, - AutoDelete -> False, - GridBoxBackground -> { - "Columns" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}} - }, - GridBoxDividers -> { - "ColumnsIndexed" -> { - 1 -> - Directive[ - LightDarkSwitched[ - RGBColor[0.87, 0.94, 1], - RGBColor[0.249113, 0.329519, 0.42312] - ], - AbsoluteThickness[4] - ] - }, - "Rows" -> {{False}} - }, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - ], - "Text", - "BlockQuote", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3b7ae60a-9e07-9942-aa01-a3494a16937f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 17, 44.3968}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{PaneBox[\"\\\"\\\\\\\"Analyze @Specs/CSVImportValidated.md and break it down into implementation tasks. Create TODO/CSVImportValidated.md with a checklist.\\\\\\\"\\\"\", BaseStyle -> {\"Text\", FontColor -> LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]]}, ImageMargins -> 5, ImageSize -> {Full, Automatic}, ScrollPosition -> {0., 0.}]}}, AutoDelete -> False, GridBoxBackground -> {\"Columns\" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}}}, GridBoxDividers -> {\"ColumnsIndexed\" -> {1 -> Directive[LightDarkSwitched[RGBColor[0.87, 0.94, 1], RGBColor[0.249113, 0.329519, 0.42312]], AbsoluteThickness[4]]}, \"Rows\" -> {{False}}}, GridBoxItemSize -> {\"Columns\" -> {{Automatic}}, \"Rows\" -> {{Automatic}}}]], \"Text\", \"BlockQuote\", ShowStringCharacters -> False, Background -> None, CellID -> 412321688]" - |>, - ShowStringCharacters -> False, - Background -> None, - CellTags -> "Translated", - CellID -> 412321688 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:305d\:308c\:305e\:308c\:3092\:5358\:4e00\:306e\:96c6\:4e2d\:3057\:305f\:30bb\:30c3\:30b7\:30e7\:30f3\:3067\:5b8c\:4e86\:3067\:304d\:308b\:30bf\:30b9\:30af\:3092\:76ee\:6a19\:3068\:3059\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "d1409fcf-dc68-9e40-a9dc-84a8bf472728", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 17, 47.4917}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Aim for tasks that can each be completed in a single focused session:\", \"Text\", CellID -> 38139106]" - |>, - CellTags -> "Translated", - CellID -> 38139106 - ], - Cell[ - "# TODO: CSVImportValidated\n\n- [ ] Implement CSVImportValidated with basic parsing\n- [ ] Add schema validation for String, Integer, Real types\n- [ ] Write 12 tests, all passing\n- [ ] Add support for DateObject columns\n- [ ] Handle quoted strings with commas\n- [ ] Add Options for delimiter and header row\n- [ ] Verify all tests pass\n- [ ] Update documentation\n- [ ] Perform final review", - "Program", - CellID -> 669334432 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:9032\:6357\:5831\:544a\:66f8\:3092\:66f8\:304f", - "Subsubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "d93dc931-fc6b-7440-b0aa-ca85d3adf3a3", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 18, 34.2952}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Write Progress Reports\", \"Subsubsection\", CellID -> 870930092]" - |>, - CellTags -> "Translated", - CellID -> 870930092 - ], - Cell[ - "\:5404\:30bb\:30c3\:30b7\:30e7\:30f3\:306e\:7d42\:4e86\:6642\:306b\:ff0cAI\:306b\:9032\:6357\:5831\:544a\:3092\:8ffd\:8a18\:3055\:305b\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "0abae4b0-db90-7e4a-afd2-d25b2ebdcfea", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 18, 35.4668}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"At the end of each session, have the AI append a progress report:\", \"Text\", CellID -> 14652548]" - |>, - CellTags -> "Translated", - CellID -> 14652548 - ], - Cell[ - BoxData[ - GridBox[ - { - { - PaneBox[ - "\"\\\"Progress/CSVImportValidated.md\:306b\:ff0c\:65b0\:305f\:306a'## Session N'\:30bb\:30af\:30b7\:30e7\:30f3\:3068\:3057\:3066\:ff0c\:9054\:6210\:3055\:308c\:305f\:5185\:5bb9\:304a\:3088\:3073\:3053\:306e\:30bf\:30b9\:30af\:3092\:518d\:958b\:3059\:308b\:969b\:306b\:6709\:7528\:306a\:4e8b\:9805\:3092\:8981\:7d04\:3057\:305f\:9032\:6357\:5831\:544a\:3092\:8ffd\:8a18\:3059\:308b\:ff0e\\\"\"", - BaseStyle -> { - "Text", - FontColor -> - LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]] - }, - ImageMargins -> 5, - ImageSize -> {Full, Automatic} - ] - } - }, - AutoDelete -> False, - GridBoxBackground -> { - "Columns" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}} - }, - GridBoxDividers -> { - "ColumnsIndexed" -> { - 1 -> - Directive[ - LightDarkSwitched[ - RGBColor[0.87, 0.94, 1], - RGBColor[0.249113, 0.329519, 0.42312] - ], - AbsoluteThickness[4] - ] - }, - "Rows" -> {{False}} - }, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - ], - "Text", - "BlockQuote", - TaggingRules -> <| - "OrignialExpressionUUID" -> "73ef0342-a8f1-e545-b88f-67f3dbf6aa22", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 18, 36.9216}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{PaneBox[\"\\\"\\\\\\\"Append a progress report to Progress/CSVImportValidated.md as a new '## Session N' section summarizing what was accomplished and anything useful for resuming this task.\\\\\\\"\\\"\", BaseStyle -> {\"Text\", FontColor -> LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]]}, ImageMargins -> 5, ImageSize -> {Full, Automatic}]}}, AutoDelete -> False, GridBoxBackground -> {\"Columns\" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}}}, GridBoxDividers -> {\"ColumnsIndexed\" -> {1 -> Directive[LightDarkSwitched[RGBColor[0.87, 0.94, 1], RGBColor[0.249113, 0.329519, 0.42312]], AbsoluteThickness[4]]}, \"Rows\" -> {{False}}}, GridBoxItemSize -> {\"Columns\" -> {{Automatic}}, \"Rows\" -> {{Automatic}}}]], \"Text\", \"BlockQuote\", ShowStringCharacters -> False, Background -> None, CellID -> 516123482]" - |>, - ShowStringCharacters -> False, - Background -> None, - CellTags -> "Translated", - CellID -> 516123482 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:3053\:306e\:30ed\:30b0\:306f\:ff0c\:30bb\:30c3\:30b7\:30e7\:30f3\:9593\:3067\:5931\:308f\:308c\:3066\:3057\:307e\:3046\:7d44\:7e54\:7684\:77e5\:8b58\:3092\:8a18\:9332\:3059\:308b\:3082\:306e\:3067\:3042\:308b\:ff0e\:6700\:521d\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:306e\:5f8c\:306e\:30ed\:30b0\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4cf2de28-89c8-ee43-909f-34998e0f5ae9", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 18, 41.1331}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"This log captures institutional knowledge that would otherwise be lost between sessions. After the first session:\", \"Text\", CellID -> 236734993]" - |>, - CellTags -> "Translated", - CellID -> 236734993 - ], - Cell[ - "# Progress: CSVImportValidated\n\n## Session 1\n\nTask: Implement CSVImportValidated with basic parsing\nStatus: Completed\n\nWork completed:\n\n- Created Kernel/CSVImportValidated.wl with basic parsing implementation\n- CSVImportValidated currently returns a list of associations with no validation yet\n...\n\nThings learned:\n\n- `FileFormatQ[\"path/to/file.csv\", \"CSV\"]` can check if a file is a valid CSV file without fully importing it", - "Program", - CellID -> 131582854 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:53cd\:5fa9\:7684\:306b\:30bf\:30b9\:30af\:3092\:5b9f\:88c5\:3059\:308b", - "Subsubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3a8d4b63-ff24-a541-ae32-a55247ebab99", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 20, 13.1073}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Iteratively Implement Tasks\", \"Subsubsection\", CellID -> 166953659]" - |>, - CellTags -> "Translated", - CellID -> 166953659 - ], - Cell[ - CellGroupData[ - { - Cell[ - TextData[ - { - "\:5404\:30bb\:30c3\:30b7\:30e7\:30f3\:306b\:3064\:3044\:3066\:ff0c1\:3064\:306e\:30bf\:30b9\:30af\:3092\:5b8c\:4e86\:3059\:308b\:305f\:3081\:306e\:6307\:793a\:3092\:542b\:30803\:3064\:306e\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:30d5\:30a1\:30a4\:30eb\:3092\:63d0\:4f9b\:3059\:308b\:ff0e\:3053\:308c\:3092\:518d\:5229\:7528\:53ef\:80fd\:306a\:30d7\:30ed\:30f3\:30d7\:30c8\:30d5\:30a1\:30a4\:30eb\:3068\:3057\:3066\:4fdd\:5b58\:3059\:308b\:ff08\:4f8b\:ff1a", - Cell[ - BoxData[Cell["prompt.md", Background -> None]], - "InlineCode" - ], - "\:ff09\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9ae0833d-0cd5-4d48-88ae-808ace310686", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 20, 21.0609}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"For each session, provide the three context files with instructions to complete one task. Save this as a reusable prompt file (e.g., \", Cell[BoxData[Cell[\"prompt.md\", Background -> None]], \"InlineCode\"], \"):\"}], \"Text\", CellID -> 45584196]" - |>, - CellTags -> "Translated", - CellID -> 45584196 - ], - Cell[ - "## Context\n\n@TODO/CSVImportValidated.md\n@Specs/CSVImportValidated.md\n@Progress/CSVImportValidated.md\n\n## Instructions\n\n1. Choose the next incomplete task from the task list\n2. Study the specification requirements for that task\n3. Implement the task\n4. Append a progress report to Progress/CSVImportValidated.md\n5. Mark the task complete in TODO/CSVImportValidated.md\n6. Commit your changes\n7. Stop and wait for user input\n\nIMPORTANT: Complete only ONE task per session.", - "Program", - CellID -> 66649984 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:305d\:306e\:5f8c\:ff0c\:5404\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:ff0c\:305d\:306e\:30d7\:30ed\:30f3\:30d7\:30c8\:30d5\:30a1\:30a4\:30eb\:3092\:5165\:529b\:3068\:3057\:3066\:4f7f\:7528\:3057\:3066\:958b\:59cb\:3059\:308b\:ff0e\:4f8b\:3048\:3070\:ff0cClaude Code\:3092\:4f7f\:7528\:3059\:308b\:5834\:5408\:306f\:6b21\:306e\:901a\:308a\:3067\:3042\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ecd24e0e-b2b7-964e-8fee-c74fa429efe8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 20, 39.6911}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Then start each session using that prompt file as input. For example, using Claude Code:\", \"Text\", CellID -> 7066980]" - |>, - CellTags -> "Translated", - CellID -> 7066980 - ], - Cell[ - "claude \"$(cat prompt.md)\"", - "ExternalLanguage", - CellEvaluationLanguage -> "Shell", - CellID -> 114277712 - ] - }, - Open - ] - ], - Cell[ - BoxData[ - GridBox[ - { - { - PaneBox[ - Cell[ - TextData[ - { - StyleBox["\:6ce8\:ff1a", FontWeight -> Bold], - " ", - Cell[ - BoxData[Cell["@path/to/file", Background -> None]], - "InlineCode" - ], - "\:3068\:3044\:3046\:69cb\:6587\:306f\:ff0c\:30d5\:30a1\:30a4\:30eb\:306e\:5185\:5bb9\:3092\:30d7\:30ed\:30f3\:30d7\:30c8\:306b\:633f\:5165\:3059\:308b\:ff0e\:307b\:3068\:3093\:3069\:306eAI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30c4\:30fc\:30eb\:306f\:540c\:69d8\:306e\:69cb\:6587\:3092\:30b5\:30dd\:30fc\:30c8\:3057\:3066\:3044\:308b\:ff0e\:4f7f\:7528\:3057\:3066\:3044\:308b\:30c4\:30fc\:30eb\:304c\:3053\:308c\:3092\:30b5\:30dd\:30fc\:30c8\:3057\:3066\:3044\:306a\:3044\:5834\:5408\:306f\:ff0c\:6700\:521d\:306e\:30a2\:30af\:30b7\:30e7\:30f3\:3068\:3057\:3066\:30d5\:30a1\:30a4\:30eb\:3092\:8aad\:307f\:53d6\:308b\:3088\:3046AI\:306b\:4f9d\:983c\:3059\:308b\:ff0e" - } - ], - Background -> None - ], - BaseStyle -> { - "Text", - FontColor -> - LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]] - }, - ImageMargins -> 5, - ImageSize -> {Full, Automatic}, - ScrollPosition -> {0.0, 0.0} - ] - } - }, - AutoDelete -> False, - GridBoxBackground -> { - "Columns" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}} - }, - GridBoxDividers -> { - "ColumnsIndexed" -> { - 1 -> - Directive[ - LightDarkSwitched[ - RGBColor[0.87, 0.94, 1], - RGBColor[0.249113, 0.329519, 0.42312] - ], - AbsoluteThickness[4] - ] - }, - "Rows" -> {{False}} - }, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - ], - "Text", - "BlockQuote", - TaggingRules -> <| - "OrignialExpressionUUID" -> "39ba5d5c-c869-6840-93d4-267f89362809", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 21, 13.6605}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{PaneBox[Cell[TextData[{StyleBox[\"Note:\", FontWeight -> Bold], \" The \", Cell[BoxData[Cell[\"@path/to/file\", Background -> None]], \"InlineCode\"], \" syntax inserts file contents into the prompt. Most AI coding tools support similar syntax. If yours doesn't, ask the AI to read the files as its first action.\"}], Background -> None], BaseStyle -> {\"Text\", FontColor -> LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]]}, ImageMargins -> 5, ImageSize -> {Full, Automatic}]}}, AutoDelete -> False, GridBoxBackground -> {\"Columns\" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}}}, GridBoxDividers -> {\"ColumnsIndexed\" -> {1 -> Directive[LightDarkSwitched[RGBColor[0.87, 0.94, 1], RGBColor[0.249113, 0.329519, 0.42312]], AbsoluteThickness[4]]}, \"Rows\" -> {{False}}}, GridBoxItemSize -> {\"Columns\" -> {{Automatic}}, \"Rows\" -> {{Automatic}}}]], \"Text\", \"BlockQuote\", ShowStringCharacters -> False, Background -> None, CellID -> 95493957]" - |>, - ShowStringCharacters -> False, - Background -> None, - CellTags -> "Translated", - CellID -> 95493957 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:6700\:9069\:306a\:5b9f\:8df5\:65b9\:6cd5", - "Subsubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "515144da-44dc-114b-abeb-9e2da7b099b9", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 21, 50.7183}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Best Practices\", \"Subsubsection\", CellID -> 642318468]" - |>, - CellTags -> "Translated", - CellID -> 642318468 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:65b0\:3057\:3044\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:958b\:59cb\:3059\:308b\:ff1a", - FontWeight -> Bold - ], - "\:30bf\:30b9\:30af\:3092\:5b8c\:4e86\:3057\:305f\:5f8c\:306f\:ff0c\:7d99\:7d9a\:3059\:308b\:306e\:3067\:306f\:306a\:304f\:ff0c\:540c\:3058\:30d7\:30ed\:30f3\:30d7\:30c8\:3067\:65b0\:3057\:3044\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:958b\:59cb\:3059\:308b\:ff0e\:3053\:308c\:306b\:3088\:308a\:ff0c\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:306e\:84c4\:7a4d\:304c\:9632\:6b62\:3067\:304d\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ab4bed45-cc29-4f49-8bf8-04cf634385ff", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 21, 52.0329}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Start fresh sessions:\", FontWeight -> Bold], \" After completing a task, start a new session with the same prompt rather than continuing. This prevents context accumulation.\"}], \"Text\", CellID -> 533446386]" - |>, - CellTags -> "Translated", - CellID -> 533446386 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:76e3\:8996\:304a\:3088\:3073\:7de8\:96c6\:ff1a", - FontWeight -> Bold - ], - " \:9032\:6357\:30d5\:30a1\:30a4\:30eb\:3078\:306e\:5909\:66f4\:3092\:78ba\:8a8d\:3059\:308b\:ff0e\:5fc5\:8981\:306b\:5fdc\:3058\:3066\:ff0c\:6b21\:56de\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:306b\:5bfe\:3057\:3066\:9069\:5207\:306a\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:304c\:78ba\:4fdd\:3055\:308c\:308b\:3088\:3046\:624b\:52d5\:3067\:3053\:308c\:3092\:7de8\:96c6\:3059\:308b\:ff0eAI\:306f\:91cd\:8981\:306a\:8a73\:7d30\:3092\:898b\:843d\:3068\:3057\:305f\:308a\:ff0c\:7121\:95a2\:4fc2\:306a\:60c5\:5831\:3092\:542b\:3081\:305f\:308a\:3059\:308b\:5834\:5408\:304c\:3042\:308b\:305f\:3081\:3067\:3042\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a22abe4e-a335-0944-95dc-a2f625310dd4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 21, 53.8555}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Monitor and edit:\", FontWeight -> Bold], \" Review changes to the progress file. When necessary, manually edit it to ensure good context for the next session\[LongDash]the AI may miss important details or include irrelevant information.\"}], \"Text\", CellID -> 404187417]" - |>, - CellTags -> "Translated", - CellID -> 404187417 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:95a2\:4e0e\:3092\:7dad\:6301\:3059\:308b\:ff1a", - FontWeight -> Bold - ], - " \:3053\:306e\:30a2\:30d7\:30ed\:30fc\:30c1\:306f\:ff0c\:7121\:4eba\:3067\:5b9f\:884c\:3057\:3066\:3044\:308b\:5834\:5408\:3067\:306f\:306a\:304f\:ff0c\:5909\:66f4\:3092\:80fd\:52d5\:7684\:306b\:78ba\:8a8d\:3057\:3066\:3044\:308b\:5834\:5408\:306b\:6700\:3082\:6709\:52b9\:3067\:3042\:308b\:ff0e\:3069\:306e\:6587\:8108\:304c\:91cd\:8981\:3067\:3042\:308b\:304b\:306b\:3064\:3044\:3066\:306e\:5224\:65ad\:3053\:305d\:304c\:ff0c\:300c\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:52a3\:5316\:300d\:3092\:9632\:3050\:3082\:306e\:3067\:3042\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b626ae83-c215-fb4f-b3e5-b7608a8f39bb", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 21, 56.1496}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Stay involved:\", FontWeight -> Bold], \" This approach works best when you're actively reviewing changes, not running unattended. Your judgment about what context matters is what prevents \\\"context rot.\\\"\"}], \"Text\", CellID -> 632432714]" - |>, - CellTags -> "Translated", - CellID -> 632432714 - ], - Cell[ - TextData[ - { - StyleBox["\:81ea\:52d5\:5316\:ff1a", FontWeight -> Bold], - " \:3053\:308c\:306f\:ff0c\:3059\:3079\:3066\:306e\:30bf\:30b9\:30af\:306e\:30c1\:30a7\:30c3\:30af\:304c\:5b8c\:4e86\:3059\:308b\:307e\:3067\:5b9f\:884c\:3055\:308c\:308b\:30eb\:30fc\:30d7\:3068\:3057\:3066\:30b9\:30af\:30ea\:30d7\:30c8\:5316\:3067\:304d\:308b\:304c\:ff0c\:7d50\:679c\:306f\:6ce8\:610f\:6df1\:304f\:76e3\:8996\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "409bc1c1-8335-e041-91a2-09b9f21859b4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 21, 58.5912}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Automation:\", FontWeight -> Bold], \" You can script this as a loop that runs until all tasks are checked off, but monitor the results carefully.\"}], \"Text\", CellID -> 55208744]" - |>, - CellTags -> "Translated", - CellID -> 55208744 - ] - }, - Open - ] - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30bb\:30ad\:30e5\:30ea\:30c6\:30a3\:306b\:95a2\:3059\:308b\:8003\:616e\:4e8b\:9805", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2cbf1064-5146-cc41-9eab-e84b86bf302d", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 2.28282}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Security Considerations\", \"Section\", CellID -> 41892277]" - |>, - CellTags -> "Translated", - CellID -> 41892277 - ], - Cell[ - TextData[ - { - StyleBox["WolframLanguageEvaluator", "InlineCode"], - "\:30c4\:30fc\:30eb\:304a\:3088\:3073", - StyleBox["TestReport", "InlineCode"], - "\:30c4\:30fc\:30eb\:306f\:ff0c\:4efb\:610f\:306eWolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:3092\:5b9f\:884c\:3059\:308b\:ff0e\:3053\:308c\:306f\:ff0cWolfram\:30ab\:30fc\:30cd\:30eb\:304c\:5b9f\:884c\:53ef\:80fd\:306a\:3044\:304b\:306a\:308b\:64cd\:4f5c\:3082\:5b9f\:884c\:3057\:5f97\:308b\:3053\:3068\:3092\:610f\:5473\:3057\:ff0c\:3053\:308c\:306b\:306f\:4ee5\:4e0b\:304c\:542b\:307e\:308c\:308b\:ff1a" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6e07bf44-ad91-164c-a4bc-f6c0576b207f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 3.64476}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The \", StyleBox[\"WolframLanguageEvaluator\", \"InlineCode\"], \" and \", StyleBox[\"TestReport\", \"InlineCode\"], \" tools execute arbitrary Wolfram Language code. This means they can perform any action that a Wolfram kernel can perform, including:\"}], \"Text\", CellID -> 172768939]" - |>, - CellTags -> "Translated", - CellID -> 172768939 - ], - Cell[ - "\:30d5\:30a1\:30a4\:30eb\:306e\:8aad\:53d6\:308a\:ff0c\:66f8\:8fbc\:307f\:ff0c\:304a\:3088\:3073\:524a\:9664", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2858869d-8028-3a49-af4d-93aceaf292a0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 8.38974}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Reading, writing, and deleting files\", \"Item\", CellID -> 132372000]" - |>, - CellTags -> "Translated", - CellID -> 132372000 - ], - Cell[ - "\:30cd\:30c3\:30c8\:30ef\:30fc\:30af\:30ea\:30af\:30a8\:30b9\:30c8\:3092\:884c\:3046", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ca7a6f38-04a0-fb40-a9f2-541ef542dbbb", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 10.1079}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Making network requests\", \"Item\", CellID -> 81219079]" - |>, - CellTags -> "Translated", - CellID -> 81219079 - ], - Cell[ - "\:30b7\:30b9\:30c6\:30e0\:30b3\:30de\:30f3\:30c9\:306e\:5b9f\:884c", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2b11e08a-cc89-7f4a-9bf2-6021bf6c5d33", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 11.4986}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Running system commands\", \"Item\", CellID -> 4729710]" - |>, - CellTags -> "Translated", - CellID -> 4729710 - ], - Cell[ - "\:74b0\:5883\:5909\:6570\:3078\:306e\:30a2\:30af\:30bb\:30b9", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "bc23c4bd-163b-0c4e-be25-ffd8702818ec", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 12.6698}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Accessing environment variables\", \"Item\", CellID -> 376003767]" - |>, - CellTags -> "Translated", - CellID -> 376003767 - ], - Cell[ - TextData[ - { - "\:307b\:3068\:3093\:3069\:306eAI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306f\:ff0cAI\:304c\:6f5c\:5728\:7684\:306b\:5371\:967a\:306a\:30c4\:30fc\:30eb\:3092\:5b9f\:884c\:3059\:308b\:524d\:306b\:78ba\:8a8d\:3092\:6c42\:3081\:308b", - StyleBox[ - "\:627f\:8a8d\:30d9\:30fc\:30b9\:306e\:6a29\:9650", - FontWeight -> Bold - ], - "\:3092\:30b5\:30dd\:30fc\:30c8\:3057\:3066\:3044\:308b\:ff0e\:4f7f\:7528\:4e2d\:306e\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3067\:ff0c\:3053\:308c\:3089\:306e\:30c4\:30fc\:30eb\:306b\:3064\:3044\:3066\:627f\:8a8d\:3092\:5fc5\:8981\:3068\:3059\:308b\:3088\:3046\:306b\:8a2d\:5b9a\:3057\:3066\:304a\:304b\:306a\:3051\:308c\:3070\:306a\:3089\:306a\:3044\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "45cbc06f-2644-b649-bc3b-6669740096f3", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 13.8054}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Most AI coding applications support \", StyleBox[\"approval-based permissions\", FontWeight -> Bold], \" that prompt you before the AI executes potentially dangerous tools. You should configure your application to require approval for these tools:\"}], \"Text\", CellID -> 45932390]" - |>, - CellTags -> "Translated", - CellID -> 45932390 - ], - Cell[ - BoxData[ - GridBox[ - { - { - "WolframLanguageEvaluator", - Cell[ - "\:4efb\:610f\:306e\:30b3\:30fc\:30c9\:3092\:5b9f\:884c\:3059\:308b", - "TableText" - ] - }, - { - "TestReport", - Cell[ - "\:30c6\:30b9\:30c8\:30d5\:30a1\:30a4\:30eb\:3092\:5b9f\:884c\:3059\:308b\:ff08\:3053\:308c\:306b\:3088\:308a\:30b3\:30fc\:30c9\:304c\:5b9f\:884c\:3055\:308c\:308b\:ff09", - "TableText" - ] - }, - { - "WriteNotebook", - Cell[ - "\:30ce\:30fc\:30c8\:30d6\:30c3\:30af\:30d5\:30a1\:30a4\:30eb\:3092\:66f8\:304d\:8fbc\:307f\:ff0c\:4e0a\:66f8\:304d\:3059\:308b\:53ef\:80fd\:6027\:304c\:3042\:308b", - "TableText" - ] - }, - { - "CodeInspector", - Cell[ - "\:8aad\:53d6\:308a\:5c02\:7528\:3067\:3042\:308b\:304c\:ff0c\:30d5\:30a1\:30a4\:30eb\:5185\:5bb9\:3092\:8aad\:307f\:53d6\:308b", - "TableText" - ] - }, - { - "ReadNotebook", - Cell[ - "\:8aad\:53d6\:308a\:5c02\:7528\:3067\:3042\:308b\:304c\:ff0c\:30d5\:30a1\:30a4\:30eb\:5185\:5bb9\:3092\:8aad\:307f\:53d6\:308b", - "TableText" - ] - }, - { - "WolframLanguageContext", - Cell[ - "\:8aad\:53d6\:308a\:5c02\:7528\:306e\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:691c\:7d22", - "TableText" - ] - }, - { - "SymbolDefinition", - Cell[ - "\:8aad\:53d6\:308a\:5c02\:7528\:306e\:30b7\:30f3\:30dc\:30eb\:5b9a\:7fa9", - "TableText" - ] - } - } - ] - ], - "DefinitionBox", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8da79e22-be21-e145-891a-0155c7cb3e31", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 16.0202}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{\"WolframLanguageEvaluator\", Cell[\"Executes arbitrary code\", \"TableText\"]}, {\"TestReport\", Cell[\"Runs test files (which execute code)\", \"TableText\"]}, {\"WriteNotebook\", Cell[\"Writes notebook files, potentially overwriting\", \"TableText\"]}, {\"CodeInspector\", Cell[\"Read-only, but reads file contents\", \"TableText\"]}, {\"ReadNotebook\", Cell[\"Read-only, but reads file contents\", \"TableText\"]}, {\"WolframLanguageContext\", Cell[\"Read-only documentation search\", \"TableText\"]}, {\"SymbolDefinition\", Cell[\"Read-only symbol definitions\", \"TableText\"]}}]], \"DefinitionBox\", CellID -> 510575945]" - |>, - CellTags -> "Translated", - CellID -> 510575945 - ], - Cell[ - "\:5404\:30c4\:30fc\:30eb\:306b\:95a2\:9023\:3059\:308b\:6f5c\:5728\:7684\:30ea\:30b9\:30af\:ff0e", - "Caption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "bcff9caf-ff90-3043-aa24-ceccdcf9bdaf", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 19.7528}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Potential risks associated with each tool.\", \"Caption\", CellID -> 543657130]" - |>, - CellTags -> "Translated", - CellID -> 543657130 - ], - Cell[ - TextData[ - { - StyleBox["CodeInspector", "InlineCode"], - "\:304a\:3088\:3073", - StyleBox["ReadNotebook", "InlineCode"], - "\:306f\:ff0cLLM\:30d7\:30ed\:30d0\:30a4\:30c0\:306b\:9001\:4fe1\:3055\:308c\:308b\:30d5\:30a1\:30a4\:30eb\:5185\:5bb9\:3092\:8aad\:307f\:53d6\:308b\:ff0e\:30d7\:30ed\:30b8\:30a7\:30af\:30c8\:306b\:ff0cLLM\:30b3\:30f3\:30c6\:30ad\:30b9\:30c8\:306b\:542b\:3081\:3089\:308c\:308b\:3053\:3068\:3092\:671b\:307e\:306a\:3044\:6a5f\:5bc6\:60c5\:5831\:304c\:542b\:307e\:308c\:3066\:3044\:308b\:5834\:5408\:ff0c\:3053\:308c\:3089\:306e\:30c4\:30fc\:30eb\:306b\:3064\:3044\:3066\:3082\:627f\:8a8d\:3092\:5fc5\:8981\:3068\:3059\:308b\:3053\:3068\:3092\:691c\:8a0e\:3059\:308b\:3068\:3088\:3044\:ff0e\:3053\:308c\:3089\:306e\:30c4\:30fc\:30eb\:306f\:305d\:308c\:305e\:308cWolfram\:8a00\:8a9e\:30d5\:30a1\:30a4\:30eb\:304a\:3088\:3073\:30ce\:30fc\:30c8\:30d6\:30c3\:30af\:5411\:3051\:306b\:8a2d\:8a08\:3055\:308c\:3066\:3044\:308b\:305f\:3081\:ff0c\:4ed6\:306e\:30d5\:30a1\:30a4\:30eb\:578b\:3067\:306f\:5931\:6557\:3059\:308b\:53ef\:80fd\:6027\:304c\:9ad8\:3044\:70b9\:306b\:7559\:610f\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c0f4eb1d-93f3-7b4b-bf96-6d5559045133", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 20.9548}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"CodeInspector\", \"InlineCode\"], \" and \", StyleBox[\"ReadNotebook\", \"InlineCode\"], \" read file contents that are sent to your LLM provider. If your project contains sensitive information you wouldn't want included in LLM context, consider requiring approval for these tools as well. Note that these tools are designed for Wolfram Language files and notebooks respectively, so they will likely fail on other file types.\"}], \"Text\", CellID -> 166193624]" - |>, - CellTags -> "Translated", - CellID -> 166193624 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30d7\:30ed\:30f3\:30d7\:30c8\:30a4\:30f3\:30b8\:30a7\:30af\:30b7\:30e7\:30f3\:306b\:95a2\:3059\:308b\:8003\:616e\:4e8b\:9805", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b6fe0fb7-a875-2a42-9e58-4607c60ead82", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 23.8726}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Prompt Injection Considerations\", \"Subsection\", CellID -> 73396737]" - |>, - CellTags -> "Translated", - CellID -> 73396737 - ], - Cell[ - "AI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:304cWeb\:307e\:305f\:306f\:305d\:306e\:4ed6\:306e\:4fe1\:983c\:3067\:304d\:306a\:3044\:30bd\:30fc\:30b9\:304b\:3089\:30b3\:30f3\:30c6\:30f3\:30c4\:3092\:53d6\:5f97\:3059\:308b\:30c4\:30fc\:30eb\:306b\:30a2\:30af\:30bb\:30b9\:3067\:304d\:308b\:5834\:5408\:ff0c\:30d7\:30ed\:30f3\:30d7\:30c8\:30a4\:30f3\:30b8\:30a7\:30af\:30b7\:30e7\:30f3\:306e\:30ea\:30b9\:30af\:304c\:3042\:308b\:3053\:3068\:3092\:8a8d\:8b58\:3057\:3066\:304a\:304f\:5fc5\:8981\:304c\:3042\:308b\:ff0e\:60aa\:610f\:306e\:3042\:308b\:30b3\:30f3\:30c6\:30f3\:30c4\:306f\:ff0cAI\:306b\:5bfe\:3057\:3066\:ff0c\:610f\:56f3\:3057\:306a\:3044\:65b9\:6cd5\:3067\:4ed6\:306e\:30c4\:30fc\:30eb\:3092\:4f7f\:7528\:3059\:308b\:3088\:3046\:6307\:793a\:3059\:308b\:53ef\:80fd\:6027\:304c\:3042\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "55dadb34-1a75-8044-82ec-e4e7f1c4d378", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 24, 25.3977}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"If your AI coding application has access to tools that fetch content from the web or other untrusted sources, be aware of prompt injection risks. Malicious content could instruct the AI to use other tools in unintended ways.\", \"Text\", CellID -> 158499191]" - |>, - CellTags -> "Translated", - CellID -> 158499191 - ], - Cell[ - TextData[ - { - "\:4f8b\:3048\:3070\:ff0c", - StyleBox["SymbolDefinition", "InlineCode"], - "\:306f\:4e00\:822c\:306b\:5b89\:5168\:3067\:3042\:308b\:304c\:ff0cAI\:304c\:4ee5\:524d\:306b", - StyleBox["WolframLanguageEvaluator", "InlineCode"], - "\:3092\:7528\:3044\:3066\:30b5\:30fc\:30d3\:30b9\:306b\:63a5\:7d9a\:3057\:3066\:304a\:308a\:ff08API\:30ad\:30fc\:3092\:30e1\:30e2\:30ea\:5185\:306b\:4fdd\:5b58\:3057\:3066\:3044\:308b\:5834\:5408\:ff09\:ff0c\:30d7\:30ed\:30f3\:30d7\:30c8\:30a4\:30f3\:30b8\:30a7\:30af\:30b7\:30e7\:30f3\:653b\:6483\:306b\:3088\:3063\:3066\:ff0cAI\:306b", - StyleBox["SymbolDefinition", "InlineCode"], - "\:3092\:4f7f\:7528\:3057\:3066\:305d\:308c\:3089\:306e\:5024\:3092\:62bd\:51fa\:3059\:308b\:3088\:3046\:6307\:793a\:3067\:304d\:308b\:53ef\:80fd\:6027\:304c\:3042\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "10a05c65-3788-724e-8e9c-f59abeb5dfa8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 30, 2.39508}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"For example, \", StyleBox[\"SymbolDefinition\", \"InlineCode\"], \" is generally safe, but if the AI previously used \", StyleBox[\"WolframLanguageEvaluator\", \"InlineCode\"], \" to connect to a service (storing API keys in memory), a prompt injection attack could potentially instruct the AI to use \", StyleBox[\"SymbolDefinition\", \"InlineCode\"], \" to extract those values.\"}], \"Text\", CellID -> 568440468]" - |>, - CellTags -> "Translated", - CellID -> 568440468 - ], - Cell[ - "\:4e00\:822c\:7684\:306a\:898f\:5247\:3068\:3057\:3066\:ff0c\:4fe1\:983c\:3067\:304d\:306a\:3044\:5916\:90e8\:30b3\:30f3\:30c6\:30f3\:30c4\:3092\:8aad\:307f\:53d6\:308b\:30c4\:30fc\:30eb\:3092\:81ea\:52d5\:627f\:8a8d\:3059\:308b\:5834\:5408\:306b\:306f\:ff0c\:6a5f\:5bc6\:60c5\:5831\:3092\:9732\:51fa\:3055\:305b\:308b\:53ef\:80fd\:6027\:306e\:3042\:308b\:305d\:308c\:4ee5\:5916\:306e\:3059\:3079\:3066\:306e\:30c4\:30fc\:30eb\:306b\:3064\:3044\:3066\:306f\:627f\:8a8d\:3092\:8981\:6c42\:3059\:308b\:3053\:3068\:3092\:691c\:8a0e\:3057\:3066\:304a\:304b\:306a\:3051\:308c\:3070\:306a\:3089\:306a\:3044\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6e2d73f9-1eef-4941-93a7-76d29da3ca0e", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 30, 5.0926}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"As a general rule: if you auto-approve any tools that read untrusted external content, consider requiring approval for all other tools that could expose sensitive information.\", \"Text\", CellID -> 522376375]" - |>, - CellTags -> "Translated", - CellID -> 522376375 - ], - Cell[ - "\:30c4\:30fc\:30eb\:6a29\:9650\:3092\:3069\:306e\:3088\:3046\:306b\:8a2d\:5b9a\:3059\:308b\:304b\:306b\:3064\:3044\:3066\:306f\:ff0cAI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306e\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3092\:53c2\:7167\:3059\:308b\:3068\:3088\:3044\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "39883d69-3328-2244-b2d1-ad38c86a6cd0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 30, 7.29987}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Consult your AI coding application's documentation for how to configure tool permissions.\", \"Text\", CellID -> 108418660]" - |>, - CellTags -> "Translated", - CellID -> 108418660 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30c8\:30e9\:30d6\:30eb\:30b7\:30e5\:30fc\:30c6\:30a3\:30f3\:30b0", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "cae828bb-65c1-324f-bdb0-992a9965fbed", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 39.3068}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Troubleshooting\", \"Section\", CellID -> 370178754]" - |>, - CellTags -> "Translated", - CellID -> 370178754 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b5\:30fc\:30d0\:306b\:63a5\:7d9a\:3057\:3066\:3044\:306a\:3044", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "939ecd7d-9573-0b46-8b97-13f1ef17e2a7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 40.7166}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Server not connecting\", \"Subsection\", CellID -> 192942910]" - |>, - CellTags -> "Translated", - CellID -> 192942910 - ], - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:5f8c\:306b\:ff0c\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3092\:5b8c\:5168\:306b\:518d\:8d77\:52d5\:3059\:308b\:ff08\:30a6\:30a3\:30f3\:30c9\:30a6\:3092\:9589\:3058\:308b\:3060\:3051\:3067\:306f\:ff0c\:30b7\:30b9\:30c6\:30e0\:30c8\:30ec\:30a4\:306b\:6700\:5c0f\:5316\:3055\:308c\:305f\:306b\:3059\:304e\:306a\:3044\:3053\:3068\:304c\:3088\:304f\:3042\:308b\:ff09", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c1fba154-6abd-5341-9782-95b9a44e97d1", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 42.4837}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Fully restart your coding application after installation (closing the window often just minimizes it to the system tray)\", \"Item\", CellID -> 84453282]" - |>, - CellTags -> "Translated", - CellID -> 84453282 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[ - ButtonBox[ - "InstallMCPServer", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/ref/InstallMCPServer" - ] - ], - "InlineFormula" - ], - "\:304c\:8fd4\:3059\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:3092\:624b\:52d5\:3067\:70b9\:691c\:3057\:ff0c\:30b5\:30fc\:30d0\:304c\:6b63\:3057\:304f\:8a2d\:5b9a\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:3092\:78ba\:8a8d\:3059\:308b" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ba378d4c-9c32-db4e-96cc-9ecfd1ee6328", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 44.2351}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Manually inspect the configuration file returned by \", Cell[BoxData[ButtonBox[\"InstallMCPServer\", BaseStyle -> \"Link\", ButtonData -> \"paclet:Wolfram/AgentTools/ref/InstallMCPServer\"]], \"InlineFormula\"], \" to ensure the server is configured correctly\"}], \"Item\", CellID -> 513835098]" - |>, - CellTags -> "Translated", - CellID -> 513835098 - ], - Cell[ - "\:30a8\:30e9\:30fc\:3092\:78ba\:8a8d\:3059\:308b\:305f\:3081\:306b\:ff0c\:30ed\:30b0\:30d5\:30a1\:30a4\:30eb\:307e\:305f\:306f\:305d\:306e\:4ed6\:306e\:8a3a\:65ad\:60c5\:5831\:306e\:5834\:6240\:306b\:3064\:3044\:3066\:306f\:ff0c\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306e\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3092\:78ba\:8a8d\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "7c785a59-4a6d-7246-a517-cb2bfa3ba859", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 45.9755}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Check your client's documentation for location of log files or other diagnostic information to check for errors\", \"Item\", CellID -> 552567934]" - |>, - CellTags -> "Translated", - CellID -> 552567934 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "WolframLanguageContext\:304c\:60f3\:5b9a\:901a\:308a\:306b\:6a5f\:80fd\:3057\:306a\:3044", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "66393c63-1270-e947-af1b-a13567a32825", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 47.6207}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"WolframLanguageContext not working as expected\", \"Subsection\", CellID -> 583744373]" - |>, - CellTags -> "Translated", - CellID -> 583744373 - ], - Cell[ - TextData[ - { - "\:6700\:826f\:306e\:7d50\:679c\:3092\:5f97\:308b\:306b\:306f\:ff0c", - StyleBox["WolframLanguageContext", "InlineCode"], - "\:30c4\:30fc\:30eb\:3067", - ButtonBox[ - "LLM Kit subscription", - BaseStyle -> "Hyperlink", - ButtonData -> { - URL["https://www.wolfram.com/notebook-assistant-llm-kit/"], - None - }, - ButtonNote -> "https://www.wolfram.com/notebook-assistant-llm-kit/" - ], - "\:304c\:5fc5\:8981\:3067\:3042\:308b\:ff0e\:3053\:308c\:304c\:306a\:3044\:5834\:5408\:ff0c\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:691c\:7d22\:306e\:7cbe\:5ea6\:306f\:4f4e\:4e0b\:3059\:308b\:ff0e\:30b3\:30fc\:30c9\:5b9f\:884c\:ff08", - StyleBox["WolframLanguageEvaluator", "InlineCode"], - "\:ff09\:304a\:3088\:3073\:305d\:306e\:4ed6\:306e\:30c4\:30fc\:30eb\:306fLLM Kit\:306a\:3057\:3067\:3082\:52d5\:4f5c\:3059\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "59be61df-daae-4240-9ce5-652875c3c11a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 49.2186}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The \", StyleBox[\"WolframLanguageContext\", \"InlineCode\"], \" tool requires an \", ButtonBox[\"LLM Kit subscription\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://www.wolfram.com/notebook-assistant-llm-kit/\"], None}, ButtonNote -> \"https://www.wolfram.com/notebook-assistant-llm-kit/\"], \" for best results. Without it, documentation search will be less accurate. Code execution (\", StyleBox[\"WolframLanguageEvaluator\", \"InlineCode\"], \") and other tools work without LLM Kit.\"}], \"Text\", CellID -> 152248262]" - |>, - CellTags -> "Translated", - CellID -> 152248262 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b5\:30fc\:30d0\:304c\:8aa4\:3063\:305f\:30d0\:30fc\:30b8\:30e7\:30f3\:306eWolfram\:8a00\:8a9e\:3092\:4f7f\:7528\:3057\:3066\:3044\:308b", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "5de7fea1-044a-c04b-9ac5-486ba2bced9b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 51.8835}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Server is using the wrong version of Wolfram Language\", \"Subsection\", CellID -> 681211025]" - |>, - CellTags -> "Translated", - CellID -> 681211025 - ], - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:305fMCP server\:306f\:ff0c\:305d\:308c\:304c\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:305f\:3082\:3068\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:3068\:540c\:3058\:30d0\:30fc\:30b8\:30e7\:30f3\:306eWolfram\:8a00\:8a9e\:3092\:4f7f\:7528\:3059\:308b\:ff0e\:7570\:306a\:308b\:30d0\:30fc\:30b8\:30e7\:30f3\:306eWolfram\:8a00\:8a9e\:3092\:4f7f\:7528\:3057\:305f\:3044\:5834\:5408\:306f\:ff0c\:305d\:306e\:30d0\:30fc\:30b8\:30e7\:30f3\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:3067MCP server\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:304b\:ff0c\:307e\:305f\:306f\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:3092\:624b\:52d5\:3067\:7de8\:96c6\:3057\:3066\:5225\:306eWolfram\:30ab\:30fc\:30cd\:30eb\:3092\:6307\:3059\:3088\:3046\:306b\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2d4ed203-0e7b-2443-904a-eeedcaeb08e4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 31, 53.2178}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"The installed MCP server will use the same version of Wolfram Language as the session it was installed from. If you want to use a different version of Wolfram Language, you need to install the MCP server in a session of that version or manually edit the configuration file to point to a different Wolfram kernel.\", \"Text\", CellID -> 244356551]" - |>, - CellTags -> "Translated", - CellID -> 244356551 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Related Guides", - "TutorialMoreAboutSection", - CellID -> 146072902 - ], - Cell["XXXX", "TutorialMoreAbout", CellID -> 322478743] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Related Tech Notes", - "RelatedTutorialsSection", - CellID -> 496468733 - ], - Cell[ - TextData[ - ButtonBox[ - "Quick Start for Chat Clients", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/tutorial/QuickStartforChatClients" - ] - ], - "RelatedTutorials", - CellID -> 29597763 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 94523210], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 952480352 - ], - Cell[ - CellGroupData[ - { - Cell[ - "Categorization", - "CategorizationSection", - CellID -> 805537969 - ], - Cell[ - "Tech Note", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 556623940 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 908031750 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 258958626 - ], - Cell[ - "Wolfram/AgentTools/tutorial/QuickStartforAICodingApplications", - "Categorization", - CellLabel -> "URI", - CellID -> 328724414 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 177822517], - Cell["XXXX", "Keywords", CellID -> 790169956] - }, - Open - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - SpellingDictionaries -> { - "CorrectWords" -> {"tokenizers", "Hennigan", "Keene", "md", "csv", "wlt"} - }, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "TechNotePageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file diff --git a/Documentation/Japanese/Tutorials/QuickStartforChatClients.nb b/Documentation/Japanese/Tutorials/QuickStartforChatClients.nb deleted file mode 100644 index eb504c3c..00000000 --- a/Documentation/Japanese/Tutorials/QuickStartforChatClients.nb +++ /dev/null @@ -1,2865 +0,0 @@ -(* Content-type: application/vnd.wolfram.mathematica *) - -(*** Wolfram Notebook File ***) -(* http://www.wolfram.com/nb *) - -(* Created By: SaveReadableNotebook *) -(* https://resources.wolframcloud.com/FunctionRepository/resources/SaveReadableNotebook *) - -Notebook[ - { - Cell[ - CellGroupData[ - { - Cell[ - "\:30c1\:30e3\:30c3\:30c8\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306e\:30af\:30a4\:30c3\:30af\:30b9\:30bf\:30fc\:30c8", - "Title", - TaggingRules -> <| - "OrignialExpressionUUID" -> "59de7da4-28e8-cc4a-9b11-2149de870aa8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 37, 10.0845}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Quick Start for Chat Clients\", \"Title\", CellID -> 12090343]" - |>, - CellTags -> "Translated", - CellID -> 12090343 - ], - Cell[ - "\:3053\:306e\:30ac\:30a4\:30c9\:3067\:306f\:ff0cClaude Desktop\:306e\:3088\:3046\:306a\:30c1\:30e3\:30c3\:30c8\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306bWolfram\:306e\:8a08\:7b97\:6a5f\:80fd\:3092\:8ffd\:52a0\:3059\:308b\:624b\:9806\:3092\:9806\:3092\:8ffd\:3063\:3066\:8aac\:660e\:3059\:308b\:ff0e\:6700\:5f8c\:306b\:306f\:ff0cAI\:30a2\:30b7\:30b9\:30bf\:30f3\:30c8\:304cWolfram\:8a00\:8a9e\:306e\:30b3\:30fc\:30c9\:3092\:8a55\:4fa1\:3057\:ff0cWolfram Alpha\:3092\:4ecb\:3057\:3066\:8a08\:7b97\:306b\:95a2\:3059\:308b\:8cea\:554f\:306b\:56de\:7b54\:3057\:ff0cWolfram\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3092\:691c\:7d22\:3059\:308b\:3053\:3068\:304c\:3067\:304d\:308b\:3088\:3046\:306b\:306a\:308b\:ff0e ", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "058aac5c-da85-844a-ad0e-4b0343b728d0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 37, 11.4899}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"This guide walks you through adding Wolfram computational capabilities to chat clients like Claude Desktop. By the end, your AI assistant will be able to evaluate Wolfram Language code, answer computational questions via Wolfram Alpha, and search Wolfram documentation. \", \"Text\", CellID -> 6910630]" - |>, - CellTags -> "Translated", - CellID -> 6910630 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:63a8\:5968\:30b5\:30fc\:30d0", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8251c190-3f31-b040-a743-ffc78d068df0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 37, 13.5721}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Recommended Server\", \"Section\", CellID -> 681400227]" - |>, - CellTags -> "Translated", - CellID -> 681400227 - ], - Cell[ - TextData[ - { - "\:6c4e\:7528\:30c1\:30e3\:30c3\:30c8\:306b\:306f\:ff0c", - StyleBox["Wolfram", "InlineCode"], - "\:30b5\:30fc\:30d0\:ff08\:30c7\:30d5\:30a9\:30eb\:30c8\:ff09\:3092\:4f7f\:7528\:3059\:308b\:ff0e\:3053\:308c\:306f\:ff0c\:30b3\:30fc\:30c9\:5b9f\:884c\:3068\:81ea\:7136\:8a00\:8a9e\:8a08\:7b97\:3092\:7d44\:307f\:5408\:305b\:305f\:3082\:306e\:3067\:3042\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "aabe9143-333f-4e46-9298-c8943e758091", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 37, 14.7588}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"For general-purpose chat, use the \", StyleBox[\"Wolfram\", \"InlineCode\"], \" server (the default). It combines code execution with natural language computation.\"}], \"Text\", CellID -> 12038806]" - |>, - CellTags -> "Translated", - CellID -> 12038806 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c3f303c6-52c0-5b40-b7c0-a7e14d04417c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 38, 36.6407}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Installation\", \"Section\", CellID -> 1008881548]" - |>, - CellTags -> "Translated", - CellID -> 1008881548 - ], - Cell[ - CellGroupData[ - { - Cell["Claude Desktop", "Subsection", CellID -> 389662746], - Cell[ - CellGroupData[ - { - Cell[ - "Wolfram\:8a00\:8a9e\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:3092\:958b\:304d\:ff0c\:6b21\:3092\:5b9f\:884c\:3059\:308b\:ff1a", - "MathCaption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f0e067ee-4249-5e44-b29c-54657b98fd88", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 38, 42.959}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Open a Wolfram Language session and run:\", \"MathCaption\", CellID -> 455003833]" - |>, - CellTags -> "Translated", - CellID -> 455003833 - ], - Cell[ - CellGroupData[ - { - Cell[ - BoxData[ - RowBox[{"InstallMCPServer", "[", "\"ClaudeDesktop\"", "]"}] - ], - "Input", - CellLabel -> "In[1]:=", - CellID -> 25850561 - ], - Cell[ - BoxData[ - InterpretationBox[ - RowBox[ - { - TagBox["Success", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"], - ImageSizeCache -> {10.0329, {0.0, 10.0329}} - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = True), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - Appearance -> None, - BaseStyle -> { }, - ButtonFunction :> (Typeset`open$$ = False), - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - FrameBox[ - StyleBox[ - "\"\[Checkmark]\"", - StripOnInput -> False, - LineColor -> RGBColor[0.360784, 0.596078, 0.380392], - FrontFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - BackFaceColor -> RGBColor[0.360784, 0.596078, 0.380392], - GraphicsColor -> RGBColor[0.360784, 0.596078, 0.380392], - FontSize -> 25, - FontColor -> RGBColor[0.360784, 0.596078, 0.380392] - ], - ContentPadding -> False, - FrameMargins -> {{0, 0}, {0, 0}}, - FrameStyle -> None, - StripOnInput -> False - ], - GridBox[ - { - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Message\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - "\"Successfully installed MCP server \\\"Wolfram\\\" for Claude Desktop.\"", - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Location\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - RowBox[ - { - "File", - "[", - TemplateBox[ - { - "\"C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json\"" - }, - "FileArgument" - ], - "]" - } - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[ - {"\"MCPServerObject\"", "\": \""}, - "RowDefault" - ], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox[ - InterpretationBox[ - RowBox[ - { - TagBox["MCPServerObject", "SummaryHead"], - "[", - DynamicModuleBox[ - {Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, - TemplateBox[ - { - PaneSelectorBox[ - { - False -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"] - ], - ButtonFunction :> (Typeset`open$$ = True), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ], - True -> - GridBox[ - { - { - PaneBox[ - ButtonBox[ - DynamicBox[ - FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"] - ], - ButtonFunction :> (Typeset`open$$ = False), - Appearance -> None, - BaseStyle -> { }, - Evaluator -> Automatic, - Method -> "Preemptive" - ], - Alignment -> {Center, Center}, - ImageSize -> - Dynamic[ - { - Automatic, - Times[ - 3.5, - Times[ - CurrentValue["FontCapHeight"], - AbsoluteCurrentValue[Magnification]^(-1) - ] - ] - } - ] - ], - GraphicsBox[ - { - Thickness[0.005979], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {25.0, 97.147}, - {92.882, 165.03}, - {102.25, 174.4}, - {117.45, 174.4}, - {126.82, 165.03}, - {136.2, 155.66}, - {136.2, 140.46}, - {126.82, 131.09}, - {75.558, 79.823} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - { - { - {0, 2, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0}, - {1, 3, 3}, - {0, 1, 0} - } - }, - { - { - {76.265, 80.53}, - {126.82, 131.09}, - {136.2, 140.46}, - {151.39, 140.46}, - {160.76, 131.09}, - {161.12, 130.73}, - {170.49, 121.36}, - {170.49, 106.17}, - {161.12, 96.794}, - {99.725, 35.4}, - {96.601, 32.276}, - {96.601, 27.211}, - {99.725, 24.087}, - {112.33, 11.48} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ], - StyleBox[ - { - JoinedCurveBox[ - {{{0, 2, 0}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}}}, - { - { - {109.85, 148.06}, - {59.648, 97.854}, - {50.276, 88.482}, - {50.276, 73.286}, - {59.648, 63.913}, - {69.021, 54.541}, - {84.217, 54.541}, - {93.589, 63.913}, - {143.79, 114.12} - } - }, - CurveClosed -> {0} - ] - }, - { - CapForm["Round"], - JoinForm[{"Miter", 1.0}], - Thickness[0.071749] - }, - StripOnInput -> False - ] - }, - ImageSize -> 24 - ], - GridBox[ - { - { - RowBox[ - { - TagBox["\"Name: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"Wolfram\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"Transport: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"StandardInputOutput\"", "SummaryItem"] - } - ] - }, - { - RowBox[ - { - TagBox["\"JSON Configuration: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - DynamicModuleBox[ - {boxObj, cellObj}, - TagBox[ - TagBox[ - ButtonBox[ - TagBox[ - "\"{\[Ellipsis]}\"", - BoxForm`Undeploy, - DefaultBaseStyle -> {Deployed -> False} - ], - ButtonFunction :> { - CopyToClipboard[ - "{\n\t\"mcpServers\":{\n\t\t\"Wolfram\":{\n\t\t\t\"type\":\"stdio\",\n\t\t\t\"command\":\"C:\\\\Program Files\\\\Wolfram Research\\\\Wolfram\\\\14.3\\\\wolfram.exe\",\n\t\t\t\"args\":[\n\t\t\t\t\"-run\",\n\t\t\t\t\"PacletSymbol[\\\"Wolfram\\/AgentTools\\\",\\\"Wolfram`AgentTools`StartMCPServer\\\"][]\",\n\t\t\t\t\"-noinit\",\n\t\t\t\t\"-noprompt\"\n\t\t\t],\n\t\t\t\"env\":{\n\t\t\t\t\"MCP_SERVER_NAME\":\"Wolfram\"\n\t\t\t}\n\t\t}\n\t}\n}" - ], - NotebookDelete[cellObj], - FrontEndExecute[ - FrontEnd`AttachCell[ - boxObj, - Cell[ - BoxData[TemplateBox[{"Copied"}, "ClickToCopyTooltip"]] - ], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged", "MouseExit"} - ] - ] - }, - Evaluator -> Automatic, - Appearance -> { - "Default" -> None, - "Hover" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Hover.9.png" - ], - "Pressed" -> - FrontEnd`FileName[ - {"Typeset", "ClickToCopy"}, - "Pressed.9.png" - ] - }, - BaseStyle -> { }, - DefaultBaseStyle -> { }, - BaselinePosition -> Baseline, - FrameMargins -> 2, - Method -> "Preemptive" - ], - EventHandlerTag[ - { - "MouseEntered" :> - (cellObj = - MathLink`CallFrontEnd[ - FrontEnd`AttachCell[ - boxObj, - Cell[BoxData[TemplateBox[{"Copy"}, "ClickToCopyTooltip"]]], - {1, {Center, Bottom}}, - {Center, Top}, - "ClosingActions" -> {"ParentChanged"} - ] - ]), - "MouseExited" :> NotebookDelete[cellObj], - PassEventsDown -> True, - Method -> "Preemptive", - PassEventsUp -> True - } - ] - ], - MouseAppearanceTag["LinkHand"] - ], - Initialization :> (boxObj = EvaluationBox[]), - DynamicModuleValues :> { }, - UnsavedVariables :> {boxObj, cellObj}, - BaseStyle -> {Editable -> False} - ], - Deploy, - DefaultBaseStyle -> "Deploy" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Tool Names: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox[ - TagBox[ - GridBox[ - { - { - "\"WolframContext\"", - "\"WolframLanguageEvaluator\"", - "\"WolframAlpha\"", - "", - "" - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ], - "Grid" - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox["\"Location: \"", "SummaryItemAnnotation"], - "\[InvisibleSpace]", - TagBox["\"BuiltIn\"", "SummaryItem"] - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}}, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - } - ] - } - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - AutoDelete -> False, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - BaselinePosition -> {1, 1} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.6.25", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ], - "SummaryItem" - ] - } - ] - }, - { - RowBox[ - { - TagBox[ - TemplateBox[{"\"Tag\"", "\": \""}, "RowDefault"], - "SummaryItemAnnotation" - ], - "\[InvisibleSpace]", - TagBox["\"InstallMCPServer\"", "SummaryItem"] - } - ] - } - }, - AutoDelete -> False, - BaseStyle -> { - ShowStringCharacters -> False, - NumberMarks -> False, - PrintPrecision -> 3, - ShowSyntaxStyles -> False - }, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, - GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}} - ] - } - }, - AutoDelete -> False, - BaselinePosition -> {1, 1}, - GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - }, - Dynamic[Typeset`open$$], - ImageSize -> Automatic - ] - }, - "SummaryPanel" - ], - DynamicModuleValues :> { } - ], - "]" - } - ], - Success[ - "InstallMCPServer", - <| - "MessageTemplate" :> - MessageName[ - Wolfram`AgentTools`AgentTools, - "InstallMCPServerNamed" - ], - "MessageParameters" -> {"Wolfram", "Claude Desktop"}, - "Location" -> - File[ - "C:/Users/rhennigan/AppData/Roaming/Claude/claude_desktop_config.json" - ], - "MCPServerObject" -> - Wolfram`AgentTools`MCPServerObject[ - <| - "LLMEvaluator" -> <| - "Tools" -> { - "WolframContext", - "WolframLanguageEvaluator", - "WolframAlpha" - }, - "MCPPrompts" -> {"WolframSearch"} - |>, - "Name" -> "Wolfram", - "ObjectVersion" -> 1, - "ServerVersion" -> "1.6.25", - "Transport" -> "StandardInputOutput", - "Location" -> "BuiltIn" - |> - ] - |> - ], - Editable -> False, - SelectWithContents -> True, - Selectable -> False - ] - ], - "Output", - CellLabel -> "Out[1]=", - CellID -> 1373596 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - TextData[ - { - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:5f8c\:ff0c\:65b0\:3057\:3044\:30c4\:30fc\:30eb\:3092\:8aad\:307f\:8fbc\:3080\:305f\:3081\:306b\:ff0c", - StyleBox[ - "Claude Desktop\:3092\:5b8c\:5168\:306b\:518d\:8d77\:52d5\:3059\:308b", - FontWeight -> Bold - ], - "\:5fc5\:8981\:304c\:3042\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3892c22c-780d-424d-9d07-b88dc44293c6", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 6.45917}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"After installation, \", StyleBox[\"fully restart Claude Desktop\", FontWeight -> Bold], \" to load the new tools.\"}], \"Text\", CellID -> 14817584]" - |>, - CellTags -> "Translated", - CellID -> 14817584 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:305d\:306e\:4ed6\:306e\:30c1\:30e3\:30c3\:30c8\:30af\:30e9\:30a4\:30a2\:30f3\:30c8", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "eddbea6a-8b2f-d848-87cc-a2829599e7d8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 8.21792}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Other Chat Clients\", \"Subsection\", CellID -> 538221185]" - |>, - CellTags -> "Translated", - CellID -> 538221185 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:305d\:306e\:4ed6\:306eMCP\:4e92\:63db\:30c1\:30e3\:30c3\:30c8\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306b\:3064\:3044\:3066\:306f\:ff0c\:751f\:306eJSON\:8a2d\:5b9a\:3092\:751f\:6210\:3059\:308b\:ff1a", - "MathCaption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "cbe53252-69a7-7d47-8757-e7845b60e7ec", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 9.50024}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"For other MCP-compatible chat clients, generate the raw JSON configuration:\", \"MathCaption\", CellID -> 114473426]" - |>, - CellTags -> "Translated", - CellID -> 114473426 - ], - Cell[ - BoxData[ - RowBox[ - { - RowBox[{"MCPServerObject", "[", "\"Wolfram\"", "]"}], - "[", - "\"JSONConfiguration\"", - "]" - } - ] - ], - "Input", - CellLabel -> "In[2]:=", - CellID -> 180817448 - ] - }, - Open - ] - ], - Cell[ - "\:6b21\:306b\:ff0c\:3053\:308c\:3092\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306e\:8a2d\:5b9a\:5f62\:5f0f\:306b\:9069\:5408\:3055\:305b\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "490e460c-069f-2848-af25-6db925a6c7c6", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 43.0714}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Then adapt this to your client's configuration format.\", \"Text\", CellID -> 517524628]" - |>, - CellTags -> "Translated", - CellID -> 517524628 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306e\:691c\:8a3c", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c74b6547-5e9b-c143-9092-d36ed289131b", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 44.9266}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Verifying the Installation\", \"Subsection\", CellID -> 35765306]" - |>, - CellTags -> "Translated", - CellID -> 35765306 - ], - Cell[ - "\:30c1\:30e3\:30c3\:30c8\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:3092\:518d\:8d77\:52d5\:3057\:305f\:5f8c\:ff0c\:6b21\:306e\:3088\:3046\:306b\:5c0b\:306d\:3066\:307f\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "1d90fb77-2427-8c4e-bc3e-5d12f91b12a7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 46.2493}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"After restarting your chat client, try asking:\", \"Text\", CellID -> 297363270]" - |>, - CellTags -> "Translated", - CellID -> 297363270 - ], - Cell[ - BoxData[ - GridBox[ - { - { - PaneBox[ - "\"\\\"sin(x)cos(x)\:306e\:7a4d\:5206\:306f\:4f55\:3067\:3042\:308b\:304b\\\"\"", - BaseStyle -> { - "Text", - FontColor -> - LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]] - }, - ImageMargins -> 5, - ImageSize -> {Full, Automatic} - ] - } - }, - AutoDelete -> False, - GridBoxBackground -> { - "Columns" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}} - }, - GridBoxDividers -> { - "ColumnsIndexed" -> { - 1 -> - Directive[ - LightDarkSwitched[ - RGBColor[0.87, 0.94, 1], - RGBColor[0.249113, 0.329519, 0.42312] - ], - AbsoluteThickness[4] - ] - }, - "Rows" -> {{False}} - }, - GridBoxItemSize -> {"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}} - ] - ], - "Text", - "BlockQuote", - TaggingRules -> <| - "OrignialExpressionUUID" -> "28fe7434-fd61-e243-b4b4-e8349f5b5109", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 47.7073}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{PaneBox[\"\\\"\\\\\\\"What is the integral of sin(x)cos(x)?\\\\\\\"\\\"\", BaseStyle -> {\"Text\", FontColor -> LightDarkSwitched[GrayLevel[0.35], GrayLevel[0.860247]]}, ImageMargins -> 5, ImageSize -> {Full, Automatic}]}}, AutoDelete -> False, GridBoxBackground -> {\"Columns\" -> {{LightDarkSwitched[GrayLevel[1], GrayLevel[0.278317]]}}}, GridBoxDividers -> {\"ColumnsIndexed\" -> {1 -> Directive[LightDarkSwitched[RGBColor[0.87, 0.94, 1], RGBColor[0.249113, 0.329519, 0.42312]], AbsoluteThickness[4]]}, \"Rows\" -> {{False}}}, GridBoxItemSize -> {\"Columns\" -> {{Automatic}}, \"Rows\" -> {{Automatic}}}]], \"Text\", \"BlockQuote\", Background -> None, CellID -> 625355415]" - |>, - Background -> None, - CellTags -> "Translated", - CellID -> 625355415 - ], - Cell[ - "AI\:304c\:7b54\:306e\:8a08\:7b97\:306bWolfram\:30c4\:30fc\:30eb\:3092\:4f7f\:7528\:3059\:308b\:5834\:5408\:ff0c\:305d\:306e\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:306f\:6b63\:5e38\:306b\:52d5\:4f5c\:3057\:3066\:3044\:308b\:306e\:3067\:3042\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "50e539f2-89eb-5f44-a222-982e9a5553fc", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 50.4066}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"If the AI uses Wolfram tools to compute the answer, the installation is working.\", \"Text\", CellID -> 540637267]" - |>, - CellTags -> "Translated", - CellID -> 540637267 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30c4\:30fc\:30eb\:3092\:7406\:89e3\:3059\:308b", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "1f3eec54-4741-e84b-bebc-ebc54b793106", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 51.9615}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Understanding the Tools\", \"Section\", CellID -> 43279603]" - |>, - CellTags -> "Translated", - CellID -> 43279603 - ], - Cell[ - "Wolfram\:30b5\:30fc\:30d0\:306f\:ff0c\:8cea\:554f\:306b\:57fa\:3065\:3044\:3066AI\:304c\:81ea\:52d5\:7684\:306b\:4f7f\:7528\:3059\:308b3\:3064\:306e\:30c4\:30fc\:30eb\:3092\:63d0\:4f9b\:3059\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6fd19a78-2963-3e46-a0d8-eb6fdb5aec46", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 53.046}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"The Wolfram server provides three tools that the AI uses automatically based on your questions:\", \"Text\", CellID -> 387289532]" - |>, - CellTags -> "Translated", - CellID -> 387289532 - ], - Cell[ - BoxData[ - GridBox[ - { - { - "WolframContext", - Cell[ - "Wolfram\:30ea\:30bd\:30fc\:30b9\:5168\:4f53\:ff08\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:ff0cWolfram Alpha\:ff0c\:30ea\:30dd\:30b8\:30c8\:30ea\:7b49\:ff09\:306b\:6e21\:308b\:30bb\:30de\:30f3\:30c6\:30a3\:30c3\:30af\:691c\:7d22", - "TableText" - ] - }, - { - "WolframLanguageEvaluator", - Cell[ - "Wolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:3092\:5b9f\:884c\:3059\:308b", - "TableText" - ] - }, - { - "WolframAlpha", - Cell[ - "Wolfram Alpha\:3078\:306e\:81ea\:7136\:8a00\:8a9e\:30af\:30a8\:30ea", - "TableText" - ] - } - } - ] - ], - "DefinitionBox", - TaggingRules -> <| - "OrignialExpressionUUID" -> "370725d0-a149-d84a-8bc5-ebf1ae49a831", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 54.4795}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[BoxData[GridBox[{{\"WolframContext\", Cell[\"Semantic search across Wolfram resources (documentation, Wolfram Alpha, repositories, and more)\", \"TableText\"]}, {\"WolframLanguageEvaluator\", Cell[\"Execute Wolfram Language code\", \"TableText\"]}, {\"WolframAlpha\", Cell[\"Natural language queries to Wolfram Alpha\", \"TableText\"]}}]], \"DefinitionBox\", CellID -> 97370256]" - |>, - CellTags -> "Translated", - CellID -> 97370256 - ], - Cell[ - "Wolfram MCP server\:3067\:5229\:7528\:53ef\:80fd\:306a\:30c4\:30fc\:30eb\:ff0e", - "Caption", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f3848b07-0abd-c341-9d2a-11b017b35547", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 56.4999}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Tools available in the Wolfram MCP server.\", \"Caption\", CellID -> 758633340]" - |>, - CellTags -> "Translated", - CellID -> 758633340 - ], - Cell[ - "AI\:306b\:3069\:306e\:30c4\:30fc\:30eb\:3092\:4f7f\:7528\:3059\:308b\:304b\:3092\:4f1d\:3048\:308b\:5fc5\:8981\:306f\:306a\:3044\:ff0e\:8981\:6c42\:306b\:57fa\:3065\:3044\:3066AI\:304c\:9069\:5207\:306a\:30c4\:30fc\:30eb\:3092\:9078\:629e\:3059\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6a8eb54e-8969-a04f-8512-f9bfc767f7a2", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 39, 57.9318}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"You do not need to tell the AI which tool to use. It selects the appropriate tool based on your request.\", \"Text\", CellID -> 88237460]" - |>, - CellTags -> "Translated", - CellID -> 88237460 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:4f7f\:7528\:4f8b", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "1bef1811-66d5-c34d-a844-0409945a844c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 33.4921}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Example Use Cases\", \"Section\", CellID -> 149673307]" - |>, - CellTags -> "Translated", - CellID -> 149673307 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:6570\:5b66\:3068\:8a08\:7b97", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a52dbdbd-241a-af46-b70a-95fee4c5a9af", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 35.7682}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Mathematics and Computation\", \"Subsection\", CellID -> 182893174]" - |>, - CellTags -> "Translated", - CellID -> 182893174 - ], - Cell[ - "\:300c\:65b9\:7a0b\:5f0fx^3-6x^2+11x-6=0\:3092\:89e3\:304f\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a4599e61-7214-1e4e-b357-4d0e8d582260", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 37.3809}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"Solve the equation x^3 - 6x^2 + 11x - 6 = 0\\\"\", \"Item\", CellID -> 130590813]" - |>, - CellTags -> "Translated", - CellID -> 130590813 - ], - Cell[ - "\:300c\:884c\:5217{{1,2},{3,4}}\:306e\:56fa\:6709\:5024\:3092\:6c42\:3081\:308b\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "fce10e1e-fa9f-e941-a20f-6a81ca9fefdb", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 38.7383}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"Find the eigenvalues of the matrix {{1,2},{3,4}}\\\"\", \"Item\", CellID -> 229088071]" - |>, - CellTags -> "Translated", - CellID -> 229088071 - ], - Cell[ - "\:300cx=0\:306e\:307e\:308f\:308a\:306b\:304a\:3051\:308be^x\:306e\:30c6\:30a4\:30e9\:30fc\:7d1a\:6570\:30925\:6b21\:307e\:3067\:8a08\:7b97\:3059\:308b\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c9a76f7a-6a7f-e946-9af0-61128673b29e", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 40.1836}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"Compute the Taylor series of e^x around x=0 to order 5\\\"\", \"Item\", CellID -> 6173427]" - |>, - CellTags -> "Translated", - CellID -> 6173427 - ], - Cell[ - "\:300clog(sin(x))\:306e\:5c0e\:95a2\:6570\:306f\:4f55\:3067\:3042\:308b\:304b\:ff1f\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "17443ebe-138c-994f-b476-18f934f5e778", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 41.9055}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"What is the derivative of log(sin(x))?\\\"\", \"Item\", CellID -> 696466172]" - |>, - CellTags -> "Translated", - CellID -> 696466172 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30c7\:30fc\:30bf\:3068\:4e8b\:5b9f", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4c816a25-9733-6c4c-9cd7-8079847fbc55", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 43.328}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Data and Facts\", \"Subsection\", CellID -> 761437715]" - |>, - CellTags -> "Translated", - CellID -> 761437715 - ], - Cell[ - "\:300c\:30d5\:30e9\:30f3\:30b9\:306e\:4eba\:53e3\:306f\:4f55\:4eba\:304b\:ff1f\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "4b0f438d-5b02-6747-8046-58995db4d134", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 44.422}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"What is the population of France?\\\"\", \"Item\", CellID -> 116042910]" - |>, - CellTags -> "Translated", - CellID -> 116042910 - ], - Cell[ - "\:300c\:706b\:661f\:306f\:73fe\:5728\:5730\:7403\:304b\:3089\:3069\:308c\:307b\:3069\:96e2\:308c\:3066\:3044\:308b\:304b\:ff1f\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "93abaf37-deb0-d44d-8182-93ea72bfca24", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 46.093}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"How far is Mars from Earth right now?\\\"\", \"Item\", CellID -> 271558815]" - |>, - CellTags -> "Translated", - CellID -> 271558815 - ], - Cell[ - "\:300c0.5atm\:306b\:304a\:3051\:308b\:30a8\:30bf\:30ce\:30fc\:30eb\:306e\:6cb8\:70b9\:306f\:4f55\:5ea6\:304b?\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "d05b3a51-3605-2b4d-aef6-ba42da13d5b9", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 47.5639}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"What is the boiling point of ethanol at 0.5 atm?\\\"\", \"Item\", CellID -> 133426467]" - |>, - CellTags -> "Translated", - CellID -> 133426467 - ], - Cell[ - "\:300c\:904e\:53bb10\:5e74\:9593\:306b\:308f\:305f\:308b\:65e5\:672c\:3068\:30c9\:30a4\:30c4\:306eGDP\:3092\:6bd4\:8f03\:3059\:308b\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c46bdbc1-6fa1-304b-9449-7b168667c212", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 49.0104}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"Compare the GDP of Japan and Germany over the last 10 years\\\"\", \"Item\", CellID -> 171120835]" - |>, - CellTags -> "Translated", - CellID -> 171120835 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:53ef\:8996\:5316", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c35a19a5-9d89-b042-8de4-cf2c53fb27a1", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 42, 50.7346}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Visualization\", \"Subsection\", CellID -> 46353866]" - |>, - CellTags -> "Translated", - CellID -> 46353866 - ], - Cell[ - "\:300c0\:304b\:30892pi\:307e\:3067\:306esin(x)\:304a\:3088\:3073cos(x)\:3092\:30d7\:30ed\:30c3\:30c8\:3059\:308b\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "5edb18b0-5b91-da4d-937a-8f1a94f8f474", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 46, 54.1839}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"Plot sin(x) and cos(x) from 0 to 2pi\\\"\", \"Item\", CellID -> 703557838]" - |>, - CellTags -> "Translated", - CellID -> 703557838 - ], - Cell[ - "\:300c\:7c73\:56fd\:306e\:6700\:5927\:90fd\:5e0210\:5e02\:306e\:4eba\:53e3\:3092\:6bd4\:8f03\:3059\:308b\:68d2\:30b0\:30e9\:30d5\:3092\:4f5c\:6210\:3059\:308b\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "af5c8fcc-2861-154b-b9c7-617c723430c9", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 46, 55.8754}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"Create a bar chart comparing the populations of the 10 largest US cities\\\"\", \"Item\", CellID -> 196599072]" - |>, - CellTags -> "Translated", - CellID -> 196599072 - ], - Cell[ - "\:300cx\:304a\:3088\:3073y\:304c-pi\:304b\:3089pi\:307e\:3067\:306e\:7bc4\:56f2\:306b\:304a\:3051\:308bsin(x*y)\:306e3D\:30d7\:30ed\:30c3\:30c8\:3092\:8868\:793a\:3059\:308b\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "8dea2464-27e7-184b-bda6-4a71dcc99b49", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 46, 57.4214}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"Show a 3D plot of sin(x*y) for x and y from -pi to pi\\\"\", \"Item\", CellID -> 316403742]" - |>, - CellTags -> "Translated", - CellID -> 316403742 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:691c\:7d22", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "6384a502-e966-c046-968a-66b6916be3bf", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 46, 58.985}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Documentation Lookup\", \"Subsection\", CellID -> 274585894]" - |>, - CellTags -> "Translated", - CellID -> 274585894 - ], - Cell[ - TextData[ - { - "\:300cWolfram\:8a00\:8a9e\:306e", - Cell[ - BoxData[ - TemplateBox[ - { - "NestList", - "paclet:ref/NestList", - "https://reference.wolfram.com/language/ref/NestList.html" - }, - "TextRefLink", - DisplayFunction -> - (Function[ - TagBox[ - ButtonBox[ - StyleBox[ - #1, - ShowStringCharacters -> True, - FontFamily -> "Source Sans Pro" - ], - BaseStyle -> { - "Link", - FontColor -> - LightDarkSwitched[ - RGBColor[0.02, 0.286, 0.651], - RGBColor[0.2823, 0.6666, 0.949] - ] - }, - ButtonData -> #2, - ContentPadding -> False - ], - MouseAppearanceTag["LinkHand"] - ] - ]) - ] - ] - ], - "\:95a2\:6570\:306f\:3069\:306e\:3088\:3046\:306b\:6a5f\:80fd\:3059\:308b\:304b\:ff1f\:300d" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "5f031992-58e9-334c-bd13-3ab3a91869a2", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 47, 0.601742}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"\\\"How does the Wolfram Language \", Cell[BoxData[TemplateBox[{\"NestList\", \"paclet:ref/NestList\", \"https://reference.wolfram.com/language/ref/NestList.html\"}, \"TextRefLink\", DisplayFunction -> (TagBox[ButtonBox[StyleBox[#1, ShowStringCharacters -> True, FontFamily -> \"Source Sans Pro\"], BaseStyle -> {\"Link\", FontColor -> LightDarkSwitched[RGBColor[0.02, 0.286, 0.651], RGBColor[0.2823, 0.6666, 0.949]]}, ButtonData -> #2, ContentPadding -> False], MouseAppearanceTag[\"LinkHand\"]] & )]]], \" function work?\\\"\"}], \"Item\", CellID -> 5794840]" - |>, - CellTags -> "Translated", - CellID -> 5794840 - ], - Cell[ - TextData[ - { - "\:300c", - Cell[ - BoxData[ - TemplateBox[ - { - "ListPlot", - "paclet:ref/ListPlot", - "https://reference.wolfram.com/language/ref/ListPlot.html" - }, - "TextRefLink", - DisplayFunction -> - (Function[ - TagBox[ - ButtonBox[ - StyleBox[ - #1, - ShowStringCharacters -> True, - FontFamily -> "Source Sans Pro" - ], - BaseStyle -> { - "Link", - FontColor -> - LightDarkSwitched[ - RGBColor[0.02, 0.286, 0.651], - RGBColor[0.2823, 0.6666, 0.949] - ] - }, - ButtonData -> #2, - ContentPadding -> False - ], - MouseAppearanceTag["LinkHand"] - ] - ]) - ] - ] - ], - "\:306f\:3069\:306e\:3088\:3046\:306a\:30aa\:30d7\:30b7\:30e7\:30f3\:3092\:30b5\:30dd\:30fc\:30c8\:3059\:308b\:304b?\:300d" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "27af3cda-57e4-9645-a91c-664a4f54be2d", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 47, 3.21258}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"\\\"What options does \", Cell[BoxData[TemplateBox[{\"ListPlot\", \"paclet:ref/ListPlot\", \"https://reference.wolfram.com/language/ref/ListPlot.html\"}, \"TextRefLink\", DisplayFunction -> (TagBox[ButtonBox[StyleBox[#1, ShowStringCharacters -> True, FontFamily -> \"Source Sans Pro\"], BaseStyle -> {\"Link\", FontColor -> LightDarkSwitched[RGBColor[0.02, 0.286, 0.651], RGBColor[0.2823, 0.6666, 0.949]]}, ButtonData -> #2, ContentPadding -> False], MouseAppearanceTag[\"LinkHand\"]] & )]]], \" support?\\\"\"}], \"Item\", CellID -> 252345462]" - |>, - CellTags -> "Translated", - CellID -> 252345462 - ], - Cell[ - TextData[ - { - "\:300c", - Cell[ - BoxData[ - TemplateBox[ - { - "Association", - "paclet:ref/Association", - "https://reference.wolfram.com/language/ref/Association.html" - }, - "TextRefLink", - DisplayFunction -> - (Function[ - TagBox[ - ButtonBox[ - StyleBox[ - #1, - ShowStringCharacters -> True, - FontFamily -> "Source Sans Pro" - ], - BaseStyle -> { - "Link", - FontColor -> - LightDarkSwitched[ - RGBColor[0.02, 0.286, 0.651], - RGBColor[0.2823, 0.6666, 0.949] - ] - }, - ButtonData -> #2, - ContentPadding -> False - ], - MouseAppearanceTag["LinkHand"] - ] - ]) - ] - ] - ], - "\:3092", - Cell[ - BoxData[ - TemplateBox[ - { - "GroupBy", - "paclet:ref/GroupBy", - "https://reference.wolfram.com/language/ref/GroupBy.html" - }, - "TextRefLink", - DisplayFunction -> - (Function[ - TagBox[ - ButtonBox[ - StyleBox[ - #1, - ShowStringCharacters -> True, - FontFamily -> "Source Sans Pro" - ], - BaseStyle -> { - "Link", - FontColor -> - LightDarkSwitched[ - RGBColor[0.02, 0.286, 0.651], - RGBColor[0.2823, 0.6666, 0.949] - ] - }, - ButtonData -> #2, - ContentPadding -> False - ], - MouseAppearanceTag["LinkHand"] - ] - ]) - ] - ] - ], - "\:3068\:3068\:3082\:306b\:4f7f\:7528\:3059\:308b\:4f8b\:3092\:898b\:305b\:3066\:304f\:3060\:3055\:3044\:300d" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "958184f3-4833-6e49-8473-d02f703456e9", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 47, 6.03788}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"\\\"Show me examples of using \", Cell[BoxData[TemplateBox[{\"Association\", \"paclet:ref/Association\", \"https://reference.wolfram.com/language/ref/Association.html\"}, \"TextRefLink\", DisplayFunction -> (TagBox[ButtonBox[StyleBox[#1, ShowStringCharacters -> True, FontFamily -> \"Source Sans Pro\"], BaseStyle -> {\"Link\", FontColor -> LightDarkSwitched[RGBColor[0.02, 0.286, 0.651], RGBColor[0.2823, 0.6666, 0.949]]}, ButtonData -> #2, ContentPadding -> False], MouseAppearanceTag[\"LinkHand\"]] & )]]], \" with \", Cell[BoxData[TemplateBox[{\"GroupBy\", \"paclet:ref/GroupBy\", \"https://reference.wolfram.com/language/ref/GroupBy.html\"}, \"TextRefLink\", DisplayFunction -> (TagBox[ButtonBox[StyleBox[#1, ShowStringCharacters -> True, FontFamily -> \"Source Sans Pro\"], BaseStyle -> {\"Link\", FontColor -> LightDarkSwitched[RGBColor[0.02, 0.286, 0.651], RGBColor[0.2823, 0.6666, 0.949]]}, ButtonData -> #2, ContentPadding -> False], MouseAppearanceTag[\"LinkHand\"]] & )]]], \"\\\"\"}], \"Item\", CellID -> 29133693]" - |>, - CellTags -> "Translated", - CellID -> 29133693 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b3\:30fc\:30c9\:652f\:63f4", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "19fc530b-f4ab-d84e-8da9-34430b486ba7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 47, 10.3594}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Code Assistance\", \"Subsection\", CellID -> 7891218]" - |>, - CellTags -> "Translated", - CellID -> 7891218 - ], - Cell[ - "\:300c\:3042\:308b\:6570\:306e\:3059\:3079\:3066\:306e\:7d20\:56e0\:6570\:3092\:898b\:4ed8\:3051\:308bWolfram\:8a00\:8a9e\:95a2\:6570\:3092\:66f8\:304f\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b97775ac-df02-7241-a62e-3c4ea5a116f9", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 47, 11.8474}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"Write a Wolfram Language function that finds all prime factors of a number\\\"\", \"Item\", CellID -> 571185468]" - |>, - CellTags -> "Translated", - CellID -> 571185468 - ], - Cell[ - "\:300cWolfram\:8a00\:8a9e\:3067CSV\:30d5\:30a1\:30a4\:30eb\:3092\:8aad\:307f\:8fbc\:307f\:ff0c\:5217\:5e73\:5747\:3092\:8a08\:7b97\:3059\:308b\:306b\:306f\:3069\:306e\:3088\:3046\:306b\:3059\:308b\:306e\:304b\:ff1f\:300d", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "ea8019d3-ae27-ac43-a6a0-4a8eac6ea06f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 47, 13.2963}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"\\\"How do I read a CSV file and compute column averages in Wolfram Language?\\\"\", \"Item\", CellID -> 541190876]" - |>, - CellTags -> "Translated", - CellID -> 541190876 - ], - Cell[ - TextData[ - { - "\:300c\:3053\:306e\:30b3\:30fc\:30c9\:304c\:4f55\:3092\:3059\:308b\:304b\:3092\:8aac\:660e\:3057\:3066\:ff1a", - Cell[ - BoxData[ - Cell["FoldList[Plus, 0, Range[10]]", Background -> None] - ], - "InlineCode" - ], - "\:300d" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "528817b6-1242-d34f-8946-aa7b0e0bb82c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 17, 47, 15.0056}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"\\\"Explain what this code does: \", Cell[BoxData[Cell[\"FoldList[Plus, 0, Range[10]]\", Background -> None]], \"InlineCode\"], \"\\\"\"}], \"Item\", CellID -> 36720943]" - |>, - CellTags -> "Translated", - CellID -> 36720943 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:6c38\:7d9a\:7684\:306a\:6307\:793a\:306e\:8a18\:8ff0", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "58aad669-e181-444d-b6dd-9ddba5d16e4f", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 3, 50.8163}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Writing Persistent Instructions\", \"Section\", CellID -> 75559606]" - |>, - CellTags -> "Translated", - CellID -> 75559606 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:6c38\:7d9a\:7684\:306a\:6307\:793a\:3068\:306f\:4f55\:304b", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2ebc3ebd-e3c6-944f-8818-8bdf01545f76", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 3, 52.5415}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"What Are Persistent Instructions?\", \"Subsection\", CellID -> 158003487]" - |>, - CellTags -> "Translated", - CellID -> 158003487 - ], - Cell[ - "\:6c38\:7d9a\:7684\:306a\:6307\:793a\:306f\:ff0c\:5404\:4f1a\:8a71\:306e\:958b\:59cb\:6642\:306b\:30c1\:30e3\:30c3\:30c8\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:304cAI\:306b\:9001\:4fe1\:3059\:308b\:30ab\:30b9\:30bf\:30e0\:30c6\:30ad\:30b9\:30c8\:3067\:3042\:308b\:ff0e\:3053\:308c\:3089\:306f\:5e38\:8a2d\:306e\:6307\:793a\:306e\:3088\:3046\:306b\:6a5f\:80fd\:3057\:ff0c\:540c\:3058\:8a2d\:5b9a\:3092\:7e70\:308a\:8fd4\:3057\:6307\:5b9a\:3057\:306a\:304f\:3068\:3082\:ff0cAI\:304c\:5e38\:306b\:30e6\:30fc\:30b6\:306e\:8a2d\:5b9a\:306b\:5f93\:3046\:3053\:3068\:3092\:4fdd\:8a3c\:3059\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f9bdeee7-cf80-fe40-a4b2-cd434908e979", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 3, 54.0532}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Persistent instructions are custom text that your chat client sends to the AI at the start of every conversation. They act like standing orders, ensuring the AI always follows your preferences without you having to repeat them.\", \"Text\", CellID -> 535479521]" - |>, - CellTags -> "Translated", - CellID -> 535479521 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:8a2d\:5b9a\:65b9\:6cd5", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "fc6f1444-b904-b743-96e6-f807a5c93ca6", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 9, 48.068}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"How to Set Them\", \"Subsection\", CellID -> 209095862]" - |>, - CellTags -> "Translated", - CellID -> 209095862 - ], - Cell[ - TextData[ - StyleBox["Claude Desktop\:ff1a", FontWeight -> Bold] - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "456580b7-a598-b64c-8fcd-d0e69a8b7d31", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 9, 49.9472}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[StyleBox[\"Claude Desktop:\", FontWeight -> Bold]], \"Text\", CellID -> 149468864]" - |>, - CellTags -> "Translated", - CellID -> 149468864 - ], - Cell[ - "1. Claude Desktop\:3092\:958b\:304f", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9932e24c-cb46-ea43-a367-02a8bbe75540", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 9, 51.4817}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"1. Open Claude Desktop\", \"Text\", CellID -> 15482004]" - |>, - CellTags -> "Translated", - CellID -> 15482004 - ], - Cell[ - "2. Settings\:ff08\:6b6f\:8eca\:30a2\:30a4\:30b3\:30f3\:ff09\:306b\:79fb\:52d5\:3059\:308b", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "19f2659e-6c02-8f48-b4b4-c93f6797a57d", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 9, 52.7181}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"2. Go to Settings (gear icon)\", \"Text\", CellID -> 83991596]" - |>, - CellTags -> "Translated", - CellID -> 83991596 - ], - Cell[ - "3.\:300cGeneral\:300d\:30bf\:30d6\:3092\:9078\:629e\:3059\:308b", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b9b7fb2e-3a67-e647-877e-2668b06d9f37", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 9, 54.0806}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"3. Select the \\\"General\\\" tab\", \"Text\", CellID -> 124770646]" - |>, - CellTags -> "Translated", - CellID -> 124770646 - ], - Cell[ - "4. \:300cProfile\:300d\:30bb\:30af\:30b7\:30e7\:30f3\:306e\:4e0b\:306b\:3042\:308b\:30c6\:30ad\:30b9\:30c8\:30d5\:30a3\:30fc\:30eb\:30c9\:306b\:6307\:793a\:3092\:5165\:529b\:3059\:308b", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "fc5c7e2d-2a10-7746-b38d-b1997af47b22", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 9, 55.4407}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"4. Enter your instructions in the text field under the \\\"Profile\\\" section\", \"Text\", CellID -> 6067828]" - |>, - CellTags -> "Translated", - CellID -> 6067828 - ], - Cell[ - "5. \:5909\:66f4\:3092\:4fdd\:5b58\:3059\:308b", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a03ff347-84e0-644b-91f2-b982fd90b819", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 9, 56.9234}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"5. Save changes\", \"Text\", CellID -> 227540489]" - |>, - CellTags -> "Translated", - CellID -> 227540489 - ], - Cell[ - "\:4ed6\:306e\:30c1\:30e3\:30c3\:30c8\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:3082\:901a\:5e38\:306f\:540c\:69d8\:306e\:8a2d\:5b9a\:3092\:5099\:3048\:3066\:3044\:308b\:ff0e\:4f7f\:7528\:3057\:3066\:3044\:308b\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306e\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3092\:53c2\:7167\:3059\:308b\:3053\:3068\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "3193d42b-def6-6f4f-b602-f00b813807b2", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 9, 58.2332}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Other chat applications typically have similar settings. Consult your applications's documentation.\", \"Text\", CellID -> 592138642]" - |>, - CellTags -> "Translated", - CellID -> 592138642 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:542b\:3081\:308b\:3082\:306e", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "31df3b17-5801-7343-a822-d1807d1a60c7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 10, 0.0682074}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"What to Include\", \"Subsection\", CellID -> 49486562]" - |>, - CellTags -> "Translated", - CellID -> 49486562 - ], - Cell[ - "\:6c38\:7d9a\:7684\:306a\:6307\:793a\:306f\:ff0c\:6b21\:306e\:5185\:5bb9\:3092\:8a18\:8ff0\:3057\:3066\:3044\:308b\:5834\:5408\:306b\:6700\:3082\:9069\:5207\:306b\:6a5f\:80fd\:3059\:308b\:ff1a", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "a642d177-3a7b-9042-a177-02106ecd30ed", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 10, 1.55426}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Persistent instructions work best when they describe:\", \"Text\", CellID -> 7720004]" - |>, - CellTags -> "Translated", - CellID -> 7720004 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:7d50\:679c\:3092\:3069\:306e\:3088\:3046\:306b\:63d0\:793a\:3059\:308b\:3053\:3068\:3092\:671b\:3080\:304b", - FontWeight -> Bold - ], - "\:ff08\:5e73\:6613\:306a\:8a00\:8a9e\:ff0c\:30b3\:30fc\:30c9\:ff0c\:6bb5\:968e\:7684\:8aac\:660e\:ff09" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "bfaf5972-4fc9-a149-95a3-eafba51e2226", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 10, 3.1932}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"How you want results presented\", FontWeight -> Bold], \" (plain language, code, step-by-step)\"}], \"Item\", CellID -> 27890452]" - |>, - CellTags -> "Translated", - CellID -> 27890452 - ], - Cell[ - TextData[ - { - StyleBox["\:80cc\:666f\:60c5\:5831", FontWeight -> Bold], - "\:ff08AI\:304c\:8aac\:660e\:306e\:6df1\:3055\:3092\:8abf\:6574\:3059\:308b\:306e\:306b\:5f79\:7acb\:3064\:ff09" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "183f26b1-f371-4141-8baa-2430ddcdfefa", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 10, 4.86672}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Your background\", FontWeight -> Bold], \" (helps the AI calibrate explanation depth)\"}], \"Item\", CellID -> 10935826]" - |>, - CellTags -> "Translated", - CellID -> 10935826 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:63a8\:5968\:30c4\:30fc\:30eb", - FontWeight -> Bold - ], - "\:ff08Wolfram Alpha\:3068\:30b3\:30fc\:30c9\:8a55\:4fa1\:306e\:3069\:3061\:3089\:3092\:3044\:3064\:4f7f\:7528\:3059\:308b\:304b\:ff09" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b3f204c0-6046-5f43-b98e-381943735942", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 12, 6.57063}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Preferred tools\", FontWeight -> Bold], \" (when to use Wolfram Alpha vs. code evaluation)\"}], \"Item\", CellID -> 211056864]" - |>, - CellTags -> "Translated", - CellID -> 211056864 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:4e00\:822c\:7684\:306a\:30bf\:30b9\:30af", - FontWeight -> Bold - ], - "\:ff08\:901a\:5e38\:554f\:3044\:5408\:305b\:308b\:5185\:5bb9\:ff09" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "5bb8f3cd-3831-ea46-8ad3-277d55e706ae", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 12, 8.25276}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Common tasks\", FontWeight -> Bold], \" (what you typically ask about)\"}], \"Item\", CellID -> 189721830]" - |>, - CellTags -> "Translated", - CellID -> 189721830 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:3059\:3050\:306b\:4f7f\:7528\:3067\:304d\:308b\:30c6\:30f3\:30d7\:30ec\:30fc\:30c8", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "96f9fcc7-a3db-8e4a-96e0-c0c284e59d8a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 12, 9.90411}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Ready-to-Use Templates\", \"Subsection\", CellID -> 783174275]" - |>, - CellTags -> "Translated", - CellID -> 783174275 - ], - Cell[ - "\:3053\:308c\:3089\:306e\:30c6\:30f3\:30d7\:30ec\:30fc\:30c8\:3092\:6c38\:7d9a\:7684\:306a\:6307\:793a\:306b\:30b3\:30d4\:30fc\:30a2\:30f3\:30c9\:30da\:30fc\:30b9\:30c8\:3057\:ff0c\:5fc5\:8981\:306b\:5fdc\:3058\:3066\:305d\:308c\:3089\:3092\:4fee\:6b63\:3059\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c594c429-a7fb-5f4c-b98a-4367b950d8d1", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 12, 11.22}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Copy and paste any of these templates into your persistent instructions. Modify them to suit your needs.\", \"Text\", CellID -> 473410091]" - |>, - CellTags -> "Translated", - CellID -> 473410091 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:4e00\:822c\:7684\:306a\:8a08\:7b97\:7528\:9014", - "Subsubsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "2eddce72-f9ea-5e4a-ad1c-5aca7d97cde9", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 12, 12.9101}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"General Computational Use\", \"Subsubsection\", CellID -> 941786232]" - |>, - CellTags -> "Translated", - CellID -> 941786232 - ], - Cell[ - "When I ask mathematical or scientific questions, use Wolfram tools to compute\nexact answers rather than approximating. Show the Wolfram Language code you used\nso I can learn from it.\n\nFor factual questions (population, distance, chemical properties, etc.), use\nWolframAlpha for up-to-date data.\n\nWhen producing plots or visualizations, use clear labels and legends.", - "Program", - CellID -> 664932516 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Wolfram\:8a00\:8a9e\:3092\:5b66\:3076", - "Subsubsection", - CellID -> 39927762 - ], - Cell[ - "I am learning Wolfram Language. When I ask how to do something:\n\n1. First use WolframContext to find relevant functions and documentation\n2. Write the code using WolframLanguageEvaluator and show me the result\n3. Explain each part of the code\n4. Suggest related functions I might find useful\n\nPrefer idiomatic Wolfram Language style. Use functional programming patterns\n(Map, Select, Fold, etc.) over procedural loops when appropriate. Show\nalternative approaches when they exist.", - "Program", - CellID -> 104521594 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:7814\:7a76\:3068\:30c7\:30fc\:30bf\:89e3\:6790", - "Subsubsection", - CellID -> 284998635 - ], - Cell[ - "I use Wolfram tools for research and data analysis. When I ask questions:\n\n- Use WolframAlpha for current data and facts\n- Use WolframLanguageEvaluator for computations, statistics, and visualizations\n- Always cite the source of factual data (e.g., \"According to Wolfram Alpha...\")\n- When creating visualizations, export them at high resolution\n\nFor statistical analysis, show the code and interpret the results in plain\nlanguage. Include relevant measures of uncertainty (confidence intervals,\np-values) when appropriate.", - "Program", - CellID -> 473329135 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:6307\:793a\:3092\:30ab\:30b9\:30bf\:30de\:30a4\:30ba\:3059\:308b\:305f\:3081\:306e\:30d2\:30f3\:30c8", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9efa299c-b1e0-d142-a9eb-9df85992d22c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 13, 52.6021}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Tips for Customizing Instructions\", \"Subsection\", CellID -> 43986133]" - |>, - CellTags -> "Translated", - CellID -> 43986133 - ], - Cell[ - "\:5206\:91ce\:307e\:305f\:306f\:9818\:57df\:306b\:3064\:3044\:3066\:5177\:4f53\:7684\:306b\:8a18\:3059\:ff08\:300c\:4fe1\:53f7\:51e6\:7406\:3092\:3084\:3063\:3066\:3044\:308b\:300d\:307e\:305f\:306f\:300c\:5b66\:90e8\:30ec\:30d9\:30eb\:306e\:5fae\:7a4d\:5206\:3092\:6559\:3048\:3066\:3044\:308b\:300d\:7b49\:ff09", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "daea40a6-c4b9-3b42-9f4e-f487913ecdf3", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 13, 53.8841}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Be specific about your field or domain (e.g., \\\"I work in signal processing\\\" or \\\"I teach undergraduate calculus\\\")\", \"Item\", CellID -> 178125348]" - |>, - CellTags -> "Translated", - CellID -> 178125348 - ], - Cell[ - TextData[ - { - "\:51fa\:529b\:306e\:8a2d\:5b9a\:3092\:8a18\:8f09\:3059\:308b\:ff08\:300c\:5e38\:306b", - Cell[ - BoxData[ - FormBox[ - StyleBox[ - RowBox[ - { - "L", - StyleBox[ - AdjustmentBox[ - "A", - BoxBaselineShift -> -0.4, - BoxMargins -> {{-0.5, -0.3}, {0, 0}} - ], - FontSize -> Smaller - ], - "T", - AdjustmentBox[ - "E", - BoxBaselineShift -> 0.5, - BoxMargins -> {{-0.3, 0}, {0, 0}} - ], - "X" - } - ], - SingleLetterItalics -> False - ], - TraditionalForm - ] - ] - ], - "\:5f62\:5f0f\:306e\:6307\:63ee\:3092\:8868\:793a\:3057\:3066\:300d\:307e\:305f\:306f\:300c\:3059\:3079\:3066\:306e\:7269\:7406\:91cf\:306e\:5358\:4f4d\:3092\:542b\:3081\:3066\:300d\:7b49\:ff09" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "68be5eb6-084c-e44c-b78b-87f9b29f4df8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 13, 55.4141}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Mention output preferences (e.g., \\\"Always show LaTeX-formatted equations\\\" or \\\"Include units in all physical quantities\\\")\", \"Item\", CellID -> 59625381]" - |>, - CellTags -> "Translated", - CellID -> 59625381 - ], - Cell[ - "\:8aac\:660e\:304c\:9069\:5207\:306b\:8abf\:6574\:3055\:308c\:308b\:3088\:3046\:ff0c\:7d4c\:9a13\:30ec\:30d9\:30eb\:3092\:793a\:3059", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "9953e287-4aa6-9e41-95e4-af14a939d9e1", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 13, 56.9696}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"State your experience level so explanations are calibrated appropriately\", \"Item\", CellID -> 195427367]" - |>, - CellTags -> "Translated", - CellID -> 195427367 - ], - Cell[ - "\:6307\:793a\:306f\:7c21\:6f54\:306b\:4fdd\:3064\:ff0e\:904e\:5ea6\:306b\:9577\:3044\:6307\:793a\:306f\:305d\:306e\:52b9\:679c\:3092\:5f31\:3081\:308b\:53ef\:80fd\:6027\:304c\:3042\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "834fba4f-3128-8e4a-90eb-00c9d5e6dc97", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 13, 58.409}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Keep instructions concise; overly long instructions may dilute their effect\", \"Item\", CellID -> 118093262]" - |>, - CellTags -> "Translated", - CellID -> 118093262 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:6700\:826f\:306e\:7d50\:679c\:3092\:5f97\:308b\:305f\:3081\:306e\:30d2\:30f3\:30c8", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "7e3afcb5-d4c9-d743-9466-36064afdfbb0", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 14, 0.199862}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Tips for Best Results\", \"Section\", CellID -> 452082393]" - |>, - CellTags -> "Translated", - CellID -> 452082393 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:5177\:4f53\:7684\:3067\:3042\:308b\:3053\:3068\:ff0e", - FontWeight -> Bold - ], - "\:300c0\:304b\:308920\:307e\:3067\:306eBessel\:95a2\:6570J0\:3092\:30d7\:30ed\:30c3\:30c8\:300d\:3068\:3059\:308b\:65b9\:304c\:ff0c\:300cBessel\:95a2\:6570\:3092\:898b\:305b\:3066\:300d\:3088\:308a\:3082\:9069\:5207\:3067\:3042\:308b\:ff0e" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "074462de-b7c0-dc42-8e1a-34afb2dabbf2", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 14, 1.35148}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Be specific.\", FontWeight -> Bold], \" \\\"Plot the Bessel function J0 from 0 to 20\\\" works better than \\\"Show me a Bessel function.\\\"\"}], \"Item\", CellID -> 451321533]" - |>, - CellTags -> "Translated", - CellID -> 451321533 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:8aac\:660e\:3092\:6c42\:3081\:308b\:ff0e", - FontWeight -> Bold - ], - "\:300c\:3053\:308c\:3092\:89e3\:3044\:3066\:ff0e\:300d\:3060\:3051\:3067\:306f\:306a\:304f\:300c\:3053\:308c\:3092\:89e3\:3044\:3066\:ff0c\:5404\:30b9\:30c6\:30c3\:30d7\:3092\:8aac\:660e\:3057\:3066\:ff0e\:300d\:3068\:3059\:308b\:3068\:ff0c\:3088\:308a\:6709\:7528\:306a\:5fdc\:7b54\:304c\:5f97\:3089\:308c\:308b\:ff0e" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "46d708cb-a549-7b4e-be84-8c6aa975351a", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 14, 3.38676}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Ask for explanations.\", FontWeight -> Bold], \" \\\"Solve this and explain each step\\\" produces more useful responses than just \\\"Solve this.\\\"\"}], \"Item\", CellID -> 194054500]" - |>, - CellTags -> "Translated", - CellID -> 194054500 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:53ef\:8996\:5316\:3092\:53cd\:5fa9\:7684\:306b\:6539\:826f\:3059\:308b\:ff0e", - FontWeight -> Bold - ], - " \:57fa\:672c\:7684\:306a\:30d7\:30ed\:30c3\:30c8\:304b\:3089\:958b\:59cb\:3057\:ff0c\:305d\:306e\:5f8c\:3067\:300c\:8ef8\:3092\:3088\:308a\:5927\:304d\:304f\:3057\:ff0c\:683c\:5b50\:7dda\:3092\:8ffd\:52a0\:3059\:308b\:ff0e\:300d\:7b49\:8abf\:6574\:3057\:3066\:3044\:304f\:ff0e" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "fae06aa2-693c-544f-9cbc-c9fc7c1636be", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 14, 5.12497}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Iterate on visualizations.\", FontWeight -> Bold], \" Start with a basic plot, then refine: \\\"Make the axes larger and add a grid.\\\"\"}], \"Item\", CellID -> 4065314]" - |>, - CellTags -> "Translated", - CellID -> 4065314 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:30c4\:30fc\:30eb\:3092\:7d44\:307f\:5408\:305b\:308b\:ff0e", - FontWeight -> Bold - ], - "\:300c\:9ed2\:4f53\:653e\:5c04\:306e\:516c\:5f0f\:3092\:8abf\:3079\:ff0c\:305d\:306e\:5f8cT = 3000K\:ff0c5000K\:ff0c\:304a\:3088\:30737000K\:306b\:3064\:3044\:3066\:305d\:308c\:3092\:30d7\:30ed\:30c3\:30c8\:3059\:308b\:300d\:306f\:ff0c\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:691c\:7d22\:3068\:30b3\:30fc\:30c9\:8a55\:4fa1\:306e\:4e21\:65b9\:3092\:7528\:3044\:308b\:3082\:306e\:3067\:3042\:308b\:ff0e" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "c5a6288a-2428-ec4e-8eed-f0f7ef78b2d7", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 14, 6.89274}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Combine tools.\", FontWeight -> Bold], \" \\\"Look up the formula for black body radiation and then plot it for T = 3000K, 5000K, and 7000K\\\" uses both documentation search and code evaluation.\"}], \"Item\", CellID -> 34480618]" - |>, - CellTags -> "Translated", - CellID -> 34480618 - ], - Cell[ - TextData[ - { - StyleBox[ - "\:30b3\:30fc\:30c9\:3092\:8981\:6c42\:3059\:308b\:ff0e", - FontWeight -> Bold - ], - " \:5b66\:7fd2\:3057\:305f\:3044\:5834\:5408\:306b\:306f\:ff0cAI\:304c\:5b9f\:884c\:3059\:308b\:5185\:5bb9\:3092\:78ba\:8a8d\:3059\:308b\:305f\:3081\:306b\:300cWolfram\:8a00\:8a9e\:30b3\:30fc\:30c9\:3092\:898b\:305b\:3066\:300d\:3068\:5c0b\:306d\:308b\:3068\:3088\:3044\:ff0e" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "be2c5935-a65e-ac45-963b-8c416d43a129", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 14, 8.93774}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{StyleBox[\"Request code.\", FontWeight -> Bold], \" If you want to learn, ask \\\"Show me the Wolfram Language code\\\" to see what the AI runs.\"}], \"Item\", CellID -> 805104291]" - |>, - CellTags -> "Translated", - CellID -> 805104291 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30c8\:30e9\:30d6\:30eb\:30b7\:30e5\:30fc\:30c6\:30a3\:30f3\:30b0", - "Section", - TaggingRules -> <| - "OrignialExpressionUUID" -> "129c33a9-c316-5e49-b84e-51c834824f37", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 29.5958}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Troubleshooting\", \"Section\", CellID -> 22281248]" - |>, - CellTags -> "Translated", - CellID -> 22281248 - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30c1\:30e3\:30c3\:30c8\:306b\:30c4\:30fc\:30eb\:304c\:8868\:793a\:3055\:308c\:306a\:3044", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "f06776e1-4861-494e-b2cc-b1e70417c5f2", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 31.0853}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Tools not appearing in chat\", \"Subsection\", CellID -> 159463832]" - |>, - CellTags -> "Translated", - CellID -> 159463832 - ], - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:5f8c\:306f\:30c1\:30e3\:30c3\:30c8\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:3092\:5b8c\:5168\:306b\:518d\:8d77\:52d5\:3059\:308b\:ff08\:30a6\:30a3\:30f3\:30c9\:30a6\:3092\:9589\:3058\:308b\:3060\:3051\:3067\:306f\:ff0c\:30b7\:30b9\:30c6\:30e0\:30c8\:30ec\:30a4\:306b\:6700\:5c0f\:5316\:3055\:308c\:308b\:3060\:3051\:3067\:3042\:308b\:3053\:3068\:304c\:3088\:304f\:3042\:308b\:ff09", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "d6a13c3d-4366-9145-88db-c11e83aeef39", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 32.8221}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Fully restart your chat client after installing (closing the window often just minimizes it to the system tray)\", \"Item\", CellID -> 271981202]" - |>, - CellTags -> "Translated", - CellID -> 271981202 - ], - Cell[ - TextData[ - { - Cell[ - BoxData[Cell["InstallMCPServer", Background -> None]], - "InlineCode" - ], - "\:304c\:8fd4\:3059\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:3092\:624b\:52d5\:3067\:78ba\:8a8d\:3057\:ff0c\:30b5\:30fc\:30d0\:304c\:6b63\:3057\:304f\:8a2d\:5b9a\:3055\:308c\:3066\:3044\:308b\:3053\:3068\:3092\:78ba\:5b9f\:306b\:3059\:308b" - } - ], - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "b3109ed9-b8bf-d946-8ad3-362b9a7f24cb", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 34.7669}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"Manually inspect the configuration file returned by \", Cell[BoxData[Cell[\"InstallMCPServer\", Background -> None]], \"InlineCode\"], \" to ensure the server is configured correctly\"}], \"Item\", CellID -> 942291133]" - |>, - CellTags -> "Translated", - CellID -> 942291133 - ], - Cell[ - "\:30af\:30e9\:30a4\:30a2\:30f3\:30c8\:306e\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:3067\:30ed\:30b0\:30d5\:30a1\:30a4\:30eb\:306e\:5834\:6240\:3092\:78ba\:8a8d\:3057\:ff0c\:30a8\:30e9\:30fc\:304c\:306a\:3044\:304b\:78ba\:8a8d\:3059\:308b", - "Item", - TaggingRules -> <| - "OrignialExpressionUUID" -> "230681f3-0848-f744-864a-b6396ff1a4a4", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 40.1754}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Check your client's documentation for location of log files and check for errors\", \"Item\", CellID -> 83468063]" - |>, - CellTags -> "Translated", - CellID -> 83468063 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "WolframContext\:304c\:4e88\:671f\:3055\:308c\:305f\:901a\:308a\:306b\:52d5\:4f5c\:3057\:3066\:3044\:306a\:3044", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "48756f46-2012-7140-8a86-0a0bb7c067e8", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 41.8344}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"WolframContext not working as expected\", \"Subsection\", CellID -> 90974841]" - |>, - CellTags -> "Translated", - CellID -> 90974841 - ], - Cell[ - TextData[ - { - "\:5b8c\:5168\:306a\:6a5f\:80fd\:6027\:306e\:305f\:3081\:306b\:306f\:ff0c", - Cell[ - BoxData[Cell["WolframContext", Background -> None]], - "InlineCode" - ], - "\:30c4\:30fc\:30eb\:306b\:306f", - ButtonBox[ - "LLM Kit\:30b5\:30d6\:30b9\:30af\:30ea\:30d7\:30b7\:30e7\:30f3", - BaseStyle -> "Hyperlink", - ButtonData -> { - URL["https://www.wolfram.com/notebook-assistant-llm-kit/"], - None - }, - ButtonNote -> "https://www.wolfram.com/notebook-assistant-llm-kit/" - ], - "\:304c\:5fc5\:8981\:3067\:3042\:308b\:ff0e\:3053\:308c\:304c\:306a\:3044\:5834\:5408\:ff0cWolfram Alpha\:306e\:7d50\:679c\:306f\:542b\:307e\:308c\:305a\:ff0c\:30c9\:30ad\:30e5\:30e1\:30f3\:30c8\:691c\:7d22\:306e\:7cbe\:5ea6\:306f\:4f4e\:4e0b\:3059\:308b\:ff0e", - Cell[ - BoxData[ - Cell["WolframLanguageEvaluator", Background -> None] - ], - "InlineCode" - ], - "\:30c4\:30fc\:30eb\:304a\:3088\:3073", - StyleBox["WolframAlpha", "InlineCode"], - "\:30c4\:30fc\:30eb\:306f\:ff0cLLM Kit\:306a\:3057\:3067\:3082\:52d5\:4f5c\:3059\:308b\:ff0e" - } - ], - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "00e0bacd-3ffa-6c48-b035-e10101fa8447", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 43.222}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[TextData[{\"The \", Cell[BoxData[Cell[\"WolframContext\", Background -> None]], \"InlineCode\"], \" tool requires an \", ButtonBox[\"LLM Kit subscription\", BaseStyle -> \"Hyperlink\", ButtonData -> {URL[\"https://www.wolfram.com/notebook-assistant-llm-kit/\"], None}, ButtonNote -> \"https://www.wolfram.com/notebook-assistant-llm-kit/\"], \" for full functionality. Without it, Wolfram Alpha results will not be included and the documentation search will be less accurate. The \", Cell[BoxData[Cell[\"WolframLanguageEvaluator\", Background -> None]], \"InlineCode\"], \" and \", StyleBox[\"WolframAlpha\", \"InlineCode\"], \" tools work without LLM Kit.\"}], \"Text\", CellID -> 89496951]" - |>, - CellTags -> "Translated", - CellID -> 89496951 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:8a08\:7b97\:30bf\:30a4\:30e0\:30a2\:30a6\:30c8", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "72850075-1fb4-954e-b874-b15f11779e3c", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 46.2304}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Computation timeouts\", \"Subsection\", CellID -> 171459862]" - |>, - CellTags -> "Translated", - CellID -> 171459862 - ], - Cell[ - "\:30c7\:30d5\:30a9\:30eb\:30c8\:3067\:306f\:ff0c\:8a55\:4fa1\:306b\:306f60\:79d2\:306e\:6642\:9593\:5236\:9650\:304c\:3042\:308b\:ff0e\:9577\:6642\:9593\:5b9f\:884c\:3055\:308c\:308b\:8a08\:7b97\:306b\:3064\:3044\:3066\:306f\:ff0cAI\:306b\:30bf\:30a4\:30e0\:30a2\:30a6\:30c8\:3092\:5897\:3084\:3059\:3088\:3046\:4f9d\:983c\:3059\:308b\:304b\:ff0c\:8a08\:7b97\:3092\:3088\:308a\:5c0f\:3055\:3044\:624b\:9806\:306b\:5206\:5272\:3059\:308b\:304b\:3059\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "d8bf1d46-4b86-9248-bd83-608208de1243", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 47.4495}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"By default, evaluations have a 60-second time limit. For long-running computations, ask the AI to increase the timeout or break the computation into smaller steps.\", \"Text\", CellID -> 394452638]" - |>, - CellTags -> "Translated", - CellID -> 394452638 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "\:30b5\:30fc\:30d0\:304c\:8aa4\:3063\:305f\:30d0\:30fc\:30b8\:30e7\:30f3\:306eWolfram\:8a00\:8a9e\:3092\:4f7f\:7528\:3057\:3066\:3044\:308b", - "Subsection", - TaggingRules -> <| - "OrignialExpressionUUID" -> "047210d4-ab1f-b741-8b29-4bc38ea9a035", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 49.2278}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"Server is using the wrong version of Wolfram Language\", \"Subsection\", CellID -> 153770202]" - |>, - CellTags -> "Translated", - CellID -> 153770202 - ], - Cell[ - "\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:305fMCP server\:306f\:ff0c\:305d\:308c\:304c\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3055\:308c\:305f\:30bb\:30c3\:30b7\:30e7\:30f3\:3068\:540c\:3058\:30d0\:30fc\:30b8\:30e7\:30f3\:306eWolfram\:8a00\:8a9e\:3092\:4f7f\:7528\:3059\:308b\:ff0e\:7570\:306a\:308b\:30d0\:30fc\:30b8\:30e7\:30f3\:306eWolfram\:8a00\:8a9e\:3092\:4f7f\:7528\:3057\:305f\:3044\:5834\:5408\:306b\:306f\:ff0c\:305d\:306e\:30d0\:30fc\:30b8\:30e7\:30f3\:306e\:30bb\:30c3\:30b7\:30e7\:30f3\:5185\:3067MCP server\:3092\:30a4\:30f3\:30b9\:30c8\:30fc\:30eb\:3059\:308b\:304b\:ff0c\:307e\:305f\:306f\:7570\:306a\:308bWolfram\:30ab\:30fc\:30cd\:30eb\:3092\:6307\:3059\:3088\:3046\:306b\:8a2d\:5b9a\:30d5\:30a1\:30a4\:30eb\:3092\:624b\:52d5\:3067\:7de8\:96c6\:3059\:308b\:5fc5\:8981\:304c\:3042\:308b\:ff0e", - "Text", - TaggingRules -> <| - "OrignialExpressionUUID" -> "05e58d53-65bc-2646-80ba-64191daf1914", - "TranslationLanguage" -> "Japanese (Dearu)", - "TranslatedQ" -> True, - "Date" -> {2026, 5, 21, 18, 19, 50.6824}, - "Model" -> <|"Service" -> "OpenAI", "Name" -> "gpt-5.4"|>, - "Temperature" -> 1, - "OriginalCellString" -> "Cell[\"The installed MCP server will use the same version of Wolfram Language as the session it was installed from. If you want to use a different version of Wolfram Language, you need to install the MCP server in a session of that version or manually edit the configuration file to point to a different Wolfram kernel.\", \"Text\", CellID -> 491118053]" - |>, - CellTags -> "Translated", - CellID -> 491118053 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Related Guides", - "TutorialMoreAboutSection", - CellID -> 30933676 - ], - Cell["XXXX", "TutorialMoreAbout", CellID -> 41163006] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell[ - "Related Tech Notes", - "RelatedTutorialsSection", - CellID -> 321653818 - ], - Cell[ - TextData[ - ButtonBox[ - "AI\:30b3\:30fc\:30c7\:30a3\:30f3\:30b0\:30a2\:30d7\:30ea\:30b1\:30fc\:30b7\:30e7\:30f3\:306e\:30af\:30a4\:30c3\:30af\:30b9\:30bf\:30fc\:30c8", - BaseStyle -> "Link", - ButtonData -> "paclet:Wolfram/AgentTools/tutorial/QuickStartforAICodingApplications" - ] - ], - "RelatedTutorials", - CellID -> 99153841 - ] - }, - Open - ] - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Metadata", "MetadataSection", CellID -> 348609541], - Cell[ - TextData[ - { - "New in: ", - Cell["XX", "HistoryData", CellTags -> "New"], - " | Modified in: ", - Cell[" ", "HistoryData", CellTags -> "Modified"], - " | Obsolete in: ", - Cell[" ", "HistoryData", CellTags -> "Obsolete"] - } - ], - "History", - CellID -> 615709013 - ], - Cell[ - CellGroupData[ - { - Cell[ - "Categorization", - "CategorizationSection", - CellID -> 351771628 - ], - Cell[ - "Tech Note", - "Categorization", - CellLabel -> "Entity Type", - CellID -> 85180380 - ], - Cell[ - "Wolfram/AgentTools", - "Categorization", - CellLabel -> "Paclet Name", - CellID -> 687020073 - ], - Cell[ - "Wolfram`AgentTools`", - "Categorization", - CellLabel -> "Context", - CellID -> 304550646 - ], - Cell[ - "Wolfram/AgentTools/tutorial/QuickStartforChatClients", - "Categorization", - CellLabel -> "URI", - CellID -> 121774767 - ] - }, - Open - ] - ], - Cell[ - CellGroupData[ - { - Cell["Keywords", "KeywordsSection", CellID -> 278158923], - Cell["XXXX", "Keywords", CellID -> 130938507] - }, - Open - ] - ] - }, - Open - ] - ] - }, - TaggingRules -> <|"Paclet" -> "Wolfram/AgentTools"|>, - SpellingDictionaries -> { - "CorrectWords" -> {"tokenizers", "Hennigan", "Keene", "md"} - }, - StyleDefinitions -> - FrontEnd`FileName[ - {"Wolfram"}, - "TechNotePageStylesExt.nb", - CharacterEncoding -> "UTF-8" - ] -] \ No newline at end of file