fenix-mcp 1.10.0__py3-none-any.whl → 1.11.0__py3-none-any.whl

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.
fenix_mcp/__init__.py CHANGED
@@ -8,4 +8,4 @@ Fênix Cloud MCP Server (Python edition).
8
8
  __all__ = ["__version__"]
9
9
 
10
10
 
11
- __version__ = "1.10.0"
11
+ __version__ = "1.11.0"
@@ -70,6 +70,30 @@ MarkdownStr = Annotated[
70
70
  ),
71
71
  ]
72
72
 
73
+ # Mermaid diagram hint for markdown fields
74
+ MERMAID_HINT = """
75
+ 💡 **Tip**: You can use Mermaid code blocks to create visual diagrams.
76
+
77
+ Flowchart example:
78
+ ```mermaid
79
+ graph TD
80
+ A[Start] --> B{Decision}
81
+ B -->|Yes| C[Action 1]
82
+ B -->|No| D[Action 2]
83
+ ```
84
+
85
+ Sequence diagram example:
86
+ ```mermaid
87
+ sequenceDiagram
88
+ participant U as User
89
+ participant A as API
90
+ U->>A: Request
91
+ A-->>U: Response
92
+ ```
93
+
94
+ Supported types: flowchart, sequenceDiagram, classDiagram, gantt, pie, mindmap, gitGraph.
95
+ """
96
+
73
97
  # Short title/name strings (1-300 chars)
74
98
  TitleStr = Annotated[
75
99
  str,
@@ -10,6 +10,7 @@ from pydantic import Field, field_validator
10
10
 
11
11
  from fenix_mcp.application.presenters import text
12
12
  from fenix_mcp.application.tool_base import (
13
+ MERMAID_HINT,
13
14
  CategoryStr,
14
15
  DateTimeStr,
15
16
  MarkdownStr,
@@ -73,7 +74,7 @@ class IntelligenceRequest(ToolRequest):
73
74
  action: IntelligenceAction = Field(description=ACTION_FIELD_DESCRIPTION)
74
75
  title: Optional[TitleStr] = Field(default=None, description="Memory title.")
75
76
  content: Optional[MarkdownStr] = Field(
76
- default=None, description="Memory content/text (Markdown)."
77
+ default=None, description=f"Memory content/text (Markdown).{MERMAID_HINT}"
77
78
  )
78
79
  metadata: Optional[MarkdownStr] = Field(
79
80
  default=None,
@@ -10,6 +10,7 @@ from pydantic import Field
10
10
 
11
11
  from fenix_mcp.application.presenters import text
12
12
  from fenix_mcp.application.tool_base import (
13
+ MERMAID_HINT,
13
14
  CategoryStr,
14
15
  DateTimeStr,
15
16
  DescriptionStr,
@@ -226,7 +227,7 @@ class KnowledgeRequest(ToolRequest):
226
227
  )
227
228
  work_title: Optional[TitleStr] = Field(default=None, description="Work item title.")
228
229
  work_description: Optional[MarkdownStr] = Field(
229
- default=None, description="Work item description (Markdown)."
230
+ default=None, description=f"Work item description (Markdown).{MERMAID_HINT}"
230
231
  )
231
232
  work_type: Optional[str] = Field(
232
233
  default="task",
@@ -324,7 +325,7 @@ class KnowledgeRequest(ToolRequest):
324
325
  default=None, description="Documentation description."
325
326
  )
326
327
  doc_content: Optional[MarkdownStr] = Field(
327
- default=None, description="Documentation content (Markdown)."
328
+ default=None, description=f"Documentation content (Markdown).{MERMAID_HINT}"
328
329
  )
329
330
  doc_status: Optional[str] = Field(
330
331
  default=None,
@@ -10,6 +10,7 @@ from pydantic import Field
10
10
 
11
11
  from fenix_mcp.application.presenters import text
12
12
  from fenix_mcp.application.tool_base import (
13
+ MERMAID_HINT,
13
14
  CategoryStr,
14
15
  DateTimeStr,
15
16
  MarkdownStr,
@@ -77,7 +78,8 @@ class ProductivityRequest(ToolRequest):
77
78
  default=None, description="TODO title (required for create)."
78
79
  )
79
80
  content: Optional[MarkdownStr] = Field(
80
- default=None, description="Markdown content (required for create)."
81
+ default=None,
82
+ description=f"Markdown content (required for create).{MERMAID_HINT}",
81
83
  )
82
84
  status: Optional[str] = Field(
83
85
  default=None,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fenix-mcp
3
- Version: 1.10.0
3
+ Version: 1.11.0
4
4
  Summary: Fênix Cloud MCP server implemented in Python
5
5
  Author: Fenix Inc
6
6
  Requires-Python: >=3.10
@@ -1,14 +1,14 @@
1
- fenix_mcp/__init__.py,sha256=3PxTTWdV2eIo9b1Kbb5YH180Z0_H6btnEjdqz98JwlQ,181
1
+ fenix_mcp/__init__.py,sha256=17a6anjdJHVc3TWomuQjFJeic0Pk_iIb4z6-uyKORw0,181
2
2
  fenix_mcp/main.py,sha256=iJV-9btNMDJMObvcn7wBQdbLLKjkYCQ1ANGEwHGHlMU,2857
3
3
  fenix_mcp/application/presenters.py,sha256=fGME54PdCDhTBhXO-JUB9yLdBHiE1aeXLTC2fCuxnxM,689
4
- fenix_mcp/application/tool_base.py,sha256=YJk7aSVGjXEvAkXrOHOuUjCFhYni9NPKFyPKiZqkrCc,4235
4
+ fenix_mcp/application/tool_base.py,sha256=ZCb9g4ij5Hbb0410NEZTYXvPWq-Zkg8ZCsinTa3gCY4,4741
5
5
  fenix_mcp/application/tool_registry.py,sha256=bPT5g8GfxG_qu28R1WaDOZHvtmG6TPDvZi8eWj1T9xE,1250
6
6
  fenix_mcp/application/tools/__init__.py,sha256=Gi1YvYh-KdL9HD8gLVrknHrxiKKEOhHBEZ02KBXJaKQ,796
7
7
  fenix_mcp/application/tools/health.py,sha256=m5DxhoRbdwl6INzd6PISxv1NAv-ljCrezsr773VB0wE,834
8
8
  fenix_mcp/application/tools/initialize.py,sha256=YfsE3fVYiqGEwvaI_jg5-0K7pGURXxpB3WNwETmGBPc,5499
9
- fenix_mcp/application/tools/intelligence.py,sha256=fXfjBwAQmZCn3Zc8BqFnQFAJkpd9JsfOPa_uXJj-bMU,15778
10
- fenix_mcp/application/tools/knowledge.py,sha256=XWi5qac0cXkmnll2Adi3pbiY60I4s-RA3UI5Nowu4ak,61009
11
- fenix_mcp/application/tools/productivity.py,sha256=wyJ7-2VqgI2cdrliBD_ejwNvQhN1DecpXSQVrCxcUpQ,11231
9
+ fenix_mcp/application/tools/intelligence.py,sha256=wsph1GwiQX3aX5NtFIZlM7I5xo1N3KT-cMlVfZuaHpU,15811
10
+ fenix_mcp/application/tools/knowledge.py,sha256=AQBSispBde0-jAhlKjHrek9FNUaZzqhn293yyocYUQ0,61057
11
+ fenix_mcp/application/tools/productivity.py,sha256=Wmefwg6yuXkHwwQT999d9D4lQf0UY_jnCTDlBe2YRTg,11273
12
12
  fenix_mcp/application/tools/user_config.py,sha256=O5AVg7IUKL9uIoUoBSFovBDHl9jofhKWzhFK7CnKi4s,6470
13
13
  fenix_mcp/domain/initialization.py,sha256=AZhdSNITQ7O3clELBuqGvjJc-c8pFKc7zQz-XR2xXPc,6933
14
14
  fenix_mcp/domain/intelligence.py,sha256=j1kkxT-pjuzLQeAGDd2H8gd3O1aeUIRgHFnMGvNwQYg,8636
@@ -22,8 +22,8 @@ fenix_mcp/infrastructure/logging.py,sha256=bHrWlSi_0HshRe3--BK_5nzUszW-gh37q6jsd
22
22
  fenix_mcp/infrastructure/fenix_api/client.py,sha256=YIoDIUQdNd7zzt2X3OsgajjxH5Jqb_85A6BvQDN6H6o,28693
23
23
  fenix_mcp/interface/mcp_server.py,sha256=5UM2NJuNbwHkmCEprIFataJ5nFZiO8efTtP_oW3_iX0,2331
24
24
  fenix_mcp/interface/transports.py,sha256=PxdhfjH8UMl03f7nuCLc-M6tMx6-Y-btVz_mSqXKrSI,8138
25
- fenix_mcp-1.10.0.dist-info/METADATA,sha256=1GZaLx3YrJbSaeeVJ9SzvF4Zdh1fkc67AnpA2SqiLhk,7261
26
- fenix_mcp-1.10.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
27
- fenix_mcp-1.10.0.dist-info/entry_points.txt,sha256=o52x_YHBupEd-1Z1GSfUjv3gJrx5_I-EkHhCgt1WBaE,49
28
- fenix_mcp-1.10.0.dist-info/top_level.txt,sha256=2G1UtKpwjaIGQyE7sRoHecxaGLeuexfjrOUjv9DDKh4,10
29
- fenix_mcp-1.10.0.dist-info/RECORD,,
25
+ fenix_mcp-1.11.0.dist-info/METADATA,sha256=0U8QF618uJxIavnMhEnIbSD_5qPf48e1eavB_0dX3n0,7261
26
+ fenix_mcp-1.11.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
27
+ fenix_mcp-1.11.0.dist-info/entry_points.txt,sha256=o52x_YHBupEd-1Z1GSfUjv3gJrx5_I-EkHhCgt1WBaE,49
28
+ fenix_mcp-1.11.0.dist-info/top_level.txt,sha256=2G1UtKpwjaIGQyE7sRoHecxaGLeuexfjrOUjv9DDKh4,10
29
+ fenix_mcp-1.11.0.dist-info/RECORD,,