mcpField
W
WeiWanMcpServer

WeiWanMcpServer

ローカル
github.com/WeiWan5675生産性080 週間前に更新

WeiWanMcpServer について

WeiWanMcpServerは、HyperChatと組み合わせてチャットからツールを利用する、カスタムPython製MCPサーバープロジェクトです。ウェブ情報の検索や、Markdownノートの保存・書き換えに対応します。

主な機能

  1. 01指定サイトの情報検索
  2. 02リンクと概要の返却
  3. 03ウェブページをMarkdownノートとして保存
  4. 04ノートの書き換えや整理
  5. 05Obsidianベースのノート閲覧・管理

活用シーン

  1. 01指定したウェブサイトから情報を収集
  2. 02検索結果をローカルのMarkdownリポジトリに保存
  3. 03ダウンロードしたノートを書き換え、Obsidianで管理

MCP 対応

カスタムMCPサーバーは、情報検索、ウェブページのノートへの保存、ノートの書き換えなどのツールに加え、現在の日付や時刻を取得する補助ツールを提供します。HyperChatがツールを呼び出すチャット画面を担います。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Show Time:AI Hackathon Project - HyperChat + Custom MCP Server

プロジェクトの背景

今回のAI Hackathonで、HyperChat(オープンソースのチャットクライアント)とカスタムMCPサーバーを基盤としたプログラムを実装しました。このプログラムでは、チャットでのやり取りを通じてMCPツールを呼び出し、次の主要機能を実現します。

  1. ウェブ情報の検索:指定したサイト(知乎など)でキーワードに関連する情報を検索し、リンクと要約を返します。
  2. ノートのダウンロード:検索したリンクの内容をMarkdownノートとしてダウンロードし、ローカルのノートリポジトリに保存します。
  3. ノートの管理:Obsidianのオープンソース実装を基に、ノートの閲覧、要約、削除などの操作を行います。
  4. ノートの書き直し:ダウンロードしたノートの内容を書き直したり、整理したりします。

技術的な実装

1. 主要コンポーネント
  • HyperChat:ユーザーとやり取りするフロントエンドとして機能し、チャット形式でのMCPツール呼び出しに対応します。
  • カスタムMCPサーバー:Pythonで実装され、次のツールを提供します。
    • search_news:ウェブ情報を検索します。
    • download_note:ウェブページの内容をMarkdownノートとしてダウンロードします。
    • overwrite_note:ノートの内容を書き直したり、整理したりします。
    • その他の補助ツール(現在の時刻や日付の取得など)。
2. コードの見どころ
MCPサーバーの主要コード
from mcp.server.fastmcp import FastMCP
from datetime import datetime
import os
import requests
import re

mcp = FastMCP("WeiWanMcp", instructions="""
    限制:
        1.调用search_news查询咨询后,不要对内容进行总结,直接进行输出.
""")

nodePath = os.getenv("NOTES_PATH", "E:\MyDocuments\MyNotes\Clipper")

@mcp.tool()
def search_news(query: str, website: str):
    """检索网络资讯"""
    url = 'https://s.jina.ai/?q=' + query + '&num=20'
    headers = {
        'Authorization': 'Bearer YOUR_API_KEY',
        'X-Respond-With': 'no-content',
    }
    if website:
        if validate_domain(website):
            headers['X-Site'] = website
    response = requests.get(url, headers=headers)
    return response.text

@mcp.tool()
def download_note(webLink: str, nodeTitle: str):
    """下载网页内容为笔记"""
    headers = {"Authorization": "Bearer YOUR_API_KEY"}
    response = requests.get("https://r.jina.ai/" + webLink, headers=headers)
    with open(nodePath + "\\" + nodeTitle + ".md", "w", encoding='utf-8') as file:
        file.write(response.text)
    return "笔记已保存至: " + nodePath + "\\" + nodeTitle + ".md"

@mcp.tool()
def overwrite_note(content: str, nodeTitle: str):
    """复写笔记内容"""
    with open(nodePath + "\\" + nodeTitle + ".md", "w", encoding='utf-8') as file:
        file.write(content)
    return "笔记已复写: " + nodePath + "\\" + nodeTitle + ".md"
3. 機能デモ
シナリオ1:情報の検索
  • ユーザー入力:在zhihu.com站点帮我检索MCP相关的资料
  • MCPの応答:
    • search_newsツールを呼び出し、知乎で「MCP」に関連するリンクと要約を返します。
    • 出力例:
      1. [MCP技术详解](https://zhihu.com/123) - 摘要内容...
      2. [MCP开源项目](https://zhihu.com/456) - 摘要内容...
      
シナリオ2:ノートのダウンロード
  • ユーザー入力:下载第一个链接的笔记,保存为“MCP技术详解”
  • MCPの応答:
    • download_noteツールを呼び出し、リンク先の内容をMarkdownファイルとしてダウンロードします。
    • 出力:笔记已保存至: E:\MyDocuments\MyNotes\Clipper\MCP技术详解.md
シナリオ3:ノートの書き直し
  • ユーザー入力:复写“MCP技术详解”笔记,内容为整理后的Markdown文本
  • MCPの応答:
    • overwrite_noteツールを呼び出し、元のノートの内容を上書きします。
    • 出力:笔记已复写: E:\MyDocuments\MyNotes\Clipper\MCP技术详解.md
4. Obsidianとの連携
  • オープンソース実装のobsidian_mcpを通じて、ノートリポジトリに対する次の操作に対応します。
    • ノートの内容を閲覧する。
    • ノートを削除または名前変更する。
    • ノートの内容に基づいて複雑な検索を行う。

プロジェクトの特長

  1. シームレスな連携:HyperChatによる自然言語でのやり取りを実現し、ユーザーの学習コストを削減します。
  2. 効率的な検索:指定したサイトの検索に対応し、目的の情報をすばやく取得できます。
  3. ローカルでの管理:ウェブ上のコンテンツをMarkdownノートとして保存できるため、後から整理して再利用できます。
  4. 柔軟性:ノートの書き直しとObsidianとの連携に対応し、個々のニーズを満たします。

今後の展望

  1. ツール群の拡張:翻訳や要約の生成など、MCPツールをさらに追加します。
  2. 複数プラットフォームへの対応:NotionやLogseqなど、より多くのノートアプリに対応します。
  3. パフォーマンスの最適化:検索とダウンロードの速度を向上させます。

機能のスクリーンショット

代替テキスト 代替テキスト 代替テキスト

結び
今回のプロジェクトでは、HyperChatとカスタムMCPサーバーを組み合わせ、情報検索からノート管理までの一連のプロセスを自動化しました。今後も機能をさらに最適化し、より強力なナレッジ管理ツールをユーザーに提供していきます!

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。