返回市场
习惯ica-MCP服务器

习惯ica-MCP服务器

作者:ThammanaSrinivas2 星标更新:2025-05-24

项目介绍

项目标题

一个简短的项目描述,该项目使用了Habitica API。

配置

  1. 使用uv初始化并添加依赖项:

    uv init habitica-mcp-server
    cd habitica-mcp-server
    uv add "mcp[cli]" httpx aiohttp python-dotenv
    
  2. API配置:

    您需要获取您的Habitica用户ID和API密钥。您可以在Habitica账户设置中的API部分找到这些信息。

    创建一个文件(例如.envconfig.py)来安全地存储您的凭据。请勿直接将您的凭据提交到代码中。

    # 示例 config.py
    HABITICA_API_KEY = "YOUR_API_KEY"
    HABITICA_USER_ID = "YOUR_USER_ID"
    HABITICA_API_URL = "https://habitica.com/api/v3"
    

使用方法

这是一个简单的示例,展示如何使用HabiticaClient

from mcp.server.fastmcp import FastMCP
from habitica_client import HabiticaClient
import os
from dotenv import load_dotenv

# 从.env文件加载环境变量
load_dotenv()

# 创建一个MCP服务器
mcp = FastMCP("Habitica集成")

# 初始化Habitica客户端
habitica_client = HabiticaClient(
    api_key=os.getenv("HABITICA_API_KEY"),
    user_id=os.getenv("HABITICA_USER_ID"),
    api_url=os.getenv("HABITICA_API_URL")
)


@mcp.tool()
async def get_user_tasks(task_type: str = "") -> list:
    """获取已认证用户的全部任务
    参数:
        task_type: 可选的任务类型过滤器(habits, dailys, todos, rewards, completedTodos)
    """
    return await habitica_client.get_user_tasks(task_type)

if __name__ == "__main__":
    mcp.run()

要使用mcp进行本地测试,请运行:

mcp dev main.py

请将"YOUR_API_KEY""YOUR_USER_ID"替换为您实际的Habitica API凭据。 </中文翻译>