mgbam commited on
Commit
e9bd6d3
Β·
verified Β·
1 Parent(s): febe12b

Update components/sidebar.py

Browse files
Files changed (1) hide show
  1. components/sidebar.py +13 -7
components/sidebar.py CHANGED
@@ -3,24 +3,23 @@ import streamlit as st
3
  def render_sidebar():
4
  """
5
  Sidebar with all controls for the research companion app.
6
-
7
  Returns:
8
  - query (str): The user's main research query.
9
  - num_results (int): Max number of papers to show.
10
  - theme (str): 'Light' or 'Dark'.
11
  - search_clicked (bool): Did user click Search?
12
  - gemini_prompt (str): Optional Gemini Q&A question.
 
 
13
  """
14
  st.sidebar.title("πŸš€ MCP Research Companion")
15
 
16
- # Main research topic input
17
  query = st.sidebar.text_input(
18
  label="Enter your research topic:",
19
  value="",
20
  placeholder="e.g. CRISPR delivery"
21
  )
22
 
23
- # Number of results slider
24
  num_results = st.sidebar.slider(
25
  label="Max papers to display",
26
  min_value=1,
@@ -28,21 +27,28 @@ def render_sidebar():
28
  value=5
29
  )
30
 
31
- # Theme toggle
32
  theme = st.sidebar.selectbox(
33
  label="Theme",
34
  options=["Light", "Dark"],
35
  index=0
36
  )
37
 
38
- # Gemini question input (for Q&A at any time)
39
  gemini_prompt = st.sidebar.text_input(
40
  label="πŸ’‘ Ask Gemini (about anything!):",
41
  value="",
42
  placeholder="e.g. Summarize the latest CRISPR techniques"
43
  )
44
 
45
- # Search button
 
 
 
 
 
 
 
 
 
46
  search_clicked = st.sidebar.button("Search")
47
 
48
- return query, num_results, theme, search_clicked, gemini_prompt
 
3
  def render_sidebar():
4
  """
5
  Sidebar with all controls for the research companion app.
 
6
  Returns:
7
  - query (str): The user's main research query.
8
  - num_results (int): Max number of papers to show.
9
  - theme (str): 'Light' or 'Dark'.
10
  - search_clicked (bool): Did user click Search?
11
  - gemini_prompt (str): Optional Gemini Q&A question.
12
+ - mcp_codegen_prompt (str): Prompt for code generation.
13
+ - codegen_clicked (bool): Did user click Generate Code?
14
  """
15
  st.sidebar.title("πŸš€ MCP Research Companion")
16
 
 
17
  query = st.sidebar.text_input(
18
  label="Enter your research topic:",
19
  value="",
20
  placeholder="e.g. CRISPR delivery"
21
  )
22
 
 
23
  num_results = st.sidebar.slider(
24
  label="Max papers to display",
25
  min_value=1,
 
27
  value=5
28
  )
29
 
 
30
  theme = st.sidebar.selectbox(
31
  label="Theme",
32
  options=["Light", "Dark"],
33
  index=0
34
  )
35
 
 
36
  gemini_prompt = st.sidebar.text_input(
37
  label="πŸ’‘ Ask Gemini (about anything!):",
38
  value="",
39
  placeholder="e.g. Summarize the latest CRISPR techniques"
40
  )
41
 
42
+ # New: MCP server codegen
43
+ st.sidebar.markdown("---")
44
+ st.sidebar.subheader("πŸ› οΈ MCP Server Codegen (Gemini)")
45
+ mcp_codegen_prompt = st.sidebar.text_area(
46
+ label="Describe the MCP server you want (plain English):",
47
+ value="",
48
+ placeholder="e.g. Write a Python MCP server for OpenWeatherMap with get_current_weather tool."
49
+ )
50
+ codegen_clicked = st.sidebar.button("Generate MCP Code")
51
+
52
  search_clicked = st.sidebar.button("Search")
53
 
54
+ return query, num_results, theme, search_clicked, gemini_prompt, mcp_codegen_prompt, codegen_clicked