stackprep-pro 0.2.8__tar.gz → 0.2.10__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: stackprep-pro
3
- Version: 0.2.8
3
+ Version: 0.2.10
4
4
  Summary: stackprep-pro — interview & certification prep MCP server for any AI client
5
5
  Project-URL: Homepage, https://github.com/youngpada1/stackprep-pro
6
6
  Project-URL: Repository, https://github.com/youngpada1/stackprep-pro
@@ -161,6 +161,7 @@ Point this at any Dropbox, Google Drive, or OneDrive folder for cross-platform s
161
161
 
162
162
  | Tool | Description | Args |
163
163
  |---|---|---|
164
+ | `begin` | Call this at the very start of every conversation. Returns the opening question already formatted | |
164
165
  | `start_session` | Start a new stackprep session. Returns a session ID and the skill rules for the AI to follow. | `mode`, `cert_name`, `cv`, `jd`, `extra_topics` |
165
166
  | `submit_answer` | Record the result of an answered question. | `session_id`, `result`, `question` |
166
167
  | `flag_for_study` | Manually flag the current question for the study pack. | `session_id`, `question` |
@@ -141,6 +141,7 @@ Point this at any Dropbox, Google Drive, or OneDrive folder for cross-platform s
141
141
 
142
142
  | Tool | Description | Args |
143
143
  |---|---|---|
144
+ | `begin` | Call this at the very start of every conversation. Returns the opening question already formatted | |
144
145
  | `start_session` | Start a new stackprep session. Returns a session ID and the skill rules for the AI to follow. | `mode`, `cert_name`, `cv`, `jd`, `extra_topics` |
145
146
  | `submit_answer` | Record the result of an answered question. | `session_id`, `result`, `question` |
146
147
  | `flag_for_study` | Manually flag the current question for the study pack. | `session_id`, `question` |
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "stackprep-pro"
3
- version = "0.2.8"
3
+ version = "0.2.10"
4
4
  description = "stackprep-pro — interview & certification prep MCP server for any AI client"
5
5
  readme = "README.md"
6
6
  license = { text = "MIT" }
@@ -9,7 +9,31 @@ from typing import Any
9
9
 
10
10
  from mcp.server.fastmcp import FastMCP
11
11
 
12
- mcp = FastMCP("stackprep-pro")
12
+ SERVER_INSTRUCTIONS = """\
13
+ stackprep-pro — adaptive interview & certification prep.
14
+
15
+ At the very start of every conversation, call the `begin` tool and show its returned markdown to the
16
+ user VERBATIM (it is already formatted as an elegant block — do not rephrase or reformat it).
17
+
18
+ PRESENTATION (every message): always respond as elegant RENDERED markdown blocks — bold headers,
19
+ dividers, clean tables/lists. NEVER output flat plain text.
20
+
21
+ After the user picks a mode, silently check for saved sessions of that mode; if any exist offer to
22
+ continue one (by the name the user gave it) or start new. Then collect inputs and call start_session.
23
+ Follow the skill rules returned by start_session exactly — the skill is the source of truth."""
24
+
25
+ # Hardcoded so the very first block is guaranteed, not AI-guessed.
26
+ BEGIN_BLOCK = """\
27
+ **What would you like to prep for?**
28
+
29
+ | # | Mode |
30
+ |---|------|
31
+ | 1 | 🎯 Technical Interview |
32
+ | 2 | 📜 Certification Exam |
33
+
34
+ _Reply with 1 or 2._"""
35
+
36
+ mcp = FastMCP("stackprep-pro", instructions=SERVER_INSTRUCTIONS)
13
37
 
14
38
  SKILLS_DIR = Path(__file__).parent / "skills"
15
39
 
@@ -69,6 +93,12 @@ def _load_skill(mode: str) -> str:
69
93
 
70
94
  # ── Tools ──────────────────────────────────────────────────────────────────────
71
95
 
96
+ @mcp.tool()
97
+ def begin() -> str:
98
+ """Call this at the very start of every conversation. Returns the opening question already formatted
99
+ as an elegant markdown block. Show the returned text to the user VERBATIM — do not rephrase or reformat it."""
100
+ return BEGIN_BLOCK
101
+
72
102
  @mcp.tool()
73
103
  def start_session(
74
104
  mode: str,
@@ -723,7 +723,7 @@ wheels = [
723
723
 
724
724
  [[package]]
725
725
  name = "stackprep-pro"
726
- version = "0.2.8"
726
+ version = "0.2.10"
727
727
  source = { editable = "." }
728
728
  dependencies = [
729
729
  { name = "mcp", extra = ["cli"] },
File without changes
File without changes
File without changes