Rong6693 commited on
Commit
50253aa
·
verified ·
1 Parent(s): a267fe0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -7
app.py CHANGED
@@ -1,26 +1,26 @@
1
  # app.py
2
- from modelcontextprotocol import Client
3
- from modelcontextprotocol.transports.stdio import StdioTransport
4
  import subprocess, sys, uuid
5
 
6
- # 啟動 MCP server 子程序(stdin/stdout
7
  def start_mcp():
8
- # 用當前 Python 啟動 mcp_server.py
9
  proc = subprocess.Popen([sys.executable, "mcp_server.py"],
10
  stdin=subprocess.PIPE, stdout=subprocess.PIPE)
11
- transport = StdioTransport(proc.stdin, proc.stdout)
12
- client = Client(transport=transport)
13
  client.start()
14
  return client, proc
15
 
16
  mcp_client, mcp_proc = start_mcp()
17
 
18
- # 呼叫工具(例:Tarot)
19
  def mcp_tarot_search(q, k=3):
20
  res = mcp_client.call_tool("tarot.search", {"query": q, "k": k})
21
  return res.get("hits", [])
22
 
23
 
 
24
  # ========== 基本設定 ==========
25
  st.set_page_config(page_title="SoulCompass", page_icon="🧭", layout="wide")
26
 
 
1
  # app.py
2
+ from modelcontextprotocol.client.client import Client
3
+ from modelcontextprotocol.client.stdio import StdioClient
4
  import subprocess, sys, uuid
5
 
6
+ # 啟動 MCP server 子程序 (stdin/stdout)
7
  def start_mcp():
8
+ # 用當前 Python 執行 mcp_server.py
9
  proc = subprocess.Popen([sys.executable, "mcp_server.py"],
10
  stdin=subprocess.PIPE, stdout=subprocess.PIPE)
11
+ client = StdioClient(proc.stdin, proc.stdout)
 
12
  client.start()
13
  return client, proc
14
 
15
  mcp_client, mcp_proc = start_mcp()
16
 
17
+ # 呼叫工具(例如 Tarot)
18
  def mcp_tarot_search(q, k=3):
19
  res = mcp_client.call_tool("tarot.search", {"query": q, "k": k})
20
  return res.get("hits", [])
21
 
22
 
23
+
24
  # ========== 基本設定 ==========
25
  st.set_page_config(page_title="SoulCompass", page_icon="🧭", layout="wide")
26