▲ | runako 13 days ago | |||||||||||||||||||||||||
I'm still trying to grok MCP, would be awesome if you could include usage examples in the doc. Good luck! | ||||||||||||||||||||||||||
▲ | mparis 13 days ago | parent | next [-] | |||||||||||||||||||||||||
+1 My first foray into using MCP was via Claude Desktop. Would be great if you packaged your tool such that one could add it with a few lines in their ‘~/Library/Application Support/Claude/claude_desktop_config.json’ | ||||||||||||||||||||||||||
| ||||||||||||||||||||||||||
▲ | saberience 12 days ago | parent | prev | next [-] | |||||||||||||||||||||||||
It's not complicated at all. All it does is expose methods as a "tool" which is then brought back to your LLM and defined with its name, description and input parameters. E.g. Name: "MySqlTool", Description: "Allows arbitrary MySQL queries to the XYZ database", Parameters: "string: sqlToExecute" The MCP Client (e.g. Claude Desktop, Claude Code), is configured to talk to an MCP server via stdio or sse, and calls a method like "tools/list", the server just sends a list back (in JSON) of all the tools, names, descriptions, params. Then, if the LLM gets a query that mentions e.g. do a web search, or a web scraping, etc, it just outputs a tool use token then stops inferencing. Then the code calls that tool via stdio/sse (json-rpc), to the MCP server, which just runs that method, returns the result, then its added to the message history in the LLM, then inferencing runs again from the beginning. | ||||||||||||||||||||||||||
| ||||||||||||||||||||||||||
▲ | romanovcode 12 days ago | parent | prev | next [-] | |||||||||||||||||||||||||
It's very simple and this is actually good example. 1. You add this MCP to your DB (make sure it is securely connected to your AI of choice of course) 2. Ask anything about your data, ask to make graphs, ask to make scheduled tasks, ask to analyze queries and show optimizations and so on. 3. Profit, literally. No need to pay BI companies thousands each month. | ||||||||||||||||||||||||||
▲ | teaearlgraycold 12 days ago | parent | prev [-] | |||||||||||||||||||||||||
The main things that made MCP hard for me to understand at first is that it’s both transport agnostic (so no leveraging semantic HTTP) and is an async task management protocol as well as a tool use protocol. The name itself is also poorly chosen. I would call it Tool Use Protocol. Think about each MCP implementer like an agent’s input/output device. |