FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index latest AI news MCP revolution
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
MCP revolution
Posted: Tue Apr 01, 2025 05:19 AM
https://github.com/modelcontextprotocol/servers
https://github.com/punkpeye/awesome-mcp-servers

https://www.reddit.com/r/mcp/
Model Context Protocol (MCP)
The Model Context Protocol is an open standard that enables developers to build secure, two-way connections between their data sources and AI-powered tools
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MCP revolution
Posted: Tue Apr 01, 2025 05:57 AM
OpenAI alredy building MCP support:

https://openai.github.io/openai-agents-python/mcp/
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MCP revolution
Posted: Tue Apr 01, 2025 08:12 AM
https://github.com/OpenAgentPlatform/Dive

Dive is an open-source MCP Host Desktop Application that seamlessly integrates with any LLMs supporting function calling capabilities
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MCP revolution
Posted: Tue Apr 01, 2025 12:56 PM
Usefull prompts:

/tools
```xml
<tools>
    {"type": "function", "function": {"name":"echo","description":"A simple echo tool to verify if the MCP server is working properly. It returns a characteristic response containing the input message.","parameters":{"type":"object","required":["message"],"properties":{"delayMs":{"type":"number","description":"Optional delay in milliseconds before responding"},"message":{"type":"string","description":"Message to be echoed back"}}}}}
    {"type": "function", "function": {"name":"read_file","description":"Read the complete contents of a file from the file system. Handles various text encodings and provides detailed error messages if the file cannot be read. Use this tool when you need to examine the contents of a single file. Only works within allowed directories.","parameters":{"type":"object","required":["path"],"properties":{"path":{"type":"string","description":""}}}}}
    {"type": "function", "function": {"name":"read_multiple_files","description":"Read the contents of multiple files simultaneously. This is more efficient than reading files one by one when you need to analyze or compare multiple files. Each file's content is returned with its path as a reference. Failed reads for individual files won't stop the entire operation. Only works within allowed directories.","parameters":{"type":"object","required":["paths"],"properties":{"paths":{"type":"array","description":""}}}}}
    {"type": "function", "function": {"name":"write_file","description":"Create a new file or completely overwrite an existing file with new content. Use with caution as it will overwrite existing files without warning. Handles text content with proper encoding. Only works within allowed directories.","parameters":{"type":"object","required":["path","content"],"properties":{"path":{"type":"string","description":""},"content":{"type":"string","description":"Content to write to the file"}}}}}
    {"type": "function", "function": {"name":"edit_file","description":"Edit an existing file by appending or prepending text. Handles various text encodings and provides detailed error messages if the file cannot be edited. Only works within allowed directories.","parameters":{"type":"object","required":["path","content"],"properties":{"path":{"type":"string","description":""},"content":{"type":"string","description":"Content to edit into the file"}}}}}
    {"type": "function", "function": {"name":"delete_file","description":"Delete a file from the file system. Only works within allowed directories.","parameters":{"type":"object","required":["path"],"properties":{"path":{"type":"string","description":""}}}}}
    {"type": "function", "function": {"name":"create_directory","description":"Create a new directory in the file system. Only works within allowed directories.","parameters":{"type":"object","required":["path"],"properties":{"path":{"type":"string","description":""}}}}}
    {"type": "function", "function": {"name":"delete_directory","description":"Delete a directory from the file system. Only works within allowed directories.","parameters":{"type":"object","required":["path"],"properties":{"path":{"type":"string","description":""}}}}}
    {"type": "function", "function": {"name":"list_files","description":"List all files and directories in a given directory. Only works within allowed directories.","parameters":{"type":"object","required":["path"],"properties":{"path":{"type":"string","description":""}}}}}
    {"type": "function", "function": {"name":"move_file","description":"Move a file from one location to another. Only works within allowed directories.","parameters":{"type":"object","required":["srcPath","destPath"],"properties":{"srcPath":{"type":"string","description":"Source path of the file"},"destPath":{"type":"string","description":"Destination path of the file"}}}}}
    {"type": "function", "function": {"name":"copy_file","description":"Copy a file to a new location. Only works within allowed directories.","parameters":{"type":"object","required":["srcPath","destPath"],"properties":{"srcPath":{"type":"string","description":"Source path of the file"},"destPath":{"type":"string","description":"Destination path of the file"}}}}}
    {"type": "function", "function": {"name":"get_file_info","description":"Retrieve detailed metadata about a file or directory. Returns comprehensive information including size, creation time, last modified time, permissions, and type. This tool is perfect for understanding file characteristics without reading the actual content. Only works within allowed directories.","parameters":{"type":"object","required":["path"],"properties":{"path":{"type":"string","description":""}}}}}
    {"type": "function", "function": {"name":"list_allowed_directories","description":"Returns the list of directories that this server is allowed to access. Use this to understand which directories are available before trying to access files.","parameters":{"type":"object","required":[],"properties":{}}}}
    {"type": "function", "function": {"name":"puppeteer_navigate","description":"Navigate to a URL","parameters":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":""}}}}}
    {"type": "function", "function": {"name":"puppeteer_screenshot","description":"Take a screenshot of the current page or a specific element","parameters":{"type":"object","required":["name"],"properties":{"height":{"type":"number","description":"Height in pixels (default: 600)"},"name":{"type":"string","description":"Name for the screenshot"},"selector":{"type":"string","description":"CSS selector for element to screenshot"},"width":{"type":"number","description":"Width in pixels (default: 800)"}}}}}
    {"type": "function", "function": {"name":"puppeteer_click","description":"Click an element on the page","parameters":{"type":"object","required":["selector"],"properties":{"selector":{"type":"string","description":"CSS selector for element to click"}}}}}
    {"type": "function", "function": {"name":"puppeteer_fill","description":"Fill out an input field","parameters":{"type":"object","required":["selector","value"],"properties":{"selector":{"type":"string","description":"CSS selector for input field"},"value":{"type":"string","description":"Value to fill"}}}}}
    {"type": "function", "function": {"name":"puppeteer_select","description":"Select an element on the page with Select tag","parameters":{"type":"object","required":["selector","value"],"properties":{"selector":{"type":"string","description":"CSS selector for element to select"},"value":{"type":"string","description":"Value to select"}}}}}
    {"type": "function", "function": {"name":"puppeteer_execute_script","description":"Execute a JavaScript script in the context of the current page","parameters":{"type":"object","required":["script"],"properties":{"script":{"type":"string","description":"JavaScript code to execute"}}}}}
    {"type": "function", "function": {"name":"execute_shell_command","description":"Execute a shell command on the server. Only works within allowed directories.","parameters":{"type":"object","required":["command"],"properties":{"command":{"type":"string","description":"Shell command to execute"}}}}}
</pre>
/schema
{
  "schema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "type": "object",
    "properties": {
      "name": {
        "type": "string"
      },
      "arguments": {
        "type": "object"
      }
    },
    "required": ["name", "arguments"],
    "additionalProperties": false
  }
}
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MCP revolution
Posted: Tue Apr 01, 2025 08:19 PM

npm install @modelcontextprotocol/server-puppeteer

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MCP revolution
Posted: Wed Apr 02, 2025 04:50 PM
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MCP revolution
Posted: Fri Apr 04, 2025 07:09 PM
MPC con OLLAMA y Gemma3 usando Python

https://youtu.be/gkX_sc6Jrig?si=Cb54gCi90fe3svZK
from praisonaiagents import Agent, MCP
import gradio as gr

def search_airbnb(query):
    agent = Agent (
    instructions="""Ayuda a reservar apartamentos en Airbnb.""",
    llm="ollama/gemma3",
    tools=MCP("npx -y @openbnb/mcp-server-airbnb --ignore-robots-txt")
)
    result = agent.start(query)
    return f"## Resultados de la búsqueda de Airbnb \n\n{result}"

demo = gr.Interface(
    fn=search_airbnb,
    inputs=gr.Textbox(placeholder="Quiero reservar un apartamento en Bogotá por 2 noches...."),
    outputs=gr.Markdown(),
    title="MCP - LOCAL OLLAMA - Asistente de reservas de Airbnb",
    description="Introduce tus requisitos de reserva a continuación.:"
)

if __name__ == "__main__":
    demo.launch()
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MCP revolution
Posted: Sat Apr 05, 2025 06:44 AM
GitHub just published their own MCP server: https://github.com/github/github-mcp-server
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion