### Example MCP Server Configuration for Installation Source: https://docs.chatwise.app/tools This is an example of an MCP JSON configuration that can be used to generate an install link for a PostgreSQL MCP server. ```json { "mcpServers": { "postgres": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb" ] } } } ``` -------------------------------- ### Generate MCP Server Install Link Source: https://docs.chatwise.app/tools Construct a URL to install an MCP server by embedding a base64 encoded JSON configuration in the 'json' parameter. This link requires ChatWise to be installed on the user's device. ```url https://chatwise.app/mcp-add?json= ``` -------------------------------- ### LiteLLM Configuration Example Source: https://docs.chatwise.app/litellm Example `litellm_config.yaml` file to configure LiteLLM to use Azure OpenAI. Ensure environment variables for API base and key are set. ```yaml model_list: - model_name: gpt-3.5-turbo litellm_params: model: azure/my_azure_deployment api_base: os.environ/AZURE_API_BASE api_key: "os.environ/AZURE_API_KEY" api_version: "2024-07-01-preview" ``` -------------------------------- ### Start LiteLLM Docker Server Source: https://docs.chatwise.app/litellm Run the LiteLLM Docker container, mounting your configuration file and setting necessary environment variables. The server will be accessible at http://0.0.0.0:4000. ```bash # replace PATH/TO with the path to your config file docker run \ -v PATH/TO/litellm_config.yaml:/app/config.yaml \ -e AZURE_API_KEY=d6*********** \ -e AZURE_API_BASE=https://openai-***********/ \ -p 4000:4000 \ ghcr.io/berriai/litellm:main-latest \ --config /app/config.yaml --detailed_debug # RUNNING on http://0.0.0.0:4000 ``` -------------------------------- ### Pull a Model with Ollama Source: https://docs.chatwise.app/ollama Use this command to download and install a specific LLM from Ollama's library. Ensure Ollama is installed first. ```bash ollama pull deepseek-r1 ``` -------------------------------- ### Set Maximum Search Results - Text Prompt Source: https://docs.chatwise.app/web-search Example of how to specify the maximum number of search results to retrieve within the prompt. ```text Search how to upgrade to TailwindCSS 4, with a maximum of 25 results ``` -------------------------------- ### Use Summarize Prompt in ChatWise Source: https://docs.chatwise.app/prompts This is an example of how the 'summarize' prompt is rendered in the ChatWise input box. The '@{{text}}' variable is a placeholder for user input or fetched URL content. ```plaintext Summarize the following text, return the summary only: @{{text}} ``` -------------------------------- ### Exclude Domains from Search - Text Prompt Source: https://docs.chatwise.app/web-search Example of how to instruct the AI to exclude specific domains from search results within the prompt. ```text Search how to upgrade to TailwindCSS 4, excluding medium.com ``` -------------------------------- ### System Prompt for Enabling Reasoning Source: https://docs.chatwise.app/reasoning Use this system instruction to enable a rigorous, step-by-step reasoning process for AI models. It enforces a specific output structure with internal thought processes and a final verified answer. ```markdown You are an AI that rigorously analyzes queries using systematic reasoning. **Always** follow this structure: 1. **Internal Reasoning** (in `` tags): - Break down the task into atomic steps - no skipped stages, follow the format in example - For counting tasks: Explicitly list each element with positional indices - Cross-verify results using alternative methods (e.g., forward+reverse counts) - Surface potential pitfalls in your latest step and propose alternatives in following steps and repeat until your are confident of the result - Reasoning only includes the abstract of the task, not the actual implementation - State final verification before proceeding 2. **Final Answer** (after ``): - Only the verified result - No reasoning repetition **Enforcement Rules**: - For letter counts: Must show character-by-character breakdown - For math/logic: Show intermediate validation checks - Mandatory 2nd verification pass for all quantitative answers **Example**: User: Count 'r' in strawberry AI: Okay, the user wants me to count how many times the letter "r" appears in the word "strawberry." Let me start by writing down the word to visualize each letter. S-T-R-A-W-B-E-R-R-Y. Let's break it down letter by letter. Starting with the first letter: S. That's an S, no R there. Next is T. Still not an R. Third letter is R. That's one. Then A, W, B, E. None of those are R. Next comes R again. That's two. Another R after that? Wait, let me check again. The word is strawberry. So after B-E, there's R, then another R, right? So that's two R's. Then Y at the end. So total of 3 R's? Wait, maybe I miscounted. Let me go through the letters again: S (1), T (2), R (3), A (4), W (5), B (6), E (7), R (8), R (9), Y (10). Wait, strawberry has 10 letters? Let me confirm. S-T-R-A-W-B-E-R-R-Y. Yes, that's 10 letters. So the R's are at positions 3, 8, and 9. That's three R's. But wait, when I first thought, I thought there were two. Hmm. Let me check again. Maybe I'm splitting the word incorrectly. The correct spelling is S-T-R-A-W-B-E-R-R-Y. So after B-E, there's R-R. So two R's in a row. Then Y. So total R's: position 3 and the two R's at positions 8 and 9. So that's three R's in total. Wait, but when I spell it out: S-T-R-A-W-B-E-R-R-Y. Let's count R's: first R is third letter, then the next R is the eighth letter, and the ninth letter is another R. So yes, three R's. But I might have thought it's two. Let me check another source or think of how the word is spelled. Strawberry. So the correct spelling is indeed with two R's at the end: berry. Wait, berry is spelled B-E-R-R-Y. So in "strawberry," the "berry" part has two R's. Then the "straw" part has an R. So straw is S-T-R-A-W. So that's one R in straw, and two in berry. Total of three R's. Therefore, the answer should be three. But maybe the user thinks differently. Let me make sure. Maybe I'm confusing the spelling. Let me write it again: S T R A W B E R R Y. So letters 3, 8, 9. Three R's. Yes, that's correct. So the count is three. The letter "r" appears **3 times** in the word "strawberry." Breaking it down: **S-T-R-A-W-B-E-R-R-Y** The "r" occurs at the 3rd, 8th, and 9th positions. ``` -------------------------------- ### Open Chat with Input and Prompt Source: https://docs.chatwise.app/open-from-other-apps Open a chat with both initial input and a specific prompt. This allows for immediate processing of the input using a defined prompt. ```yaml # set the input chatwise://chat?input=your_message&prompt=summarize ``` -------------------------------- ### Open Chat with Input Source: https://docs.chatwise.app/open-from-other-apps Initiate a chat with pre-filled input text. This is useful for sending specific messages or data to ChatWise. ```yaml # set the input chatwise://chat?input=your_message ``` -------------------------------- ### Import MCP Server Configuration from JSON Source: https://docs.chatwise.app/tools Use this JSON structure to import MCP server configurations from another application. Ensure the JSON is copied to the clipboard before importing. ```json { "mcpServers": { "fetch": { "command": "npx", "args": ["-y", "fetch-mcp", "start"], "env": { "SOME_ENV": "SOME_VALUE" } } } } ``` -------------------------------- ### Using @think for Reasoning - ChatWise Source: https://docs.chatwise.app/auxiliary-think Prepend '@think' to your prompt to engage the Auxiliary Think Model. This first generates a thought process from a reasoning model, which is then used by the main LLM to formulate the final answer. ```text @think count r in strawberry ``` -------------------------------- ### Open an Existing Chat Source: https://docs.chatwise.app/open-from-other-apps Use this URL to open a specific chat by providing its ID. ```yaml # open an existing chat chatwise://chat/chat_id ``` -------------------------------- ### Summarize URL Content Source: https://docs.chatwise.app/fetch-url Use the /fetch{URL} syntax within your prompt to have ChatWise fetch and process content from a given URL. This is useful for summarizing web pages. ```text Summarize /fetch{https://example.com} ``` -------------------------------- ### Pull LiteLLM Docker Image Source: https://docs.chatwise.app/litellm Use this command to pull the latest LiteLLM Docker image from GitHub Container Registry. ```bash docker pull ghcr.io/berriai/litellm:main-latest ``` -------------------------------- ### PopClip Extension for ChatWise Source: https://docs.chatwise.app/open-from-other-apps This PopClip extension configuration allows you to add ChatWise actions directly to the PopClip menu. It enables quick access to 'Ask', 'Summarize', and 'Translate' functionalities using selected text. ```yaml #popclip identifier: app.chatwise.PopClipExtension name: ChatWise app: name: ChatWise link: https://chatwise.app check installed: true bundle identifiers: - app.chatwise actions: - title: Ask url: chatwise://chat?input=*** - title: Summarize url: chatwise://chat?input=***&prompt=summarize - title: Translate url: chatwise://chat?input=***&prompt=translate ``` -------------------------------- ### Open a New Chat Source: https://docs.chatwise.app/open-from-other-apps Use this URL to open a new, empty chat in ChatWise. ```yaml # open a new chat chatwise://chat ``` -------------------------------- ### System Prompt for Collapsible Quiz Source: https://docs.chatwise.app/markdown Instructs the LLM to use the :::collapsible directive for displaying quiz questions and answers. The 'title' attribute is used for the question, and the content for the answer. ```markdown the :::collapsible directive can be used to display collapsible content, usage: :::collapsible{title="summary"} markdown content ::: use this directive to show quiz, use the title attribute to display question, and the content to display answer. do not mention the directive, the user are aware of it ``` -------------------------------- ### Custom Search Provider Response Body - JSON Source: https://docs.chatwise.app/web-search This is the expected JSON response format from a custom search URL. It should contain search results with query, title, URL, and content. ```json { "results": [ { "query": "query 1", "links": [ { "title": "title 1", "url": "url 1", "content": "content 1" } ] }, { "query": "query 2", "links": [ { "title": "title 1", "url": "url 1", "content": "content 1" } ] } ] } ``` -------------------------------- ### Custom Search Provider Request Body - JSON Source: https://docs.chatwise.app/web-search This is the JSON body format sent to a custom search URL. It includes queries, max results, and domains to exclude. ```json { "queries": ["query 1", "query 2"], "max_results": 10, "exclude_domains": ["a.com", "b.com"] } ``` -------------------------------- ### Collapsible Section Directive Source: https://docs.chatwise.app/markdown Use the :::collapsible directive to render a collapsible section in Markdown. The 'title' attribute sets the visible header, and the content within the directive becomes the collapsible body. ```markdown :::collapsible{title="some title"} some markdown content here ::: ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.